/*
********************************
FONTS
********************************
*/
@font-face {
  font-family: "Geist";
  src: url("../fonts/geist/Geist-Thin.woff2") format("woff2"),
    url("../fonts/geist/Geist-Thin.woff") format("woff");
  font-weight: 100;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Geist";
  src: url("../fonts/geist/Geist-ExtraLight.woff2") format("woff2"),
    url("../fonts/geist/Geist-ExtraLight.woff") format("woff");
  font-weight: 200;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Geist";
  src: url("../fonts/geist/Geist-Light.woff2") format("woff2"),
    url("../fonts/geist/Geist-Light.woff") format("woff");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Geist";
  src: url("../fonts/geist/Geist-Regular.woff2") format("woff2"),
    url("../fonts/geist/Geist-Regular.woff") format("woff");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Geist";
  src: url("../fonts/geist/Geist-Medium.woff2") format("woff2"),
    url("../fonts/geist/Geist-Medium.woff") format("woff");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Geist";
  src: url("../fonts/geist/Geist-SemiBold.woff2") format("woff2"),
    url("../fonts/geist/Geist-SemiBold.woff") format("woff");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Geist";
  src: url("../fonts/geist/Geist-Bold.woff2") format("woff2"),
    url("../fonts/geist/Geist-Bold.woff") format("woff");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Geist";
  src: url("../fonts/geist/Geist-ExtraBold.woff2") format("woff2"),
    url("../fonts/geist/Geist-ExtraBold.woff") format("woff");
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Geist";
  src: url("../fonts/geist/Geist-Black.woff2") format("woff2"),
    url("../fonts/geist/Geist-Black.woff") format("woff");
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Lexend";
  src: url("../fonts/lexend/Lexend-Regular.woff2") format("woff2"),
    url("../fonts/lexend/Lexend-Regular.woff") format("woff");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Lexend";
  src: url("../fonts/lexend/Lexend-Medium.woff2") format("woff2"),
    url("../fonts/lexend/Lexend-Medium.woff") format("woff");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Lexend";
  src: url("../fonts/lexend/Lexend-Bold.woff2") format("woff2"),
    url("../fonts/lexend/Lexend-Bold.woff") format("woff");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Lexend";
  src: url("../fonts/lexend/Lexend-Black.woff2") format("woff2"),
    url("../fonts/lexend/Lexend-Black.woff") format("woff");
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}

/*
********************************
GLOBAL
********************************
*/
:root {
  --layout-width: 1596px;
  --bg-primary: #f2f2f2;
  --bg-white: #ffffff;
  --bg-gradient: linear-gradient(90deg, #2ba092 10%, #95c11f 90%);

  --color-green: #95c11f;
  --color-green-5: rgba(149, 193, 31, 0.05);
  --color-green-10: rgba(149, 193, 31, 0.1);
  --color-green-30: rgba(149, 193, 31, 0.3);
  --color-green-light: #eaf3d2;
  --color-blue: #006383;
  --color-blue-secondary: #2ba092;

  --color-gray-light: #919191;

  --bg-tag-eco: #114343;
  --bg-tag-new: #428e8e;
  --bg-tag-promo: #44f1a6;

  --color-orange: #f1ac44;
  --color-red: #f15844;

  --header-height: 202px;

  --card-width: 381px;

  --shadow-flags: drop-shadow(1px 1px 4px rgba(0, 0, 0, 0.1));
  --shadow-card: 2px 8px 20px 0px rgba(16, 93, 92, 0.2);
  --ignore-margin: calc(((100vw - 100%) / 2) * (-1));
}
*,
*::before,
*::after {
  box-sizing: border-box;
}
html {
  scroll-behavior: smooth;
}
html,
body,
#wrapper {
  background-color: var(--bg-white);
}
body {
  font-family: "Geist";
  font-weight: 400;
  font-size: 16px;
}
#wrapper {
  overflow-x: hidden;
}
ul,
ol {
  list-style-type: none;
  margin: 0;
  padding: 0;
}
p,
.page-content.page-cms ul,
#custom-text p,
ul li {
  color: var(--color-blue);
}
p {
  margin-bottom: 0;
}
.page-content.page-cms ul,
p {
  font-size: 1rem;
}
p ul,
.container_product_bottom ul,
.product-description ul {
  list-style: disc;
  padding-left: 20px;
}
a {
  color: inherit;
  text-decoration: none;
}
label a {
  text-decoration: underline;
}
label a:hover {
  text-decoration: underline;
}
#subcategories ul li .subcategory-name:hover,
.block-categories .arrows .arrow-down:hover,
.block-categories .arrows .arrow-right:hover,
.block-categories .collapse-icons .add:hover,
.block-categories .collapse-icons .remove:hover,
.cart-grid-body a.label:hover,
.account-list a:hover,
.block_newsletter form button[type="submit"] .search:hover,
#header a:hover,
#header .top-menu a[data-depth="0"]:hover,
a:hover {
  color: var(--color-green);
}

h1,
h2,
h3,
.h1,
.h2,
.h3 {
  font-family: "Lexend";
  font-weight: 900;
  text-transform: initial;
  color: var(--color-blue);
}

.h2,
h2 {
  font-family: "Geist";
  font-weight: 900;
  font-size: 2.8rem;
  margin-bottom: 2.5rem;
  color: var(--color-blue);
}
em {
  color: var(--color-gray-light);
  font-size: 0.8rem;
}
blockquote,
figure {
  margin: 0;
}
body:not(.page-index) h1 {
  font-family: "Lexend";
  font-size: 3.125rem;
  font-weight: 800;
}
body#product h1 {
  font-size: 2.8rem;
  font-weight: 900;
  margin: 1rem 0px 1rem 0;
}
::selection {
  color: black;
  background: var(--color-green-5);
}
::-moz-selection {
  color: black;
  background: var(--color-green-5);
}
.block-categories,
#custom-text {
  background-color: initial;
}
.carousel .carousel-control .icon-next:hover i,
.carousel .carousel-control .icon-prev:hover i,
.dropdown:hover .expand-more,
.page-my-account #content .links a:hover i,
.search-widget form button[type="submit"] .search:hover,
.top-menu .sub-menu a:hover {
  color: var(--color-green);
}
.cms h2 {
  font-family: "Geist";
  font-weight: 700;
  font-size: 2rem;
  margin-bottom: 1.5rem;
}
.page-content.page-cms {
  padding: 0;
  text-align: justify;
  background: transparent;
  padding-bottom: 3rem;
}
/*
********************************
LAYOUT
********************************
*/
@media (min-width: 1440px) {
  #content-wrapper {
    padding-right: 0;
    padding-left: 0;
  }
}

.ets_mm_megamenu .mm_columns_ul {
  width: 100vw;
  left: calc((100vw - var(--layout-width)) / 2 * (-1));
  padding: 80px 125px 40px 125px;
}
#wrapper > .container,
#product .product-container > .container,
.container {
  width: var(--layout-width);
  max-width: 100%;
}
#wrapper > .container,
#product .product-container > .container {
  padding-left: 0;
  padding-right: 0;
}
#header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
}
#wrapper {
  padding-top: calc(var(--header-height));
}
#checkout #wrapper {
  padding-top: calc(var(--header-height) + 3rem);
  min-height: calc(100vh - 70px);
}
body.layout-right-column #content-wrapper {
  width: 100%;
}
body.page-cart #wrapper,
body.page-authentication #wrapper,
body.layout-left-column #wrapper,
body.layout-both-columns #wrapper {
  margin-bottom: 5rem;
}
body.layout-left-column #wrapper > .container,
body.layout-both-columns #wrapper > .container {
  width: 100%;
}
body.layout-left-column #content-wrapper,
body.layout-both-columns #content-wrapper {
  padding: 0 2rem;
  flex-grow: 1;
}
body.layout-left-column #wrapper > .container > .row,
body.layout-both-columns #wrapper > .container > .row {
  display: flex;
}
#left-column {
  max-width: 380px;
}
/*
********************************
SIDEBAR CART
********************************
*/
#right-column {
  position: fixed;
  top: 0;
  right: 0;
  height: 100%;
  z-index: 999;
  width: 465px;
  padding: 0 28px;
  background-color: #114343ba;
  backdrop-filter: blur(48px);
  border-left: 1px solid var(--color-green-dark);
  float: none;
  transform: translateX(100%);
  transition: all 0.3s ease-in-out;
}
#right-column.js-active {
  transform: translateX(0);
}
.right-column-header {
  display: flex;
  justify-content: flex-end;
  padding: 28px 0;
}
#right-column .sidebar_title {
  color: white;
  font-size: 2rem;
  font-family: "Geist";
}
#right-column .cart-summary {
  margin-top: 2rem;
  background-color: var(--bg-white);
  border-radius: 20px;
}
#right-column .cart-summary p {
  margin-bottom: 0;
}
#right-column .cart-detailed-subtotals {
  overflow: hidden;
}
.cart-detailed-subtotals {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.cart-detailed-subtotals::after {
  content: none;
}
#right-column #cart-subtotal-products {
  order: 1;
  margin-bottom: 0;
  background-color: #f7f7f7;
  padding: 6px 12px;
  border-radius: 4px;
}
#right-column #cart-subtotal-shipping {
  order: 3;
  margin-bottom: 0;
}
#cart-subtotal-shipping {
  background-color: #ffffff;
  padding: 12px;
  border-radius: 8px;
  border: 1px solid #e3e3e3;
}
.cart-summary p {
  margin-bottom: 0;
}
.cart-summary .list_products {
  display: flex;
  flex-direction: column;
  gap: 4px;
  order: 2;
}
.cart-summary .list_products li {
  display: flex;
  align-items: center;
  gap: 8px;
  opacity: 0;
  transform: translateX(-50px);
}
.cart-summary .list_products li img {
  width: 34px;
  height: auto;
}
.cart-summary .list_products li .content_text {
  display: flex;
  justify-content: space-between;
  flex-grow: 1;
}
.cart-summary .list_products li .name {
  font-size: 0.8rem;
  color: var(--color-gray-light);
}
.cart-summary .list_products li .qty {
  font-size: 0.8rem;
  font-weight: 700;
}
button#close-sidebar {
  border: none !important;
  background-color: transparent !important;
  cursor: pointer;
  outline: none !important;
}
button#close-sidebar svg {
  stroke: white;
  width: 30px;
  height: auto;
}
#right-column .cart-summary .container_btn_cart {
  display: flex;
  justify-content: center;
  padding: 0 28px 16px 28px;
}
#right-column .cart-summary .container_btn_cart .btn {
  width: 100%;
  transform: scale(0);
}
#cart .cart-summary .list_products {
  display: none;
}
.cart_pin {
  position: absolute;
  top: -37px;
  right: 1.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--bg-tag-new);
  border: 2px solid var(--color-green-dark);
  width: 48px;
  height: 48px;
  border-radius: 50%;
  transform: translateY(16px) rotate(0);
  z-index: -1;
}
.cart_pin .cart-products-count {
  position: absolute;
  top: -5px;
  right: -8px;
  background-color: var(--color-green);
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
  width: 18px;
  height: 18px;
  font-size: 0.8rem;
  color: black;
  font-weight: 700;
}
.cart_pin .cart-products-count.long {
  border-radius: 20rem;
  width: 35px;
  right: -14px;
}
#right-column .empty_cart {
  padding: 28px;
  display: flex;
  justify-content: center;
}
#right-column .empty_cart p {
  color: var(--color-gray-light);
}
/*
********************************
PAGE AVIS PRODUIT
********************************
*/
#module-gsnippetsreviews-reviewForm #wrapper {
  padding-bottom: 5rem;
}
#module-gsnippetsreviews-reviewForm #content {
  border-radius: 12px;
  padding: 2rem 1rem 2rem 1rem;
}
#module-gsnippetsreviews-reviewForm .form-group {
  display: flex;
  flex-direction: column;
  align-items: self-start;
}
#module-gsnippetsreviews-reviewForm .form-group label {
  text-align: left;
  font-weight: 600;
}
#module-gsnippetsreviews-reviewForm #spr .pull-center {
  text-align: left !important;
}
#module-gsnippetsreviews-reviewForm #spr form {
  display: flex;
}
form textarea.form-control {
  border-radius: 8px;
}
#spr .spr_product_review_form {
  flex: initial !important;
}
#spr .container_form_review {
  flex-grow: 1;
}
#module-gsnippetsreviews-reviewForm #spr .product_info,
#module-gsnippetsreviews-reviewForm #spr .pull-left {
  padding-left: 15px;
}
/*
********************************
HEADER
********************************
*/
#header {
  display: flex;
  flex-direction: column;
  align-items: center;
  box-shadow: none;
  background-color: var(--bg-white);
}
#checkout #header {
  padding: 14px 0;
}
#checkout #header .content {
  display: flex;
  justify-content: space-between;
  max-width: var(--layout-width);
  margin: auto;
  width: 100%;
  align-items: center;
}
#checkout #header .checkout_header_content_right {
  display: flex;
  gap: 8px;
}
#header .header_top {
  display: flex;
  max-width: var(--layout-width);
  width: calc(100vw - 80px);
}
.language-selector button {
  display: flex;
  align-items: center;
  gap: 8px;
  text-transform: uppercase;
}
.language-selector .dropdown-menu {
  left: unset;
  right: 0;
}

.language-selector .dropdown-menu li a {
  text-transform: uppercase;
}
.dropdown .expand-more {
  color: var(--color-blue);
}
.header-banner {
  background-color: var(--color-green-light);
  width: 100%;
  text-align: center;
}
.header-banner p {
  margin-bottom: 0;
}
.header_bandeau {
  background: var(--bg-gradient);
  font-size: 0.8rem;
  font-weight: 500;
  overflow: hidden;
  width: 100%;
  z-index: 2;
  pointer-events: none;
}
body:has(.mm_menus_li.hover:hover) .header_bandeau {
  z-index: 200;
}
.header_bandeau p {
  color: white;
}
.header_bandeau .custom_block_bandeau {
  display: flex;
  justify-content: center;
  gap: 3rem;
  padding: 8px 0;
}
.header_bandeau p:nth-child(2) {
  display: none;
}
.header_bandeau p {
  margin-bottom: 0;
  text-align: center;
}
.header_bandeaup strong {
  font-weight: 900;
}
#header .content_left {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 24px;
  flex-grow: 1;
  padding: 16px 0;
}
#header .content_right {
  padding: 8px 0;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}
#header .content_left .content_searchbar {
  display: flex;
  align-items: center;
  gap: 28px;
}
#header .search-widgets {
  width: 980px;
  max-width: 100%;
}
#header .list_actions {
  display: flex;
  gap: 8px;
}
#header #_desktop_user_info .logout {
  display: none;
}
#header #_desktop_user_info a,
#header #_desktop_cart a {
  position: relative;
  width: 78px;
  height: 78px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  color: var(--color-blue);
  font-weight: 400;
  font-size: 0.8rem;
  border-radius: 15px;
}

#header #_desktop_cart svg {
  stroke: var(--color-blue);
}
#header #_desktop_user_info a:hover,
#header #_desktop_cart a:hover {
  background-color: rgba(255, 255, 255, 0.12);
}
#header #_desktop_user_info svg {
  height: 26px;
  width: auto;
}
#header #_desktop_cart a span,
#header #_desktop_cart a svg {
  pointer-events: none;
}
#header .cart-products-count {
  position: absolute;
  top: 6px;
  right: 15px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 19px;
  height: 19px;
  border-radius: 50%;
  background-color: var(--color-green);
  color: white;
  font-weight: 500;
  font-size: 0.75rem;
}
#header .cart-products-count.long {
  border-radius: 20rem;
  width: 35px;
  top: 7px;
  right: 24px;
}
#_desktop_contact_link {
  color: var(--bg-primary);
  font-size: 0.8rem;
  font-weight: 300;
  overflow: hidden;
}
#_desktop_contact_link #contact-link {
  display: flex;
  align-items: center;
  gap: 8px;
  padding-bottom: 8px;
  margin-bottom: 8px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}
#_desktop_contact_link a {
  color: var(--color-green);
  font-weight: 900;
  font-size: 1rem;
  white-space: nowrap;
}
#_desktop_contact_link #contact-link svg {
  min-width: 20px;
}
#header .content_mainnav {
  display: flex;
  align-items: center;
  gap: 12px;
}
.content_mainnav .menu ul {
  display: flex;
  gap: 12px;
}
#header .content_mainnav .menu ul li a,
.ets_mm_megamenu_content .mm_menus_li > a {
  display: flex;
  align-items: center;
  gap: 8px;
  color: var(--color-blue);
  font-size: 1rem;
  font-weight: 500;
  padding: 6px 16px;
  border-radius: 20rem;
  background-color: rgba(255, 255, 255, 0.12);
  text-transform: initial;
  border: 1px solid transparent;
  line-height: normal;
}
#header .content_mainnav .menu ul li a:hover {
  opacity: 0.8;
  border: 1px solid #ffffff52;
}
#header .content_mainnav .menu ul li.current a {
  border: 1px solid #ffffff5c;
}
#header .content_mainnav .menu ul li#category-297 a {
  background-color: white;
  border: 1px solid white;
  font-weight: 400;
  color: black;
}
#header .content_mainnav .menu ul li#category-297 a:hover svg {
  animation: tilt-shaking 0.25s 4;
}
#header .content_mainnav .menu ul li > .sub-menu {
  display: none !important;
}
#search_widget form input {
  height: 40px;
}
#search_widget form svg {
  position: absolute;
  right: 3px;
  top: 50%;
  transform: translateY(-50%);
  cursor: pointer;
}
#header .svg_burger rect {
  transition: all 0.4s ease-in-out;
}
#header .ets_mm_url:hover .svg_burger rect:nth-child(1) {
  width: 12px;
}
#header .ets_mm_url:hover .svg_burger rect:nth-child(2) {
  width: 18px;
}
#header .ets_mm_url:hover .svg_burger rect:nth-child(3) {
  width: 16px;
}
/*
********************************
MEGAMENU
********************************
*/
.ets_mm_megamenu {
  margin-top: 0;
  width: max-content;
}
.ets_mm_megamenu:hover {
  z-index: 100;
}
body #wrapper::before {
  content: "" !important;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.5);
  backdrop-filter: blur(75px);
  opacity: 0;
  z-index: 9;
  pointer-events: none;
  transition: all 0.3s ease;
}
body:has(.ets_mm_megamenu .mm_menus_li.mm_has_sub:hover) #wrapper::before {
  opacity: 1;
  pointer-events: initial;
}
.ets_mm_megamenu,
.ets_mm_megamenu_content,
.layout_layout1 .ets_mm_megamenu_content {
  background: transparent !important;
  background-color: transparent !important;
}

@media (min-width: 768px) {
  .ets_mm_megamenu.sticky_enabled.scroll_heading {
    position: relative;
    left: inherit;
    top: inherit;
  }
}
/*
.ets_mm_megamenu .mm_columns_ul {
  left: calc((100vw - var(--layout-width)) / 2 * (-1));
  padding-top: 80px;
  padding-bottom: 44px;
  padding-left: 160px;
  padding-right: 160px;
}
  */
.layout_layout1 .ets_mm_megamenu_content {
  border: none;
}
.ets_mm_megamenu .ets_mm_megamenu_content > .container {
  width: auto;
  padding: 0;
}
.mm_tabs_li.mm_tab_content_hoz .mm_columns_contents_ul {
  top: 0;
}
#header .layout_layout1 .ets_mm_block_content a {
  font-size: 1.125rem;
  font-weight: 400;
  display: inline-block;
  width: 100%;
  margin-bottom: 4px;
  padding-bottom: 0;
  border-bottom: none;
}
#header .layout_layout1 .ets_mm_block_content a:has(.mm_img_content) {
  display: block;
  border: none;
  margin-bottom: 0;
  padding-bottom: 0;
}
#header .layout_layout1 .ets_mm_block_content > ul > li:last-child a {
  border: none;
}

.layout_layout1 .ets_mm_block_content ul li a::before {
  content: none;
}
.mm_menus_li {
  width: max-content !important;
  border: none !important;
}
.layout_layout1 .mm_menus_li:last-child {
  border-right: none;
}
.layout_layout1 .mm_menus_li:nth-child(2) {
  border-left: none;
}
.ets_mm_megamenu_content .mm_menus_li > a {
  display: flex;
  align-items: center;
  gap: 8px;
  border: 1px solid transparent;
}
.ets_mm_megamenu_content .mm_menus_li > a::before,
.ets_mm_megamenu_content .mm_menus_li > a::after {
  content: none !important;
}
.mm_tabs_li .mm_columns_contents_ul {
  padding: 33px 5px 33px 5px;
}
.mm_menu_content_title {
  padding: 0;
  min-height: 0;
  text-transform: uppercase;
  font-weight: 600;
  font-size: 1.06rem;
}
.mm_tab_toggle_title {
  padding: 14px 15px;
}
.mm_tab_toggle_title a {
  font-size: 1.125rem;
  font-weight: 500;
}
.mm_menus_li .mm_columns_ul,
.mm_menus_li .mm_columns_ul.mm_columns_ul_tab {
  height: auto;
  background-color: var(--bg-white) !important;
  box-shadow: 4px 4px 20px -14px rgba(0, 0, 0, 0.25);
  overflow: hidden;
}
.layout_layout1.ets_mm_megamenu .mm_columns_ul {
  border: none;
}
.mm_columns_ul {
  width: 100vw !important;
  height: auto;
}
.mm_blocks_li {
  margin-bottom: 0;
}
.mm_img_content {
  text-align: right;
}
.mm_blocks_li:not(:has(.h4)):not(:has(.mm_block_type_image)) {
  padding-top: 51px;
}
.mm_columns_contents_ul {
  height: 100%;
  max-height: none;
  border: none !important;
}
.mm_tabs_li {
  float: none;
  pointer-events: auto;
}
.mm_tab_li_content {
  position: relative;
  border: none;
  background-color: var(--bg-primary);
  margin: 0;
}
.mm_tab_li_content::before {
  content: "";
  position: absolute;
  left: 14px;
  bottom: 0;
  height: 1px;
  width: calc(100% - 28px);
  background-color: #1143431a;
}
.mm_columns_ul > .mm_tabs_li:last-child > .mm_tab_li_content::before {
  content: none;
}
.ets_mm_megamenu_content_content
  > ul
  > li
  > ul
  > li:nth-child(1)
  > .mm_tab_li_content {
  margin-top: 2rem;
}
.mm_columns_ul > .mm_tabs_li:last-child > .mm_tab_li_content {
  margin-bottom: 2rem;
  border-bottom: none !important;
}
.ets_mm_block > .h4,
.ets_mm_block > .h4 a {
  font-family: "Geist" !important;
  font-weight: 700;
  font-size: 1rem !important;
  text-transform: uppercase;
  margin-bottom: 20px;
  border: none;
}
.layout_layout1 .mm_tabs_li.open .mm_tab_toggle_title a,
#header .layout_layout1 .mm_tabs_li.open .mm_tab_toggle_title a {
  color: var(--color-green-tertiary) !important;
  font-weight: 700;
}
.ets_mm_block_content img {
  transform: none !important;
  border-radius: 10px;
}
.ets_mm_block_content ul li:not(.item_has_img) {
  width: 100%;
}
body .layout_layout1.ets_mm_megamenu::before {
  content: none !important;
  left: -81px;
  top: calc(100% + 21px);
  width: 100vw;
  background-color: var(--color-green-tertiary) !important;
  filter: blur(67px);
  backdrop-filter: blur(75px);
}
/*
.clicktext_show_submenu .mm_menus_li > a.ets_mm_url {
  pointer-events: none;
}
  */
.mm_menu_content_title span.mm_arrow {
  display: none !important;
}
.mm_columns_ul .mm_columns_li:has(.ets_mm_block.mm_block_type_mnft) {
  border-left: 1px solid var(--color-green);
}
/*
********************************
MENU MOBILE
********************************
*/
.ybc-menu-toggle {
  background-color: var(--color-blue-secondary);
  padding: 8px 12px;
  font-size: 0.7rem;
  font-weight: 500;
  border-radius: 5rem;
  color: white;
  width: max-content;
}
.ybc-menu-toggle .icon-bar {
  background-color: white;
}

/*
********************************
SEARCHBAR
********************************
*/
.ui-autocomplete.searchbar-autocomplete {
  display: none !important;
  flex-direction: column;
  border-radius: 10px;
  display: flex;
  overflow: hidden;
  padding: 1rem 1rem 1rem 250px;
  position: fixed;
  top: 4.2rem !important;
  min-height: 16rem;
}
body:has(.js-fixed-header) .ui-autocomplete.searchbar-autocomplete {
  top: 4.8rem !important;
}
.ui-autocomplete.searchbar-autocomplete li a,
.ui-autocomplete.searchbar-autocomplete li a.ui-state-focus {
  font-size: 0.8rem;
}
.ui-autocomplete.searchbar-autocomplete li a:hover {
  border-radius: 6px;
}
.ui-autocomplete.searchbar-autocomplete li a span {
  max-width: 18rem;
  display: inline-block;
}
.content_suggestion_categories {
  position: absolute;
  height: 100%;
  left: 0;
  top: 0;
  min-width: 237px;
}
.content_suggestion_categories ul {
  height: 100%;
  overflow: auto;
}
.custom_searchbar_autocomplete {
  display: none;
  position: fixed;
  top: 5rem;
  left: calc((100vw - var(--layout-width)) / 2);
  width: var(--layout-width) !important;
  min-height: 18rem;
  max-width: 72rem;
  background-color: white;
  border-radius: 10px;
  overflow: hidden;
  z-index: 9999;
  box-shadow: 4px 4px 20px -14px rgba(0, 0, 0, 0.25);
}
.searchbar_active .custom_searchbar_autocomplete {
  display: flex;
}
.custom_searchbar_autocomplete .categories_suggestion,
.custom_searchbar_autocomplete .products_suggestion {
  display: flex;
  flex-direction: column;
}
.custom_searchbar_autocomplete .categories_suggestion {
  min-width: 18rem;
  max-width: 18rem;
}
.custom_searchbar_autocomplete .products_suggestion {
  flex-grow: 1;
}
.custom_searchbar_autocomplete .products_suggestion img {
  width: 3rem;
  max-height: 4rem;
  height: auto;
}
.custom_searchbar_autocomplete .section_title {
  padding: 1rem;
  background-color: var(--color-green-10);
  font-weight: 600;
  margin-bottom: 0;
  color: var(--color-blue);
}
.custom_searchbar_autocomplete ul {
  padding: 1rem;
}
.custom_searchbar_autocomplete .categories_suggestion ul {
  display: flex;
  flex-wrap: wrap;
  row-gap: 8px;
  column-gap: 12px;
  max-height: 280px;
  font-size: 0.8rem;
  color: var(--color-green-tertiary);
  overflow: auto;
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.custom_searchbar_autocomplete .categories_suggestion ul::-webkit-scrollbar {
  display: none;
}
.content_wrapper_categories {
  height: 100%;
  border-right: 1px solid #e1e1e1;
}
.custom_searchbar_autocomplete .categories_suggestion ul li {
  height: max-content;
}
.custom_searchbar_autocomplete .categories_suggestion ul li a {
  background-color: #efefef;
  border-radius: 5rem;
  padding: 2px 9px;
}
.custom_searchbar_autocomplete .categories_suggestion .section_title {
  border-right: 1px solid #ffffff;
}
.custom_searchbar_autocomplete .products_suggestion ul {
  display: grid;
  grid-template-columns: 1fr 1fr;
  font-size: 0.9rem;
}
.custom_searchbar_autocomplete .products_suggestion ul:has(.empty_row) {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
}
.custom_searchbar_autocomplete .products_suggestion ul li.empty_row p {
  color: var(--color-gray-light);
  text-align: center;
}
.custom_searchbar_autocomplete .products_suggestion ul li a {
  display: flex;
  align-items: center;
  gap: 8px;
}
body.searchbar_active #wrapper::before {
  opacity: 1;
  pointer-events: initial;
}
.skeleton-loader {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 0;
}
.skeleton-thumbnail {
  width: 48px;
  height: 48px;
  background: #e0e0e0;
  border-radius: 4px;
  animation: shimmer 1.5s infinite;
}
.skeleton-text {
  flex: 1;
  max-width: 225px;
  height: 16px;
  background: #e0e0e0;
  border-radius: 4px;
  animation: shimmer 1.5s infinite;
}
.skeleton-loader > * {
  background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
  background-size: 200px 100%;
}
/*
********************************
SLIDER HOME
********************************
*/
.container_swiper_homepage {
  position: relative;
}
.container_swiper_homepage .content_swiper_navigation .swiper-button-prev {
  transform: translateX(-32px);
}
.container_swiper_homepage .content_swiper_navigation .swiper-button-next {
  transform: translateX(32px);
}
#swiper-homepage .swiper-slide {
  border-radius: 20px;
  overflow: hidden;
}

.container_swiper_homepage .swiper-pagination-bullet svg path {
  fill: transparent;
}
.customblocks_slider .swiper-pagination-bullet-active svg path {
  fill: white;
}
.swiper-pagination-bullet svg path {
  fill: transparent;
}
.swiper-pagination-bullet-active svg path {
  fill: var(--color-green);
}
#swiper-homepage-thumbs {
  width: 1076px;
  max-width: 100%;
  padding-top: 1rem;
}
#swiper-homepage-thumbs .swiper-slide {
  display: inline-block;
  background-color: var(--bg-white);
  border-radius: 20px;
  border: 2px solid var(--bg-white);
  padding: 17px 24px;
  min-height: 94px;
  cursor: pointer;
}
#swiper-homepage-thumbs .swiper-slide p {
  font-family: "Geist";
  font-weight: 700;
  font-size: 1.125rem;
}
#swiper-homepage-thumbs:not(.swiper-initialized) .swiper-slide {
  width: 348px;
  margin-right: 16px;
}
#swiper-homepage-thumbs .swiper-slide:hover,
#swiper-homepage-thumbs .swiper-slide.swiper-slide-thumb-active {
  border: 2px solid var(--color-green);
}
#swiper-homepage-thumbs .swiper-slide:hover p,
#swiper-homepage-thumbs .swiper-slide.swiper-slide-thumb-active p {
  color: var(--color-green);
}
/*
********************************
EVERBLOCK - BLOCK RESSURANCE
********************************
*/
.everblock {
  float: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.bloc_reassurance p {
  margin-bottom: 0;
}
.bloc_reassurance ul {
  display: grid;
  grid-template-columns: repeat(4, 307px);
  justify-content: center;
  gap: 14px;
}
#block-reassurance {
  margin: 2rem 0;
}
#block-reassurance li {
  border-bottom: none;
}
.bloc_reassurance .block-reassurance-item {
  border-radius: 10px;
  background-color: var(--color-green);
  padding: 15px 8px;
  height: 100%;
}

.bloc_reassurance .block-reassurance-item p {
  color: white;
  display: flex;
  flex-direction: column;
  align-items: center;
  font-weight: 500;
  font-size: 0.8rem;
  text-align: center;
  gap: 8px;
  line-height: 1;
}
.bloc_reassurance .block-reassurance-item p strong {
  font-family: "Geist";
  font-weight: 900;
  font-size: 1.75rem;
}
.bloc_reassurance .swiper {
  max-width: 330px;
}
.blockreassurance_product {
  position: relative;
  margin-top: 1rem;
}
.blockreassurance_product .swiper-pagination {
  bottom: -2rem;
  z-index: 0;
}
/*
********************************
BLOCK CATEGORIES
********************************
*/
.block-categories .products_categories_title {
  text-align: center;
}
.block-categories {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  padding: 1rem 0 1rem 0;
  width: 100%;
}
.block-categories ul {
  display: flex;
  justify-content: center;
  gap: 40px;
}
.block-categories .swiper {
  max-width: 100%;
  width: 100%;
}
.block-categories .swiper:not(.swiper-initialized) .swiper-slide {
  width: 240px;
  height: 213px;
  margin-right: 40px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  position: relative;
}
.block-categories .swiper:not(.swiper-initialized) .swiper-slide::before {
  content: "";
  width: 240px;
  height: 158px;
  border-radius: 10px;
  background-color: #dfdfdf;
}
.block-categories .swiper:not(.swiper-initialized) .swiper-slide a::before {
  content: none;
}
.block-categories .swiper:not(.swiper-initialized) .swiper-slide figure,
.block-categories .swiper:not(.swiper-initialized) .swiper-slide a {
  display: none;
}
.block-categories .swiper-wrapper {
  display: flex;
}
.block-categories .swiper-slide {
  position: relative;
  display: flex;
  flex-direction: column;
}
.block-categories .swiper-slide a {
  position: relative;
  width: 240px;
  height: 213px;
  max-width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  color: white;
  padding: 0 8px 19px 8px;
  margin: auto;
  font-size: 1.56rem;
  font-weight: 900 !important;
  text-align: center;
}
.block-categories .swiper-slide a::before {
  content: "";
  width: 240px;
  height: 158px;
  max-width: 100%;
  border-radius: 10px;
  background-color: var(--color-blue);
  position: absolute;
  bottom: 0;
  left: 0;
}
.block-categories .swiper-slide:nth-child(4n + 1) a::before {
  background-color: var(--color-blue);
}

.block-categories .swiper-slide:nth-child(4n + 2) a::before {
  background-color: var(--color-green-light);
}
.block-categories .swiper-slide:nth-child(4n + 2) a {
  color: var(--color-blue);
}
.block-categories .swiper-slide:nth-child(4n + 3) a::before {
  background-color: var(--color-blue-secondary);
}

.block-categories .swiper-slide:nth-child(4n + 4) a::before {
  background-color: var(--color-green);
}

.block-categories .swiper-slide a span {
  position: relative;
}
.block-categories .swiper-slide figure {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0;
  pointer-events: none;
}
.block-categories .swiper-slide img {
  z-index: 1;
  width: auto;
  height: auto;
  transition: all 0.3s ease-in-out;
}
.block-categories .swiper-slide:hover img {
  transform: translateY(-8px);
}

/*
********************************
CUSTOM TEXT - bloc double
********************************
*/
#custom-text {
  padding: 0;
}
#custom-text .container_bloc_double {
  display: flex;
  gap: 14px;
  justify-content: center;
}
#custom-text .container_bloc_double > div {
  border-radius: 10px;
  overflow: hidden;
}

/*
********************************
EVERBLOCK - BLOCK LIST CATEGORIES BOTTOM
********************************
*/
.list_categories_bottom {
  display: flex;
  flex-direction: column;
  width: 100%;
  margin-bottom: 5rem;
  padding-top: 3rem;
}
.list_categories_bottom ul {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}
.list_categories_bottom ul li a {
  display: inline-block;
  background-color: white;
  border-radius: 20rem;
  color: var(--color-green-dark);
  padding: 11px 20px;
  border: 1px solid transparent;
  opacity: 1;
  transition: opacity 0.3s ease-in-out;
}
.list_categories_bottom ul li a:hover {
  border: 1px solid var(--color-green);
}
body:has(.list_categories_bottom ul li a:hover)
  .list_categories_bottom
  ul
  li
  a:not(:hover) {
  opacity: 0.7;
}
/*
********************************
FEATURED-PRODUCTS - Selection du moment
********************************
*/

.products.container_products_swiper {
  width: 100%;
  max-width: 100%;
  position: relative;
}
.featured-products .swiper {
  width: calc(var(--layout-width) - 377px);
  max-width: calc(var(--layout-width) - 377px);
}
.featured-products .container_products_swiper.simple .swiper {
  width: 100%;
  max-width: 100%;
}
.featured-products .container_title_slider {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 20px 10px 20px 40px;
  max-width: 377px;
  max-height: 465px;
  background: var(--bg-gradient);
  border-radius: 10px;
  overflow: hidden;
}
.featured-products .container_title_slider .svg_draw_line {
  position: absolute;
  top: -1rem;
  right: -3.5rem;
}
.featured-products .container_title_slider .products-section-title {
  color: white;
  font-weight: 900;
  font-size: 4.375rem;
  margin: 0 0 1rem 0;
}
.featured-products.products_promo {
  position: relative;
  display: grid;
  grid-template-columns: 377px 1fr;
  gap: 24px;
}

.swiper-button-prev:after,
.swiper-rtl .swiper-button-next:after,
.swiper-button-next:after,
.swiper-rtl .swiper-button-prev:after {
  content: none !important;
}
.swiper-pagination-bullet {
  opacity: 1;
  background: transparent;
  border-radius: 0;
  width: auto;
  height: auto;
}

.featured-products h2,
.featured-products .h2 {
  text-align: left;
}
.featured-products .swiper-slide,
.featured-products .swiper-slide .js-product {
  width: max-content;
  float: none;
}
.featured-products .swiper-slide .js-product {
  padding-left: 0;
  padding-right: 0;
}
.products .swiper {
  padding: 0 0 42px 0;
}
.products {
  position: relative;
}
.products .content_swiper_navigation .swiper-button-prev {
  transform: translateX(-45px);
}
.products .content_swiper_navigation .swiper-button-next {
  transform: translateX(45px);
}
.content_swiper_navigation {
  display: flex;
  justify-content: space-between;
  width: 100%;
  position: absolute;
  left: 0;
  top: 38%;
  transform: translateY(-50%);
  z-index: 2;
  pointer-events: none;
}
.products .content_swiper_navigation {
  top: 45%;
}
.carousel-control,
.content_swiper_navigation .swiper-button,
.swiper .content_swiper_navigation .swiper-button {
  background-color: var(--color-green);
  width: 64px;
  height: 64px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: visible;
  border: 5px solid var(--bg-primary);
}
.product_details_left .swiper .content_swiper_navigation .swiper-button {
  width: 45px;
  height: 45px;
}
.featured-products .swiper:not(.swiper-initialized) .swiper-slide {
  margin-right: 28px;
  width: 339px;
  height: 464px;
  border-radius: 10px;
  background-color: #d3d3d3;
}
.container_products_swiper:has(
    .featured-products .swiper .swiper-pagination-lock
  )
  .content_swiper_navigation {
  display: none !important;
}
/*
********************************
EVER BLOCK - Block bottom
********************************
*/
.custom_block_bottom h1 {
  font-size: 2.18rem;
  font-weight: 700;
  color: black;
  margin-bottom: 2rem;
}
.custom_block_bottom h2 {
  color: var(--color-green-tertiary);
  font-size: 1.25rem;
  font-weight: 500;
  margin-bottom: 8px;
}
.custom_block_bottom {
  position: relative;
  margin-top: 5rem;
  margin-bottom: 1.5rem;
  max-height: 28rem;
  padding-bottom: 4rem;
  overflow: hidden;
  transition: all 0.4s ease-in-out;
  padding-left: 0;
  padding-right: 0;
}
.custom_block_bottom.js-active {
  max-height: 50rem;
}

.custom_block_bottom p:has(.btn.read_more) {
  position: absolute;
  bottom: 0;
  left: 0;
  margin-bottom: 0 !important;
  width: 100%;
  padding: 2rem 0;
  background-color: var(--bg-primary);
}
.custom_block_bottom p:has(.read_more) {
  margin-top: 1.5rem;
}
.custom_block_bottom p .read_more {
  padding: 0;
  color: var(--color-blue);
  text-decoration: underline;
  background-color: transparent;
  border: none;
  outline: none;
  cursor: pointer;
}
/*
********************************
PRODUCT CARD
********************************
*/
.product-miniature {
  position: relative;
  background-color: white;
  width: var(--card-width);
  max-width: var(--card-width);
  height: 465px;
  min-height: 465px;
  padding: 0;
  border-radius: 10px;
  transition: all 0.4s ease;
  border: 2px solid var(--color-blue-secondary);
  overflow: hidden;
}
#products .product-description,
.featured-products .product-description,
.product-accessories .product-description,
.product-miniature .product-description {
  height: max-content !important;
}
.featured-products .swiper-slide .js-product,
.swiper .product-miniature {
  width: 100%;
  max-width: 100%;
}
.product-miniature:hover {
  box-shadow: none;
}
.product-miniature .product_link::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}
.product-miniature .thumbnail-container {
  position: relative;
  flex-grow: 1;
  display: flex;
  justify-content: center;
  align-items: center;
}
.product-miniature .thumbnail-container::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  background-color: rgba(255, 255, 255, 0.5);
  backdrop-filter: blur(20px);
  opacity: 0;
  transition: opacity 0.2s ease-in-out;
}
.product-miniature:hover .thumbnail-container::before {
  opacity: 1;
}
.product-miniature .thumbnail-container .svg_plus {
  opacity: 0;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) scale(0.8);
  width: 55px;
  height: 55px;
  stroke: black;
  transition: transform 0.2s ease-in-out;
}
.product-miniature:hover .thumbnail-container .svg_plus {
  opacity: 1;
  transform: translate(-50%, -50%) scale(1);
}
.product-miniature .product-thumbnail {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
  width: 100%;
}
.product-miniature p {
  margin-bottom: 0;
}
.product-miniature .product-thumbnail picture img {
  margin: auto;
}
.product-miniature .product-thumbnail .thumbnail-container-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1rem;
  min-height: 71px;
  position: absolute;
  width: 100%;
  top: 0;
  left: 0;
}
.product-miniature .product_manufacturer img {
  height: 20px;
  width: auto;
}
.product-miniature .product_manufacturer img[alt="Cuda"] {
  height: 40px;
}
.product-miniature .product_manufacturer img[alt="Eyelevel"] {
  height: 24px;
}
.product-miniature .product-description {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 16px;
  padding: 12px 16px;
  background-color: var(--color-green-5);
  border-radius: 10px;
  min-height: 152px;
  height: max-content !important;
}
.product-miniature .product-description .content_desc_bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.product-miniature
  .product-description
  .content_desc_bottom:has(.pro-only-label) {
  flex-direction: column-reverse;
  align-items: flex-end;
  gap: 4px;
}
.product-miniature .pro-only-label {
  color: white;
  width: 100%;
  padding: 8px 0;
  text-align: center;
  font-size: 1rem;
  display: block;
  background-color: var(--color-blue-secondary);
  border-radius: 10px;
}
.product-miniature .product-title {
  text-align: left;
  color: var(--color-blue);
  font-size: 1.25rem;
  font-weight: 700;
}
.product-miniature .container_bottom_actions {
  position: relative;
  min-height: 64px;
}
.product-miniature .content_bottom {
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding-top: 32px;
}
.product-miniature .container_bottom_actions::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  height: 2px;
  width: 80%;
  border-radius: 5rem;
  background-color: #dafced;
}
.content_stock .status_stock {
  position: relative;
  display: flex;
  align-items: center;
  gap: 8px;
  color: var(--color-green);
  font-weight: 700;
  font-size: 0.75rem;
  text-transform: uppercase;
  white-space: nowrap;
}
.product-miniature .content_stock {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}
.content_stock .status_stock::before {
  content: "";
  width: 10px;
  height: 10px;
  min-width: 10px;
  border-radius: 50%;
  display: inline-block;
}
.content_stock .status_stock.unavailable {
  color: var(--color-red);
}
.content_stock .status_stock.last_remaining_items {
  color: var(--color-orange);
}
.content_stock .status_stock.available::before {
  background-color: var(--color-green);
}
.content_stock .status_stock.unavailable::before {
  background-color: var(--color-red);
}
.content_stock .status_stock.last_remaining_items::before {
  background-color: var(--color-orange);
}
.product-miniature .info_delivery {
  display: none;
  font-weight: 300;
  font-size: 0.625rem;
}
.product-miniature .container_price {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.product-miniature .product-price-and-shipping .price {
  font-weight: 700;
  font-size: 1.875rem;
  color: var(--color-blue-secondary);
}
.product-miniature .regular-price {
  font-style: italic;
  font-size: 0.875rem;
  color: var(--color-blue-secondary);
}
.product-miniature .price_unity {
  font-style: italic;
  color: var(--color-green-tertiary);
  font-size: 0.68rem;
}
.product-miniature .product-quantity input.input-group {
  border: none;
  border-radius: 10rem;
  font-weight: 500;
  width: 70px;
  height: 28px;
  text-align: center;
}
.product-miniature .product-flags {
  position: relative;
  justify-content: flex-end;
}
.product-flags {
  display: flex;
  flex-direction: row;
  gap: 4px;
}
.product-miniature .product-flag.custom-flag {
  display: none !important;
}
.product-miniature .product-flags li.product-flag,
.product-flags li.product-flag {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-size: 0.9rem;
  font-weight: 500;
  height: 26px;
  min-height: 0;
  text-transform: initial;
  border-radius: 10px;
  width: max-content;
  filter: var(--shadow-flags);
  pointer-events: none;
  padding: 0 14px;
  margin-top: 0;
}
.product-flags li.product-flag.new {
  display: none;
  background-color: var(--bg-tag-new);
  color: var(--bg-white);
}
.product-flags li.product-flag.out_of_stock {
  background-color: var(--bg-tag-new);
}
.product-flags li.product-flag.on-sale {
  background-color: var(--bg-tag-promo);
  color: black;
  order: 1;
}
.product-flags li.product-flag.discount {
  background: var(--bg-gradient);
  color: white;
  order: 1;
}
.product-miniature .product-flags li.product-flag:has(.svg_fr),
.product-flags li.product-flag:has(.svg_fr) {
  background-color: transparent;
  padding: 0;
  justify-content: flex-end;
  order: 4;
}
.product-flags .svg_fr {
  border-radius: 10rem;
}
.product-flags li.product-flag:has(.svg_eco) {
  padding: 0;
  width: 39px;
  min-width: 0;
  background-color: var(--bg-tag-eco);
  order: 3;
}
.product-flags li.product-flag:has(.svg_eco) span {
  display: none;
}

/*afficher text "eco repsonsable" si 1 ou 2 flags */
.product-flags:has(> .feature_16:only-child) li.product-flag:has(.svg_eco),
.product-flags:has(> .feature_16:nth-child(1):first-child):has(
    > .feature_20:nth-child(2):last-child
  )
  li.product-flag:has(.svg_eco) {
  padding: 0 14px;
  width: max-content;
}
.product-flags:has(> .feature_16:only-child) li.product-flag:has(.svg_eco) span,
.product-flags:has(> .feature_16:nth-child(1):first-child):has(
    > .feature_20:nth-child(2):last-child
  )
  li.product-flag:has(.svg_eco)
  span {
  display: initial;
}
.product-miniature .content_actions {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-radius: 20rem;
  padding-left: 0;
  gap: 8px;
  z-index: 2;
}
.product-miniature .content_actions .price {
  margin-right: auto;
  font-weight: 700;
  font-size: 1.125rem;
  padding-left: 20px;
}
.product-miniature .content_actions .product-quantity {
  padding-right: 14px;
}
.product-miniature
  .content_actions:has(.btn_actions button:disabled)
  .product-quantity {
  display: none !important;
}
.product-miniature .content_bottom form {
  position: absolute;
  top: -21px;
  left: 50%;
  z-index: 1;
}
.product-miniature .content_bottom form:has(.btn_actions .svg_plus) {
  pointer-events: none;
}
.product-miniature .btn_actions {
  transform: translateX(-50%);
  display: flex;
  justify-content: center;
  align-items: center;
  width: 46px;
  height: 46px;
  border-radius: 50%;
  background-color: var(--color-green);
  border: 5px solid white;
  filter: drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.1));
}
.product-miniature .btn_actions button.add-to-cart {
  padding: 0;
  background-color: transparent;
}
.product-miniature .text_see_product {
  color: black;
  font-weight: 500;
  padding-left: 20px;
}
.product-miniature:has(.text_see_product) form {
  pointer-events: none;
}
.product-miniature .product-quantity .qty {
  margin: 0;
}
.product-miniature .stars-container > div {
  margin: 0 !important;
}
.product-miniature .stars-container img {
  width: 75px;
  height: auto;
}
.product-miniature .stars-container a,
.product-miniature .stars-container > div {
  display: flex !important;
  align-items: center;
  gap: 8px;
}
.product-miniature .stars-container span,
.product-miniature .stars-container a span {
  width: auto !important;
  color: black !important;
  font-size: 0.9rem;
  font-weight: 400;
}
.product-miniature .customization_flag {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 8px;
}
.product-miniature .customization_flag_libelle {
  display: flex;
  align-items: center;
  gap: 4px;
}
.product-miniature .customization_flag p {
  color: var(--color-gray-light);
  font-style: italic;
}
.product-miniature .customization_flag svg {
  width: 18px;
  height: auto;
  stroke: var(--color-gray-light);
}
.product-miniature .variant-links {
  position: initial;
  top: unset;
  display: flex;
  align-items: center;
  width: auto;
  padding: 0;
}
.product-miniature .variant-links a,
.product-miniature .variant-links div {
  width: 14px;
  height: 14px;
  border-radius: 50%;
  margin: 0 0 0 -4px;
  border: 1px solid white;
}
.product-miniature .variant-links div.multiple_colors {
  border: none;
  width: auto;
  background-color: transparent;
  height: 14px;
  margin: -4px 0 0 -4px;
}
.product-miniature .variant-links div.multiple_colors svg {
  stroke: none;
  width: 14px;
  height: 14px;
}
/*
********************************
INIT GSAP - PRODUCT CARD
********************************
*/

/*
********************************
FORM
********************************
*/
.form-group {
  display: flex;
  flex-direction: column;
}
form .form-control-label {
  text-align: left;
}
form input {
  max-width: 100%;
}
.input-group.focus {
  outline: initial;
}
.btn {
  position: relative;
  border-radius: 10px;
  font-weight: 700;
  font-size: 1rem;
  text-transform: initial;
  outline: none;
  line-height: initial;
  box-shadow: none;
  width: max-content;
  padding: 6px 20px;
  display: flex;
  align-items: center;
  gap: 28px;
}

.btn.btn-primary {
  background-color: var(--bg-white);
  color: var(--color-blue-secondary);
}
.btn.btn-primary.btn-primary.disabled {
  opacity: 0.4;
}
.btn.btn-secondary {
  background-color: var(--color-blue);
  color: white;
}
.btn.btn-tertiary {
  background-color: var(--color-blue-secondary);
  color: white;
}
.btn.btn-green {
  background-color: var(--color-green);
  color: white;
}
.btn-secondary.focus,
.btn-secondary:focus,
.btn-tertiary:focus,
.btn.btn-green:focus,
.focus.btn-tertiary {
  border: none;
  outline: none;
}
form input,
#search_widget form input,
.form-control {
  border-radius: 20rem;
  background-color: var(--bg-primary);
  font-weight: 500;
  border: 1px solid transparent;
  outline: none !important;
  padding: 8px 22px;
}
form input:focus,
#search_widget form input:focus,
.form-control:focus {
  background-color: white;
  border: 1px solid #c1c1c1;
}
input[type="checkbox"]:not(.input-color):not(.toggle_price_input),
input[type="radio"]:not(.input-color):not(.toggle_price_input) {
  display: none;
}
input[type="checkbox"]:not(.toggle_price_input) + label,
input[type="radio"] + label {
  position: relative;
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 0;
}
input[type="checkbox"]:not(.toggle_price_input) + label::before,
input[type="radio"] + label::before {
  content: "";
  display: inline-block;
  width: 15px;
  height: 15px;
  border-radius: 5px;
  border: 1px solid var(--color-blue-secondary);
  background-color: var(--bg-white);
  cursor: pointer;
}
input[type="checkbox"]:not(.toggle_price_input):checked + label::before,
input[type="radio"]:checked + label::before {
  background-color: var(--color-blue-secondary);
  border: 1px solid var(--color-blue-secondary);
}
input[type="checkbox"]:not(.toggle_price_input) + label::after,
input[type="radio"] + label::after {
  content: "";
  position: absolute;
  left: 2px;
  top: 6px;
  width: 10px;
  height: 8px;
  background: url("../img/check.png");
  background-size: contain;
  background-repeat: no-repeat;
  opacity: 0;
  cursor: pointer;
}
input[type="checkbox"]:not(.toggle_price_input):checked + label::after,
input[type="radio"]:checked + label::after {
  opacity: 1;
}
.custom-checkbox input[type="checkbox"]:not(.toggle_price_input) + span,
.custom-checkbox input[type="radio"] + span {
  border-radius: 4px;
  border: 1px solid var(--color-blue) !important;
}
.custom-checkbox input[type="checkbox"]:not(.toggle_price_input):checked + span,
.custom-checkbox input[type="radio"]:checked + span {
  background-color: var(--color-green);
}
.custom-radio input[type="checkbox"]:not(.toggle_price_input):checked + span,
.custom-radio input[type="radio"]:checked + span {
  background-color: var(--color-green);
  top: 50%;
  left: 50%;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
#left-column .btn_sumbit_filter {
  display: none;
  border: none;
  background-color: black;
  color: white;
  padding: 1rem;
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  align-items: center;
  justify-content: center;
  gap: 12px;
  z-index: 10;
}
form .progress {
  height: 8px;
}
form .progress,
form .progress-bar {
  border-radius: 10rem;
}

/*
********************************
FORM ADDRESS
********************************
*/

#invoice-address .form-fields {
  display: grid;
  grid-template-columns: 1fr 1fr;
  column-gap: 40px;
}
#invoice-address .js-input-column:has(#field-alias) {
  width: 50%;
}
#invoice-address .form-fields .form-group:has(#field-alias),
#invoice-address .form-fields .form-group:has(#field-address1) {
  grid-column: 1 / span 2;
}
body#checkout .cancel-address {
  color: var(--color-blue);
}
/*
********************************
PRETTYBLOCKS - IMAGE TEXT
********************************
*/
.customblocks > .container {
  width: 100%;
  max-width: var(--layout-width);
  margin: auto;
  padding-left: 0;
  padding-right: 0;
}
.customblocks_image_texte {
  margin-bottom: 4rem;
}
.customblocks_image_texte > .container {
  position: relative;
  display: flex;
  align-items: center;
  gap: 80px;
}

.text_subtitle {
  font-weight: 700;
  font-size: 1.25rem;
  margin-bottom: 2rem;
}

.customblocks_image_texte {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background-color: var(--color-green-light);
  margin-top: 9rem;
}
.customblocks_image_texte.secondary .content_image img {
  border-radius: 20px;
  transform: translateY(-39px);
}
.customblocks_image_texte .content_text {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.customblocks_image_texte .content_image img {
  border-radius: 20px;
  transform: translateY(35px);
}
.customblocks_image_texte .svg_draw_line {
  position: absolute;
  right: var(--ignore-margin);
  top: 0;
}
.customblocks_image_texte:not(.secondary) .svg_draw_line {
  right: unset;
  left: var(--ignore-margin);
}
.customblocks_image_texte .svg_draw_triangle {
  position: absolute;
  right: var(--ignore-margin);
  bottom: 0;
  transform: translateX(5rem);
}
/*
********************************
PRETTYBLOCKS - SLIDER HOME
********************************
*/
.customblocks_slider .swiper-slide img.img_cover {
  height: 503px;
  object-fit: cover;
}
.customblocks_slider .swiper-slide img.manufacturer_logo {
  width: max-content;
  height: auto;
}
.customblocks_slider .content_text {
  position: absolute;
  left: calc((100vw - var(--layout-width)) / 2);
  top: 50%;
  transform: translateY(-50%);
  display: flex;
  flex-direction: column;
  gap: 18px;
  columns: 1rem;
  background-color: var(--bg-white);
  border-radius: 10px;
  padding: 26px;
  min-width: 507px;
  max-width: 507px;
}
.customblocks_slider .content_text .content_top {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.customblocks_slider .content_text .content_price {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.customblocks_slider .content_text .content_price p {
  display: flex;
  align-items: flex-start;
  line-height: normal;
  gap: 4px;
  font-size: 2.5rem;
  font-weight: 900;
  color: var(--color-green);
}
.customblocks_slider .content_text .content_price p span:not(.value) {
  font-size: 1.5rem;
}
.customblocks_slider .content_text .content_price:has(.new_price) .price {
  color: var(--color-blue);
}
.customblocks_slider
  .content_text
  .content_price:has(.new_price)
  .price
  .value {
  text-decoration: line-through;
}
.customblocks_slider .content_text .product_name {
  font-weight: 900;
  font-size: 1.875rem;
  line-height: 1.1;
}
.customblocks_slider .content_text .flag_discount {
  background: var(--bg-gradient);
  color: white;
  border-radius: 10px;
  font-size: 1.25rem;
  font-weight: 900;
  min-width: 99px;
  min-height: 48px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.swiper-button-next,
.swiper-button-prev {
  width: 77px;
  height: 77px;
  border-radius: 10px;
  background-color: var(--bg-white);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 18px;
}
.swiper-button-prev {
  left: 40px;
}
.swiper-button-next {
  right: 40px;
}
/*
********************************
PRETTYBLOCKS - REASSURANCE
********************************
*/
.customblocks_reassurance {
  display: flex;
  gap: 34px;
}
.customblocks_reassurance .item {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
  max-width: 142px;
  min-width: 142px;
  padding-bottom: 8px;
}
.customblocks_reassurance .item::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 80%;
  background-color: var(--bg-white);
  border-radius: 10px;
}
.customblocks_reassurance .item svg {
  position: relative;
}
.customblocks_reassurance .item p {
  position: relative;
  text-align: center;
  margin-bottom: 0;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 0.87rem;
}
/*
********************************
PRETTYBLOCKS - PRODUCTS TABS
********************************
*/
.customblocks_featured_product {
  margin: 4rem 0 4rem 0;
}
.tabs_products .tabs_header {
  display: flex;
  align-items: flex-end;
  justify-content: space-evenly;
  margin-bottom: 26px;
  border-bottom: 2px solid #eaf3d2;
}
.tabs_products .tabs_header li {
  position: relative;
  padding-bottom: 1rem;
  cursor: pointer;
}
.tabs_products .tabs_header li.js-active::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 6px;
  background-color: var(--color-green);
  transform: translateY(50%);
}
.tabs_products .tabs_body > .content {
  display: none;
}
.tabs_products .tabs_body > .content.js-active {
  display: block;
}
.tabs_products .tabs_body .product-list {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-template-rows: 1fr 1fr;
  flex-wrap: wrap;
  gap: 24px;
}
.tabs_products .tabs_body .product-list .product-miniature {
  max-width: 100%;
}
.tabs_products .tabs_body .product-list .manufacturer_details {
  position: relative;
  grid-column: 1 / 3;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  padding-left: 30px;
  border-radius: 10px;
  background-repeat: no-repeat !important;
  background-size: cover !important;
}
.tabs_products .tabs_body .product-list .manufacturer_details_content {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  background-color: var(--color-blue);
  width: 50%;
  min-height: 66%;
  padding: 48px 20px 20px 20px;
  border-radius: 14px;
}
.tabs_products .tabs_body .product-list .manufacturer_details_content img {
  width: max-content;
  height: auto;
}
.tabs_products
  .content:where(
    [data-manufacturer="4"],
    [data-manufacturer="3"],
    [data-manufacturer="5"],
    [data-manufacturer="2"],
    [data-manufacturer="1"]
  )
  .manufacturer_details_content
  img {
  filter: brightness(0) invert(1);
}

.tabs_products .tabs_body .product-list .manufacturer_details_content p {
  color: white;
}
/*
********************************
PRETTYBLOCKS - PRODUCTS TABS V2
********************************
*/
.customblocks_featured_product.second .tabs_products .tabs_body .product-list {
  display: flex;
  position: relative;
}
.customblocks_featured_product.second .products {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
}
.customblocks_featured_product.second .products::before,
.customblocks_featured_product.second .products::after {
  content: "";
}
.customblocks_featured_product.second .products::before {
  grid-column: 1 / 2;
  grid-row: 1 / 2;
}
.customblocks_featured_product.second .products::after {
  grid-column: 2 / 3;
  grid-row: 1 / 2;
}
.customblocks_featured_product.second .featured-products {
  margin-top: 0 !important;
  width: 100%;
}
.customblocks_featured_product.second .products .product {
  width: 100%;
  padding: 0;
}
.customblocks_featured_product.second
  .tabs_products
  .tabs_body
  .product-list
  .manufacturer_details {
  position: absolute;
  top: 0;
  left: 0;
  width: calc((100% / 2) - 12px);
  height: 465px;
}
/*
********************************
NEWSLETTER
********************************
*/
.block_newsletter {
  padding: 24px 0;
  overflow: hidden;
}
.block_newsletter > .row {
  display: flex;
  align-items: center;
}
.block_newsletter form .input-wrapper {
  overflow: visible;
}
.block_newsletter form > .row {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.block_newsletter p {
  margin-bottom: 0;
}
.block_newsletter form p.conditions {
  display: none;
}
.block_newsletter form p.form_text {
  color: white;
  font-weight: 400;
  font-size: 1rem;
}
.block_newsletter #block-newsletter-label {
  color: var(--color-green-tertiary);
  font-family: "Lexend";
  font-weight: 900;
  font-size: 2.5rem;
  margin: 0;
  padding: 0;
}
.block_newsletter #block-newsletter-label span {
  font-family: "Geist";
  font-weight: 300;
  font-size: 2.5rem;
}
.block_newsletter .input-wrapper {
  display: flex;
  gap: 24px;
}
.block_newsletter input[type="email"] {
  flex-grow: 1;
  max-width: 450px;
  margin-right: 1rem;
}
.block_newsletter .text_info {
  font-size: 0.652rem;
  font-weight: 300;
  max-width: 90%;
}
.block_newsletter .text_info p {
  color: black;
}
.block_newsletter .svg_draw {
  position: absolute;
  z-index: 0;
  right: -1px;
  top: 4px;
}
/*
********************************
FOOTER
********************************
*/
#footer .svg_triangle {
  position: absolute;
  right: 0;
  bottom: 0;
}
#footer {
  position: relative;
  padding-top: 0;
  background-color: var(--bg-white);
  max-width: 100vw;
  overflow: hidden;
}
#footer > .container {
  position: relative;
}
#footer .row:has(.footer_baseline) {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  padding: 3rem 0;
}
#footer p.h3,
#footer p.h3 a,
#footer p.h4 {
  text-transform: initial;
  color: var(--color-blue);
  font-weight: 900;
  font-size: 1.06rem;
}
#footer p.h3,
#footer p.h4 {
  padding-bottom: 8px;
  border-bottom: 1px solid var(--color-blue-secondary);
}
#footer #spr {
  position: absolute;
  bottom: 18px;
  left: 0;
}
#footer #spr a {
  font-size: 0.9rem;
}
#footer #spr a:hover {
  color: var(--color-green-dark);
  text-decoration: underline;
}
#footer #spr .mt-1 {
  margin-top: 0 !important;
}
#footer #spr .h6 {
  margin-bottom: 0;
  line-height: inherit;
  padding-left: 4px;
}
#footer #spr .spr_home_reviews {
  border: none !important;
}
#footer #spr .rating-star-display > input:checked + label {
  color: var(--color-green-dark) !important;
}
#footer #spr .spr_home_reviews > .text-sm-center {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0;
}
.footer-container {
  padding-top: 8px;
}
.footer-container li {
  margin-bottom: 0;
}
.block-contact,
.footer-container li a {
  color: var(--color-blue);
  font-weight: 300;
}
footer #contact-infos a,
.footer-container li a {
  display: inline-block;
  padding: 2px 0px;
}
#footer #bottom p,
#footer #bottom a {
  color: var(--color-green-tertiary);
  font-weight: 300;
  font-size: 0.75rem;
  text-align: center;
}
#footer #bottom p {
  margin-bottom: 0;
}
footer .block_newsletter {
  max-width: 100%;
  position: relative;
  background-color: var(--color-blue-secondary);
  overflow: visible;
}
footer .block_newsletter::before {
  content: "";
  position: absolute;
  left: var(--ignore-margin);
  top: 0;
  width: 100vw;
  height: 100%;
  background-color: var(--color-blue-secondary);
}
.block_newsletter #block-newsletter-label {
  color: white;
}
footer .footer_top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
}
.footer-container li a:hover {
  color: rgba(255, 255, 255, 0.7);
}
#footer .footer_info_shop {
  display: flex;
  gap: 40px;
  border-radius: 20px;
  background: var(--bg-gradient);
  padding: 18px 20px;
  margin-top: 3rem;
  margin-bottom: 2rem;
  margin-left: auto;
  width: max-content;
  max-width: 100%;
}
#footer .footer_info_shop > div {
  display: flex;
  align-items: center;
  gap: 20px;
}
#footer .footer_info_shop p {
  margin-bottom: 0;
  color: white;
}
#footer .footer_info_shop a strong,
#footer .footer_info_shop p strong {
  display: block;
  font-weight: 700;
  font-size: 0.9rem;
  color: white;
}
#footer .footer_info_shop p,
#footer .footer_info_shop a span {
  font-weight: 300;
  font-size: 0.75rem;
  color: white;
}
.footer_info_shop svg {
  min-width: 38px;
}
#footer .footer_info_shop a:hover {
  color: rgba(255, 255, 255, 0.7);
}
.carousel .carousel-inner {
  height: 375px;
}
#manufacturer #products {
  margin-top: 3rem;
}

#footer .footer_baseline {
  display: flex;
  align-items: center;
  gap: 12px;
}
#footer .footer_baseline p {
  font-size: 1rem;
  margin-bottom: 0;
  font-weight: 300;
}

.progress_bar {
  position: relative;
  overflow: hidden;
  border-radius: 50rem;
  width: 100%;
  height: 5px;
  background-color: var(--color-green-dark);
}
.progress_bar .progress {
  position: absolute;
  left: 0;
  height: 100%;
  border-radius: 50rem;
  background-color: var(--color-green);
  transition: all 0.4s ease-in-out;
}
.container_free_shipping {
  padding: 10px 0 0 0;
}
.container_free_shipping p {
  font-size: 0.8rem;
  margin-bottom: 4px !important;
}
/*
********************************
LIST PRODUCTS
********************************
*/
#manufacturer #main ul.filter_mobile,
.filter_mobile {
  display: none;
  position: relative;
  pointer-events: none;
  border-radius: 8px;
  overflow: hidden;
  margin-bottom: 12px;
}
.filter_mobile button {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  padding: 16px 4px;
  border: none;
  background-color: white;
  color: black !important;
  text-transform: uppercase;
  font-size: 0.9rem;
  font-weight: 700;
}
.filter_mobile button svg {
  width: 20px;
  height: auto;
  pointer-events: none;
}
.filter_mobile::before {
  content: "";
  width: 1px;
  height: 70%;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  background-color: #dddddd;
}
.block-category .block-category-inner #category-description p {
  color: var(--color-blue);
}
#js-product-list-header {
  width: 100vw;
  position: relative;
  left: 50%;
  right: 50%;
  transform: translateX(-50%);
  background-color: var(--color-green-10);
  margin-bottom: 2rem;
}
#js-product-list-header .svg_draw {
  opacity: 0.3;
  pointer-events: none;
  position: absolute;
  top: 0;
  left: 0;
}
#js-product-list-header .block-category {
  padding: 0;
  background-color: transparent;
  max-width: var(--layout-width);
  margin: auto;
  padding: 50px 0 50px 0;
}
#js-product-list-header #category-description p {
  max-width: 687px;
}
#js-product-list-footer {
  max-width: var(--layout-width);
  margin: 6rem auto 1rem auto;
}
body.layout-left-column#category #wrapper {
  margin-bottom: 0;
}
#js-product-list-top {
  width: calc((var(--card-width) * 4) + (24px * 3));
  max-width: 100%;
}
#js-product-list-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
}
.products-selection .total-products {
  padding: 0;
  opacity: 0.5;
}
.products-selection .total-products p {
  color: var(--color-green-dark);
}
#js-product-list-top p {
  margin-bottom: 0;
}
#js-product-list-top .sort-by-row {
  gap: 8px;
  line-height: normal;
}
#js-product-list-top .sort-by {
  padding: 0;
  margin: 0;
  color: var(--color-blue);
  font-size: 1rem;
  font-weight: 700;
  white-space: nowrap;
}
.products-sort-order ul {
  display: flex;
  flex-wrap: wrap;
  column-gap: 1rem;
}
.products-sort-order a {
  color: var(--color-blue);
  font-size: 1rem;
  font-weight: 400;
}
.products-sort-order a.current {
  color: var(--color-green);
}
#products .products {
  --card-width: 336px;
  display: grid;
  grid-template-columns: repeat(4, auto);
  margin: 0;
  gap: 18px;
}
#products .products > .js-product {
  width: 100%;
  padding: 0;
}
#pagenotfound .page-not-found,
#products .page-not-found {
  margin: 0rem 0 10rem 0;
  display: flex;
  flex-direction: column;
  border-radius: 20px;
  gap: 1rem;
  padding: 2rem;
  background-color: var(--bg-primary);
}
#pagenotfound .page-not-found h4,
#products .page-not-found h4 {
  color: var(--color-blue);
}
.category-additional-description {
  margin-top: 0;
}
.category-additional-description h2 {
  margin-bottom: 1rem;
}
.category-additional-description p,
.category-additional-description ul li {
  color: var(--color-blue);
}
.category-additional-description p {
  margin-bottom: 2rem;
}
.category-additional-description ul {
  list-style-type: circle;
  padding-left: 2rem;
  margin-bottom: 1rem;
}
.pagination {
  display: flex;
  flex-direction: column-reverse;
  justify-content: center;
  align-items: center;
}
.pagination > div {
  padding: 0;
}
.pagination > div:first-child {
  width: max-content;
}
.pagination .current a {
  font-size: inherit;
}
.pagination ul {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
}
.pagination .page-list {
  background-color: transparent;
}
.pagination ul li,
.pagination .page-list li {
  display: inline-block;
}
.pagination ul li a.js-search-link {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 28px;
  height: 28px;
  border-radius: 4px;
}
.pagination ul li a.js-search-link.previous,
.pagination ul li a.js-search-link.next {
  width: max-content;
}
.pagination .current a {
  background-color: var(--bg-tag-promo);
  color: black;
}
#subcategories {
  display: none;
  background-color: transparent;
}

.products-sort-order ul {
  align-items: center;
}
.products-sort-order ul li a {
  display: inline-block;
  text-decoration: none;
}
.products-sort-order ul li.active a {
  padding: 2px 8px;
  background-color: rgba(255, 255, 255, 0.8);
  border-radius: 30rem;
  border: 1px solid #e3e3e3;
}

.linked_article:has(p) {
  display: flex;
}
.linked_article {
  position: relative;
  width: var(--card-width);
  max-width: var(--card-width);
  display: none;
  flex-direction: column;
  justify-content: center;
  gap: 2.5rem;
  padding: 1rem;
  border-radius: 10px;
  background: var(--bg-gradient);
  overflow: hidden;
}
.linked_article .svg_draw {
  position: absolute;
  top: 0;
  right: 0;
}
.linked_article p {
  color: white;
  font-family: "Lexend";
  font-weight: 900;
  font-size: 1.875rem;
  line-height: 1;
}

/*
********************************
PRODUCT DETAILS
********************************
*/
.spin_loader {
  opacity: 0;
  pointer-events: none;
  position: fixed;
  bottom: 2rem;
  right: 2rem;
}
#product.js-loading-update .spin_loader {
  opacity: 1;
}
svg.spin_loader {
  width: 3.25em;
  transform-origin: center;
  animation: rotate4 2s linear infinite;
}

svg.spin_loader circle {
  fill: none;
  stroke: var(--color-blue);
  stroke-width: 2;
  stroke-dasharray: 1, 200;
  stroke-dashoffset: 0;
  stroke-linecap: round;
  animation: dash4 1.5s ease-in-out infinite;
}

@keyframes rotate4 {
  100% {
    transform: rotate(360deg);
  }
}

@keyframes dash4 {
  0% {
    stroke-dasharray: 1, 200;
    stroke-dashoffset: 0;
  }

  50% {
    stroke-dasharray: 90, 200;
    stroke-dashoffset: -35px;
  }

  100% {
    stroke-dashoffset: -125px;
  }
}

#product .images-container {
  position: relative;
  background-color: var(--bg-white);
  border-radius: 20px;
  padding: 1rem;
}
#product .page-content .product-flags {
  justify-content: space-between;
  top: 1rem;
  left: 50%;
  width: calc(100% - 2rem);
  transform: translateX(-50%);
}
#product #wrapper > .container {
  position: relative;
}
#product .product-container .product-actions > form {
  display: flex;
  flex-direction: column;
}
#product .product-container .product-actions .product-discounts {
  margin-bottom: 0;
}
#product .product-actions .product-add-to-cart {
  margin-top: 20px;
}
.product-actions .product-add-to-cart .content_stock {
  margin-bottom: 12px;
}
.product-quantity {
  gap: 1rem;
}
#product .info_data {
  position: absolute;
  top: 0;
  right: 0;
  font-size: 0.8rem;
  color: gray;
}
#product #content {
  width: 644px;
  max-width: 100%;
  margin: 0 auto 0 0;
  height: 587px;
}
#product .pro-only-label {
  color: var(--color-blue-secondary);
  font-weight: 500;
  font-size: 1rem;
  margin-bottom: 30px;
}
#product .product-container {
  position: relative;
  padding-top: 5rem;
  padding-bottom: 3rem;
  background-color: var(--color-green-10);
  margin: 0;
}
#product .product-container > .container {
  display: flex;
}
#product .product-container > .container > div:has(.page-content) {
  padding-left: 0;
}
#product .product-container .product-description {
  padding: 1rem 0 1rem 0;
  margin-bottom: 1rem;
  border-bottom: 2px solid white;
}
.product_details_left {
  display: flex;
  flex-grow: 1;
}
.product-container .product_details_left {
  padding: 2rem !important;
}
.product-container .product_details_left,
.product-container .product_details_right .container_product_details_actions {
  background-color: var(--bg-white);
  padding: 1rem;
  border-radius: 10px;
}
.product-container .product_details_right .container_product_details_actions {
  position: relative;
}
.product-container .product_details_left .product-images,
.product-container .product_details_left .product-information {
  width: 50%;
}

.content_zoom {
  position: absolute;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  top: 0;
  left: 0;
  opacity: 0;
  cursor: pointer;
  background-color: rgba(255, 255, 255, 0.5);
  backdrop-filter: blur(20px);
  border-radius: 20px;
}
.content_zoom svg {
  stroke: black;
}
#swiper-product-cover:hover .content_zoom {
  opacity: 1;
  transition: all 0.2s ease-in-out;
}
#product .images-container,
#swiper-product-cover {
  height: 100%;
}
#swiper-product-cover .swiper-slide img {
  max-height: 100%;
  width: 100%;
  object-fit: cover;
}
.swiper-product-thumb {
  position: absolute;
  bottom: 1rem;
  right: 1rem;
  width: calc((87px * 3) + (12px * 2));
  max-width: 100%;
  margin-left: auto;
  margin-right: 0;
  margin-top: 8px;
}
.swiper-product-thumb .swiper-slide.swiper-slide-thumb-active {
  border: 2px solid var(--color-green);
}
#blockcart-modal .cart-content p.cart-products-count {
  margin-bottom: 12px;
}
#blockcart-modal .cart-content p.product-total {
  margin-top: 12px;
}
.swiper-product-thumb .swiper-slide {
  border-radius: 20px;
  border: 2px solid var(--color-blue);
  overflow: hidden;
}
.swiper-product-thumb .swiper-slide img {
  border-radius: 20px;
  transition: all 0.3s ease-in-out;
  transform: scale(1);
  border: none !important;
}
.swiper-product-thumb .swiper-slide:hover img {
  transform: scale(0.9);
}
.swiper-product-thumb:not(.swiper-initialized) .swiper-slide {
  width: 87px;
  height: 87px;
  margin-right: 12px;
  background-color: #f1f1f1;
  border-radius: 20px;
}
.swiper-product-thumb .swiper-slide img {
  width: 87px;
  height: auto;
}
.product_details_right .product-quantity {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.product_details_right .product-quantity .qty,
.product_details_right .product-quantity .add {
  margin-bottom: 0;
}

.product-container .product-price {
  color: var(--color-blue-secondary);
  font-size: 2.18rem;
  font-weight: 700;
  margin-bottom: 0;
}
.product-container .comment_anchor_content {
  display: flex;
  align-items: center;
  gap: 4px;
}
.product-container .comment_anchor_content .comment_anchor {
  color: var(--color-gray-light);
  font-size: 0.9rem;
}
.product-container .comment_anchor_content .rating_text {
  font-weight: 700;
  font-size: 0.9rem;
  padding-right: 1rem;
}
#product .product-variants {
  display: flex;
  gap: 20px;
}
.product-variants > .product-variants-item select {
  color: var(--color-blue);
  font-weight: 500;
  font-size: 1rem;
  border: none;
  min-width: 8rem;
}
.product-container .product-prices {
  display: flex;
  align-items: center;
  width: fit-content;
  background-color: var(--bg-white);
  border-radius: 20px;
  padding: 12px;
  color: var(--color-blue-secondary);
}
.product-container .product-prices.ttc_only {
  background-color: transparent;
  padding-left: 0;
}
.product-container .product-prices .product-discount {
  color: var(--color-blue-secondary);
}
.product-container .product-prices .discount-percentage {
  display: none;
}
.input-color {
  width: 100%;
  height: 100%;
}
.product-variants > .product-variants-item ul li {
  height: 35px;
  margin: 0;
}
.product-variants > .product-variants-item ul {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.input-color + span,
.custom-checkbox input[type="checkbox"] + span.color,
.variant-links .color,
label .color {
  display: inline-block;
  width: 35px;
  height: 35px;
  border-radius: 50%;
  background-color: #ebebeb;
}
.product-variants .multiple_colors svg {
  width: 35px;
  height: 35px;
}
.product-information .ref {
  font-size: 0.875rem;
  font-weight: 300;
  color: var(--color-green-tertiary);
}

.product-variants > .product-variants-item,
.product-variants .product-variants-item label {
  margin: 0;
}
.product-variants > .product-variants-item .color,
.input-color:checked + span,
.input-color:hover + span,
.input-radio:checked + span,
.input-radio:hover + span {
  border: none !important;
  margin: 0;
}
#product .product-actions .product-variants .control-label {
  font-size: 1rem;
  color: var(--color-blue);
  margin-bottom: 12px;
}
.product-variants .product-variants-item .multiple_colors .color {
  display: none;
}
.product-variants > .product-variants-item .svg_checked {
  fill: var(--color-green);
  width: 19px;
  height: auto;
  position: absolute;
  top: -9px;
  left: -7px;
  opacity: 0;
  pointer-events: none;
}
.product-variants
  .product-variants-item
  .input-container:has(.input-color:checked)
  .svg_checked {
  top: -4px;
  left: -2px;
}
.product-variants
  .product-variants-item
  .input-container:has(.input-color:checked)
  .color,
.product-variants
  .product-variants-item
  .input-container:has(.input-color:checked)
  .svg_multiple_colors {
  border: 6px solid white !important;
}
.product-variants .product-variants-item label:hover svg.svg_checked {
  opacity: 0.2;
}
.product-variants .product-variants-item label:hover .svg_multiple_colors,
.product-variants .product-variants-item label:hover .color {
  border: 2px solid white !important;
}
.product-variants
  .product-variants-item
  .input-container
  .multiple_colors
  .color {
  background-color: white !important;
}
.product-variants
  .product-variants-item
  .input-container:has(.input-color:checked)
  svg {
  opacity: 1;
}
.js-product-images-modal .image-caption {
  display: none !important;
}
.product_details_right button.add-to-cart {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  height: 57px;
  font-family: "Geist";
  font-size: 1.125rem;
  font-weight: 700;
  color: white;
  background-color: var(--color-green-dark);
  border-radius: 20rem;
  padding: 0 0 0 20px;
  cursor: pointer;
}
.product_details_right button.add-to-cart:disabled {
  opacity: 0.5;
  cursor: initial;
}
.product_details_right button.add-to-cart .content_svg_add_to_cart {
  transform: rotate(0);
  transition: all 0.2s ease-in-out;
}
.product_details_right button.add-to-cart:hover .content_svg_add_to_cart {
  transform: rotate(20deg);
}
.product_details_right:has(button.add-to-cart:disabled) .product-quantity .qty {
  opacity: 0.5;
  pointer-events: none;
}
.product_details_right:has(button.add-to-cart:disabled) .container_delivery {
  display: none;
}
.toggle_display_price label {
  position: absolute;
  right: 16px;
  top: 16px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  width: fit-content;
  border: 3px solid white;
  border-radius: 20px;
  background: white;
  font-weight: bold;
  font-size: 0.8rem;
  color: var(--color-blue);
  cursor: pointer;
}
.toggle_display_price div {
  margin-bottom: 0;
}
.toggle_display_price label::before {
  content: "";
  position: absolute;
  width: 50%;
  height: 100%;
  left: 0%;
  border-radius: 20px;
  background: var(--color-blue);
  transition: all 0.3s;
}
.toggle_display_price input:checked + label::before {
  left: 50%;
}
.toggle_display_price label div {
  padding: 4px 6px;
  text-align: center;
  z-index: 1;
}
.toggle_display_price input {
  display: none;
}
.toggle_display_price input:checked + label div:first-child {
  color: var(--color-blue);
  transition: color 0.3s;
}
.toggle_display_price input:checked + label div:last-child {
  color: white;
  transition: color 0.3s;
}
.toggle_display_price input + label div:first-child {
  color: white;
  transition: color 0.3s;
}
.toggle_display_price input + label div:last-child {
  color: var(--color-blue);
  transition: color 0.3s;
}
.product-prices .content_ttc {
  display: flex;
}
.product-prices .content_ht {
  display: none;
}
.product-prices:has(.toggle_display_price input:checked) .content_ttc {
  display: none;
}
.product-prices:has(.toggle_display_price input:checked) .content_ht {
  display: flex;
}

.container_product_details_actions .product-add-to-cart {
  margin-top: 4rem;
}
.container_product_details_actions .product-add-to-cart .control-label {
  display: inline-block;
  margin-bottom: 4px;
}
.container_product_details_actions .container_price_value {
  display: flex;
  align-items: flex-start;
  margin-bottom: 0;
}
.container_product_details_actions .container_price_value > div {
  align-items: flex-start;
  margin-bottom: 0;
}
.container_product_details_actions .product-discount {
  line-height: 0;
}
.container_product_details_actions .product-discount .regular-price {
  font-size: 0.9rem;
}
.has-discount .discount {
  color: white;
  border-radius: 10px;
  font-size: 0.9rem;
  text-transform: capitalize;
  background: var(--bg-gradient);
  margin: 0;
}
.product-prices .tax-shipping-delivery-label {
  color: var(--color-blue-secondary);
  padding-left: 8px;
  font-size: 2.18rem;
}
.container_product_details_actions .product-unit-price {
  color: black;
  font-size: 0.8rem;
}
.container_product_details_actions .container_delivery {
  /*display: flex;*/
  display: none;
  align-items: center;
  gap: 16px;
  border: 1px solid var(--color-green-secondary);
  border-radius: 10px;
  padding: 8px 18px;
  font-size: 0.9rem;
}
.content_svg_add_to_cart {
  position: absolute;
  right: -3px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 57px;
  height: 57px;
  border-radius: 50%;
  background-color: var(--color-green);
  border: 5px solid white;
  filter: drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.1));
}
.container_product_bottom {
  display: flex;
  background-color: var(--color-green-10);
  border-radius: 20px;
  margin-top: 48px;
  padding: 2rem;
}
.container_product_bottom .container_product_description,
.container_product_bottom .container_product_details {
  position: relative;
  width: 50%;
}
.container_product_bottom .container_product_description {
  display: grid;
  grid-template-rows: auto auto 1fr;
}
.container_product_bottom .container_product_description::after {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  width: 4px;
  height: 100%;
  background-color: var(--color-green);
  border-radius: 10rem;
}
.container_product_bottom .container_product_details {
  padding-left: 32px;
}
.container_product_bottom .container_product_details .product-custom-text {
  margin-top: 2rem;
}
.container_product_bottom .product-description {
  padding-right: 40px;
  max-width: 100%;
}
.container_product_bottom .product-description p {
  margin-bottom: 1rem;
}
.product-manufacturer {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  align-self: flex-end;
}
.product-manufacturer label {
  font-weight: 700;
  font-size: 1.18rem;
}
.product-features > dl.data-sheet {
  border-radius: 10px;
  overflow: hidden;
  margin-bottom: 8px;
  row-gap: 8px;
}
.definition-list dl dd:nth-of-type(even),
.definition-list dl dt:nth-of-type(even),
.product-features > dl.data-sheet dd.value:nth-of-type(even),
.product-features > dl.data-sheet dt.name:nth-of-type(even) {
  background: var(--bg-white);
}
.product-features > dl.data-sheet dd.value,
.product-features > dl.data-sheet dt.name {
  margin-left: 0;
  margin-bottom: 0;
  margin-right: 0;
  background: var(--bg-white);
  color: var(--color-blue);
}
.product-features > dl.data-sheet dt.name {
  font-weight: 700;
  border-top-left-radius: 10px;
  border-bottom-left-radius: 10px;
}
.product-features > dl.data-sheet dd.value {
  text-align: right;
  font-weight: 400;
  font-size: 1rem;
  border-top-right-radius: 10px;
  border-bottom-right-radius: 10px;
}
.features_list {
  display: flex;
  flex-direction: column;
}
.features_list p {
  margin-bottom: 0;
}
.features_list p:last-child {
  width: 50%;
  text-align: right;
}
.features_list .feature {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 16px;
}
.features_list .feature:nth-child(odd) {
  background-color: #dafced;
}
.features_list .feature .feature_name {
  font-weight: 700;
}
#product .featured-products {
  margin-top: 4rem;
}

#product #wrapper {
  padding-bottom: 5rem;
}
#attachments {
  padding: 3rem 0;
}
#attachments ul {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
#attachments .attachment {
  width: 45%;
  display: none;
}
#attachments .attachment.js-active {
  display: block;
}
#attachments ul:has(> li.attachment:first-child:last-child) li.attachment {
  display: block !important;
}
#attachments .attachment a {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  padding: 16px 16px;
  background-color: #fbfbfb;
  border: 1px solid #e7e7e7;
}
body.modal-open .js-product-images-modal {
  display: flex !important;
  justify-content: center;
  align-items: center;
}
.modal-dialog {
  margin: 40px auto 0px auto;
  max-width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
#product-modal .modal-content .modal-body {
  margin-left: 0;
}
#product-modal .modal-content .modal-body .product-images {
  display: flex;
  flex-direction: column;
}
#product-modal .modal-content .modal-body .product-cover-modal,
#product-modal .modal-content .modal-body .product-images img {
  border-radius: 12px;
  padding: 12px;
}
#product-modal .modal-content .modal-body .product-images img:hover {
  border: 3px solid var(--color-green);
}

#product .product-container {
  order: 1;
}
#product .products_crossselling {
  order: 2;
}
#product .container_product_bottom {
  order: 3;
}
#product #main > #spr {
  order: 4;
}
#product .products_same_category {
  order: 5;
}
#product .products_viewed_products {
  order: 6;
}

#product .container_videos {
  width: 100vw;
  position: relative;
  left: 50%;
  right: 50%;
  transform: translateX(-50%);
  background-color: var(--color-blue);
  color: white;
  padding-top: 40px;
  padding-bottom: 60px;
  margin-top: 80px;
}
#product .container_videos .svg_draw_line {
  position: absolute;
  right: 0;
  top: 0;
  z-index: -1;
}
#product .container_videos h2,
#product .container_videos p {
  color: white;
  margin-bottom: 1rem;
}
#product .container_videos > .container {
  width: 100%;
  max-width: var(--layout-width);
  margin: auto;
  padding-left: 0;
  padding-right: 0;
}
#product .container_videos > .container .content_videos {
  display: flex;
  gap: 24px;
}
#product .container_videos iframe,
#product .container_videos video {
  border-radius: 20px;
  flex-grow: 1;
}
/*
********************************
MARQUES
********************************
*/
#manufacturer #main ul .brand {
  border-radius: 12px;
}
/*
********************************
PRODUCT - AVIS
********************************
*/
.star_custom_color::after,
#spr input[type="radio"] + label::after,
#spr_list input[type="radio"] + label::after {
  display: none;
}
.spr_product_page_distribution_block .rating {
  display: flex;
}
#spr_list .rating-star-display > label {
  color: #e9e9e9 !important;
}
#spr .rating-star-display > .half.product-block-half:before,
#spr_list .rating-star-display > .half.product-block-half:before {
  left: 9px !important;
}
#spr input[type="radio"] + label::before,
#spr_list input[type="radio"] + label::before {
  background-color: transparent;
  border: none;
}
#spr_list .star_custom_size_list {
  font-size: 14px !important;
  display: flex;
  width: auto;
  padding: 0;
}
#spr_list > .row.mt-1 {
  display: flex;
  justify-content: flex-start;
  margin: 0;
  margin-top: 0 !important;
}
#spr_list .rating-star-display > label.product-block-half:before,
#spr_list .rating-star-display > label.product-block-half {
  margin-left: -5px;
}
#spr_list .rating-star-display label.half {
  color: transparent !important;
}
#product #spr .average_text {
  color: var(--color-blue);
}
#spr .average_text,
#spr_list .average_text {
  font-size: 15px !important;
  margin-left: 7px;
}
.star_custom_color::before {
  background-color: transparent;
  border: transparent;
}
#spr .rating-star-display > input:checked + label,
#spr_list .rating-star-display > label.checked {
  color: var(--color-green) !important;
}
#spr label.product-block-half,
#spr_list label.product-block-half {
  pointer-events: none;
}
#spr input[type="radio"]:checked + label::before,
#spr_list input[type="radio"]:checked + label::before {
  background-color: transparent;
  border: none;
}
.container_review_product {
  background-color: var(--bg-white);
  border-radius: 10px;
  margin-top: 48px;
  padding: 38px;
  display: none;
}
.container_review_product:has(.productComment) {
  display: block;
}
.productComment {
  display: flex;
  gap: 24px;
}
#spr #spr_reviews_list_footer {
  position: relative;
}
#spr #spr_reviews_list_footer h2 {
  text-align: center;
}
#spr #spr_reviews_list_footer .svg_draw {
  position: absolute;
  top: 0;
  left: 0;
}
#spr #spr_reviews_list_footer .content {
  display: flex;
  justify-content: space-between;
  position: relative;
}
#spr #spr_reviews_list_footer .content > .row {
  display: none;
}
#spr_reviews_list_footer .col-6.distribution-block {
  width: 40%;
  display: flex;
  flex-direction: column;
}
#spr_reviews_list_footer .top-reviews .rating {
  display: flex;
}
#spr_reviews_list_footer .progress-distrib strong.col-xs-12 {
  font-size: 0.8rem;
  font-weight: 400;
}
#spr_reviews_list_footer div#spr_review_details {
  width: 55%;

  margin-left: 1rem;
  padding-left: 3rem;
}
#spr .distribution-block .note {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 18px;
  min-height: 190px;
  color: var(--color-blue);
}
#spr .note .average_text {
  font-size: 2.5rem !important;
  font-weight: bold;
  margin: 0;
}
#spr .note .average_text span {
  font-size: 1.5rem;
}
#spr .reviews_distribution {
  padding: 0rem 4rem;
}
#spr .progress-distrib {
  background: #f2f2f2;
}
#spr .spr_product_page_reviews > * {
  padding-bottom: 0;
}
#spr .review_text {
  font-size: 1rem;
  min-height: auto;
}
#spr .review_customer {
  font-size: 1rem !important;
  color: var(--color-blue) !important;
}
#spr .review_date {
  font-size: 0.8rem;
  font-weight: 300;
  color: var(--color-blue);
}
#spr .review_text {
  font-size: 1rem !important;
  font-style: normal;
  border-left: none !important;
  padding-left: 0 !important;
  min-height: 40px;
  margin-top: 18px;
  word-break: break-word;
  width: 100%;
}
#product #spr #result_product_page {
  max-height: 26rem;
  overflow: auto;
  scrollbar-color: var(--color-blue-secondary) transparent;
  scrollbar-width: thin;
  padding-right: 2rem;
}
#spr .review_container {
  min-height: 100px !important;
  border-bottom: 1px solid white !important;
}
#spr .spr_product_page_reviews {
  flex-wrap: nowrap !important;
  gap: 3rem;
}
#spr .top-reviews {
  max-width: 6rem !important;
  margin-right: 0 !important;
}
#spr #bt_see_more_product {
  color: black !important;
}
#spr div:has(> #bt_see_more_product) {
  display: flex;
  gap: 12px;
}
#spr .tabs {
  padding: 2rem 1rem 2rem 2rem;
  margin-top: 2rem;
  background: var(--color-green-10);
  border-radius: 20px;
}
.spr_product_page_top_block h2 {
  margin: 0;
}
#product #spr:has(.alert-info) {
  display: none;
}
.alert-info {
  background-color: var(--color-green-5);
  border-color: var(--color-green);
  color: var(--color-gray-light);
  border-radius: 10px;
}
#spr .spr_product_page_top_block > * {
  border-bottom: none !important;
}
#spr span.review_title {
  display: none;
}

#spr .spr_product_page_reviews > * {
  padding-bottom: 5px !important;
  margin-bottom: 0 !important;
}
.product-miniature .variant-links {
  min-height: auto !important;
}
.product-miniature .count {
  position: relative;
  bottom: 0;
  font-weight: 200;
  color: var(--bg-tag-eco);
  font-size: 0.8rem;
  margin-left: 0.1rem;
}
#spr .progress-distrib {
  background: white !important;
}
#spr .spr_product_page_distribution_block > * {
  flex: none !important;
}
#spr .spr_product_page_distribution_block > .num_star {
  margin-right: 4px;
  min-width: 11px;
  color: var(--color-blue);
  font-size: 1rem;
}
#spr .spr_product_page_distribution_block > .svg-star {
  padding-bottom: 0;
}
#spr .spr_product_page_distribution_block > .progress-distrib-total {
  font-size: 0.875rem;
  color: var(--color-blue);
}
#spr .spr_product_page_distribution_block > .progress-distrib {
  flex: 0 1 245px !important;
  padding-bottom: 0 !important;
  height: 10px;
}
#spr .progress_custom_color {
  background-color: var(--color-blue-secondary) !important;
  border-radius: 10rem;
}
#footer a:hover {
  color: var(--color-green-dark);
}
/*
********************************
BTN QTY
********************************
*/
.bootstrap-touchspin {
  position: relative;
}
input[type="number"].js-cart-line-product-quantity,
.product-quantity #quantity_wanted {
  display: block;
  width: 7rem;
  text-align: center;
  border-radius: 20rem !important;
  background-color: var(--bg-white);
  border: none !important;
}
#cart input[type="number"].js-cart-line-product-quantity {
  background-color: var(--bg-primary);
}
.bootstrap-touchspin .input-group-btn-vertical {
  float: none;
  position: initial;
}
.bootstrap-touchspin .input-group-btn-vertical > .btn,
.product-quantity .input-group-btn-vertical .btn {
  position: absolute;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 20px !important;
  height: 20px !important;
  max-width: none;
  z-index: 3;
  width: auto;
  top: 50%;
  transform: translateY(-50%);
  border: none;
  padding: 0;
  background-color: transparent;
}
.input-group-btn-vertical .btn.bootstrap-touchspin-down,
.product-quantity .input-group-btn-vertical .btn.bootstrap-touchspin-down {
  left: 8px;
}
.input-group-btn-vertical .btn.bootstrap-touchspin-up,
.product-quantity .input-group-btn-vertical .btn.bootstrap-touchspin-up {
  right: 8px;
}
.input-group-btn-vertical .btn i,
.product-quantity .input-group-btn-vertical .btn i {
  position: initial;
  line-height: 0.8;
}
.bootstrap-touchspin .input-group-btn-vertical .touchspin-up::after,
.bootstrap-touchspin .input-group-btn-vertical .touchspin-down::after {
  font-family: "Geist";
  font-size: 1.125rem;
  font-weight: 400;
  color: black;
}
.bootstrap-touchspin .input-group-btn-vertical .touchspin-up::after {
  content: "+";
}
.bootstrap-touchspin .input-group-btn-vertical .touchspin-down::after {
  content: "-";
}
.block-category .block-category-inner #category-description strong {
  font-weight: 700;
  color: var(--color-green-dark);
}
/*
********************************
FILTER - advancedsearch
********************************
*/
#left-column .everblock {
  position: relative;
  overflow: hidden;
  border-radius: 10px;
  width: 100%;
  background: var(--bg-gradient);
  padding: 34px 12px 12px 20px !important;
  min-height: 340px;
}
#left-column .everblock p {
  color: white;
  display: flex;
  flex-direction: column;
  font-weight: 900;
  font-size: 3.75rem;
  line-height: 1;
  text-transform: uppercase;
}
#left-column .everblock a {
  margin-top: 2rem;
}
#left-column .everblock p span:first-child {
  font-size: 2.5rem;
}
#left-column .everblock svg {
  position: absolute;
  top: 0;
  right: 0;
}
#left-column {
  padding: 0 48px 28px 20px;
  background-color: var(--bg-white);
  height: 100%;
  margin-left: 20px;
  border-right: 4px solid var(--color-blue-secondary);
}

.PM_ASBlockOutput {
  padding: 0;
  border-radius: 10px;
  background-color: var(--bg-white);
}
.ui-slider.ui-widget-content {
  background: transparent url(images/ui-bg_flat_75_ffffff_40x100.png) 50% 50%
    repeat-x;
}
.PM_ASForm,
.PM_ASearchTitle,
.PM_ASBlockOutputHorizontal a,
.PM_ASBlockOutputVertical a,
.h4 .PM_ASCriterionsGroupName {
  color: var(--color-blue);
}
#left-column .card-header,
#left-column .card-block {
  background-color: var(--bg-white);
  padding: 0;
}
#left-column .card-header {
  border-bottom: none;
  margin-bottom: 1rem;
}
#left-column .card-header svg {
  display: none;
}
.PM_ASBlockTitle {
  font-family: "Lexend";
  font-weight: 900;
  font-size: 1.25rem;
  color: var(--color-blue);
}
.PM_ASBlockOutputVertical .PM_ASCriterionsGroup {
  background-color: var(--color-green-5);
  border-radius: 10px;
  padding: 14px;
}
.PM_ASBlockOutputVertical .PM_ASCriterionsGroupTitle {
  border-bottom: none;
  padding-top: 0;
}
.PM_ASCriterionsGroup:has(.PM_ASCriterionNoChoice) {
  display: none;
}
p.PM_ASCriterionNoChoice {
  color: var(--color-gray-light);
  font-size: 0.9rem;
}
.PM_ASBlockOutput label a {
  text-decoration: none;
}
.PM_ASCriterionGroupColor.color_to_pick_list li,
.PM_ASCriterionGroupLinkColor span.PM_ASCriterionColorSquare {
  border: 1px solid transparent;
  border-radius: 4px;
  position: relative;
}
.PM_ASCriterionGroupColor.color_to_pick_list li a,
.PM_ASCriterionGroupLinkColor span.PM_ASCriterionColorSquare {
  border-radius: 4px;
  background-color: var(--bg-primary);
  border: 1px solid #ededed;
}
.PM_ASCriterionGroupColor .svg_multiple_colors {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  pointer-events: none;
  width: 20px;
  height: auto;
}
.PM_ASCriterionGroupColor.color_to_pick_list li:hover {
  border: 1px solid black;
}
.PM_ASCritRange {
  border: none;
}
.ui-slider-horizontal .ui-slider-range {
  top: 50%;
  height: 4px;
  transform: translateY(-50%);
  background: var(--color-blue-secondary);
}
.ui-slider .ui-slider-handle {
  border-radius: 50%;
  border: 1px solid var(--color-blue-secondary);
  background: var(--color-green);
}

.block-category-inner {
  position: relative;
  display: flex;
  gap: 2rem;
}

.block-category .content_button_read_more {
  display: flex;
  justify-content: center;
  margin-top: 3rem;
  margin-bottom: 3rem;
}

.PM_ASCriterionLink:hover::after {
  content: attr(title);
  position: absolute;
  bottom: 120%;
  left: 105%;
  transform: translateX(-50%);
  background-color: var(--color-green-dark);
  color: #fff;
  padding: 4px 10px;
  line-height: initial;
  border-radius: 6px;
  white-space: nowrap;
  font-size: 13px;
  opacity: 1;
  pointer-events: none;
  z-index: 10;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);
  transition: opacity 0.2s ease;
}
/*
********************************
CART
********************************
*/
.cart-overview {
  background-color: var(--bg-white);
  border-radius: 20px;
  flex-grow: 1;
}
.cart-overview .cart-item .product-price {
  color: var(--color-blue-secondary);

  font-size: 1.125rem;
}
.cart-overview .cart-item .product-discount .regular-price {
  font-size: 0.9rem;
}
.cart-overview .cart-item .ref_product {
  color: var(--color-green-dark);
  font-weight: 300;
  font-size: 0.875rem;
}
.cart-summary .cart-detailed-totals {
  margin-bottom: 1rem;
  background-color: var(--color-green-5);
  border: 1px solid var(--color-green-10);
  border-radius: 10px;
  padding-bottom: 1rem;
  margin-top: 2rem;
}
a.back_to_shop {
  display: flex;
  align-items: center;
  gap: 8px;
}
.remove-from-cart svg .trash_top {
  transform: rotate(0);
  transition: all 0.2s ease-in-out;
}
.remove-from-cart:hover svg .trash_top {
  transform: rotate(-6deg);
}
.container_cart_details {
  display: flex;
  gap: 18px;
}
.cart-grid-right .cart-summary {
  border-radius: 20px;
  min-width: 22rem;
  background-color: white;
}
#cart .cart-summary .cart-detailed-actions .btn,
.cart-summary .btn {
  width: 100%;
  justify-content: center;
  padding: 16px 8px;
}
.cart-summary .btn.disabled {
  opacity: 0.7;
  background-color: #c8c8c8;
}
.cart_title {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  margin-bottom: 1rem;
}
.cart_title h1 {
  margin-bottom: 0;
}
.card-block.checkout .btn-primary.disabled {
  opacity: 0.5;
}
.alert-danger {
  background-color: #ff00001f;
  color: #e71b00;
  font-weight: 400;
  font-size: 0.9rem;
  border-color: #e71b00;
  border-radius: 10px;
}
.cart-grid-right .product-price {
  color: var(--color-green);
  font-weight: 700;
}
#cart .bloc_reassurance {
  margin-top: 2rem;
}
#product .bloc_reassurance .swiper,
#cart .bloc_reassurance .swiper {
  margin: 0;
  overflow: visible;
  max-width: 100%;
  pointer-events: none !important;
}
#product .bloc_reassurance .swiper .swiper-wrapper,
#cart .bloc_reassurance .swiper .swiper-wrapper {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: 14px;
}
#product .bloc_reassurance .swiper .swiper-slide,
#cart .bloc_reassurance .swiper .swiper-slide {
  width: auto !important;
  margin-right: 0 !important;
}
#product .blockreassurance_product .swiper-pagination,
#cart .blockreassurance_product .swiper-pagination {
  display: none !important;
}
#cart .cart-items .cart-item:not(:last-child) {
  border-bottom: 1px solid #ebebeb;
}
#cart .cart-item .product-line-grid {
  display: flex;
}
#cart .cart-item .product-line-grid-left {
  max-width: max-content;
}
#cart .cart-item .product-line-grid-right {
  margin-left: auto;
}
.card-block.cart-detailed-subtotals + .cart-summary-totals .cart-total {
  border-top: none;
}
.card-block.cart-summary-totals .cart-summary-line.cart-total {
  padding: 16px 8px;
}
body#checkout .cart-grid-right .card .cart-total,
.cart-detailed-totals .cart-total {
  position: relative;
  border-top: none;
  background-color: var(--color-green-30);

  border-radius: 10px;
  margin-top: 1.5rem;
  padding: 16px 16px;
}

.cart-grid-body .cart-overview {
  position: relative;
}
#cart .loader_overlay {
  position: absolute;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background-color: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(4px);
  z-index: 4;
  opacity: 0;
  pointer-events: none;
}
#cart .loader_overlay.js-active {
  opacity: 1;
  pointer-events: initial;
}
/*
********************************
CART MODAL
********************************
*/
.modal-content {
  border: none;
  border-radius: 20px;
  overflow: hidden;
}
#blockcart-modal .modal-header {
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
}
#blockcart-modal .modal-header::after {
  content: none;
}
#blockcart-modal .modal-body {
  padding: 3.125rem 1.875rem 1rem 1.875rem;
}
#blockcart-modal .modal-title i.material-icons {
  color: var(--color-green);
}
#blockcart-modal .product-name {
  color: var(--color-green-dark);
}
#blockcart-modal .cart-content .cart-content-btn {
  width: 100%;
  justify-content: flex-start;
  margin-top: 2rem;
}
#blockcart-modal .cart-content .cart-content-btn .btn {
  margin-bottom: 0;
}
#blockcart-modal .modal-header .close {
  height: 28px;
}
/*
********************************
BREADCRUMB
********************************
*/
body.layout-left-column #wrapper > .container {
  position: relative;
}
#wrapper .breadcrumb {
  position: absolute;
  top: 22px;
  left: calc((100vw - var(--layout-width)) / 2);
  z-index: 1;
}
#wrapper .breadcrumb li a,
#wrapper .breadcrumb li:last-child,
#wrapper .breadcrumb li::after {
  color: var(--color-blue);
}
#wrapper .breadcrumb li a {
  font-weight: 300;
}
#wrapper .breadcrumb li:last-child {
  font-weight: 400;
}
#product .breadcrumb {
  position: absolute;
  top: 22px;
  left: 0;
  z-index: 1;
}
#wrapper .breadcrumb {
  font-size: 0.9rem;
}
/*
********************************
NO RESULT
********************************
*/
#search #content.page-not-found {
  margin-top: 2rem;
}
/*
********************************
LOGIN PAGE
********************************
*/
.page-authentication #content,
.page-registration #content {
  border-radius: 20px;
}
.page-authentication #content-wrapper {
  padding-top: 2rem;
}
.page-authentication h2 {
  color: black;
  font-size: 1.2rem;
}
.password-requirements > p {
  display: flex;
  align-items: center;
  gap: 8px;
}
.password-requirements .material-icons {
  display: none;
}
.page-authentication h2 {
  display: flex;
  flex-direction: column;
  gap: 4px;
  font-size: 1.2rem;
}
.page-authentication h2 span {
  font-size: 1.6rem;
}
.form-control:focus {
  outline: none !important;
  background-color: white;
}
.page-authentication #content {
  display: flex;
  max-width: 100%;
  min-height: 480px;
  padding: 0;
  border-radius: 20px;
  overflow: hidden;
}
#lpsproaccount #login-form-particular,
#lpsproaccount #login-form-professionnal {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: flex-end;
  overflow: hidden;
  margin-top: 2rem;
}
#lpsproaccount #login-form-particular svg {
  top: 1rem;
  right: -91px;
}
#lpsproaccount #login-form-professionnal svg {
  top: -15px;
  right: -55px;
}
#lpsproaccount #login-form-particular svg,
#lpsproaccount #login-form-professionnal svg {
  position: absolute;
  width: 18rem;
  height: auto;
}
#lpsproaccount #login-form-particular svg path,
#lpsproaccount #login-form-professionnal svg path {
  stroke: #80808017;
}
.page-authentication #content .content_image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.page-authentication .login-form {
  border-right: 1px solid #ebebeb;
  padding: 0 9rem;
}
.page-authentication #content #lpsproaccount {
  padding: 0 4rem;
}
.page-authentication #content > .login-form,
.page-authentication #content #lpsproaccount {
  width: 50%;
  display: flex;
  flex-direction: column;
  margin-top: 3rem;
  margin-bottom: 3rem;
}
.lpsproaccount-button {
  display: grid;
  justify-content: center;
  grid-template-columns: 1fr 1fr;
}
.page-authentication #content .content_form {
  padding: 1rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.page-authentication form .form-group {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  margin-bottom: 0;
}
.page-authentication form .col-md-6.js-input-column {
  width: 100%;
}
.page-authentication form .form-group label {
  text-align: left;
  float: none;
  display: block;
  width: 100%;
}
.page-customer-account #content .forgot-password {
  margin-top: 0;
}
.page-authentication #submit-login {
  width: 100%;
  justify-content: center;
  padding: 8px 4px;
}
.input-group .input-group-btn.group_password {
  position: absolute;
  right: 0;
  z-index: 5;
}
form .group_password .svg_show,
form .group_password .svg_hidde {
  display: none;
  position: absolute;
  bottom: 50%;
  left: 50%;
  transform: translate(-50%, 50%);
  z-index: 4;
  pointer-events: none;
}
form:has(#field-password[type="text"]) .group_password .svg_hidde {
  display: block;
}
form:has(#field-password[type="password"]) .group_password .svg_show {
  display: block;
}
.input-group .input-group-btn > .btn[data-action="show-password"] {
  padding: 0.78rem 0;
  background: transparent;
  color: transparent;
}
.input-group #field-password.form-control {
  border-bottom-right-radius: 20rem;
  border-top-right-radius: 20rem;
}

.page-registration #content {
  max-width: 100%;
  padding: 2rem;
}
.page-registration .register-form > p {
  text-align: center;
  border-bottom: 1px solid #ebebeb;
  padding-bottom: 1rem;
  width: max-content;
  margin: 0 auto 2rem auto;
}
.page-registration .register-form > p a {
  font-weight: 700;
}
/*
********************************
MY ACCOUNT
********************************
*/
.page-my-account #content-wrapper {
  padding-top: 2rem;
}
.page-my-account #content .links a span.link-item {
  border-radius: 8px;
  background-color: var(--bg-primary);
}
.page-my-account .btn.btn_logout {
  position: absolute;
  top: 8px;
  right: 0;
}

#checkout-personal-information-step .logout_container > a,
.page-my-account .logout_link {
  background-color: #e23434;
  color: white;
  padding: 8px 16px;
  border-radius: 10px;
  border: 1px solid #bf1a1a;
}
#checkout-personal-information-step .logout_container > a:hover {
  color: white;
}
.btn_logout svg {
  width: 20px;
  height: auto;
  transition: all 0.4s ease-in-out;
}
.btn_logout:hover svg {
  transform: translateX(4px);
}
.page-my-account #content .links a {
  display: inline-block;
  padding: 0 0.9375rem;
  margin-bottom: 1.875rem;
  font-size: 1rem;
  color: var(--color-blue);
  text-align: center;
  text-transform: initial;
  font-weight: 500;
}
.page-my-account #content .links a:hover {
  color: var(--color-green);
}
.page-my-account #content .links a i {
  color: var(--color-green-dark);
}
a.download_invoice {
  display: flex;
  align-items: center;
  gap: 8px;
}

/*
********************************
BLOG HOME
********************************
*/

.bloghome {
  width: 100vw;
  position: relative;
  left: 50%;
  right: 50%;
  transform: translateX(-50%);
  background-color: var(--color-blue);
  color: white;
  display: flex;
  padding-top: 45px;
  padding-bottom: 80px;
  overflow: hidden;
}
.bloghome .container {
  display: flex;
  justify-content: space-between;
  width: 100%;
  max-width: var(--layout-width);
  margin: auto;
  padding-left: 0;
  padding-right: 0;
}
.bloghome .svg_draw_line {
  position: absolute;
  bottom: -6rem;
  left: -6rem;
}
.bloghome .row {
  margin-left: 0;
  margin-right: 0;
}
.bloghometitle p,
.bloghome h2 {
  color: white;
}
.bloghome h2 {
  max-width: 16rem;
}
.bloghometitle p {
  margin-bottom: 48px;
}
.bloghome .content_articles {
  display: grid;
  /*grid-template-columns: repeat(3, minmax(0, 359px));*/
  grid-template-columns: repeat(3, 359px);
  gap: 18px;
}
.bloghome .article {
  display: grid;
  grid-template-rows: 169px 1fr;
  width: 100%;
  border-radius: 20px;
  overflow: hidden;
  padding: 0;
}
.bloghome .article img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.bloghome .article .content_text {
  display: grid;
  grid-template-rows: auto 1fr auto;
  padding: 24px 16px;
  background-color: var(--bg-white);
  color: var(--color-blue);
}
.bloghome .article .article_title {
  color: var(--color-blue-secondary);
  font-size: 1.06rem;
  font-weight: 500;
}
.bloghome .article .content_text a {
  color: var(--color-blue-secondary);
  padding: 0;
  justify-self: flex-end;
  font-weight: 700;
  font-size: 1rem;
}
.bloghome .article .everpsblogcontent {
  padding: 24px 0 36px 0;
  font-weight: 300;
}

/*
********************************
BLOG DETAIL
********************************
*/
#module-everpsblog-post .postcontent {
  border: none;
}
#module-everpsblog-post .post-header {
  margin-bottom: 3rem;
}
#module-everpsblog-post img {
  border-radius: 20px;
}
#module-everpsblog-post #content {
  max-width: 1240px;
  margin: auto;
  padding: 0;
}
#module-everpsblog-post #content .container {
  padding: 0;
}
#module-everpsblog-post .postcontent p {
  margin-bottom: 2rem;
}
/*
********************************
PAGE CONTACT
********************************
*/
body.layout-left-column.page-contact #content-wrapper {
  padding: 0 14rem 0px 2rem;
}
#contact #content {
  background-color: transparent;
  border-radius: 0;
  padding: 0;
}
#contact #content section.contact-form {
  border-radius: 20px;
  padding: 2rem;
}
#contact #content form .form-group.row {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
#contact #content form .form-control-label {
  text-align: left;
}
.group-span-filestyle .btn-default {
  background-color: var(--color-green-dark);
  border-top-right-radius: 20px;
  border-bottom-right-radius: 20px;
}
#contact #left-column .contact-rich .block .icon {
  width: auto;
  padding-right: 8px;
}
#contact #left-column .contact-rich .block .icon i {
  font-size: 20px;
  color: black;
}
/*
********************************
CHECKOUT
********************************
*/
.separator {
  border-color: var(--color-blue);
}
body#checkout .cart-grid-body,
body#checkout .cart-grid-right {
  padding-top: 100px;
}
body#checkout section.checkout-step .step-edit {
  display: none !important;
}
body#checkout section.checkout-step .content,
body#checkout section.checkout-step .done,
body#checkout section.checkout-step .step-edit {
  display: none;
}
body#checkout section.checkout-step .content {
  padding: 12px 12px 0 12px;
}
body#checkout
  section#checkout-personal-information-step.checkout-step.-current
  .content,
body#checkout
  section#checkout-personal-information-step.checkout-step.-current.-reachable.-complete
  .content {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
body#checkout section.checkout-step.-complete:not(.-current),
body#checkout section.checkout-step.-unreachable {
  padding: 0;
}
body#checkout section.checkout-step.-current.-reachable {
  border-radius: 20px;
}
body#checkout section.checkout-step .step-title {
  text-transform: capitalize;
  cursor: pointer;
  margin-bottom: 0;
  position: absolute;
  top: 8px;
  font-size: 10px;
  width: 25%;
  font-weight: 500;
  text-align: center;
  padding: 30px 5px !important;
  color: #504545;
  opacity: 1;
  letter-spacing: 0;
  font-size: 0.7rem;
  border-bottom: none;
}
body#checkout section.checkout-step .step-title .step-legend {
  display: inline-block;
  margin-top: 15px;
}
body#checkout section.checkout-step .step-title .step-number {
  padding: 0;
  display: flex !important;
  justify-content: center;
  align-items: center;
  width: 57px !important;
  height: 57px !important;
  font-size: 1rem;
  background: var(--color-green);
  color: #fff;
  border-radius: 999px !important;
  position: absolute;
  top: -11px;
  left: 50%;
  margin-left: -28px;
  border: 8px solid var(--bg-white) !important;
}
body#checkout section.checkout-step:nth-child(1) .step-title {
  left: 0;
  z-index: 1;
}
body#checkout section.checkout-step:nth-child(2) .step-title {
  left: 25%;
  z-index: 2;
}
body#checkout section.checkout-step:nth-child(3) .step-title {
  left: 50%;
  z-index: 3;
}
body#checkout section.checkout-step:nth-child(4) .step-title {
  left: 75%;
  z-index: 4;
}
body#checkout section.checkout-step.js-current-step .step-title {
  color: var(--color-green-dark);
}
body#checkout section.checkout-step.-reachable.-complete .step-number,
body#checkout section.checkout-step.-reachable.-current .step-number {
  background: var(--bg-gradient);
  color: white;
}
body#checkout section.checkout-step .not-allowed,
body#checkout section.checkout-step.-unreachable .step-title {
  opacity: 1 !important;
}
body#checkout section.checkout-step.-complete .step-number .svg_check {
  display: block;
}
body#checkout section.checkout-step.-complete .step-number span {
  display: none !important;
}
body#checkout section.checkout-step .step-number .svg_check {
  display: none;
}
body#checkout section.checkout-step:not(:last-child) .step-title:before {
  content: "";
  position: absolute;
  top: 15px;
  width: 100%;
  height: 2px;
  background: var(--color-blue);
  left: 50%;
}
body#checkout section.checkout-step.-current + .checkout-step .step-title {
  border-top: none;
}
body#checkout .cart-grid-right .card {
  border-radius: 20px;
  background-color: var(--color-green-5);
  border: 1px solid var(--color-green-10);
}
body#checkout section.checkout-step .address-item.selected {
  border: 3px solid var(--color-green);
  border-radius: 12px;
}
#payment-confirmation .ps-shown-by-js {
  display: flex;
  justify-content: flex-end;
}
#checkout-personal-information-step .content ul.nav {
  width: max-content;
  padding: 5px 10px;
  background-color: #f3f3f3;
  border-radius: 8px;
  border: 1px solid #dddddd;
  margin: auto;
}
#checkout-personal-information-step .content ul.nav li a {
  padding: 8px 16px;
  border-radius: 4px;
}
#checkout-personal-information-step .content ul.nav li a.active {
  background-color: white;
}
body#checkout section.checkout-step .address-footer {
  display: flex;
  justify-content: space-between;
}
body#checkout section.checkout-step .address-footer .edit-address,
body#checkout section.checkout-step .address-footer .delete-address {
  width: 50%;
  margin: 0;
  display: flex;
  align-items: center;
  gap: 4px;
  justify-content: center;
}
body#checkout section.checkout-step .add-address a {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 5px 10px;
  background-color: #f3f3f3;
  border-radius: 8px;
  border: 1px solid #dddddd;
  width: max-content;
}
body#checkout section.checkout-step .add-address a:hover {
  color: var(--color-green);
}
body#checkout section.checkout-step .add-address a i {
  line-height: initial;
}
body#checkout .content_identity {
  display: flex;
  justify-content: center;
  padding-bottom: 2rem;
}
body#checkout .content_identity p.identity,
body#checkout .content_identity .text_not_you {
  margin-bottom: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  padding: 1rem 4rem;
}
body#checkout .content_identity p.identity {
  border-right: 1px solid #d7d7d7;
}
body#checkout .content_identity p.identity a {
  font-weight: 700;
  font-size: 1.2rem;
}
body#checkout .content_identity .text_logout_info {
  max-width: 212px;
  text-align: center;
  margin: auto;
}
body#checkout #footer {
  background-color: var(--color-green);
  color: var(--color-green-dark);
  padding: 1rem 0;
}
#js-stripe-payment-form {
  background-color: var(--color-green);
  padding: 2rem;
  margin: 1rem 0 1rem 0 !important;
  border-radius: 14px;
  min-height: 283px;
  box-shadow: rgba(0, 0, 0, 0.1) 0px 10px 15px -3px,
    rgba(0, 0, 0, 0.05) 0px 4px 6px -2px;
  margin: 0 !important;
}
#js-stripe-payment-form + div,
#payment-option-1-container {
  display: none !important;
}
body#checkout footer a:hover {
  color: var(--color-green-dark);
}
body#checkout .additional-information {
  margin-left: 0;
  margin-top: 0;
}
.payplugIntegratedPayment_container.-cardHolder,
.payplugIntegratedPayment_container.-cvv,
.payplugIntegratedPayment_container.-exp,
.payplugIntegratedPayment_container.-pan {
  background-color: #f9f9f9;
  border-radius: 4px;
}
.payplugIntegratedPayment_privacy_policy {
  padding: 8px 4px;
  background-color: #f5f5f5;
  border-radius: 8px;
  border: 1px solid #e1e1e1;
}
.payplugIntegratedPayment_container.-cardHolder.-focus,
.payplugIntegratedPayment_container.-cvv.-focus,
.payplugIntegratedPayment_container.-exp.-focus,
.payplugIntegratedPayment_container.-pan.-focus {
  background-color: white;
}
#module-gsnippetsreviews-allReviewsShopPage .rating {
  display: flex;
  align-items: center;
}
#module-gsnippetsreviews-allReviewsShopPage #content {
  border-radius: 20px !important;
}
body#checkout section.checkout-step .delivery-options > .row {
  border-right: none;
  border-radius: 20px;
}
/*
********************************
ORDER CONFIRMATION
********************************
*/
.done {
  color: var(--color-green);
}
#order-confirmation #content-hook_order_confirmation,
#order-confirmation #content,
#order-confirmation #content-hook_payment_return {
  border-radius: 14px;
}
#order-confirmation .featured-products {
  margin-top: 5rem;
}
.container_empty_cart {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  color: var(--color-gray-light);
}
#search_widget form i {
  display: none !important;
}

/*
********************************
LOADER
********************************
*/
.as4-loader {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  display: block;
  margin: 15px auto;
  position: relative;
  color: #fff;
  left: -100px;
  box-sizing: border-box;
  animation: shadowRolling 2s linear infinite;
}
.as4-loader::before,
.as4-loader::after {
  content: none !important;
}
.featured-products .products.row {
  margin-left: 0;
  margin-right: 0;
}
/*
********************************
KEYFRAMES
********************************
*/
@keyframes shadowRolling {
  0% {
    box-shadow: 0px 0 rgba(255, 255, 255, 0), 0px 0 rgba(255, 255, 255, 0),
      0px 0 rgba(255, 255, 255, 0), 0px 0 rgba(255, 255, 255, 0);
  }
  12% {
    box-shadow: 100px 0 var(--color-green-dark), 0px 0 rgba(255, 255, 255, 0),
      0px 0 rgba(255, 255, 255, 0), 0px 0 rgba(255, 255, 255, 0);
  }
  25% {
    box-shadow: 110px 0 var(--color-green-dark), 100px 0 var(--color-green-dark),
      0px 0 rgba(255, 255, 255, 0), 0px 0 rgba(255, 255, 255, 0);
  }
  36% {
    box-shadow: 120px 0 var(--color-green-dark), 110px 0 var(--color-green-dark),
      100px 0 var(--color-green-dark), 0px 0 rgba(255, 255, 255, 0);
  }
  50% {
    box-shadow: 130px 0 var(--color-green-dark), 120px 0 var(--color-green-dark),
      110px 0 var(--color-green-dark), 100px 0 var(--color-green-dark);
  }
  62% {
    box-shadow: 200px 0 rgba(255, 255, 255, 0), 130px 0 var(--color-green-dark),
      120px 0 var(--color-green-dark), 110px 0 var(--color-green-dark);
  }
  75% {
    box-shadow: 200px 0 rgba(255, 255, 255, 0), 200px 0 rgba(255, 255, 255, 0),
      130px 0 var(--color-green-dark), 120px 0 var(--color-green-dark);
  }
  87% {
    box-shadow: 200px 0 rgba(255, 255, 255, 0), 200px 0 rgba(255, 255, 255, 0),
      200px 0 rgba(255, 255, 255, 0), 130px 0 var(--color-green-dark);
  }
  100% {
    box-shadow: 200px 0 rgba(255, 255, 255, 0), 200px 0 rgba(255, 255, 255, 0),
      200px 0 rgba(255, 255, 255, 0), 200px 0 rgba(255, 255, 255, 0);
  }
}
@keyframes tilt-shaking {
  0% {
    transform: rotate(0deg);
  }
  25% {
    transform: rotate(14deg);
  }
  50% {
    transform: rotate(0eg);
  }
  75% {
    transform: rotate(-14deg);
  }
  100% {
    transform: rotate(0deg);
  }
}
@keyframes marquee {
  0% {
    left: 0;
  }
  100% {
    left: -100%;
  }
}
@keyframes shimmer {
  0% {
    background-position: -200px 0;
  }
  100% {
    background-position: 200px 0;
  }
}

/*
********************************
LAYOUT - RESPONSIVE
********************************
*/
@media screen and (max-width: 1680px) {
  :root {
    --layout-width: 1440px;
  }
}
@media screen and (max-width: 1440px) {
  :root {
    --layout-width: 1224px;
  }
}
@media screen and (max-width: 1280px) {
  :root {
    --layout-width: calc(100vw - 4rem);
  }
}
@media screen and (max-width: 768px) {
  :root {
    --layout-width: calc(100vw - 2rem);
  }
}

/*
********************************
RESPONSIVE
********************************
*/
@media screen and (max-width: 1770px) {
  #products .products {
    --card-width: 336px;
    grid-template-columns: repeat(4, 1fr);
  }
  .linked_article,
  .product-miniature {
    max-width: 100%;
    width: 100%;
  }
}
@media screen and (max-width: 1680px) {
  :root {
    --card-width: 336px;
  }
  .customblocks_featured_product {
    padding: 0 2rem;
  }
  .tabs_products .tabs_body .product-list {
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
  }

  .customblocks_featured_product:not(.second)
    .tabs_products
    .tabs_body
    .product-list
    .js-product {
    width: max-content;
  }

  #header .search-widgets {
    width: 780px;
  }
  .customblocks_slider .content_text {
    left: 8rem;
  }

  .featured-products.products_promo {
    grid-template-columns: var(--card-width) 1fr;
  }
  .products.container_products_swiper,
  .featured-products .swiper {
    width: calc(var(--layout-width) - var(--card-width) - 24px - 30px);
    max-width: calc(var(--layout-width) - var(--card-width) - 24px - 30px);
  }
  .customblocks_reassurance {
    gap: 12px;
  }
  footer .footer_top > svg {
    max-width: 14rem;
  }
  #footer .footer_info_shop {
    gap: 20px;
  }
}
@media screen and (max-width: 1500px) {
  .block_newsletter #block-newsletter-label {
    font-size: 2.2rem;
    line-height: 1.2;
  }
}
@media screen and (max-width: 1440px) {
  .h2,
  h2 {
    font-size: 2.2rem;
  }
  #header .search-widgets {
    max-width: 500px;
  }
  #header .logo svg {
    width: 200px;
    height: auto;
  }
  #header .content_mainnav > .menu ul.top-menu li.category:nth-child(5),
  #header .content_mainnav > .menu ul.top-menu li.category:last-child {
    display: none;
  }
  body.layout-left-column.page-contact #content-wrapper {
    padding: 0 2rem;
  }
  #header .content_mainnav .menu ul li a,
  .ets_mm_megamenu_content .mm_menus_li > a {
    padding: 6px 10px;
  }
  .mm_menu_content_title {
    font-size: 0.9rem;
  }
  .customblocks_featured_product {
    padding: 0;
  }
  .tabs_products .tabs_body .product-list {
    grid-template-columns: repeat(3, 1fr);
  }
  .tabs_products .tabs_body .product-list .js-product,
  .tabs_products .tabs_body .product-list .product-miniature {
    width: 100%;
  }
  /*
  .featured-products .swiper-slide,
  .featured-products .swiper-slide .js-product,
  .featured-products .swiper .product-miniature {
    max-width: var(--card-width);
  }
    */
  .featured-products.products_promo {
    grid-template-columns: 260px 1fr;
    gap: 16px;
  }
  .products.container_products_swiper,
  .featured-products .swiper {
    width: calc(var(--layout-width) - 260px - 16px - 30px);
    max-width: calc(var(--layout-width) -260px - 16px - 30px);
  }
  .featured-products .container_title_slider {
    padding: 20px 10px 20px 20px;
  }
  .featured-products .container_title_slider .products-section-title {
    font-size: 3rem;
  }
  #products .products {
    grid-template-columns: repeat(3, 1fr);
  }
  .product-miniature {
    height: 405px;
    min-height: 405px;
  }
  .customblocks_featured_product.second
    .tabs_products
    .tabs_body
    .product-list
    .manufacturer_details {
    max-height: 405px;
    width: calc(2 / 3 * (100%) - 12px);
  }
  .customblocks_featured_product.second .products {
    grid-template-columns: repeat(3, 1fr);
  }
  .product-miniature .product-description .content_desc_bottom {
    align-items: flex-end;
  }
  .product-miniature .product-title {
    font-size: 1rem;
  }
  .product-miniature .product-thumbnail picture img {
    max-width: 100%;
    height: auto;
    width: 10rem;
  }
  .customblocks_image_texte {
    margin-top: 3rem;
  }
  .customblocks_image_texte .content_image {
    width: 60rem;
    max-width: 100%;
  }
  .customblocks_image_texte .content_image img {
    width: 100%;
    object-fit: cover;
  }
  .bloghome .container {
    gap: 28px;
  }
  .bloghome .content_articles {
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
  }
  .bloc_reassurance ul {
    grid-template-columns: repeat(4, 1fr);
  }
}
@media screen and (max-width: 1280px) {
  header #_desktop_contact_link {
    display: none;
  }
  #header .cart-products-count {
    top: 5px;
    right: 19px;
  }
  .bloc_reassurance .block-reassurance-item p strong {
    font-size: 1.2rem;
  }
  #product .product-container .product-actions > form {
    flex-direction: column;
  }
  .container_product_bottom .product-description {
    width: auto;
    padding-right: 1rem;
  }
  .product-container .product_details_left {
    padding: 3rem 2rem 2rem 2rem !important;
  }
  .container_product_details_actions .container_delivery {
    width: max-content;
  }
  #product .product-prices {
    margin-top: 0;
  }
  .container_product_details_actions .product-add-to-cart {
    margin-top: 1rem;
  }
  .product_details_right button.add-to-cart {
    width: 17rem;
    max-width: 100%;
  }
  .container_cart_details {
    flex-direction: column;
  }
  #checkout #header .content {
    padding: 0 2rem;
  }
  .searchbar_active .custom_searchbar_autocomplete {
    left: 50%;
    transform: translateX(-50%);
    width: calc(100vw - 32px) !important;
  }
  .page-authentication .login-form,
  .page-authentication #content #lpsproaccount {
    padding: 0 3rem;
  }
  .customblocks_image_texte > .container {
    gap: 24px;
  }
  #left-column {
    padding: 0 20px 28px 20px;
    max-width: 260px;
  }
  #left-column .everblock p {
    font-size: 2.8rem;
  }
}
@media screen and (max-width: 1200px) {
  .tabs_products .tabs_header {
    max-width: var(--layout-width);
    overflow-x: auto;
    overflow-y: hidden;
    gap: 1.2rem;
  }
  .page-authentication #content {
    flex-direction: column;
  }
  .page-authentication #content > .login-form,
  .page-authentication #content #lpsproaccount {
    width: 100%;
    padding: 0 8rem 3rem 8rem;
    margin-bottom: 0;
  }
  .page-authentication .login-form {
    border-right: none;
    border-bottom: 1px solid #ebebeb;
    padding: 0 9rem;
  }

  .featured-products.products_promo {
    display: flex;
    flex-direction: column;
  }

  .featured-products .container_title_slider {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    max-width: 100%;
    width: 100%;
  }
  .featured-products .container_title_slider .products-section-title {
    margin-bottom: 0;
  }
  .products.container_products_swiper,
  .featured-products .swiper {
    width: calc(var(--layout-width));
    max-width: calc(var(--layout-width));
  }
}
@media screen and (max-width: 1140px) {
  .ybc-menu-toggle {
    display: block;
  }
  #header .content_left {
    gap: 0;
  }
  .transition_floating .mm_menus_ul {
    bottom: 0;
    left: 0;
    max-width: 280px;
    overflow: auto;
    position: fixed;
    top: 0;
    z-index: 10000;
  }
  body:has(.mm_menus_li.hover:hover) .header_bandeau {
    z-index: 0;
  }
  .header_bandeau {
    z-index: 0;
  }
  .products-selection .total-products {
    display: none;
  }
  .products-sort-order ul {
    column-gap: 8px;
  }
  .products-sort-order ul li a {
    font-size: 0.9rem;
  }
  .customblocks_reassurance {
    flex-wrap: wrap;
    justify-content: center;
  }
  .block-category .block-category-inner > img {
    max-width: 400px !important;
    object-fit: cover;
  }
}
@media screen and (max-width: 1120px) {
  :root {
    --header-height: 160px;
  }

  #header {
    height: var(--header-height);
    justify-content: space-between;
  }
  #checkout #header {
    height: 70px;
  }
  #checkout #wrapper {
    padding-top: calc(70px + 20px);
  }
  #header .menu {
    display: none;
  }
  #header .header-banner {
    display: none;
  }
  #header .header_top {
    justify-content: space-between;
  }
  .custom_searchbar_autocomplete {
    top: 8rem;
  }
  #header .content_left {
    gap: 0;
    flex-direction: row;
    justify-content: flex-start;
  }
  #header .content_left .content_searchbar .logo {
    position: absolute;
    left: 50%;
    top: 20px;
    transform: translateX(-50%);
  }
  #header .search-widgets {
    position: fixed;
    left: 50%;
    top: 64px;
    transform: translateX(-50%);
    width: calc(100vw - 32px);
  }
}
@media screen and (max-width: 1080px) {
  body:not(.page-index) h1 {
    font-size: 2.4rem;
  }
  .bloghome .container {
    flex-direction: column;
  }
  .bloghome .bloghometitle {
    display: grid;
    grid-template-columns: auto auto;
    grid-template-rows: auto auto;
    row-gap: 20px;
  }
  .bloghome .bloghometitle a {
    grid-column: 2;
    grid-row: 1;
    justify-self: flex-end;
    height: max-content;
  }
  .bloghometitle p {
    grid-column: 1 / 3;
  }
  .bloghome h2,
  .bloghometitle p {
    margin-bottom: 0;
  }
  footer .footer_top {
    flex-direction: column;
    align-items: flex-start;
    padding-top: 1rem;
  }
  #footer .footer_info_shop {
    margin-top: 1rem;
    margin-left: 0;
  }
  #product #content {
    height: 480px;
  }
}
@media screen and (max-width: 1024px) {
  .customblocks_slider .content_text .product_name {
    font-size: 1.4rem;
  }
  .customblocks_slider .content_text .flag_discount {
    font-size: 1rem;
    min-width: 68px;
    min-height: 32px;
  }
  .customblocks_slider .content_text .content_price p {
    font-size: 2rem;
  }
  .customblocks_slider .swiper-slide img.manufacturer_logo {
    max-width: 100px;
  }
  .swiper-button-next,
  .swiper-button-prev {
    width: 48px;
    height: 48px;
    padding: 14px;
  }
  .product-flags li.product-flag:has(.svg_eco) span {
    display: none !important;
  }
  body#product h1 {
    font-size: 1.4rem;
  }
  .cart-overview .cart-item .qty {
    width: auto;
  }
  #cart .cart-item .product-line-grid {
    flex-wrap: wrap;
    row-gap: 1rem;
  }
  #cart .cart-item .product-line-grid-right {
    width: 100%;
  }
  body#checkout .cart-grid-right {
    padding-top: 20px;
  }
  body#checkout section#content {
    margin-bottom: 4rem;
  }

  :root {
    --card-width: 100%;
  }
  #left-column .card-header svg {
    display: block;
  }
  #left-column {
    max-width: 100%;
    position: fixed;
    z-index: 999;
    top: 0;
    left: 0;
    margin: 0;
    border-radius: 0;
    width: 100%;
    padding: 28px 18px;
    /* overflow: auto; */
    transform: translateX(-100%);
    transition: all 0.4s ease;
    border-right: none;
  }
  #left-column .PM_ASBlockOutput {
    max-height: calc(100vh - 52px);
    padding-bottom: 52px;
    overflow: auto;
  }
  .PM_ASBlockOutput.PM_ASMobileMode .card-block {
    display: block !important;
  }
  #left-column .card-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  #left-column .card-header::after,
  .PM_ASBlockOutput.PM_ASMobileMode .PM_ASBlockTitle:after {
    content: none !important;
  }

  #left-column:has(.PM_ASBlockOutput.PM_ASMobileVisible) {
    transform: translateX(0);
  }
  body:has(.PM_ASBlockOutput.PM_ASMobileVisible) {
    overflow: hidden;
  }
  #left-column:has(.PM_ASBlockOutput:not(.PM_ASMobileVisible)) {
    transform: translateX(-100%);
  }
  #left-column:has(.PM_ASBlockOutput.PM_ASMobileVisible) .btn_sumbit_filter {
    display: flex;
  }
  #js-product-list-top {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    margin: 0;
    transform: translateY(100%);
    transition: all 0.4s ease;
    background-color: white;
    border-top: 1px solid #f0f0f0;
    border-top-left-radius: 12px;
    border-top-right-radius: 12px;
    z-index: 999;
  }
  #js-product-list-top.js-active {
    transform: translateY(0);
    box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
  }
  #js-product-list-top .sort-by-row,
  #js-product-list-top .products-sort-order,
  #js-product-list-top,
  #js-product-list-top a {
    width: 100%;
  }
  #js-product-list-top .products-sort-order {
    display: flex;
    flex-direction: column;
  }
  .products-sort-order a {
    padding: 16px 16px;
    font-size: 1rem;
  }
  body:has(.ets_mm_megamenu:hover) #wrapper::before {
    opacity: 0;
    pointer-events: none;
  }
  body:has(#js-product-list-top.js-active) #wrapper::before {
    opacity: 1;
    pointer-events: initial;
  }
  .products-sort-order a.current {
    border-radius: 0;
    background-color: #f5f5f5;
    border: none;
    padding: 16px 16px;
    font-weight: 700;
  }
  #js-product-list-top .sort-by {
    display: none;
  }
  .filter_mobile {
    display: grid;
    grid-template-columns: 1fr 1fr;
    pointer-events: initial;
  }
  .block_newsletter > .row {
    flex-wrap: wrap;
    gap: 12px;
  }
  .block_newsletter form > .row > .col-xs-12 {
    padding-left: 0;
  }
}
@media screen and (max-width: 940px) {
  .tabs_products .tabs_body .product-list .manufacturer_details {
    grid-column: 1 / 4;
  }
  .tabs_products .tabs_body .product-list {
    grid-template-rows: 345px auto;
  }
  #header #_desktop_user_info a,
  #header #_desktop_cart a {
    width: 44px;
    height: 44px;
  }
  #header #_desktop_user_info a span,
  #header #_desktop_cart a > span:not(.cart-products-count) {
    display: none;
  }
  #header .cart-products-count {
    right: 1px;
  }
  #header .content_left {
    align-items: flex-start;
  }
  .changestatus.ets_mm_megamenu.hook-custom {
    margin-top: 0;
  }
}
@media screen and (max-width: 840px) {
  .tabs_products .tabs_body .product-list {
    grid-template-columns: repeat(2, 1fr);
  }
  .customblocks_featured_product.second .products {
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
  }
  .customblocks_featured_product.second
    .tabs_products
    .tabs_body
    .product-list
    .manufacturer_details {
    max-height: 405px;
    width: 100%;
  }
  .customblocks_featured_product.second .products::before,
  .customblocks_featured_product.second .products::after {
    height: 405px;
  }
  .tabs_products .tabs_body .product-list .manufacturer_details {
    grid-column: 1 / 3;
  }
  .customblocks_image_texte .content_text {
    align-items: center;
    text-align: center;
  }
  .customblocks_image_texte {
    padding-bottom: 2rem;
  }
  .customblocks_image_texte > .container {
    flex-direction: column;
  }
  .customblocks_image_texte > .container {
    gap: 0;
  }
  .customblocks_image_texte .content_image img {
    height: 8rem;
  }
  .customblocks_image_texte .content_image img {
    transform: translateY(-36px);
  }
  .bloghome .content_articles {
    grid-template-columns: repeat(2, 1fr);
  }
  .bloghome .article:last-child {
    display: none;
  }
  .header_bandeau .custom_block_bandeau {
    padding: 4px 0;
    position: relative;
    width: 200vw;
    overflow: hidden;
    animation: marquee 10s linear infinite;
  }
  .header_bandeau p {
    white-space: nowrap;
    font-size: 0.8rem;
  }
  .header_bandeau p:nth-child(2) {
    display: inline-block;
  }
  .block-category .block-category-inner > img {
    max-width: 300px !important;
  }
}
@media screen and (max-width: 768px) {
  :root {
    --header-height: 155px;
    --card-width: 100%;
  }
  #language-selector-label {
    display: none;
  }
  header .language-selector.dropdown select {
    color: var(--color-gray-light);
    font-size: 0.8rem;
  }
  .ets_mm_megamenu .mm_columns_ul {
    width: auto;
    left: initial;
    padding: 0;
  }
  #category #wrapper {
    padding-top: calc(var(--header-height) + 0px);
  }
  .ets_mm_megamenu .container {
    background-color: transparent;
  }

  #header .header_top {
    width: calc(100vw - 32px);
  }
  #header .search-widgets {
    top: 78px;
  }
  #header .content_right {
    justify-content: center;
    row-gap: 4px;
  }

  .custom_searchbar_autocomplete {
    top: 7rem;
  }
  .custom_searchbar_autocomplete .section_title {
    font-size: 0.8rem;
    padding: 0.5rem 1rem;
  }
  .searchbar_active .custom_searchbar_autocomplete {
    flex-direction: column;
  }
  .custom_searchbar_autocomplete .categories_suggestion {
    min-width: 100%;
    max-width: 100%;
  }
  .custom_searchbar_autocomplete .categories_suggestion ul {
    flex-wrap: nowrap;
    overflow: auto;
  }
  .custom_searchbar_autocomplete .categories_suggestion ul li a {
    white-space: nowrap;
    padding: 8px 9px;
    display: inline-block;
  }
  .custom_searchbar_autocomplete .products_suggestion ul {
    grid-template-columns: 1fr;
    max-height: 20rem;
    overflow: auto;
  }
  .mm_menus_li {
    width: 100% !important;
  }
  .ets_mm_megamenu.hook-custom {
    margin-top: 0;
  }
  #wrapper .breadcrumb {
    font-size: 0.8rem;
  }
  body:not(.page-index) h1 {
    font-size: 1.5rem;
  }
  h2,
  .h2 {
    font-size: 1.8rem;
    margin-bottom: 1rem;
  }
  .bloc_reassurance ul,
  #product .bloc_reassurance .swiper .swiper-wrapper,
  #cart .bloc_reassurance .swiper .swiper-wrapper {
    grid-template-columns: 1fr 1fr;
  }
  #custom-text {
    padding: 1rem 0;
  }
  #custom-text .container_bloc_double {
    flex-direction: column;
  }
  .customblocks_image_texte .content_text > svg {
    width: 11rem;
    height: auto;
  }
  .featured-products .container_title_slider .products-section-title {
    font-size: 2rem;
  }
  #category #search_filter_toggler {
    display: none;
  }
  .products-sort-order ul {
    row-gap: 4px;
  }
  .text_subtitle {
    font-size: 1.1rem;
  }
  .products-selection .showing {
    display: none;
  }
  .product-miniature .customization_flag {
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
  }
  .product-miniature .variant-links {
    padding-left: 6px;
  }
  #products .up {
    display: none !important;
  }
  #product .swiper-product-thumb .swiper-slide img {
    padding: 8px;
    border: 1px solid var(--bg-primary);
    border-radius: 8px;
    max-width: 100%;
    height: auto;
  }
  #product .swiper-product-thumb .swiper-slide.swiper-slide-thumb-active img {
    border: 1px solid var(--color-green);
  }
  #product .swiper-product-thumb .content_swiper_navigation {
    display: none;
  }

  #product #content {
    width: 90%;
    height: 290px;
  }
  #product .images-container {
    padding: 1rem 1rem 7rem 1rem;
  }
  #product .product-container > .container {
    flex-direction: column;
    width: 100%;
    margin: 0;
    gap: 2rem;
  }
  #product .product-container > .container > div:has(.page-content) {
    padding-right: 0;
  }
  #product #content {
    margin: 0 auto;
  }
  body.layout-left-column #content-wrapper,
  body.layout-both-columns #content-wrapper {
    padding-left: 15px;
    padding-right: 15px;
    max-width: 100%;
  }

  .container_swiper_homepage .swiper-slide img {
    width: 100%;
    height: 11rem;
    object-fit: cover;
    object-position: center;
  }
  #swiper-homepage-thumbs {
    padding-top: 2rem;
  }
  .container_swiper_homepage .content_swiper_navigation {
    top: 10.5rem;
    width: 90%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
  #products .products {
    grid-template-columns: 1fr 1fr;
    padding: 0 2rem;
    gap: 14px;
  }
  .product-miniature .product-price-and-shipping {
    display: flex;
    flex-direction: column;
    gap: 4px;
  }
  .product-miniature .product-title {
    font-size: 0.8rem;
  }
  .product-miniature .content_bottom {
    justify-content: center;
  }

  .container_product_details_actions .product-add-to-cart {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 10;
    background-color: white;
    border-top: 1px solid #ededed;
    box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
  }
  .container_product_details_actions .product-add-to-cart .control-label {
    display: none;
  }
  .product_details_right .product-quantity {
    flex-direction: row;
    align-items: center;
    padding: 30px 16px 38px 16px;
  }

  .container_product_details_actions .content_stock {
    position: absolute;
    top: 8px;
    left: 21px;
  }
  .container_product_details_actions #product-availability {
    font-size: 0.6rem;
  }
  .container_product_details_actions .content_stock .status_stock::before {
    width: 9px;
    height: 9px;
    min-width: 9px;
  }
  .container_product_details_actions .product-quantity .add {
    flex-grow: 1;
  }
  .product_details_right button.add-to-cart {
    width: 100%;
  }
  .product_details_right button.add-to-cart {
    font-size: 1rem;
  }
  .container_product_details_actions .container_delivery {
    width: 100%;
  }
  #product #spr .average_text {
    font-size: 0.8rem !important;
    margin-left: 0;
  }
  .block_newsletter {
    border-radius: 0;
  }
  #js-product-list-top .filter-button {
    display: none !important;
  }
  #product #footer {
    padding-bottom: 9rem;
  }
  .product-container .product_details_left,
  .product-container .product_details_right .container_product_details_actions {
    flex-direction: column;
  }
  .product-container .product_details_left .product-images,
  .product-container .product_details_left .product-information {
    width: 100%;
  }
  .product-information {
    border-left: none;
    padding: 2rem 0 0 0;
  }
  body#product h1 {
    font-size: 1.2rem;
  }
  .container_product_bottom {
    flex-direction: column;
    gap: 20px;
  }
  .container_product_bottom .container_product_description,
  .container_product_bottom .container_product_details {
    width: 100%;
  }
  .container_product_bottom .product-description {
    margin-bottom: 2rem;
  }
  .container_product_bottom .container_product_description::after {
    content: none;
  }
  .container_product_bottom .container_product_details {
    padding-left: 0;
  }
  #swiper-homepage-thumbs:not(.swiper-initialized) .swiper-slide {
    width: 100%;
    margin-right: 10px;
  }
  .container_swiper_homepage .content_swiper_navigation .swiper-button-prev,
  .container_swiper_homepage .content_swiper_navigation .swiper-button-next {
    transform: translateX(0);
  }
  #swiper-homepage .swiper-slide {
    border-radius: 0;
  }
  .container_swiper_homepage .swiper-slide img {
    border-radius: 12px;
  }
  .block-categories .swiper-slide figure img {
    width: 120px;
    height: auto;
  }
  .block-categories .swiper-slide figure,
  .block-categories .swiper-slide figure::before {
    width: 140px;
    height: 140px;
    margin: auto;
  }
  .block-categories .swiper-slide a {
    font-size: 1rem;
  }
  .products .content_swiper_navigation .swiper-button-prev,
  .products .content_swiper_navigation .swiper-button-next {
    transform: translateX(0);
  }
  .products .content_swiper_navigation {
    top: unset;
    bottom: 20px;
  }
  .products .swiper {
    padding: 12px 0 74px 0;
  }

  footer .links .title {
    border-bottom: 1px solid #0063833b;
    margin-bottom: 8px;
  }
  .links .navbar-toggler,
  footer .block-contact .navbar-toggler .material-icons {
    color: var(--color-blue);
  }
  .footer-container .links ul {
    background-color: transparent;
  }
  .footer-container .links ul > li {
    border: none;
    padding: 4px 8px;
  }
  #footer .block-contact,
  #footer #block_myaccount_infos {
    margin-top: 1rem;
  }
  #footer .to-top {
    top: -54px;
    right: 12px;
    z-index: 2;
  }
  #footer .footer-container > .container > .row {
    margin: 0;
  }
  #footer .footer_info_shop {
    gap: 16px;
    margin-bottom: 0;
  }
  .product-container .product_details_left {
    padding: 1rem 1rem 1rem 1rem !important;
  }
  .container_product_bottom {
    padding: 1rem;
  }
  .features_list .feature {
    padding: 8px 12px;
  }
  #product .features_list p {
    font-size: 0.8rem;
  }
  .carousel-control,
  .content_swiper_navigation .swiper-button,
  .swiper .content_swiper_navigation .swiper-button {
    width: 50px;
    height: 50px;
  }
  .page-my-account .btn.btn_logout {
    top: -8px;
  }
  #cart .cart-item .product-line-grid .hidden-md-up {
    display: none;
  }
  #cart .cart-item .product-line-grid-right > .row {
    display: flex;
    justify-content: flex-end;
  }
  #cart .cart-item .product-line-grid-right .col-xs-6,
  #cart .cart-item .product-line-grid-right .col-xs-7 {
    width: auto;
  }
  .transition_floating .mm_menus_ul {
    max-width: 100vw;
  }

  .mm_menus_ul {
    background-color: var(--bg-primary) !important;
  }
  /*
  .mm_columns_ul {
    display: block !important;
    visibility: visible !important;
  }
    */
  .transition_floating .close_menu {
    background-color: var(--color-blue-secondary) !important;
  }
  .transition_floating .close_menu *,
  .transition_full .close_menu *,
  .ybc-menu-vertical-button .icon-bar {
    color: white !important;
    font-size: 1rem;
  }
  .mm_menus_ul .close_menu .pull-left,
  .mm_menus_ul .close_menu .pull-right {
    display: flex;
    align-items: center;
    gap: 4px;
  }
  .mm_menus_back_icon {
    border-color: white !important;
  }
  .close_menu .icon-bar,
  .ybc-menu-vertical-button .icon-bar {
    background-color: white !important;
  }
  .layout_layout1 .mm_menus_li.mm_has_sub:not(:has(.mm_columns_ul.active)) {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  .ets_mm_megamenu .mm_columns_ul {
    margin-top: 0;
  }
  .ets_mm_megamenu_content .mm_menus_li > a {
    padding: 12px 10px;
  }
  .mm_menu_content_title {
    font-size: 1rem;
  }
  .ets_mm_block > .h4 {
    margin-bottom: 0px;
    margin-top: 16px;
    color: var(--color-blue-secondary);
    font-size: 0.8rem !important;
  }
  .layout_layout1.ets_mm_megamenu .mm_columns_ul {
    padding-bottom: 1rem;
  }
  /*
  .ets_mm_megamenu_content .mm_menus_li > a {
    display: none;
  }
    */
  .ets_mm_megamenu_content_content
    > ul
    > li
    > ul
    > li:nth-child(1)
    > .mm_tab_li_content {
    margin-top: 0;
  }
  .mm_blocks_li:not(:has(.h4)):not(:has(.mm_block_type_image)) {
    padding-top: 0;
  }
  #header
    .layout_layout1
    ul
    .mm_columns_li:last-child:not(:nth-child(1))
    .ets_mm_block_content
    > ul
    > li:last-child
    a,
  #header
    .layout_layout1
    ul
    .mm_columns_li:nth-child(2)
    .ets_mm_block_content
    > ul
    > li:last-child
    a {
    border: none;
  }
  .mm_columns_li:has(.mm_block_type_image) {
    display: none;
  }
  /*
  .ets_mm_block > .h4,
  .ets_mm_block > .h4 a {
    display: none;
  }
    */
  .mm_tabs_li .mm_columns_contents_ul {
    padding: 20px 5px 20px 5px;
  }
  .mm_columns_ul > .mm_tabs_li:last-child > .mm_tab_li_content {
    margin-bottom: 0;
  }
  #right-column .cart-summary .cart-detailed-totals {
    padding: 20px;
  }
  #checkout #header .header-top {
    display: none;
  }
  #checkout #footer .text-sm-center {
    font-size: 0.8rem;
  }
  .block-categories {
    padding: 2rem 0 1rem 0;
  }
  #footer .row:has(.footer_baseline) {
    flex-direction: column-reverse;
    gap: 24px;
    padding: 1rem 0 0 0;
  }
  #footer .footer_baseline {
    flex-direction: column;
    gap: 8px;
  }
  #footer #spr {
    position: inherit;
  }
  #footer #spr .spr_home_reviews > .text-sm-center {
    margin-right: 0;
  }
  #product #spr h2 {
    margin-bottom: 0;
  }
  #product #spr #spr_reviews_list_footer .content {
    flex-direction: column;
  }
  #product #spr .distribution-block .note {
    min-height: 100px;
    gap: 8px;
  }
  #product #spr_reviews_list_footer .col-6.distribution-block {
    width: 100%;
  }
  #product #spr_reviews_list_footer div#spr_review_details {
    width: 100%;
    padding-left: 0;
    margin-left: 0;
    border: none;
  }
  .page-authentication #content {
    flex-direction: column;
  }
  .page-authentication form .form-group {
    align-items: flex-start;
  }
  .page-authentication #content > div {
    width: 100%;
  }
  .page-authentication #content .content_image {
    display: none;
  }
  .page-authentication #content form .js-input-column,
  .page-authentication #content form .input-group .form-control {
    width: 100%;
    max-width: 100%;
  }
  .page-authentication #content form #submit-login {
    width: 100%;
  }
  .page-customer-account #content .forgot-password {
    padding-bottom: 2rem;
    margin-top: 0rem;
  }
  .page-authentication #content > .login-form,
  .page-authentication #content #lpsproaccount {
    padding: 0 1.25rem 3rem 1.25rem;
  }
  .lpsproaccount-button {
    grid-template-columns: 1fr;
  }
  .featured-products .swiper:not(.swiper-initialized) .swiper-slide {
    margin-right: 8px;
    width: 251px;
    height: 380px;
  }
  .custom_block_bottom h1 {
    font-size: 1.2rem;
  }
  .tabs_products .tabs_body .product-list .manufacturer_details_content {
    width: 90%;
  }
  .block_newsletter #block-newsletter-label {
    font-size: 1.8rem;
    font-weight: 700;
  }
  .block_newsletter #block-newsletter-label span {
    font-size: 2rem;
  }
  .customblocks_slider .content_text {
    left: 5rem;
  }
  .swiper-button-prev {
    left: 16px;
  }
  .swiper-button-next {
    right: 16px;
  }
  .tabs_products .tabs_header img {
    width: 6rem;
    height: auto;
  }
  #js-product-list-header .block-category {
    padding: 60px 0 20px 0;
  }
  .block-category .block-category-inner {
    flex-direction: column-reverse;
    gap: 1rem;
  }
  .block-category .block-category-inner > img {
    max-width: 100% !important;
    height: 10rem;
    margin: auto;
  }
  .block_newsletter > .row {
    margin: 0;
  }
  .page-authentication #content > .login-form,
  .page-authentication #content #lpsproaccount {
    margin-top: 0;
  }
  .lpsproaccount-button a {
    width: max-content !important;
  }
  .cart-summary .cart-detailed-totals {
    padding: 12px;
  }
}
@media screen and (max-width: 680px) {
  .customblocks_slider .content_text {
    top: 41%;
    left: 50%;
    transform: translate(-50%, -50%);
    max-width: 100%;
    min-width: 380px;
  }
  .customblocks_slider .content_text > p:not(.product_name) {
    font-size: 0.9rem;
  }
  .swiper-button-prev {
    left: 28px;
  }
  .swiper-button-next {
    right: 28px;
  }
  .swiper-horizontal > .swiper-pagination-bullets,
  .swiper-pagination-bullets.swiper-pagination-horizontal,
  .swiper-button-next,
  .swiper-button-prev {
    top: unset;
    bottom: 16px;
  }
  #product .container_videos > .container .content_videos {
    flex-direction: column;
  }
  #product .container_videos iframe,
  #product .container_videos video {
    width: 100%;
    max-width: 100%;
  }
}
@media screen and (max-width: 600px) {
  :root {
    --card-width: 100%;
  }
  #products .products {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
  .tabs_products .tabs_body .product-list .manufacturer_details {
    padding-left: 16px;
  }
  .tabs_products .tabs_body .product-list .manufacturer_details_content {
    max-width: 100%;
  }
  .bloghome .content_articles {
    gap: 12px;
  }
  .bloghome .article {
    grid-template-rows: 87px 1fr;
  }
  .bloghome .article .content_text {
    padding: 12px 12px;
  }
  .bloghome .article .article_title {
    font-size: 0.9rem;
  }
  .bloghome .article .everpsblogcontent {
    padding: 8px 0 20px 0;
    font-size: 0.8rem;
    line-height: 1.2;
  }
}
@media screen and (max-width: 576px) {
  #right-column {
    width: 100%;
  }
  .page-my-account .btn.btn_logout {
    right: 16px;
  }
  .page-my-account #content .links a {
    margin-bottom: 1rem;
  }
  #blockcart-modal .modal-body {
    padding: 1rem 1rem 1rem 1rem;
  }
  #blockcart-modal .product-image {
    width: 7rem;
  }
  #blockcart-modal .product-name {
    font-size: 1rem;
  }
  #blockcart-modal .cart-content p.cart-products-count {
    font-size: 0.8rem;
  }
  #blockcart-modal .cart-content .cart-content-btn {
    justify-content: space-between;
  }
  #blockcart-modal .cart-content .cart-content-btn .btn {
    font-size: 0.9rem;
  }
  #blockcart-modal .cart-content .cart-content-btn button {
    margin-right: 0;
  }
  #blockcart-modal .cart-content .cart-content-btn .btn .material-icons {
    font-size: 16px;
  }
  .modal-dialog {
    margin: 20px auto 0px auto;
  }
  #blockcart-modal .modal-title i.material-icons {
    margin-right: 8px;
  }
  #blockcart-modal .modal-title {
    font-size: 0.9rem;
  }
  #product .breadcrumb {
    display: none;
  }
  #product #wrapper {
    padding-top: var(--header-height);
  }
  #product #spr .reviews_distribution {
    padding: 0rem 1rem;
  }
  #header .cart-products-count.long {
    top: 0px;
    right: -7px;
  }
  .featured-products .swiper:not(.swiper-initialized) .swiper-slide {
    width: calc((100vw - 38px) / 2);
  }
  .product-miniature .pro-only-label {
    font-size: 0.7rem;
  }
  .linked_article p {
    font-size: 1.5rem;
  }
  #product .product-container {
    padding-top: 1rem;
  }
}
@media screen and (max-width: 520px) {
  h2,
  .h2 {
    font-size: 1.2rem;
  }
  .bloghome .bloghometitle {
    column-gap: 12px;
  }
  #header #_desktop_user_info a,
  #header #_desktop_cart a {
    width: 40px;
    height: 40px;
  }
  .product-miniature {
    height: 345px;
    min-height: 345px;
  }
  .product-miniature .product-thumbnail .thumbnail-container-top {
    flex-direction: column-reverse;
    align-items: flex-end;
    height: 100%;
    padding: 8px;
  }
  #header .cart-products-count {
    top: 0px;
    right: 0px;
  }
  #footer .footer_info_shop {
    flex-direction: column;
    gap: 10px;
  }
  .product-miniature .product-description {
    padding: 12px 12px;
  }
  .product-miniature .product-price-and-shipping .price {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 480px) {
  #blockcart-modal .cart-content .cart-content-btn {
    flex-direction: column;
    gap: 12px;
  }
  #checkout-personal-information-step .content ul.nav li a {
    padding: 8px 8px;
    font-size: 0.9rem;
  }
  #header .content_left .content_searchbar .logo {
    top: 30px;
  }
  .changestatus.ets_mm_megamenu.hook-custom {
    margin-top: 6px;
  }
  #header .logo svg {
    width: 153px;
  }
  .customblocks_slider .content_text {
    max-width: 100%;
    min-width: var(--layout-width);
    top: 42%;
  }
  .customblocks_slider .content_text .product_name {
    font-size: 1.2rem;
  }
  .customblocks_slider .swiper-slide img.img_cover {
    height: 460px;
  }
  .content_stock .status_stock {
    font-size: 0.7rem;
  }
  .content_stock .status_stock.available::before {
    content: none;
  }
}
