@charset "UTF-8";
.phone-action {
  cursor: pointer;
}

.phone-dropdown {
  position: absolute;
  top: calc(100% + 0.75rem);
  right: 0;
  min-width: 220px;
  background: var(--color-white);
  border: 1px solid #e8e8e8;
  border-radius: var(--radius, 0.5rem);
  box-shadow: var(--shadow, 0 8px 24px rgba(9, 27, 44, 0.12));
  padding: 1rem 1.25rem;
  z-index: 1000;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-6px);
  transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s;
  pointer-events: none;
}
.phone-dropdown::before {
  content: "";
  position: absolute;
  top: -6px;
  right: 14px;
  width: 10px;
  height: 10px;
  background: var(--color-white);
  border-left: 1px solid #e8e8e8;
  border-top: 1px solid #e8e8e8;
  transform: rotate(45deg);
}

.phone-action:hover .phone-dropdown,
.phone-action.is-open .phone-dropdown {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  pointer-events: auto;
}

@media (max-width: 767.98px) {
  .phone-dropdown {
    right: auto;
    left: 0;
    max-width: calc(100vw - 1.5rem);
  }
  .phone-dropdown::before {
    right: auto;
    left: 14px;
  }
}
.phone-dropdown-number {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 1.1rem;
  font-weight: var(--font-weight-bold);
  color: var(--color-primary, #091b2c);
  text-decoration: none;
  margin-bottom: 0.5rem;
  white-space: nowrap;
}
.phone-dropdown-number:hover {
  color: var(--color-secondary, #f97902);
}

.phone-dropdown-text {
  font-size: 0.8rem;
  color: #555;
  margin: 0 0 0.25rem;
  line-height: 1.4;
}

.phone-dropdown-hours {
  font-size: 0.78rem;
  color: #888;
  margin: 0;
  font-style: italic;
}

:root {
  --color-white: #ffffff;
  --color-primary-rgb: 15, 36, 56;
  --radius: 0.5rem;
  --shadow: 0 16px 40px rgba(20, 33, 61, 0.08);
}

body.shop-fbg {
  --color-primary: #091b2c;
  --color-primary-hover: #0f2e4b;
  --color-secondary: #f97902;
  --color-secondary-rgb: 249, 121, 2;
  --color-secondary-hover: #ca6506;
  --color-grey: #efefef;
  --color-gradient: linear-gradient(
    0deg,
    var(--color-secondary) 0%,
    #ff9736 100%
  );
  --color-gradient-hover: linear-gradient(
    0deg,
    var(--color-secondary) 0%,
    #c9782c 100%
  );
  --text-color: #091b2c;
  --bs-primary: var(--color-primary);
  --bs-primary-rgb: 255, 122, 0;
  --bs-body-color: var(--color-primary);
  --bs-body-bg: var(--color-white);
}

body.shop-mbg {
  --color-primary: #e94c2f;
  --color-primary-hover: #be3e27;
  --color-secondary: #091b2c;
  --color-secondary-rgb: 9, 27, 44;
  --color-secondary-hover: #0f2e4b;
  --color-grey: #eaeaea;
  --color-gradient: linear-gradient(
    0deg,
    var(--color-primary) 0%,
    #ee664d 100%
  );
  --color-gradient-hover: linear-gradient(
    0deg,
    var(--color-primary) 0%,
    #9d5d22 100%
  );
  --text-color: #091b2c;
}

.tw_mt-0 {
  margin-top: 0;
}

.tw_mt-1 {
  margin-top: 0.25rem;
}

.tw_mt-2 {
  margin-top: 0.5rem;
}

.tw_mt-3 {
  margin-top: 0.75rem;
}

.tw_mt-4 {
  margin-top: 1rem;
}

.tw_mt-5 {
  margin-top: 1.25rem;
}

.tw_mt-6 {
  margin-top: 1.5rem;
}

.tw_mt-7 {
  margin-top: 1.75rem;
}

.tw_mt-8 {
  margin-top: 2rem;
}

.tw_mt-9 {
  margin-top: 2.25rem;
}

.tw_mt-10 {
  margin-top: 2.5rem;
}

.tw_mt-11 {
  margin-top: 2.75rem;
}

.tw_mt-12 {
  margin-top: 3rem;
}

.tw_mr-0 {
  margin-right: 0;
}

.tw_mr-1 {
  margin-right: 0.25rem;
}

.tw_mr-2 {
  margin-right: 0.5rem;
}

.tw_mr-3 {
  margin-right: 0.75rem;
}

.tw_mr-4 {
  margin-right: 1rem;
}

.tw_mr-5 {
  margin-right: 1.25rem;
}

.tw_mr-6 {
  margin-right: 1.5rem;
}

.tw_mr-7 {
  margin-right: 1.75rem;
}

.tw_mr-8 {
  margin-right: 2rem;
}

.tw_mr-9 {
  margin-right: 2.25rem;
}

.tw_mr-10 {
  margin-right: 2.5rem;
}

.tw_mr-11 {
  margin-right: 2.75rem;
}

.tw_mr-12 {
  margin-right: 3rem;
}

.tw_mb-0 {
  margin-bottom: 0;
}

.tw_mb-1 {
  margin-bottom: 0.25rem;
}

.tw_mb-2 {
  margin-bottom: 0.5rem;
}

.tw_mb-3 {
  margin-bottom: 0.75rem;
}

.tw_mb-4 {
  margin-bottom: 1rem;
}

.tw_mb-5 {
  margin-bottom: 1.25rem;
}

.tw_mb-6 {
  margin-bottom: 1.5rem;
}

.tw_mb-7 {
  margin-bottom: 1.75rem;
}

.tw_mb-8 {
  margin-bottom: 2rem;
}

.tw_mb-9 {
  margin-bottom: 2.25rem;
}

.tw_mb-10 {
  margin-bottom: 2.5rem;
}

.tw_mb-11 {
  margin-bottom: 2.75rem;
}

.tw_mb-12 {
  margin-bottom: 3rem;
}

.tw_ml-0 {
  margin-left: 0;
}

.tw_ml-1 {
  margin-left: 0.25rem;
}

.tw_ml-2 {
  margin-left: 0.5rem;
}

.tw_ml-3 {
  margin-left: 0.75rem;
}

.tw_ml-4 {
  margin-left: 1rem;
}

.tw_ml-5 {
  margin-left: 1.25rem;
}

.tw_ml-6 {
  margin-left: 1.5rem;
}

.tw_ml-7 {
  margin-left: 1.75rem;
}

.tw_ml-8 {
  margin-left: 2rem;
}

.tw_ml-9 {
  margin-left: 2.25rem;
}

.tw_ml-10 {
  margin-left: 2.5rem;
}

.tw_ml-11 {
  margin-left: 2.75rem;
}

.tw_ml-12 {
  margin-left: 3rem;
}

.tw_pt-0 {
  padding-top: 0;
}

.tw_pt-1 {
  padding-top: 0.25rem;
}

.tw_pt-2 {
  padding-top: 0.5rem;
}

.tw_pt-3 {
  padding-top: 0.75rem;
}

.tw_pt-4 {
  padding-top: 1rem;
}

.tw_pt-5 {
  padding-top: 1.25rem;
}

.tw_pt-6 {
  padding-top: 1.5rem;
}

.tw_pt-7 {
  padding-top: 1.75rem;
}

.tw_pt-8 {
  padding-top: 2rem;
}

.tw_pt-9 {
  padding-top: 2.25rem;
}

.tw_pt-10 {
  padding-top: 2.5rem;
}

.tw_pt-11 {
  padding-top: 2.75rem;
}

.tw_pt-12 {
  padding-top: 3rem;
}

.tw_pr-0 {
  padding-right: 0;
}

.tw_pr-1 {
  padding-right: 0.25rem;
}

.tw_pr-2 {
  padding-right: 0.5rem;
}

.tw_pr-3 {
  padding-right: 0.75rem;
}

.tw_pr-4 {
  padding-right: 1rem;
}

.tw_pr-5 {
  padding-right: 1.25rem;
}

.tw_pr-6 {
  padding-right: 1.5rem;
}

.tw_pr-7 {
  padding-right: 1.75rem;
}

.tw_pr-8 {
  padding-right: 2rem;
}

.tw_pr-9 {
  padding-right: 2.25rem;
}

.tw_pr-10 {
  padding-right: 2.5rem;
}

.tw_pr-11 {
  padding-right: 2.75rem;
}

.tw_pr-12 {
  padding-right: 3rem;
}

.tw_pb-0 {
  padding-bottom: 0;
}

.tw_pb-1 {
  padding-bottom: 0.25rem;
}

.tw_pb-2 {
  padding-bottom: 0.5rem;
}

.tw_pb-3 {
  padding-bottom: 0.75rem;
}

.tw_pb-4 {
  padding-bottom: 1rem;
}

.tw_pb-5 {
  padding-bottom: 1.25rem;
}

.tw_pb-6 {
  padding-bottom: 1.5rem;
}

.tw_pb-7 {
  padding-bottom: 1.75rem;
}

.tw_pb-8 {
  padding-bottom: 2rem;
}

.tw_pb-9 {
  padding-bottom: 2.25rem;
}

.tw_pb-10 {
  padding-bottom: 2.5rem;
}

.tw_pb-11 {
  padding-bottom: 2.75rem;
}

.tw_pb-12 {
  padding-bottom: 3rem;
}

.tw_pl-0 {
  padding-left: 0;
}

.tw_pl-1 {
  padding-left: 0.25rem;
}

.tw_pl-2 {
  padding-left: 0.5rem;
}

.tw_pl-3 {
  padding-left: 0.75rem;
}

.tw_pl-4 {
  padding-left: 1rem;
}

.tw_pl-5 {
  padding-left: 1.25rem;
}

.tw_pl-6 {
  padding-left: 1.5rem;
}

.tw_pl-7 {
  padding-left: 1.75rem;
}

.tw_pl-8 {
  padding-left: 2rem;
}

.tw_pl-9 {
  padding-left: 2.25rem;
}

.tw_pl-10 {
  padding-left: 2.5rem;
}

.tw_pl-11 {
  padding-left: 2.75rem;
}

.tw_pl-12 {
  padding-left: 3rem;
}

@media (min-width: 1024px) {
  .lg\:tw_mt-0 {
    margin-top: 0;
  }
  .lg\:tw_mt-1 {
    margin-top: 0.25rem;
  }
  .lg\:tw_mt-2 {
    margin-top: 0.5rem;
  }
  .lg\:tw_mt-3 {
    margin-top: 0.75rem;
  }
  .lg\:tw_mt-4 {
    margin-top: 1rem;
  }
  .lg\:tw_mt-5 {
    margin-top: 1.25rem;
  }
  .lg\:tw_mt-6 {
    margin-top: 1.5rem;
  }
  .lg\:tw_mt-7 {
    margin-top: 1.75rem;
  }
  .lg\:tw_mt-8 {
    margin-top: 2rem;
  }
  .lg\:tw_mt-9 {
    margin-top: 2.25rem;
  }
  .lg\:tw_mt-10 {
    margin-top: 2.5rem;
  }
  .lg\:tw_mt-11 {
    margin-top: 2.75rem;
  }
  .lg\:tw_mt-12 {
    margin-top: 3rem;
  }
  .lg\:tw_mr-0 {
    margin-right: 0;
  }
  .lg\:tw_mr-1 {
    margin-right: 0.25rem;
  }
  .lg\:tw_mr-2 {
    margin-right: 0.5rem;
  }
  .lg\:tw_mr-3 {
    margin-right: 0.75rem;
  }
  .lg\:tw_mr-4 {
    margin-right: 1rem;
  }
  .lg\:tw_mr-5 {
    margin-right: 1.25rem;
  }
  .lg\:tw_mr-6 {
    margin-right: 1.5rem;
  }
  .lg\:tw_mr-7 {
    margin-right: 1.75rem;
  }
  .lg\:tw_mr-8 {
    margin-right: 2rem;
  }
  .lg\:tw_mr-9 {
    margin-right: 2.25rem;
  }
  .lg\:tw_mr-10 {
    margin-right: 2.5rem;
  }
  .lg\:tw_mr-11 {
    margin-right: 2.75rem;
  }
  .lg\:tw_mr-12 {
    margin-right: 3rem;
  }
  .lg\:tw_mb-0 {
    margin-bottom: 0;
  }
  .lg\:tw_mb-1 {
    margin-bottom: 0.25rem;
  }
  .lg\:tw_mb-2 {
    margin-bottom: 0.5rem;
  }
  .lg\:tw_mb-3 {
    margin-bottom: 0.75rem;
  }
  .lg\:tw_mb-4 {
    margin-bottom: 1rem;
  }
  .lg\:tw_mb-5 {
    margin-bottom: 1.25rem;
  }
  .lg\:tw_mb-6 {
    margin-bottom: 1.5rem;
  }
  .lg\:tw_mb-7 {
    margin-bottom: 1.75rem;
  }
  .lg\:tw_mb-8 {
    margin-bottom: 2rem;
  }
  .lg\:tw_mb-9 {
    margin-bottom: 2.25rem;
  }
  .lg\:tw_mb-10 {
    margin-bottom: 2.5rem;
  }
  .lg\:tw_mb-11 {
    margin-bottom: 2.75rem;
  }
  .lg\:tw_mb-12 {
    margin-bottom: 3rem;
  }
  .lg\:tw_ml-0 {
    margin-left: 0;
  }
  .lg\:tw_ml-1 {
    margin-left: 0.25rem;
  }
  .lg\:tw_ml-2 {
    margin-left: 0.5rem;
  }
  .lg\:tw_ml-3 {
    margin-left: 0.75rem;
  }
  .lg\:tw_ml-4 {
    margin-left: 1rem;
  }
  .lg\:tw_ml-5 {
    margin-left: 1.25rem;
  }
  .lg\:tw_ml-6 {
    margin-left: 1.5rem;
  }
  .lg\:tw_ml-7 {
    margin-left: 1.75rem;
  }
  .lg\:tw_ml-8 {
    margin-left: 2rem;
  }
  .lg\:tw_ml-9 {
    margin-left: 2.25rem;
  }
  .lg\:tw_ml-10 {
    margin-left: 2.5rem;
  }
  .lg\:tw_ml-11 {
    margin-left: 2.75rem;
  }
  .lg\:tw_ml-12 {
    margin-left: 3rem;
  }
  .lg\:tw_pt-0 {
    padding-top: 0;
  }
  .lg\:tw_pt-1 {
    padding-top: 0.25rem;
  }
  .lg\:tw_pt-2 {
    padding-top: 0.5rem;
  }
  .lg\:tw_pt-3 {
    padding-top: 0.75rem;
  }
  .lg\:tw_pt-4 {
    padding-top: 1rem;
  }
  .lg\:tw_pt-5 {
    padding-top: 1.25rem;
  }
  .lg\:tw_pt-6 {
    padding-top: 1.5rem;
  }
  .lg\:tw_pt-7 {
    padding-top: 1.75rem;
  }
  .lg\:tw_pt-8 {
    padding-top: 2rem;
  }
  .lg\:tw_pt-9 {
    padding-top: 2.25rem;
  }
  .lg\:tw_pt-10 {
    padding-top: 2.5rem;
  }
  .lg\:tw_pt-11 {
    padding-top: 2.75rem;
  }
  .lg\:tw_pt-12 {
    padding-top: 3rem;
  }
  .lg\:tw_pr-0 {
    padding-right: 0;
  }
  .lg\:tw_pr-1 {
    padding-right: 0.25rem;
  }
  .lg\:tw_pr-2 {
    padding-right: 0.5rem;
  }
  .lg\:tw_pr-3 {
    padding-right: 0.75rem;
  }
  .lg\:tw_pr-4 {
    padding-right: 1rem;
  }
  .lg\:tw_pr-5 {
    padding-right: 1.25rem;
  }
  .lg\:tw_pr-6 {
    padding-right: 1.5rem;
  }
  .lg\:tw_pr-7 {
    padding-right: 1.75rem;
  }
  .lg\:tw_pr-8 {
    padding-right: 2rem;
  }
  .lg\:tw_pr-9 {
    padding-right: 2.25rem;
  }
  .lg\:tw_pr-10 {
    padding-right: 2.5rem;
  }
  .lg\:tw_pr-11 {
    padding-right: 2.75rem;
  }
  .lg\:tw_pr-12 {
    padding-right: 3rem;
  }
  .lg\:tw_pb-0 {
    padding-bottom: 0;
  }
  .lg\:tw_pb-1 {
    padding-bottom: 0.25rem;
  }
  .lg\:tw_pb-2 {
    padding-bottom: 0.5rem;
  }
  .lg\:tw_pb-3 {
    padding-bottom: 0.75rem;
  }
  .lg\:tw_pb-4 {
    padding-bottom: 1rem;
  }
  .lg\:tw_pb-5 {
    padding-bottom: 1.25rem;
  }
  .lg\:tw_pb-6 {
    padding-bottom: 1.5rem;
  }
  .lg\:tw_pb-7 {
    padding-bottom: 1.75rem;
  }
  .lg\:tw_pb-8 {
    padding-bottom: 2rem;
  }
  .lg\:tw_pb-9 {
    padding-bottom: 2.25rem;
  }
  .lg\:tw_pb-10 {
    padding-bottom: 2.5rem;
  }
  .lg\:tw_pb-11 {
    padding-bottom: 2.75rem;
  }
  .lg\:tw_pb-12 {
    padding-bottom: 3rem;
  }
  .lg\:tw_pl-0 {
    padding-left: 0;
  }
  .lg\:tw_pl-1 {
    padding-left: 0.25rem;
  }
  .lg\:tw_pl-2 {
    padding-left: 0.5rem;
  }
  .lg\:tw_pl-3 {
    padding-left: 0.75rem;
  }
  .lg\:tw_pl-4 {
    padding-left: 1rem;
  }
  .lg\:tw_pl-5 {
    padding-left: 1.25rem;
  }
  .lg\:tw_pl-6 {
    padding-left: 1.5rem;
  }
  .lg\:tw_pl-7 {
    padding-left: 1.75rem;
  }
  .lg\:tw_pl-8 {
    padding-left: 2rem;
  }
  .lg\:tw_pl-9 {
    padding-left: 2.25rem;
  }
  .lg\:tw_pl-10 {
    padding-left: 2.5rem;
  }
  .lg\:tw_pl-11 {
    padding-left: 2.75rem;
  }
  .lg\:tw_pl-12 {
    padding-left: 3rem;
  }
}
@media (min-width: 1280px) {
  .xl\:tw_mt-0 {
    margin-top: 0;
  }
  .xl\:tw_mt-1 {
    margin-top: 0.25rem;
  }
  .xl\:tw_mt-2 {
    margin-top: 0.5rem;
  }
  .xl\:tw_mt-3 {
    margin-top: 0.75rem;
  }
  .xl\:tw_mt-4 {
    margin-top: 1rem;
  }
  .xl\:tw_mt-5 {
    margin-top: 1.25rem;
  }
  .xl\:tw_mt-6 {
    margin-top: 1.5rem;
  }
  .xl\:tw_mt-7 {
    margin-top: 1.75rem;
  }
  .xl\:tw_mt-8 {
    margin-top: 2rem;
  }
  .xl\:tw_mt-9 {
    margin-top: 2.25rem;
  }
  .xl\:tw_mt-10 {
    margin-top: 2.5rem;
  }
  .xl\:tw_mt-11 {
    margin-top: 2.75rem;
  }
  .xl\:tw_mt-12 {
    margin-top: 3rem;
  }
  .xl\:tw_mr-0 {
    margin-right: 0;
  }
  .xl\:tw_mr-1 {
    margin-right: 0.25rem;
  }
  .xl\:tw_mr-2 {
    margin-right: 0.5rem;
  }
  .xl\:tw_mr-3 {
    margin-right: 0.75rem;
  }
  .xl\:tw_mr-4 {
    margin-right: 1rem;
  }
  .xl\:tw_mr-5 {
    margin-right: 1.25rem;
  }
  .xl\:tw_mr-6 {
    margin-right: 1.5rem;
  }
  .xl\:tw_mr-7 {
    margin-right: 1.75rem;
  }
  .xl\:tw_mr-8 {
    margin-right: 2rem;
  }
  .xl\:tw_mr-9 {
    margin-right: 2.25rem;
  }
  .xl\:tw_mr-10 {
    margin-right: 2.5rem;
  }
  .xl\:tw_mr-11 {
    margin-right: 2.75rem;
  }
  .xl\:tw_mr-12 {
    margin-right: 3rem;
  }
  .xl\:tw_mb-0 {
    margin-bottom: 0;
  }
  .xl\:tw_mb-1 {
    margin-bottom: 0.25rem;
  }
  .xl\:tw_mb-2 {
    margin-bottom: 0.5rem;
  }
  .xl\:tw_mb-3 {
    margin-bottom: 0.75rem;
  }
  .xl\:tw_mb-4 {
    margin-bottom: 1rem;
  }
  .xl\:tw_mb-5 {
    margin-bottom: 1.25rem;
  }
  .xl\:tw_mb-6 {
    margin-bottom: 1.5rem;
  }
  .xl\:tw_mb-7 {
    margin-bottom: 1.75rem;
  }
  .xl\:tw_mb-8 {
    margin-bottom: 2rem;
  }
  .xl\:tw_mb-9 {
    margin-bottom: 2.25rem;
  }
  .xl\:tw_mb-10 {
    margin-bottom: 2.5rem;
  }
  .xl\:tw_mb-11 {
    margin-bottom: 2.75rem;
  }
  .xl\:tw_mb-12 {
    margin-bottom: 3rem;
  }
  .xl\:tw_ml-0 {
    margin-left: 0;
  }
  .xl\:tw_ml-1 {
    margin-left: 0.25rem;
  }
  .xl\:tw_ml-2 {
    margin-left: 0.5rem;
  }
  .xl\:tw_ml-3 {
    margin-left: 0.75rem;
  }
  .xl\:tw_ml-4 {
    margin-left: 1rem;
  }
  .xl\:tw_ml-5 {
    margin-left: 1.25rem;
  }
  .xl\:tw_ml-6 {
    margin-left: 1.5rem;
  }
  .xl\:tw_ml-7 {
    margin-left: 1.75rem;
  }
  .xl\:tw_ml-8 {
    margin-left: 2rem;
  }
  .xl\:tw_ml-9 {
    margin-left: 2.25rem;
  }
  .xl\:tw_ml-10 {
    margin-left: 2.5rem;
  }
  .xl\:tw_ml-11 {
    margin-left: 2.75rem;
  }
  .xl\:tw_ml-12 {
    margin-left: 3rem;
  }
  .xl\:tw_pt-0 {
    padding-top: 0;
  }
  .xl\:tw_pt-1 {
    padding-top: 0.25rem;
  }
  .xl\:tw_pt-2 {
    padding-top: 0.5rem;
  }
  .xl\:tw_pt-3 {
    padding-top: 0.75rem;
  }
  .xl\:tw_pt-4 {
    padding-top: 1rem;
  }
  .xl\:tw_pt-5 {
    padding-top: 1.25rem;
  }
  .xl\:tw_pt-6 {
    padding-top: 1.5rem;
  }
  .xl\:tw_pt-7 {
    padding-top: 1.75rem;
  }
  .xl\:tw_pt-8 {
    padding-top: 2rem;
  }
  .xl\:tw_pt-9 {
    padding-top: 2.25rem;
  }
  .xl\:tw_pt-10 {
    padding-top: 2.5rem;
  }
  .xl\:tw_pt-11 {
    padding-top: 2.75rem;
  }
  .xl\:tw_pt-12 {
    padding-top: 3rem;
  }
  .xl\:tw_pr-0 {
    padding-right: 0;
  }
  .xl\:tw_pr-1 {
    padding-right: 0.25rem;
  }
  .xl\:tw_pr-2 {
    padding-right: 0.5rem;
  }
  .xl\:tw_pr-3 {
    padding-right: 0.75rem;
  }
  .xl\:tw_pr-4 {
    padding-right: 1rem;
  }
  .xl\:tw_pr-5 {
    padding-right: 1.25rem;
  }
  .xl\:tw_pr-6 {
    padding-right: 1.5rem;
  }
  .xl\:tw_pr-7 {
    padding-right: 1.75rem;
  }
  .xl\:tw_pr-8 {
    padding-right: 2rem;
  }
  .xl\:tw_pr-9 {
    padding-right: 2.25rem;
  }
  .xl\:tw_pr-10 {
    padding-right: 2.5rem;
  }
  .xl\:tw_pr-11 {
    padding-right: 2.75rem;
  }
  .xl\:tw_pr-12 {
    padding-right: 3rem;
  }
  .xl\:tw_pb-0 {
    padding-bottom: 0;
  }
  .xl\:tw_pb-1 {
    padding-bottom: 0.25rem;
  }
  .xl\:tw_pb-2 {
    padding-bottom: 0.5rem;
  }
  .xl\:tw_pb-3 {
    padding-bottom: 0.75rem;
  }
  .xl\:tw_pb-4 {
    padding-bottom: 1rem;
  }
  .xl\:tw_pb-5 {
    padding-bottom: 1.25rem;
  }
  .xl\:tw_pb-6 {
    padding-bottom: 1.5rem;
  }
  .xl\:tw_pb-7 {
    padding-bottom: 1.75rem;
  }
  .xl\:tw_pb-8 {
    padding-bottom: 2rem;
  }
  .xl\:tw_pb-9 {
    padding-bottom: 2.25rem;
  }
  .xl\:tw_pb-10 {
    padding-bottom: 2.5rem;
  }
  .xl\:tw_pb-11 {
    padding-bottom: 2.75rem;
  }
  .xl\:tw_pb-12 {
    padding-bottom: 3rem;
  }
  .xl\:tw_pl-0 {
    padding-left: 0;
  }
  .xl\:tw_pl-1 {
    padding-left: 0.25rem;
  }
  .xl\:tw_pl-2 {
    padding-left: 0.5rem;
  }
  .xl\:tw_pl-3 {
    padding-left: 0.75rem;
  }
  .xl\:tw_pl-4 {
    padding-left: 1rem;
  }
  .xl\:tw_pl-5 {
    padding-left: 1.25rem;
  }
  .xl\:tw_pl-6 {
    padding-left: 1.5rem;
  }
  .xl\:tw_pl-7 {
    padding-left: 1.75rem;
  }
  .xl\:tw_pl-8 {
    padding-left: 2rem;
  }
  .xl\:tw_pl-9 {
    padding-left: 2.25rem;
  }
  .xl\:tw_pl-10 {
    padding-left: 2.5rem;
  }
  .xl\:tw_pl-11 {
    padding-left: 2.75rem;
  }
  .xl\:tw_pl-12 {
    padding-left: 3rem;
  }
}
.form-control {
  border-radius: 999px !important;
}

.input-group .form-control {
  border-top-right-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
}
.input-group .btn {
  border-top-left-radius: 0 !important;
  border-bottom-left-radius: 0 !important;
}

.quantity-button__group .btn.decrement {
  border-radius: 999px 0 0 999px !important;
}
.quantity-button__group #quantity_wanted {
  border-radius: 0 !important;
}

.cart-summary__total {
  border: none;
}

.ql-size-small {
  font-size: 0.8em;
}

.ql-size-large {
  font-size: 1.25em;
}

.ql-size-huge {
  font-size: 1.6em;
}

.ql-align-left {
  text-align: left;
}

.ql-align-center {
  text-align: center;
}

.ql-align-right {
  text-align: right;
}

.ql-align-justify {
  text-align: justify;
}

.ka {
  position: relative;
}

.ka-block__inner {
  width: 100%;
}

.ka-block__header {
  margin-bottom: 1rem;
}

.ka-block__title > *:first-child,
.ka-block__subtitle > *:first-child,
.ka-block__copy > *:first-child {
  margin-top: 0;
}

.ka-block__title > *:last-child,
.ka-block__subtitle > *:last-child,
.ka-block__copy > *:last-child {
  margin-bottom: 0;
}

.ka-block__title h1,
.ka-block__title h2,
.ka-block__title h3,
.ka-block__title h4,
.ka-block__title h5,
.ka-block__title h6 {
  margin: 0;
  color: #0f2438;
  font-weight: 700;
}

.ka-block__subtitle {
  color: rgba(15, 36, 56, 0.86);
  line-height: 1.6;
}

.ka-block__link {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  color: var(--color-secondary);
  font-weight: 600;
  font-size: 16px;
  text-decoration: none;
}

.ka-carousel__frame {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 1rem;
}

.ka-carousel__nav {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3rem;
  height: 3rem;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: #0f2438;
}

.ka-carousel__viewport {
  overflow: hidden;
}

.ka-carousel__track {
  display: grid;
  grid-auto-flow: column;
  overflow-x: auto;
  padding: 0 0 1rem;
  scroll-behavior: smooth;
  scrollbar-width: none;
}

.ka-carousel__track::-webkit-scrollbar {
  display: none;
}

.ka-carousel__item {
  scroll-snap-align: start;
}

@media (max-width: 767.98px) {
  .ka-carousel__frame {
    grid-template-columns: 1fr;
  }
  .ka-carousel__nav {
    display: none;
  }
}
.ka-content__body > *:first-child,
.ka-split__text > *:first-child,
.ka-services__text > *:first-child,
.ka-faq__answer > *:first-child,
.ka-cms-card__excerpt > *:first-child {
  margin-top: 0;
}

.ka-content__body > *:last-child,
.ka-split__text > *:last-child,
.ka-services__text > *:last-child,
.ka-faq__answer > *:last-child,
.ka-cms-card__excerpt > *:last-child {
  margin-bottom: 0;
}

/* Content */
.ka.ka-content {
  padding: 2.5rem 0;
}

.ka.ka-content .ka-content__title {
  margin-bottom: 1rem;
  font-size: clamp(1.8rem, 2.5vw, 2.75rem);
  font-weight: 800;
  line-height: 1.1;
  letter-spacing: -0.03em;
}

.ka.ka-content .ka-content__body {
  color: rgba(15, 36, 56, 0.88);
  line-height: 1.75;
}

/* Brands */
.ka.ka-brands {
  padding: 2rem 0 1rem;
  --ka-brand-card-width: 200px;
  --ka-brand-card-height: 130px;
  --ka-brands-gap: 1rem;
  --ka-brands-single-max-width: 14rem;
}

.ka.ka-brands .ka-block__title {
  font-size: 20px;
  font-weight: 700;
}

.ka.ka-brands .ka-brands__carousel {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 1rem;
  position: relative;
}

.ka.ka-brands .ka-brands__viewport {
  overflow: hidden;
  cursor: grab;
}

.ka.ka-brands .ka-brands__viewport.is-dragging {
  cursor: grabbing;
}

.ka.ka-brands .ka-brands__track {
  display: flex;
  gap: var(--ka-brands-gap);
}

.ka.ka-brands .ka-brands__slide {
  display: flex;
  justify-content: center;
  flex: 0 0 calc((100% - var(--ka-brands-gap) * (var(--embla-slides-mobile) - 1)) / var(--embla-slides-mobile));
  min-width: 0;
}

.ka.ka-brands .ka-brands__control {
  z-index: 2;
  width: 3rem;
  height: 3rem;
  padding: 0;
  border: 0;
  opacity: 1;
  color: #0f2438;
  background: transparent;
}

.ka.ka-brands .ka-brands__control:disabled {
  opacity: 0.32;
  pointer-events: none;
}

.ka.ka-brands .ka-brands__control-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3rem;
  height: 3rem;
}

.ka.ka-brands .ka-brands__card {
  display: flex;
  align-items: center;
  justify-content: center;
  width: min(100%, var(--ka-brand-card-width));
  height: var(--ka-brand-card-height);
  padding: 1.25rem;
  background: #f4f1ed;
  color: #0f2438;
  text-align: center;
  text-decoration: none;
}

.ka.ka-brands .ka-brands__card:hover {
  background: var(--color-secondary);
  color: var(--color-white);
}

.ka.ka-brands .ka-brands__content {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}

.ka.ka-brands .ka-brands__logo {
  max-width: 100%;
  max-height: 56px;
  object-fit: contain;
}

.ka.ka-brands .ka-brands__name {
  display: block;
  font-size: 22px;
  font-weight: 600;
  line-height: 1;
  text-transform: uppercase;
}

.ka.ka-brands .ka-brands__carousel.is-static .ka-brands__control {
  opacity: 0;
  pointer-events: none;
}

.ka.ka-brands .ka-brands__carousel.is-static[data-products-count="1"] .ka-brands__track {
  justify-content: center;
}

.ka.ka-brands .ka-brands__carousel.is-static[data-products-count="1"] .ka-brands__slide {
  flex-basis: min(100%, var(--ka-brands-single-max-width));
  max-width: var(--ka-brands-single-max-width);
}

@media (min-width: 768px) {
  .ka.ka-brands .ka-brands__slide {
    flex-basis: calc((100% - var(--ka-brands-gap) * (var(--embla-slides-tablet) - 1)) / var(--embla-slides-tablet));
  }
}
@media (min-width: 992px) {
  .ka.ka-brands .ka-brands__slide {
    flex-basis: calc((100% - var(--ka-brands-gap) * (var(--embla-slides-desktop) - 1)) / var(--embla-slides-desktop));
  }
}
@media (max-width: 767.98px) {
  .ka.ka-brands {
    --ka-brand-card-width: 180px;
    --ka-brand-card-height: 118px;
  }
}
@media (max-width: 575.98px) {
  .ka.ka-brands .ka-brands__carousel {
    grid-template-columns: 2.5rem minmax(0, 1fr) 2.5rem;
    gap: 0.5rem;
  }
  .ka.ka-brands .ka-brands__control {
    width: 2.5rem;
    height: 2.5rem;
  }
  .ka.ka-brands .ka-brands__control-icon {
    width: 2.5rem;
    height: 2.5rem;
  }
}
/* Categories */
.ka.ka-categories {
  padding: 2rem 0 1rem;
  --ka-categories-gap: 1.5rem;
  --ka-categories-single-max-width: 24rem;
}

.ka.ka-categories .ka-categories__carousel {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 1rem;
  position: relative;
}

.ka.ka-categories .ka-categories__viewport {
  overflow: hidden;
  cursor: grab;
}

.ka.ka-categories .ka-categories__viewport.is-dragging {
  cursor: grabbing;
}

.ka.ka-categories .ka-categories__track {
  display: flex;
  gap: var(--ka-categories-gap);
}

.ka.ka-categories .ka-categories__slide {
  flex: 0 0 calc((100% - var(--ka-categories-gap) * (var(--embla-slides-mobile) - 1)) / var(--embla-slides-mobile));
  min-width: 0;
}

@media (max-width: 767.98px) {
  .ka.ka-categories .ka-categories__carousel {
    display: block;
  }
  .ka.ka-categories .ka-categories__viewport {
    overflow: visible;
  }
  .ka.ka-categories .ka-categories__track {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    transform: none !important;
  }
  .ka.ka-categories .ka-categories__slide {
    flex: 0 0 auto;
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }
  .ka.ka-categories .ka-categories__card {
    width: 100%;
  }
  .ka.ka-categories .ka-categories__control {
    display: none;
  }
}
.ka.ka-categories .ka-categories__control {
  z-index: 2;
  width: 3rem;
  height: 3rem;
  padding: 0;
  border: 0;
  opacity: 1;
  color: #0f2438;
  background: transparent;
}

.ka.ka-categories .ka-categories__control:disabled {
  opacity: 0.32;
  pointer-events: none;
}

.ka.ka-categories .ka-categories__control-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3rem;
  height: 3rem;
}

.ka.ka-categories .ka-categories__highlight {
  color: var(--color-secondary);
}

.ka.ka-categories .ka-categories__card {
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: 1.25rem 1.25rem 1.5rem;
  border: 1px solid var(--color-primary);
  border-radius: 1.2rem;
  box-shadow: inset 0 0 0 0 transparent;
  background: #fff;
  color: #0f2438;
  text-decoration: none;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.ka.ka-categories .ka-categories__card:hover {
  border-color: var(--color-secondary);
  box-shadow: inset 0 0 0 1px var(--color-secondary);
}

.ka.ka-categories .ka-categories__card:hover .ka-categories__name {
  color: var(--color-secondary);
}

.ka.ka-categories .ka-categories__card:hover svg {
  transform: translateX(10px);
  transition: 0.3s ease;
}

.ka.ka-categories .ka-categories__media {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  aspect-ratio: 31/23;
  overflow: hidden;
  margin-bottom: 1.25rem;
}

.ka.ka-categories .ka-categories__image {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.ka.ka-categories .ka-categories__placeholder {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding: 1rem;
  font-size: clamp(1.3rem, 2vw, 2rem);
  font-weight: 800;
  line-height: 1.1;
  text-align: center;
}

.ka.ka-categories .ka-categories__body {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  justify-content: space-between;
  gap: 1rem;
}

.ka.ka-categories .ka-categories__name {
  margin: 0;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.1;
}

.ka.ka-categories .ka-categories__meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.ka.ka-categories .ka-categories__arrow {
  color: var(--color-secondary);
}

.ka.ka-categories .ka-categories__arrow svg {
  width: 2.2rem;
  transform: scaleX(1.12);
  transform-origin: center;
}

.ka.ka-categories .ka-categories__carousel.is-static .ka-categories__control {
  opacity: 0;
  pointer-events: none;
}

.ka.ka-categories .ka-categories__carousel.is-static[data-products-count="1"] .ka-categories__track {
  justify-content: center;
}

.ka.ka-categories .ka-categories__carousel.is-static[data-products-count="1"] .ka-categories__slide {
  flex-basis: min(100%, var(--ka-categories-single-max-width));
  max-width: var(--ka-categories-single-max-width);
}

@media (min-width: 768px) {
  .ka.ka-categories .ka-categories__slide {
    flex-basis: calc((100% - var(--ka-categories-gap) * (var(--embla-slides-tablet) - 1)) / var(--embla-slides-tablet));
  }
}
@media (min-width: 1200px) {
  .ka.ka-categories .ka-categories__slide {
    flex-basis: calc((100% - var(--ka-categories-gap) * (var(--embla-slides-desktop) - 1)) / var(--embla-slides-desktop));
  }
}
@media (max-width: 767.98px) {
  .ka.ka-categories .ka-categories__media {
    aspect-ratio: 31/23;
  }
}
@media (max-width: 575.98px) {
  .ka.ka-categories .ka-categories__carousel {
    grid-template-columns: 2.5rem minmax(0, 1fr) 2.5rem;
    gap: 0.5rem;
  }
  .ka.ka-categories .ka-categories__control {
    width: 2.5rem;
    height: 2.5rem;
  }
  .ka.ka-categories .ka-categories__control-icon {
    width: 2.5rem;
    height: 2.5rem;
  }
}
/* CMS list */
.ka.ka-cms-list .ka-cms-list__copy {
  max-width: 48rem;
}

.ka.ka-cms-list .ka-cms-list__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
}

.ka.ka-cms-list .ka-block__title {
  font-size: clamp(2rem, 4vw, 3.4rem);
}

.ka.ka-cms-list .ka-block__subtitle {
  margin-top: 0.8rem;
}

.ka.ka-cms-list .ka-cms-card {
  height: 100%;
  overflow: hidden;
  border-radius: 0.9rem;
  background: #fff;
  box-shadow: 0 18px 36px rgba(15, 36, 56, 0.08);
}

.ka.ka-cms-list .ka-cms-card > a {
  display: flex;
  flex-direction: column;
  height: 100%;
  color: inherit;
  text-decoration: none;
}

.ka.ka-cms-list .ka-cms-card__media {
  position: relative;
  display: block;
  aspect-ratio: 1.32/0.7;
  overflow: hidden;
  background: #dfe5ea;
}

.ka.ka-cms-list .ka-cms-card__media.is-empty {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1.5rem;
  background: linear-gradient(180deg, #edf2f6 0%, #dfe5ea 100%);
}

.ka.ka-cms-list .ka-cms-card__image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.35s ease;
}

.ka.ka-cms-list .ka-cms-card__placeholder {
  color: rgba(15, 36, 56, 0.72);
  font-size: clamp(1.1rem, 2vw, 1.5rem);
  font-weight: 800;
  line-height: 1.2;
  text-align: center;
}

.ka.ka-cms-list .ka-cms-card__tag {
  position: absolute;
  bottom: 0.8rem;
  left: 0.8rem;
  display: inline-flex;
  align-items: center;
  min-height: 1.6rem;
  padding: 0.2rem 0.45rem;
  border-radius: 0.4rem;
  background: rgba(255, 255, 255, 0.92);
  color: var(--color-secondary);
  font-size: 0.72rem;
  font-weight: 700;
  text-transform: uppercase;
}

.ka.ka-cms-list .ka-cms-card__body {
  padding: 2rem;
  transition: background-color 0.25s ease, color 0.25s ease;
}

.ka.ka-cms-list .ka-cms-card__title {
  margin: 0 0 0.7rem;
  font-size: 20px;
  font-weight: 600;
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  transition: color 0.25s ease;
}

.ka.ka-cms-list .ka-cms-card__excerpt {
  margin: 0 0 0.9rem;
  color: rgba(15, 36, 56, 0.85);
  font-size: 15px;
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  transition: color 0.25s ease;
}

.ka.ka-cms-list .ka-cms-card:hover .ka-cms-card__image {
  transform: scale(1.08);
}

.ka.ka-cms-list .ka-cms-card:hover .ka-cms-card__body {
  background-color: var(--color-primary);
  color: var(--color-white);
}

.ka.ka-cms-list .ka-cms-card:hover .ka-cms-card__title,
.ka.ka-cms-list .ka-cms-card:hover .ka-cms-card__excerpt,
.ka.ka-cms-list .ka-cms-card:hover .ka-block__link {
  color: var(--color-white);
}

@media (max-width: 991.98px) {
  .ka.ka-cms-list .ka-cms-list__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 767.98px) {
  .ka.ka-cms-list .ka-cms-list__grid {
    grid-template-columns: 1fr;
  }
}
/* Split */
.ka.ka-split .ka-split__layout {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
  overflow: hidden;
  background: var(--color-primary);
}

.ka.ka-split .ka-split__content {
  display: flex;
  align-items: center;
  min-width: 0;
  padding: 5rem 7rem 5rem 30%;
  color: #fff;
}

.ka.ka-split .ka-split__title {
  margin-bottom: 2rem;
}

.ka.ka-split .ka-split__title h1,
.ka.ka-split .ka-split__title h2,
.ka.ka-split .ka-split__title h3,
.ka.ka-split .ka-split__title h4,
.ka.ka-split .ka-split__title h5,
.ka.ka-split .ka-split__title h6 {
  color: #fff;
}

.ka.ka-split .ka-split__text {
  color: rgba(255, 255, 255, 0.94);
}

.ka.ka-split .ka-split__actions {
  margin-top: 2rem;
}

.ka.ka-split .ka-split__media {
  min-height: 100%;
  background: #d7dce0;
}

.ka.ka-split .ka-split__image {
  width: 100%;
  height: auto;
}

.ka.ka-split .ka-split__placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 420px;
  padding: 2rem;
  color: var(--color-primary);
  font-weight: 600;
  text-align: center;
  background: linear-gradient(135deg, #f1f1f1 0%, #dfdfdf 100%);
}

.shop-mbg .ka.ka-split .ka-split__actions .btn {
  background: var(--color-secondary);
}

.ka.ka-split--media-left .ka-split__layout {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr);
}

.ka.ka-split--media-left .ka-split__media {
  order: -1;
}

.ka.ka-split--media-left .ka-split__content {
  padding: 5rem 30% 5rem 7rem;
}

@media (max-width: 991.98px) {
  .ka.ka-split .ka-split__layout,
  .ka.ka-split--media-left .ka-split__layout {
    grid-template-columns: 1fr;
  }
  .ka.ka-split .ka-split__media {
    order: -1;
    min-height: 360px;
  }
  .ka.ka-split--media-left .ka-split__content {
    padding: 5rem 7rem 5rem 30%;
  }
}
.ka.ka-image-editor {
  position: relative;
}

.ka.ka-image-editor .ka-block__inner {
  position: relative;
}

.ka.ka-image-editor .ka-image-editor__shell {
  position: relative;
  padding: 1rem 0;
}

.ka.ka-image-editor .ka-image-editor__layout {
  --bs-gutter-x: 2.25rem;
  --bs-gutter-y: 1.5rem;
}

.ka.ka-image-editor .ka-image-editor__media {
  position: relative;
}

.ka.ka-image-editor .ka-image-editor__media-link,
.ka.ka-image-editor .ka-image-editor__image {
  display: block;
}

.ka.ka-image-editor .ka-image-editor__image {
  width: 100%;
  min-height: 460px;
  object-fit: cover;
  border-radius: 1.5rem;
  box-shadow: 0 24px 60px rgba(9, 27, 44, 0.14);
}

.ka.ka-image-editor .ka-image-editor__placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 460px;
  padding: 2rem;
  border: 1px dashed rgba(9, 27, 44, 0.18);
  border-radius: 1.5rem;
  color: var(--color-primary);
  font-weight: 600;
  text-align: center;
  background: linear-gradient(135deg, #f7f8fa 0%, #eceff3 100%);
}

.ka.ka-image-editor .ka-image-editor__content {
  position: relative;
  z-index: 1;
}

.ka.ka-image-editor .ka-image-editor__content-card {
  padding: 3rem;
}

.ka.ka-image-editor .ka-image-editor__title {
  margin-bottom: 1.25rem;
}

.ka.ka-image-editor .ka-image-editor__title h1,
.ka.ka-image-editor .ka-image-editor__title h2,
.ka.ka-image-editor .ka-image-editor__title h3,
.ka.ka-image-editor .ka-image-editor__title h4,
.ka.ka-image-editor .ka-image-editor__title h5,
.ka.ka-image-editor .ka-image-editor__title h6 {
  color: var(--color-primary);
  line-height: 1.15;
}

.ka.ka-image-editor .ka-image-editor__text {
  color: rgba(9, 27, 44, 0.88);
  font-size: 1rem;
  line-height: 1.75;
}

.ka.ka-image-editor .ka-image-editor__text p:last-child {
  margin-bottom: 0;
}

.ka.ka-image-editor .ka-image-editor__actions {
  margin-top: 1.75rem;
}

.ka.ka-image-editor.ka-image-editor--media-left .ka-image-editor__layout > :first-child {
  order: 1;
}

.ka.ka-image-editor.ka-image-editor--media-left .ka-image-editor__layout > :last-child {
  order: 2;
}

.ka.ka-image-editor.ka-image-editor--media-right .ka-image-editor__layout > :first-child {
  order: 2;
}

.ka.ka-image-editor.ka-image-editor--media-right .ka-image-editor__layout > :last-child {
  order: 1;
}

.shop-mbg .ka.ka-image-editor .ka-image-editor__content-card {
  border-color: rgba(233, 76, 47, 0.14);
}

@media (max-width: 991.98px) {
  .ka.ka-image-editor .ka-image-editor__layout {
    --bs-gutter-x: 0;
    --bs-gutter-y: 1.5rem;
  }
  .ka.ka-image-editor .ka-image-editor__layout > :first-child,
  .ka.ka-image-editor .ka-image-editor__layout > :last-child,
  .ka.ka-image-editor.ka-image-editor--media-left .ka-image-editor__layout > :first-child,
  .ka.ka-image-editor.ka-image-editor--media-left .ka-image-editor__layout > :last-child,
  .ka.ka-image-editor.ka-image-editor--media-right .ka-image-editor__layout > :first-child,
  .ka.ka-image-editor.ka-image-editor--media-right .ka-image-editor__layout > :last-child {
    order: initial;
  }
  .ka.ka-image-editor .ka-image-editor__image,
  .ka.ka-image-editor .ka-image-editor__placeholder {
    min-height: 320px;
  }
  .ka.ka-image-editor .ka-image-editor__content-card {
    padding: 2rem 1.5rem;
  }
}
/* Triangles slider */
.ka.ka-triangles-slider {
  overflow: hidden;
  background: #fff;
}

.ka.ka-triangles-slider::before,
.ka.ka-triangles-slider::after {
  content: "";
  position: absolute;
  pointer-events: none;
}

.ka.ka-triangles-slider::before {
  top: 0;
  left: 0;
  width: 25%;
  height: 40%;
  background: var(--color-grey);
  clip-path: polygon(0 0, 100% 0, 0 100%);
}

.ka.ka-triangles-slider::after {
  right: 0;
  bottom: 0;
  width: 55%;
  height: 100%;
  background: var(--color-primary);
  clip-path: polygon(100% 0, 0 100%, 100% 100%);
}

.ka.ka-triangles-slider .ka-block__inner {
  position: relative;
  z-index: 1;
  min-height: 510px;
  padding: 0;
}

.ka.ka-triangles-slider .ka-triangles-slider__carousel,
.ka.ka-triangles-slider .ka-triangles-slider__item,
.ka.ka-triangles-slider .ka-triangles-slider__layout {
  height: 100%;
}

.ka.ka-triangles-slider .ka-triangles-slider__layout {
  position: relative;
  min-height: 510px;
  padding: 0;
}

.ka.ka-triangles-slider .ka-triangles-slider__content-shell {
  position: absolute;
  z-index: 3;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.ka.ka-triangles-slider .ka-triangles-slider__content {
  position: relative;
  max-width: 45%;
}

.ka.ka-triangles-slider .ka-triangles-slider__title * {
  font-size: 50px;
}

.ka.ka-triangles-slider .ka-triangles-slider__text {
  font-size: 17px;
  margin-top: 2rem;
}

.ka.ka-triangles-slider .ka-triangles-slider__actions {
  margin-top: 2rem;
}

.ka.ka-triangles-slider .ka-triangles-slider__media {
  position: absolute;
  inset: 0;
  z-index: 2;
  display: flex;
  align-items: stretch;
  justify-content: stretch;
}

.ka.ka-triangles-slider .ka-triangles-slider__image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}

.ka.ka-triangles-slider .ka-triangles-slider__placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding: 2rem;
  border: 2px dashed rgba(15, 36, 56, 0.18);
  color: rgba(15, 36, 56, 0.7);
  text-align: center;
  background: rgba(255, 255, 255, 0.35);
}

.ka.ka-triangles-slider .ka-triangles-slider__indicators {
  z-index: 4;
  bottom: 1rem;
  left: 12%;
  margin: 0;
  justify-content: start;
}

.ka.ka-triangles-slider .ka-triangles-slider__indicators [data-bs-target] {
  width: 15px;
  height: 15px;
  margin: 0 8px 0 0;
  border: 0;
  border-radius: 999px;
  opacity: 1;
  background: #c9c9c9;
}

.ka.ka-triangles-slider .ka-triangles-slider__indicators .active {
  background: #f95a3d;
}

@media (max-width: 1199.98px) {
  .ka.ka-triangles-slider .ka-block__inner,
  .ka.ka-triangles-slider .ka-triangles-slider__layout {
    min-height: 460px;
  }
  .ka.ka-triangles-slider .ka-triangles-slider__content {
    padding: 64px 32px 52px;
  }
  .ka.ka-triangles-slider .ka-triangles-slider__indicators {
    left: 32px;
    bottom: 30px;
  }
}
@media (max-width: 767.98px) {
  .ka.ka-triangles-slider::before {
    width: 180px;
    height: 100px;
  }
  .ka.ka-triangles-slider::after {
    width: 320px;
    height: 240px;
  }
  .ka.ka-triangles-slider .ka-block__inner,
  .ka.ka-triangles-slider .ka-triangles-slider__layout {
    min-height: 0;
  }
  .ka.ka-triangles-slider .ka-triangles-slider__layout {
    min-height: 560px;
  }
  .ka.ka-triangles-slider .ka-triangles-slider__content {
    max-width: none;
    padding: 42px 20px 62px;
  }
  .ka.ka-triangles-slider .ka-triangles-slider__text {
    margin-top: 1.5rem;
    font-size: 1rem;
  }
  .ka.ka-triangles-slider .ka-triangles-slider__actions {
    margin-top: 2rem;
  }
  .ka.ka-triangles-slider .ka-triangles-slider__image {
    object-position: 68% center;
  }
  .ka.ka-triangles-slider .ka-triangles-slider__indicators {
    left: 20px;
    bottom: 28px;
  }
}
/* Pro benefits */
.ka.ka-pro-benefits {
  padding: 2.5rem 0;
}

.ka.ka-pro-benefits p {
  margin-bottom: 0 !important;
}

.ka.ka-pro-benefits .ka-block__inner {
  border-radius: 2rem;
  background: #eeece9;
}

.ka.ka-pro-benefits .ka-pro-benefits__layout {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 1.6fr) minmax(260px, 0.8fr);
  gap: 1.5rem;
  align-items: center;
  padding: 2.5rem;
}

.ka.ka-pro-benefits .ka-pro-benefits__eyebrow {
  margin: 0;
  color: #f95a3d;
  font-weight: 600;
  text-transform: uppercase;
}

.ka.ka-pro-benefits .ka-pro-benefits__intro {
  padding-right: 2rem;
}

.ka.ka-pro-benefits .ka-pro-benefits__title * {
  font-size: 36px;
}

.ka.ka-pro-benefits .ka-pro-benefits__text {
  margin-top: 1rem;
  font-size: 15px;
}

.ka.ka-pro-benefits .ka-pro-benefits__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem 2rem;
}

.ka.ka-pro-benefits .ka-pro-benefits__feature {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 1.1rem;
  align-items: start;
}

.ka.ka-pro-benefits .ka-pro-benefits__feature-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
}

.ka.ka-pro-benefits .ka-pro-benefits__feature-icon img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.ka.ka-pro-benefits .ka-pro-benefits__feature-title {
  margin: 0 0 0.5rem;
  font-size: 20px;
  font-weight: 600;
}

.ka.ka-pro-benefits .ka-pro-benefits__feature-text {
  font-size: 15px;
}

.ka.ka-pro-benefits .ka-pro-benefits__cta {
  align-self: stretch;
  padding-left: clamp(1.25rem, 2vw, 2.5rem);
  border-left: 1px solid rgba(15, 36, 56, 0.75);
  text-align: center;
}

.ka.ka-pro-benefits .ka-pro-benefits__cta-content {
  color: #0f2438;
}

.ka.ka-pro-benefits .ka-pro-benefits__cta-content p {
  margin: 0 0 0.65rem;
}

.ka.ka-pro-benefits .ka-pro-benefits__cta-content p:last-child {
  margin-bottom: 0;
}

.ka.ka-pro-benefits .ka-pro-benefits__cta-content strong {
  font-weight: 700;
}

.ka.ka-pro-benefits .ka-pro-benefits__cta-actions {
  margin-top: 1rem;
}

.ka.ka-pro-benefits .ka-pro-benefits__cta-actions .btn {
  min-width: min(100%, 20rem);
}

.ka.ka-pro-benefits .ka-pro-benefits__cta-subtitle {
  margin-top: 0.5rem;
  color: #0f2438;
  font-size: 0.95rem;
  font-weight: 600;
}

@media (max-width: 1399.98px) {
  .ka.ka-pro-benefits .ka-pro-benefits__layout {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.25fr);
  }
  .ka.ka-pro-benefits .ka-pro-benefits__cta {
    grid-column: 1/-1;
    max-width: 28rem;
    padding-top: 1.5rem;
    padding-left: 0;
    border-top: 1px solid rgba(15, 36, 56, 0.75);
    border-left: 0;
  }
}
@media (max-width: 991.98px) {
  .ka.ka-pro-benefits .ka-pro-benefits__layout {
    grid-template-columns: 1fr;
  }
  .ka.ka-pro-benefits .ka-pro-benefits__grid {
    padding-top: 0;
  }
  .ka.ka-pro-benefits .ka-pro-benefits__cta {
    max-width: none;
  }
}
@media (max-width: 767.98px) {
  .ka.ka-pro-benefits .ka-block__inner {
    border-radius: 1.5rem;
    padding: 1.5rem;
  }
  .ka.ka-pro-benefits .ka-pro-benefits__grid {
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }
  .ka.ka-pro-benefits .ka-pro-benefits__feature {
    gap: 0.9rem;
  }
  .ka.ka-pro-benefits .ka-pro-benefits__feature-icon {
    width: 3.5rem;
    height: 3.5rem;
  }
  .ka.ka-pro-benefits .ka-pro-benefits__cta-actions .btn {
    width: 100%;
  }
}
/* Services */
.ka.ka-services .ka-block__header {
  max-width: 58rem;
  margin: 0 auto 2rem;
  text-align: center;
}

.ka.ka-services .ka-block__title {
  font-size: clamp(2rem, 4vw, 3.8rem);
}

.ka.ka-services .ka-services__grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 1.6rem;
}

.ka.ka-services .ka-services__item {
  grid-column: span 2;
}

.ka.ka-services .ka-services__item--large {
  grid-column: span 3;
}

.ka.ka-services .ka-services__card {
  position: relative;
  display: flex;
  align-items: flex-end;
  min-height: 285px;
  overflow: hidden;
  border-radius: var(--radius);
  background: var(--color-primary);
  color: #fff;
  padding: 2rem 3rem;
}

.ka.ka-services .ka-services__card::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: #091b2c;
  background: linear-gradient(-90deg, rgba(9, 27, 44, 0) 0%, rgba(9, 27, 44, 0.61) 44%, rgb(9, 27, 44) 100%);
}

.ka.ka-services .ka-services__image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.ka.ka-services .ka-services__content {
  position: relative;
  z-index: 2;
  max-width: 85%;
}

.ka.ka-services .ka-services__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3rem;
  height: 3rem;
  margin-bottom: 1rem;
}

.ka.ka-services .ka-services__icon-image {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}

.ka.ka-services .ka-services__name {
  margin: 0 0 0.75rem;
  color: #fff;
  font-size: 22px;
  font-weight: 700;
}

.ka.ka-services .ka-services__actions {
  margin-top: 1.5rem;
}

.ka.ka-services .ka-services__text {
  font-size: 15px;
}

.ka.ka-services .ka-services__text p {
  margin-bottom: 0 !important;
}

.shop-mbg .ka.ka-services .ka-services__card {
  color: var(--color-text);
}

.shop-mbg .ka.ka-services .ka-services__card::before {
  background: #eaeaea;
  background: linear-gradient(-90deg, rgba(234, 234, 234, 0) 0%, rgba(234, 234, 234, 0.8235294118) 44%, #eaeaea 100%);
}

.shop-mbg .ka.ka-services .ka-services__name {
  color: var(--color-text);
}

@media (max-width: 1199.98px) {
  .ka.ka-services .ka-services__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .ka.ka-services .ka-services__item,
  .ka.ka-services .ka-services__item--large {
    grid-column: span 1;
  }
}
@media (max-width: 767.98px) {
  .ka.ka-services .ka-services__grid {
    grid-template-columns: 1fr;
  }
  .ka.ka-services .ka-services__card {
    min-height: 320px;
  }
  .ka.ka-services .ka-services__content {
    padding: 1.4rem;
  }
}
/* MBG mobile : bloc « Nos services & avantages » — images tronquées.
   Sur MBG le visuel est en fond recadré (object-fit:cover) sous un dégradé
   clair, ce qui coupe la photo sur mobile. On passe la carte en EMPILÉ :
   image entière en haut (ratio naturel, sans recadrage), contenu dessous.
   Scopé à MBG uniquement — FBG (fond sombre + texte blanc) n'est pas touché. */
@media (max-width: 767.98px) {
  .shop-mbg .ka.ka-services .ka-services__card {
    display: block;
    min-height: 0;
    padding: 0;
    background: #fff;
    border: 1px solid #ececec;
  }
  .shop-mbg .ka.ka-services .ka-services__card::before {
    display: none;
  }
  .shop-mbg .ka.ka-services .ka-services__image {
    position: static;
    width: 100%;
    height: auto;
    object-fit: contain;
    display: block;
  }
  .shop-mbg .ka.ka-services .ka-services__content {
    position: static;
    width: 100%;
    max-width: 100%;
    padding: 1.4rem;
  }
}
/* Tabs block */
.ka.ka-tabs {
  container-type: inline-size;
}

.ka.ka-tabs .product-sheet__tabs-nav {
  list-style: none;
  padding: 0;
  margin: 0;
}

.ka-tabs__panel {
  position: relative;
  overflow: hidden;
}

/* FAQ */
.ka.ka-faq .ka-block__header {
  max-width: 58rem;
  margin: 0 auto 2rem;
  text-align: center;
}

.ka.ka-faq .ka-block__title {
  font-size: clamp(2rem, 4vw, 3.6rem);
}

.ka.ka-faq .ka-faq__list {
  display: grid;
  gap: 0.8rem;
  max-width: 58rem;
  margin: 0 auto;
}

.ka.ka-faq .ka-faq__toggle {
  display: flex;
  align-items: center;
  width: 100%;
  gap: 1rem;
  padding: 1.1rem 1.4rem;
  border: 0;
  background: transparent;
  color: #0f2438;
  text-align: left;
  box-shadow: none;
  border-radius: 999px;
}

.ka.ka-faq .ka-faq__toggle::after {
  display: none;
}

.ka.ka-faq .ka-faq__toggle:not(.collapsed) {
  background: linear-gradient(180deg, #ff8c20 0%, var(--color-secondary) 100%);
  color: #fff;
}

.ka.ka-faq .ka-faq__toggle-icon {
  position: relative;
  flex: 0 0 24px;
  width: 24px;
  height: 24px;
}

.ka.ka-faq .ka-faq__toggle-icon::before,
.ka.ka-faq .ka-faq__toggle-icon::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 18px;
  height: 2px;
  background: currentColor;
  transform: translate(-50%, -50%);
}

.ka.ka-faq .ka-faq__toggle-icon::after {
  transform: translate(-50%, -50%) rotate(90deg);
}

.ka.ka-faq .ka-faq__question-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
}

.ka.ka-faq .ka-faq__question-icon img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}

.ka.ka-faq .ka-faq__question {
  font-size: 20px;
  font-weight: 600;
}

.ka.ka-faq .ka-faq__answer {
  padding: 1rem 1.6rem 1.35rem 4.4rem;
  color: rgba(15, 36, 56, 0.88);
}

.shop-mbg .ka.ka-faq .ka-faq__toggle:not(.collapsed) {
  background: var(--color-gradient);
  color: #fff;
}

.ka.ka-faq .ka-faq__toggle:not(.collapsed) .ka-faq__toggle-icon::after {
  opacity: 0;
}

@media (max-width: 767.98px) {
  .ka.ka-faq .ka-faq__toggle {
    padding: 1rem 1.1rem;
  }
  .ka.ka-faq .ka-faq__answer {
    padding: 0.9rem 1.1rem 1.2rem;
  }
}
/* Hero */
.ka.ka-hero {
  color: #0d2238;
  background: var(--color-grey);
}

.ka.ka-hero .ka-block__inner {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  min-height: 420px;
  padding: 70px 0;
}

.ka.ka-hero .ka-hero__media {
  position: relative;
  z-index: 0;
}

.ka.ka-hero .ka-hero__image {
  display: block;
  width: 100%;
  height: auto;
}

.ka.ka-hero .ka-hero__content {
  width: 100%;
  max-width: 560px;
}

.ka.ka-hero .ka-hero__eyebrow {
  display: inline-flex;
  align-items: center;
  margin: 0 0 18px;
  padding: 8px 14px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.72);
  color: #304559;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.ka.ka-hero .ka-hero__title {
  font-size: clamp(2rem, 9vw, 3rem);
  font-weight: 700;
}

/* MBG : le hero n'a pas d'image de fond, il n'a donc pas la classe
   .ka-hero--with-image qui portait le padding horizontal du contenu.
   Sans elle, .ka-block__inner retombe sur « padding: 70px 0 » (0 horizontal)
   et le H1 + les pictos de réassurance se collent au bord gauche. On garantit
   ici un retrait horizontal (scopé MBG, FBG non impacté). */
.shop-mbg .ka.ka-hero .ka-block__inner {
  padding-left: 1rem;
  padding-right: 1rem;
}

/* titre hero converti en <h1> (MBG) : conserver l'apparence du titre */
.ka.ka-hero .ka-hero__title h1,
.ka.ka-hero .ka-hero__title.ka-hero__h1,
.ka.ka-hero .ka-hero__h1 {
  font: inherit;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
  color: inherit;
  margin: 0;
}

.ka.ka-hero .ka-hero__highlight {
  color: var(--color-secondary);
}

.ka.ka-hero .ka-hero__intro {
  margin-top: 18px;
  max-width: 48ch;
  color: #304559;
  line-height: 1.65;
}

.ka.ka-hero .ka-hero__benefits {
  display: grid;
  margin: 28px 0 0;
  padding: 0;
  list-style: none;
}

.ka.ka-hero .ka-hero__benefit {
  display: flex;
  align-items: center;
  font-size: 14px;
  gap: 14px;
}

.ka.ka-hero .ka-hero__benefit-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 34px;
  width: 34px;
  color: var(--color-primary);
}

.ka.ka-hero .ka-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 30px;
}

.ka.ka-hero .ka-hero__note {
  margin-top: 20px;
  color: #304559;
  font-size: 0.95rem;
  line-height: 1.55;
}

.shop-mbg .ka.ka-hero .ka-hero__content {
  max-width: 60%;
}

.ka.ka-hero.ka-hero--with-image::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(90deg, rgb(241, 239, 237) 0%, rgba(255, 255, 255, 0.92) 24%, rgba(255, 255, 255, 0.66) 42%, rgba(255, 255, 255, 0.12) 64%, rgba(255, 255, 255, 0) 100%), linear-gradient(180deg, rgba(13, 34, 56, 0.04) 0%, rgba(13, 34, 56, 0.14) 100%);
}

.ka.ka-hero.ka-hero--with-image .ka-block__inner {
  position: absolute;
  inset: 0;
  min-height: 0;
}

@media (min-width: 768px) {
  .ka.ka-hero .ka-hero__content {
    max-width: 620px;
  }
}
@media (min-width: 1200px) {
  .shop-mbg .ka.ka-hero .ka-hero__content {
    max-width: 60%;
  }
  .ka.ka-hero .ka-hero__content {
    max-width: 700px;
    margin-left: 2.5%;
  }
}
body {
  color: var(--text-color);
  font-family: "Poppins", sans-serif;
  font-size: 17px;
  font-weight: 400;
}

a {
  color: var(--text-color);
}

a:hover {
  color: var(--color-secondary);
}

h1,
.h1 {
  font-size: 50px;
  font-weight: 700;
}

h2,
.h2 {
  font-size: 36px;
  font-weight: 700;
}

.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.5rem 1rem;
  border-radius: 999px;
  text-decoration: none;
}

.btn:hover {
  transform: translateY(-1px);
}

.btn-primary {
  background-color: var(--color-primary);
  border-color: var(--color-primary);
  color: var(--color-white);
}

.btn-primary:hover {
  background-color: var(--color-primary-hover);
  border-color: var(--color-primary-hover);
}

.btn-outline-primary {
  background: transparent;
  border: 1px solid var(--color-primary);
  color: var(--color-primary);
}

.btn-outline-primary:hover {
  background-color: var(--color-primary);
  border-color: var(--color-primary);
  color: var(--color-white);
}

/* Surcharge le .btn du module socialloginizer (icons.css) qui écrase la bordure */
.login__register-prompt .btn-outline-primary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.5rem 1rem;
  border: 1px solid var(--color-primary);
  border-radius: 999px;
}

.btn-secondary {
  background: var(--color-gradient);
  border-color: transparent;
  color: var(--color-white);
}

.btn-secondary:hover {
  background-color: var(--color-secondary-hover);
  color: var(--color-white);
}

.card,
.block-category,
.cart-grid-body,
.featured-products,
.product-miniature,
.block_newsletter,
.tabs {
  border-radius: var(--radius);
}

.card,
.tabs,
.block-category {
  box-shadow: var(--shadow);
}

.js-product.product {
  height: 100%;
}

.product-miniature {
  border: 1px solid var(--color-grey);
  height: 100%;
  overflow: hidden;
  position: relative;
}

.product-miniature__inner {
  position: relative;
}

.product-miniature__bottom {
  padding: 1rem 2rem;
  background-color: var(--color-grey);
}

.product-miniature__title * {
  font-size: 16px;
  font-weight: 600;
}

.product-miniature__actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.product-miniature__prices {
  flex-direction: column;
  align-items: start;
  gap: 0;
}

.product-miniature__price {
  font-weight: bold;
}

.product-miniature__tax-label {
  font-weight: 700;
  white-space: nowrap;
}

.product-miniature__infos {
  gap: 0;
}

.product-miniature__add {
  display: flex;
  padding: 0;
  width: 45px;
  height: 45px;
}

.product-miniature__inner:hover {
  box-shadow: none;
}

.product-miniature__inner:hover .product-miniature__bottom {
  background-color: var(--color-primary);
  color: var(--color-white);
}

.product-miniature__inner:hover .product-miniature__title {
  color: var(--color-white);
}

.product-miniature__inner:hover .product-miniature__regular-price {
  color: var(--color-white);
}

.product-miniature__inner:hover .product-list-review .product-list-comments-number {
  color: var(--color-white);
}

.product-miniature .product-list-review .product-list-comments-number {
  color: inherit;
}

@media (max-width: 575.98px) {
  .page-category .product-miniature__bottom,
  .page-manufacturer .product-miniature__bottom {
    padding: 0.8rem 0.85rem;
  }
  .page-category .product-miniature__title *,
  .page-manufacturer .product-miniature__title * {
    font-size: 0.9rem;
    line-height: 1.3;
  }
  .page-category .product-miniature__actions,
  .page-manufacturer .product-miniature__actions {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.6rem;
  }
  .page-category .product-miniature__prices,
  .page-manufacturer .product-miniature__prices {
    width: 100%;
  }
  .page-category .product-miniature__price,
  .page-manufacturer .product-miniature__price {
    display: flex;
    align-items: baseline;
    gap: 0.25rem;
    white-space: nowrap;
  }
  .page-category .product-miniature__details,
  .page-manufacturer .product-miniature__details {
    display: block;
    width: 100%;
    padding-inline: 0.5rem;
    white-space: normal;
  }
  .page-category .product-miniature__pack-select,
  .page-category .product-pack-quickselect,
  .page-manufacturer .product-miniature__pack-select,
  .page-manufacturer .product-pack-quickselect {
    width: 100%;
    max-width: 100%;
  }
}
.page-category #js-product-list .products,
.page-manufacturer #js-product-list .products {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.page-category #js-product-list .product-list-insert--span-2,
.page-manufacturer #js-product-list .product-list-insert--span-2 {
  grid-column: span 2;
}

.page-category #js-product-list .products > .js-product.product,
.page-manufacturer #js-product-list .products > .js-product.product {
  min-width: 0;
}

.page-search .products {
  display: grid;
  gap: 1.5rem;
  grid-template-columns: minmax(0, 1fr);
}

.page-search .products > .js-product {
  min-width: 0;
}

@media (min-width: 576px) {
  .page-search .products {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (min-width: 1200px) {
  .page-search .products {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
/* Moteur de recherche par compatibilité : 1 produit/ligne en mobile */
.page-ksearchcompatibility .products {
  display: grid;
  gap: 1.5rem;
  grid-template-columns: minmax(0, 1fr);
}

.page-ksearchcompatibility .products > .js-product {
  min-width: 0;
}

@media (min-width: 576px) {
  .page-ksearchcompatibility .products {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (min-width: 1200px) {
  .page-ksearchcompatibility .products {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
.category-left-column-zone {
  margin-bottom: 1.5rem;
}

.ka-listing-toolbar__sort,
.ka-listing-toolbar__actions {
  min-width: 0;
}

.ka-listing-toolbar__actions {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

.ka-listing-toolbar__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.45rem;
}

.ka-category-links {
  display: grid;
  gap: 0.75rem;
}

.ka-category-links__item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.9rem;
  padding: 1rem 1.05rem;
  border: 1px solid rgba(var(--color-primary-rgb), 0.08);
  border-radius: 1rem;
  background: var(--color-white);
  box-shadow: 0 14px 32px rgba(var(--color-primary-rgb), 0.08);
  color: var(--color-primary);
  font-weight: 700;
  text-decoration: none;
  transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.ka-category-links__item:hover,
.ka-category-links__item:focus {
  transform: translateY(-1px);
  border-color: rgba(var(--color-primary-rgb), 0.18);
  box-shadow: 0 18px 38px rgba(var(--color-primary-rgb), 0.12);
  color: var(--color-secondary);
  text-decoration: none;
}

.ka-category-links__label {
  min-width: 0;
}

.ka-category-links__item .material-icons {
  flex: 0 0 auto;
  font-size: 1.2rem;
}

.page-category .ps-facetedsearch--mobile .offcanvas-header,
.page-category .ka-category-links-offcanvas .offcanvas-header {
  padding: 1rem 1rem 0.9rem;
  border-bottom: 1px solid rgba(var(--color-primary-rgb), 0.08);
  background: var(--color-white);
}

.page-category .ps-facetedsearch--mobile .offcanvas-title,
.page-category .ka-category-links-offcanvas .offcanvas-title {
  margin: 0;
  color: var(--color-primary);
  font-weight: 800;
}

.page-category .ps-facetedsearch--mobile .offcanvas-body,
.page-category .ka-category-links-offcanvas .offcanvas-body {
  padding: 1rem;
  background: #f8f5f0;
}

.page-category .ps-facetedsearch--mobile .btn-close,
.page-category .ka-category-links-offcanvas .btn-close {
  width: 2.5rem;
  height: 2.5rem;
  padding: 0;
  border-radius: 999px;
  background-color: rgba(var(--color-primary-rgb), 0.06);
  opacity: 1;
}

.ka-sidebar-promo {
  overflow: hidden;
  border: 1px solid var(--color-grey);
  border-radius: var(--radius);
  background: var(--color-white);
  box-shadow: var(--shadow);
}

.ka-sidebar-promo__media-link,
.ka-sidebar-promo__image {
  display: block;
}

.ka-sidebar-promo__image {
  width: 100%;
  height: auto;
}

.ka-sidebar-promo__content {
  display: flex;
  flex-direction: column;
  gap: 0.9rem;
  padding: 1.1rem;
}

.ka-sidebar-promo__title :last-child,
.ka-sidebar-promo__text :last-child {
  margin-bottom: 0;
}

.ka-sidebar-promo__title h2,
.ka-sidebar-promo__title h3,
.ka-sidebar-promo__title h4,
.ka-sidebar-promo__title p {
  margin: 0;
  color: var(--color-primary);
  font-weight: 800;
  line-height: 1.1;
}

.ka-sidebar-promo__actions .btn {
  width: 100%;
}

.product-list-insert {
  min-width: 0;
}

.product-list-insert__inner {
  height: 100%;
  overflow: hidden;
  border: 1px solid var(--color-grey);
  border-radius: var(--radius);
  background: var(--color-white);
  box-shadow: var(--shadow);
  display: grid;
  grid-template-columns: minmax(0, 1fr);
}

.product-list-insert__inner > [data-prettyblocks-zone] {
  height: 100%;
}

.product-list-insert__inner--with-media {
  overflow: hidden;
}

.product-list-insert__media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.product-list-insert__content {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  padding: 1.5rem;
}

.product-list-insert__title {
  margin: 0;
  color: var(--color-primary);
  font-size: clamp(1.4rem, 1.7vw, 2rem);
  font-weight: 800;
  line-height: 1.05;
}

.product-list-insert__text > :last-child {
  margin-bottom: 0;
}

.product-list-insert__button {
  align-self: flex-start;
}

.product-list-insert__inner img {
  display: block;
  max-width: 100%;
  height: auto;
}

.category-product-inserts-preview {
  padding: 1rem;
}

.category-product-inserts-preview__title {
  margin-bottom: 1rem;
  font-weight: 700;
}

.category-product-inserts-preview__list {
  display: grid;
  gap: 1rem;
}

.category-product-inserts-preview__item {
  border: 1px solid var(--color-grey);
  border-radius: var(--radius);
  overflow: hidden;
  background: var(--color-white);
}

.category-product-inserts-preview__meta {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.75rem 1rem;
  background: rgba(var(--color-primary-rgb), 0.06);
  font-size: 0.9rem;
  font-weight: 600;
}

.category-product-inserts-preview__image {
  width: 100%;
  height: auto;
  object-fit: cover;
}

.category-product-inserts-preview__item-title,
.category-product-inserts-preview__content,
.category-product-inserts-preview__button {
  padding-inline: 1rem;
}

.category-product-inserts-preview__item-title {
  margin: 1rem 0 0.5rem;
  color: var(--color-primary);
  font-size: 1.1rem;
  font-weight: 700;
}

.category-product-inserts-preview__content {
  padding-bottom: 1rem;
}

.category-product-inserts-preview__content > :last-child {
  margin-bottom: 0;
}

.category-product-inserts-preview__button {
  display: inline-flex;
  margin: 0 1rem 1rem;
  padding: 0.65rem 1rem;
  border-radius: 999px;
  background: var(--color-gradient);
  color: var(--color-white);
  font-weight: 600;
}

@media (min-width: 576px) {
  .page-category #js-product-list .products,
  .page-manufacturer #js-product-list .products {
    gap: 1.5rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .product-list-insert--span-2 .product-list-insert__inner--with-media {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  }
}
@media (min-width: 1200px) {
  .page-category #js-product-list .products,
  .page-manufacturer #js-product-list .products {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
#header {
  background: var(--color-white);
  backdrop-filter: blur(12px);
}

.footer-main {
  padding: 3rem;
  color: var(--color-white);
  background: var(--color-primary);
  position: relative;
}

.footer-main a {
  color: var(--color-white);
}

.footer-main a:hover {
  color: var(--color-secondary);
}

.footer-after {
  background: var(--color-secondary);
}

.footer-mascotte {
  position: absolute;
  bottom: 0;
  right: 5%;
}

.footer .ps-contactinfo .footer-block__content {
  margin-left: 20%;
  border-left: 1px solid var(--color-secondary);
  padding-left: 1rem;
  margin-top: 3rem;
}

/* MBG : footer aligné sur la mise en forme de FBG.
   Inversion orange/bleu (haut bleu marine, bandeau bas orange) — scopé à la boutique MBG. */
.shop-mbg .footer-main {
  background: var(--color-secondary);
}

.shop-mbg .footer-main a:hover {
  color: var(--color-primary);
}

.shop-mbg .footer-after {
  background: var(--color-primary);
}

.shop-mbg .footer .ps-contactinfo .footer-block__content {
  border-left-color: var(--color-primary);
}

.top-menu a[data-depth="0"] {
  font-weight: 600;
}

.page-content,
.product-container,
.featured-products,
.category-cover,
.custom-text,
.block_newsletter {
  border-radius: var(--radius);
}

.featured-products {
  --featured-products-gap: 1rem;
  --embla-slides-mobile: 1;
  --embla-slides-tablet: 3;
  --embla-slides-desktop: 4;
  --featured-product-single-max-width: 24rem;
}

.featured-products__carousel {
  position: relative;
}

.featured-products__viewport {
  overflow: hidden;
  cursor: grab;
}

.featured-products__viewport.is-dragging {
  cursor: grabbing;
}

.featured-products__track {
  display: flex;
  gap: var(--featured-products-gap);
}

.featured-products__slide {
  flex: 0 0 calc((100% - var(--featured-products-gap) * (var(--embla-slides-mobile) - 1)) / var(--embla-slides-mobile));
  min-width: 0;
}

.featured-products__control {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 2;
  width: 3rem;
  height: 3rem;
  padding: 0;
  border: 0;
  opacity: 1;
  color: var(--color-primary);
  background: transparent;
}

.featured-products__control[data-embla-prev] {
  left: 0;
}

.featured-products__control[data-embla-next] {
  right: 0;
}

.featured-products__control:disabled {
  opacity: 0.32;
  pointer-events: none;
}

.featured-products__control-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3rem;
  height: 3rem;
}

.featured-products__carousel.is-static .featured-products__control {
  opacity: 0;
  pointer-events: none;
}

.featured-products__carousel.is-static[data-products-count="1"] .featured-products__slide {
  flex-basis: min(100%, var(--featured-product-single-max-width));
  max-width: var(--featured-product-single-max-width);
}

@media (min-width: 768px) {
  .featured-products__slide {
    flex-basis: calc((100% - var(--featured-products-gap) * (var(--embla-slides-tablet) - 1)) / var(--embla-slides-tablet));
  }
}
@media (min-width: 992px) {
  .featured-products__slide {
    flex-basis: calc((100% - var(--featured-products-gap) * (var(--embla-slides-desktop) - 1)) / var(--embla-slides-desktop));
  }
}
@media (max-width: 575.98px) {
  .featured-products__control {
    width: 2.5rem;
    height: 2.5rem;
  }
  .featured-products__control-icon {
    width: 2.5rem;
    height: 2.5rem;
  }
}
.site-header {
  color: var(--color-primary);
  position: sticky;
  top: 0;
  z-index: 1030;
  background: rgba(255, 255, 255, 0.96);
  backdrop-filter: blur(12px);
  transition: box-shadow 0.34s cubic-bezier(0.22, 1, 0.36, 1), background-color 0.34s cubic-bezier(0.22, 1, 0.36, 1);
}

.site-header a {
  text-decoration: none;
}

.top-strip {
  color: var(--color-white);
  background: var(--color-primary);
  transform-origin: top center;
}

.top-strip-row {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.4rem;
  font-size: 14px;
}

.top-strip-item {
  display: inline-flex;
  align-items: center;
  gap: 0.7rem;
  white-space: nowrap;
}

.top-strip-icon {
  color: var(--color-secondary);
  font-size: 1rem;
  line-height: 1;
}

.top-strip-dot {
  width: 0.35rem;
  height: 0.35rem;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.92);
}

.shop-mbg .top-strip {
  color: var(--color-white);
  background: var(--color-secondary);
  transform-origin: top center;
}

.shop-mbg .top-strip-icon {
  color: var(--color-primary);
  font-size: 1rem;
  line-height: 1;
}

.shop-mbg .top-strip-icon path {
  fill: var(--color-primary);
}

.shop-mbg .top-strip-dot {
  width: 0.35rem;
  height: 0.35rem;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.92);
}

.header-utility {
  font-size: 14px;
  border-bottom: 1px solid rgba(var(--color-primary-rgb), 0.1);
}

.header-utility .btn {
  font-size: 14px;
}

.header-utility-row,
.header-main-row {
  display: flex;
  align-items: center;
}

.header-utility-row {
  justify-content: end;
  gap: 1.5rem;
  padding: 0.5rem;
}

.header-utility-msg {
  font-style: italic;
}

.header-utility-lprimarys {
  display: flex;
  align-items: center;
  gap: 2.25rem;
  white-space: nowrap;
}

.header-utility-lprimarys a {
  color: var(--color-primary);
  transition: color 0.2s ease;
}

.header-utility-lprimarys a:hover,
.header-utility-lprimarys a:focus-visible {
  color: var(--color-secondary);
}

.header-utility-links {
  display: flex;
  align-items: center;
  gap: 1rem;
}

.header-main {
  background: var(--color-white);
}

.header-main-row {
  justify-content: space-between;
  gap: 2rem;
  padding: 1.5rem 0;
}

.brand-block {
  display: flex;
  align-items: center;
  gap: 1.25rem;
  min-width: 0;
}

.brand-block .navbar-brand {
  flex: 0 0 auto;
  margin: 0;
}

.brand-block .logo {
  width: 420px;
}

.brand-copy {
  display: none;
}

.brand-name {
  font-size: 1.15rem;
  font-weight: 800;
  line-height: 1.1;
  text-transform: uppercase;
}

.brand-tagline {
  margin-top: 0.3rem;
  color: var(--color-secondary);
  font-size: 0.95rem;
}

.header-search {
  min-width: 200px;
  width: 420px;
}

.header-search #_desktop_ps_searchbar {
  display: flex !important;
  width: 100%;
  margin: 0 !important;
}

.header-search .ps-searchbar {
  width: 100%;
}

.header-search .ps-searchbar__form {
  position: relative;
}

.header-search .ps-searchbar__input.form-control {
  padding: 0.65rem 3rem 0.65rem 1rem;
  border: 1.5px solid rgba(var(--color-primary-rgb), 0.18);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: none;
  transition: border-color 0.2s ease, background-color 0.2s ease, box-shadow 0.2s ease;
}

.header-search .ps-searchbar__input.form-control:focus {
  border-color: rgba(var(--color-primary-rgb), 0.42);
  background: #fff;
  box-shadow: 0 10px 24px rgba(var(--color-primary-rgb), 0.08);
}

.header-search .ps-searchbar__input::placeholder {
  color: rgba(var(--color-primary-rgb), 0.45);
}

.header-search .ps-searchbar__magnifier {
  position: absolute;
  top: 50%;
  right: 1.25rem;
  left: auto;
  z-index: 2;
  transform: translateY(-50%);
  color: var(--color-primary);
  font-size: 1.55rem;
}

.ui-autocomplete.searchbar-autocomplete {
  overflow: hidden;
  margin-top: 0.3rem;
  border: 1px solid rgba(var(--color-primary-rgb), 0.1);
  border-radius: 1.15rem;
  background: rgba(255, 255, 255, 0.98);
  box-shadow: 0 20px 44px rgba(var(--color-primary-rgb), 0.14);
  backdrop-filter: blur(10px);
}

.ui-autocomplete.searchbar-autocomplete li {
  border-bottom: 1px solid rgba(var(--color-primary-rgb), 0.06);
}

.ui-autocomplete.searchbar-autocomplete li:last-child {
  border-bottom: 0;
}

.ui-autocomplete.searchbar-autocomplete li a,
.ui-autocomplete.searchbar-autocomplete li a.ui-state-focus {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 0.9rem 1rem;
  color: var(--color-primary);
  background: transparent;
  border-radius: 0;
  transition: background-color 0.18s ease, transform 0.18s ease;
}

.ui-autocomplete.searchbar-autocomplete li a:hover,
.ui-autocomplete.searchbar-autocomplete li a.ui-state-focus {
  background: rgba(var(--color-secondary-rgb), 0.06);
}

.ui-autocomplete.searchbar-autocomplete li a .autocomplete-thumbnail {
  flex: 0 0 3rem;
  width: 3rem;
  height: 3rem;
  margin-right: 0;
  border-radius: 0.8rem;
  object-fit: cover;
  background: #f4f1ed;
}

.ui-autocomplete.searchbar-autocomplete li a .product {
  display: block;
  color: var(--color-primary);
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.25;
}

.header-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 1.5rem;
  transition: gap 0.32s cubic-bezier(0.22, 1, 0.36, 1);
}

.header-action {
  position: relative;
  display: inline-flex;
  align-items: center;
  padding: 0;
  color: var(--color-primary);
}

.header-action-icon {
  display: inline-flex;
  width: 2rem;
  height: 2rem;
  color: var(--color-primary);
}

.header-action-badge {
  position: absolute;
  top: -0.35rem;
  right: -0.55rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 1.4rem;
  height: 1.4rem;
  border-radius: 999px;
  background: var(--color-secondary);
  color: var(--color-white);
  font-size: 0.72rem;
  font-weight: 700;
}

.header-cart-wrapper {
  position: relative;
}

.header-cart-wrapper .blockcart {
  position: relative;
}

.header-cart-wrapper .blockcart .header {
  margin: 0;
}

.header-cart-wrapper .blockcart .body {
  position: absolute;
  top: calc(100% + 0.9rem);
  right: 0;
  z-index: 30;
  width: 24rem;
  max-width: calc(100vw - 2rem);
  padding: 1.1rem;
  border: 1px solid rgba(var(--color-primary-rgb), 0.1);
  border-radius: 1rem;
  background: var(--color-white);
  box-shadow: 0 20px 50px rgba(9, 27, 44, 0.14);
  opacity: 0;
  visibility: hidden;
  transform: translateY(0.5rem);
  transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s ease;
}

.header-cart-wrapper .blockcart:hover .body,
.header-cart-wrapper .blockcart:focus-within .body {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.header-cart-wrapper .blockcart .body ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.header-cart-wrapper .header-cart-items {
  max-height: min(24rem, 55vh);
  margin-top: 1rem;
  overflow: auto;
}

.header-cart-wrapper .blockcart .body li + li {
  margin-top: 0.75rem;
  padding-top: 0.75rem;
  border-top: 1px solid rgba(var(--color-primary-rgb), 0.08);
}

.header-cart-dropdown-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
}

.header-cart-dropdown-title,
.header-cart-dropdown-count {
  margin: 0;
}

.header-cart-dropdown-title {
  font-size: 1rem;
  font-weight: 700;
  color: var(--color-primary);
}

.header-cart-dropdown-count {
  margin-top: 0.2rem;
  font-size: 0.875rem;
  color: rgba(var(--color-primary-rgb), 0.65);
}

.header-cart-dropdown-link {
  flex-shrink: 0;
  font-size: 0.8rem;
  font-weight: 600;
  color: var(--color-secondary);
}

.header-cart-item {
  display: grid;
  grid-template-columns: 4.5rem minmax(0, 1fr);
  gap: 0.9rem;
  align-items: start;
}

.header-cart-item__media {
  display: block;
  overflow: hidden;
  border-radius: 0.85rem;
  background: rgba(var(--color-primary-rgb), 0.04);
}

.header-cart-item__media img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1;
  object-fit: cover;
}

.header-cart-item__content {
  min-width: 0;
}

.header-cart-item__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  margin-bottom: 0.35rem;
}

.header-cart-item__qty {
  display: inline-flex;
  align-items: center;
  min-height: 1.5rem;
  padding: 0.1rem 0.55rem;
  border-radius: 999px;
  background: rgba(var(--color-primary-rgb), 0.06);
  font-size: 0.75rem;
  font-weight: 700;
  color: var(--color-primary);
}

.header-cart-item__remove {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.9rem;
  height: 1.9rem;
  border-radius: 999px;
  font-size: 0.8rem;
  color: var(--color-secondary);
  transition: background-color 0.2s ease, color 0.2s ease;
}

.header-cart-item__remove:hover,
.header-cart-item__remove:focus-visible {
  background: rgba(var(--color-secondary-rgb), 0.1);
  color: var(--color-secondary);
}

.header-cart-item__remove svg {
  display: block;
}

.header-cart-item__name {
  display: block;
  margin: 0;
  color: var(--color-primary);
  font-weight: 700;
  line-height: 1.3;
}

.header-cart-item__meta {
  margin: 0.25rem 0 0;
  font-size: 0.78rem;
  color: rgba(var(--color-primary-rgb), 0.55);
}

.header-cart-item__price {
  margin: 0.45rem 0 0;
  font-size: 0.95rem;
  font-weight: 700;
  color: var(--color-primary);
}

.header-cart-item__tax {
  margin-left: 0.2rem;
  font-size: 0.72rem;
  font-weight: 600;
  text-transform: uppercase;
  color: rgba(var(--color-primary-rgb), 0.55);
}

.cart-listing {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.cart-grid__products-details {
  padding: 1.35rem;
  border: 1px solid rgba(var(--color-primary-rgb), 0.08);
  border-radius: 1.5rem;
  background: linear-gradient(180deg, rgb(255, 255, 255) 0%, rgba(248, 248, 248, 0.96) 100%);
  box-shadow: 0 18px 44px rgba(var(--color-primary-rgb), 0.06);
}

.cart-grid__products-details .page-title-section {
  margin: 0 0 1.35rem;
}

.cart-grid__products-details .cart__overview {
  margin: 0;
}

.cart-grid__products-details .cart__item {
  margin: 0;
  padding: 0;
  border: 0;
}

.cart-listing__item + .cart-listing__item {
  margin-top: 1.1rem;
  padding-top: 1.1rem;
  border-top: 0;
}

.cart-grid__aside-wrapper {
  padding: 1.5rem;
  border: 1px solid rgba(var(--color-primary-rgb), 0.08);
  border-radius: 1.5rem;
  background: linear-gradient(180deg, rgb(255, 255, 255) 0%, rgba(248, 248, 248, 0.96) 100%);
  box-shadow: 0 18px 44px rgba(var(--color-primary-rgb), 0.06);
}

.cart-grid__aside-wrapper > h2 {
  margin-bottom: 1.25rem;
}

.cart-summary__totals {
  padding-top: 1rem;
  border-top: 1px solid rgba(var(--color-primary-rgb), 0.08);
}

.cart-summary__subtotals,
.cart-summary__total {
  display: flex;
  flex-direction: column;
  gap: 0.9rem;
}

.cart-summary__line {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
}

.cart-summary__label {
  color: rgba(var(--color-primary-rgb), 0.72);
}

.cart-summary__value {
  color: var(--color-primary);
  font-weight: 600;
  text-align: right;
}

.cart-summary__line--bold {
  margin-top: 0.35rem;
  padding-top: 1rem;
  border-top: 1px solid rgba(var(--color-primary-rgb), 0.08);
}

.cart-summary__line--bold .cart-summary__label,
.cart-summary__line--bold .cart-summary__value {
  font-size: 1.15rem;
  font-weight: 700;
  color: var(--color-primary);
}

.cart__continue-shopping {
  margin-top: 1.5rem;
}

.checkout-grid__content .step--current {
  padding: 1.5rem;
  border: 1px solid rgba(var(--color-primary-rgb), 0.08);
  border-radius: 1.5rem;
  background: linear-gradient(180deg, rgb(255, 255, 255) 0%, rgba(248, 248, 248, 0.96) 100%);
  box-shadow: 0 18px 44px rgba(var(--color-primary-rgb), 0.06);
}

.checkout-grid__content .step__title {
  margin-bottom: 1.35rem;
}

.checkout-grid__content .step__title .page-title-section {
  margin: 0;
}

.checkout-grid__content .step__title hr {
  margin: 1.1rem 0 0;
  opacity: 1;
  border-color: rgba(var(--color-primary-rgb), 0.08);
}

.checkout-grid__content .step__content {
  min-width: 0;
}

.checkout-grid__aside-wrapper {
  padding: 1.5rem;
  border: 1px solid rgba(var(--color-primary-rgb), 0.08);
  border-radius: 1.5rem;
  background: linear-gradient(180deg, rgb(255, 255, 255) 0%, rgba(248, 248, 248, 0.96) 100%);
  box-shadow: 0 18px 44px rgba(var(--color-primary-rgb), 0.06);
}

.checkout-grid__summary-title {
  margin: 0 0 1.25rem;
}

.checkout__summary-accordion-item {
  border: 0;
  background: transparent;
}

.checkout__summary-accordion-header .accordion-button {
  padding: 0.95rem 0;
  border-top: 1px solid rgba(var(--color-primary-rgb), 0.08);
  border-bottom: 1px solid rgba(var(--color-primary-rgb), 0.08);
  background: transparent;
  box-shadow: none;
  font-weight: 700;
  color: var(--color-primary);
}

.checkout__summary-accordion-header .accordion-button:not(.collapsed) {
  color: var(--color-primary);
  background: transparent;
}

.checkout__summary-accordion-wrapper {
  padding: 0;
}

.checkout__summary-accordion-wrapper > .accordion-collapse {
  border: 0;
}

.checkout-grid__aside .cart-summary__products-number {
  font-size: 1.05rem;
  color: rgba(var(--color-primary-rgb), 0.75);
}

.checkout-grid__aside .cart-summary__products hr {
  margin: 0.85rem 0;
  opacity: 1;
  border-color: rgba(var(--color-primary-rgb), 0.08);
}

.checkout-grid__aside .cart-summary__products-accordion .accordion-button,
.checkout-grid__aside .cart-voucher__accordion-button {
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
  font-weight: 700;
  color: var(--color-primary);
}

.checkout-grid__aside .cart-summary__products-list {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  padding-top: 0.85rem;
}

.checkout-grid__aside .cart-summary__product {
  padding: 0.85rem;
  border: 1px solid rgba(var(--color-primary-rgb), 0.08);
  border-radius: 1rem;
  background: rgba(255, 255, 255, 0.88);
}

.checkout-grid__aside .cart-summary-product__content {
  gap: 0.75rem;
}

.checkout-grid__aside .cart-summary-product__link {
  color: var(--color-primary);
  font-weight: 700;
  line-height: 1.25;
}

.checkout-grid__aside .cart-summary-product__attributes,
.checkout-grid__aside .cart-summary-product__quantity {
  font-size: 0.84rem;
  color: rgba(var(--color-primary-rgb), 0.68);
}

.checkout-grid__aside .cart-summary-product__price .label,
.checkout-grid__aside .cart-summary-product__total {
  color: var(--color-primary);
  font-weight: 700;
}

.checkout-grid__aside .cart-summary__voucher {
  margin-top: 1rem;
  padding-top: 1rem;
  border-top: 1px solid rgba(var(--color-primary-rgb), 0.08);
}

.checkout-grid__aside .cart-voucher__list {
  margin-bottom: 1rem;
}

.checkout-grid__aside .cart-voucher__form {
  display: flex;
  gap: 0.65rem;
}

.checkout-grid__aside .cart-voucher__form .form-control {
  min-width: 0;
}

.checkout-grid__content .nav-underline {
  gap: 0.5rem;
  margin-bottom: 0;
  border-bottom: 0;
}

.checkout-grid__content .nav-underline .nav-link {
  padding: 0.7rem 1rem;
  border: 1px solid rgba(var(--color-primary-rgb), 0.08);
  border-radius: 999px;
  color: rgba(var(--color-primary-rgb), 0.68);
  background: rgba(255, 255, 255, 0.72);
  font-weight: 700;
}

.checkout-grid__content .nav-underline .nav-link.active,
.checkout-grid__content .nav-underline .nav-link:hover,
.checkout-grid__content .nav-underline .nav-link:focus-visible {
  border-color: rgba(var(--color-secondary-rgb), 0.2);
  background: rgba(var(--color-secondary-rgb), 0.08);
  color: var(--color-primary);
}

.checkout-grid__content #personal-information-tabs-content {
  margin-top: 1.25rem;
}

.checkout-grid__content .tab-pane > form,
.checkout-grid__content .step__account {
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.checkout-grid__content .form-control,
.checkout-grid__content .form-select {
  border-color: rgba(var(--color-primary-rgb), 0.12);
  border-radius: 0.85rem;
}

.checkout-grid__content .form-control:focus,
.checkout-grid__content .form-select:focus {
  border-color: rgba(var(--color-secondary-rgb), 0.45);
  box-shadow: 0 0 0 0.2rem rgba(var(--color-secondary-rgb), 0.12);
}

.checkout-grid__content .buttons-wrapper {
  margin-top: 1.5rem;
}

.checkout-grid__content .buttons-wrapper .btn-primary {
  min-width: 11.5rem;
}

.checkout-grid__content .password-field {
  align-items: stretch;
  flex-wrap: nowrap;
}

.checkout-grid__content .password-field .form-control {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.checkout-grid__content .password-field .btn {
  flex: 0 0 3.6rem;
  width: 3.6rem;
  min-width: 3.6rem;
  padding: 0;
  border: 1px solid rgba(var(--color-primary-rgb), 0.12);
  border-left: 0;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  border-top-right-radius: 0.85rem;
  border-bottom-right-radius: 0.85rem;
  background: var(--color-primary);
  color: var(--color-white);
  box-shadow: none;
}

.checkout-grid__content .password-field .btn:hover,
.checkout-grid__content .password-field .btn:focus-visible {
  background: rgba(var(--color-primary-rgb), 0.92);
  color: var(--color-white);
}

.checkout-grid__content .password-field .material-icons {
  font-size: 1.2rem;
}

.ka-account-home {
  padding-top: 2rem;
  padding-bottom: 2.5rem;
}

.ka-customer-page {
  padding-top: 2rem;
  padding-bottom: 2.5rem;
}

.ka-account-home__panel {
  padding: 1.5rem;
  border: 1px solid rgba(var(--color-primary-rgb), 0.08);
  border-radius: 1.5rem;
  background: linear-gradient(180deg, rgb(255, 255, 255) 0%, rgba(248, 248, 248, 0.96) 100%);
  box-shadow: 0 18px 44px rgba(var(--color-primary-rgb), 0.06);
}

.ka-account-home__header {
  margin-bottom: 1.5rem;
}

.ka-account-home__eyebrow {
  margin-bottom: 0.45rem;
  color: rgba(var(--color-primary-rgb), 0.52);
  font-size: 0.85rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.ka-account-home__title {
  margin: 0;
  font-size: clamp(2rem, 4vw, 3.5rem);
  font-weight: 800;
  line-height: 0.98;
  letter-spacing: -0.04em;
  color: var(--color-primary);
}

.ka-account-home .account-menu--sidebar {
  display: flex;
  padding: 1.25rem;
  border: 1px solid rgba(var(--color-primary-rgb), 0.08);
  border-radius: 1.5rem;
  background: linear-gradient(180deg, rgb(255, 255, 255) 0%, rgba(248, 248, 248, 0.96) 100%);
  box-shadow: 0 18px 44px rgba(var(--color-primary-rgb), 0.06);
}

.ka-account-home .account-menu__title {
  margin-bottom: 1rem;
  color: var(--color-primary);
  font-size: 2rem;
  font-weight: 800;
  letter-spacing: -0.03em;
}

.ka-account-home .account-menu__nav {
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
}

.ka-account-home .account-menu--sidebar .account-menu__link {
  gap: 0.75rem;
  padding: 0.8rem 0.9rem;
  border-radius: 0.9rem;
  color: var(--text-color);
}

.ka-account-home .account-menu--sidebar .account-menu__link:hover,
.ka-account-home .account-menu--sidebar .account-menu__link--active {
  background: rgba(var(--color-secondary-rgb), 0.08);
  color: var(--text-color);
}

.ka-account-home .account-menu--sidebar .account-menu__icon {
  font-size: 1.35rem;
}

.ka-account-home .account-menu--main {
  gap: 1rem;
}

.ka-account-home .account-menu--main .account-menu__link {
  min-height: 8rem;
  padding: 1.2rem 1rem;
  border: 1px solid rgba(var(--color-primary-rgb), 0.06);
  border-radius: 1rem;
  background: rgba(255, 255, 255, 0.84);
  color: var(--text-color);
  box-shadow: none;
  transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease, background-color 0.18s ease;
}

.ka-account-home .account-menu--main .account-menu__link:hover,
.ka-account-home .account-menu--main .account-menu__link:focus-visible {
  border-color: var(--color-primary);
  background: var(--color-primary);
  color: var(--color-white);
  box-shadow: 0 14px 28px rgba(var(--color-primary-rgb), 0.14);
  transform: translateY(-2px);
}

.ka-account-home .account-menu--main .account-menu__icon {
  font-size: 2rem;
}

.ka-account-home .account-menu--main .account-menu__link:hover .account-menu__icon,
.ka-account-home .account-menu--main .account-menu__link:focus-visible .account-menu__icon {
  color: var(--color-white);
}

.product-line--card {
  display: grid;
  grid-template-columns: 7rem minmax(0, 1fr) 18.5rem;
  gap: 1.5rem;
  align-items: start;
  padding: 1rem 1rem 1rem 1.1rem;
}

.product-line__media-link {
  display: block;
  overflow: hidden;
  border-radius: 1rem;
  background: var(--color-grey);
}

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

.product-line__main {
  min-width: 0;
}

.product-line__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
}

.product-line__title-wrap {
  min-width: 0;
}

.product-line__title {
  display: block;
  color: var(--color-primary);
  font-size: 1.45rem;
  font-weight: 700;
  line-height: 1.12;
}

.product-line__remove {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.35rem;
  min-width: 2.5rem;
  min-height: 2.5rem;
  padding: 0.45rem;
  flex-shrink: 0;
  border-radius: 999px;
  color: rgba(var(--color-primary-rgb), 0.45);
  font-size: 0.82rem;
  font-weight: 600;
  transition: background-color 0.2s ease, color 0.2s ease;
}

.product-line__remove:hover,
.product-line__remove:focus-visible {
  background: rgba(var(--color-secondary-rgb), 0.1);
  color: var(--color-secondary);
}

.product-line__remove svg {
  flex-shrink: 0;
  width: 18px;
  height: 18px;
}

.product-line__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem 1rem;
  margin-top: 0.7rem;
}

.product-line__spec {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 0.25rem;
  color: rgba(var(--color-primary-rgb), 0.8);
  font-size: 0.95rem;
}

.product-line__spec-label {
  font-weight: 600;
}

.product-line__availability,
.product-line__delivery {
  width: 100%;
  font-size: 0.88rem;
}

.product-line__availability.is-in-stock {
  color: #188251;
}

.product-line__availability.is-warning {
  color: #d58512;
}

.product-line__availability.is-danger {
  color: #dc3545;
}

.product-line__prices {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem 0.85rem;
  margin-top: 1rem;
}

.product-line__unit-price {
  color: var(--color-primary);
  font-size: 1.55rem;
  font-weight: 700;
  line-height: 1;
}

.product-line__price-head {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.6rem;
}

.product-line__price-note,
.product-line__price-block,
.product-line__regular-price {
  color: rgba(var(--color-primary-rgb), 0.55);
  font-size: 0.88rem;
}

.product-line__discount-row {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
}

.product-line__regular-price {
  text-decoration: line-through;
}

.product-line__discount-badge {
  display: inline-flex;
  align-items: center;
  min-height: 1.55rem;
  padding: 0.1rem 0.55rem;
  border-radius: 0.5rem;
  background: var(--color-secondary);
  color: var(--color-white);
  font-size: 0.82rem;
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
}

.product-line__aside {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 0.75rem;
  padding: 0.2rem;
  min-width: 0;
}

.product-line__qty-row {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 0.65rem;
}

.product-line__qty-box {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 0.45rem;
  min-width: 0;
}

.product-line__qty-label,
.product-line__line-total-label {
  color: rgba(var(--color-primary-rgb), 0.55);
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.product-line__quantity {
  display: flex;
  justify-content: flex-start;
}

.product-line__quantity .quantity-button__group {
  display: grid;
  grid-template-columns: 3rem 5.5rem 3rem;
  align-items: center;
  justify-content: start;
  gap: 0.45rem;
  flex-wrap: nowrap;
}

.product-line__quantity .btn-square-icon {
  width: 3rem;
  min-width: 3rem;
  height: 3rem;
  border: 1px solid rgba(var(--color-primary-rgb), 0.12);
  border-radius: 999px;
  background: var(--color-white);
  color: var(--color-primary);
}

.product-line__quantity .form-control {
  width: 5.5rem;
  min-width: 5.5rem;
  height: 3rem;
  border: 1px solid rgba(var(--color-primary-rgb), 0.12);
  border-radius: 0.9rem;
  text-align: center;
  font-weight: 700;
  color: var(--color-primary);
}

.product-line__line-total {
  color: var(--color-primary);
  font-size: 1.35rem;
  font-weight: 700;
  line-height: 1.1;
  text-align: left;
}

@media (max-width: 991.98px) {
  .cart-grid__products-details,
  .cart-grid__aside-wrapper {
    padding: 1.15rem;
    border-radius: 1.25rem;
  }
  .checkout-grid__content .step--current,
  .checkout-grid__aside-wrapper {
    padding: 1.15rem;
    border-radius: 1.25rem;
  }
  .checkout-grid__summary-title {
    display: none;
  }
  .ka-account-home .account-menu--sidebar {
    display: none;
  }
  .cart-grid__products-details .page-title-section {
    margin-bottom: 1rem;
  }
  .product-line--card {
    grid-template-columns: 6rem minmax(0, 1fr);
  }
  .product-line__aside {
    grid-column: 1/-1;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 0.75rem 1rem;
    padding-top: 0.35rem;
    border-top: 1px solid rgba(var(--color-primary-rgb), 0.08);
  }
  .product-line__qty-row {
    grid-column: 1/-1;
    justify-content: flex-start;
  }
  .product-line__qty-label,
  .product-line__line-total-label {
    grid-column: auto;
  }
  .product-line__quantity {
    grid-column: 1/2;
  }
  .product-line__quantity {
    justify-content: flex-start;
  }
  .product-line__line-total {
    align-self: end;
    text-align: right;
  }
}
@media (max-width: 767.98px) {
  .cart-grid__products-details,
  .cart-grid__aside-wrapper {
    padding: 1rem;
    border-radius: 1rem;
  }
  .checkout-grid__content .step--current,
  .checkout-grid__aside-wrapper {
    padding: 1rem;
    border-radius: 1rem;
  }
  .cart-grid__products-details .page-title-section {
    margin-bottom: 0.9rem;
  }
  .cart-listing {
    gap: 0;
  }
  .product-line--card {
    grid-template-columns: 1fr;
    gap: 1rem;
    padding: 1rem;
  }
  .product-line__media {
    max-width: 6.5rem;
  }
  .product-line__title {
    font-size: 1.25rem;
  }
  .product-line__meta {
    gap: 0.4rem 0.75rem;
  }
  .product-line__prices {
    margin-top: 0.8rem;
  }
  .product-line__unit-price {
    font-size: 1.25rem;
  }
  .product-line__aside {
    grid-template-columns: 1fr;
  }
  .product-line__qty-row {
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
  }
  .checkout-grid__content .nav-underline {
    flex-direction: column;
    align-items: stretch;
  }
  .checkout-grid__content .nav-underline .nav-link {
    width: 100%;
    text-align: left;
  }
  .checkout-grid__aside .cart-voucher__form {
    flex-direction: column;
  }
  .ka-account-home {
    padding-top: 1.25rem;
  }
  .ka-customer-page {
    padding-top: 1.25rem;
    padding-bottom: 2rem;
  }
  .ka-account-home__panel {
    padding: 1rem;
    border-radius: 1rem;
  }
  .ka-account-home .account-menu--main {
    grid-template-columns: 1fr;
  }
  .ka-account-home .account-menu--main .account-menu__link {
    min-height: auto;
  }
  .product-line__qty-box {
    width: 100%;
    max-width: 12.5rem;
  }
  .product-line__qty-row {
    justify-content: flex-start;
  }
  .product-line__remove {
    padding-inline: 0.55rem;
    font-size: 0.78rem;
  }
  .product-line__quantity .quantity-button__group {
    justify-content: flex-start;
  }
  .product-line__line-total {
    text-align: left;
  }
}
.header-cart-wrapper .cart-subtotals,
.header-cart-wrapper .cart-total {
  font-size: 0.875rem;
}

.header-cart-wrapper .cart-subtotals,
.header-cart-wrapper .cart-total {
  margin-top: 1rem;
}

.header-cart-wrapper .cart-subtotals > div,
.header-cart-wrapper .cart-total {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.header-cart-wrapper .cart-total {
  padding-top: 0.75rem;
  border-top: 1px solid rgba(var(--color-primary-rgb), 0.08);
  font-weight: 700;
}

.header-cart-wrapper .cart-subtotals .label {
  color: rgba(var(--color-primary-rgb), 0.7);
}

.header-cart-wrapper .cart-total .label,
.header-cart-wrapper .cart-total .value {
  font-size: 1rem;
  color: var(--color-primary);
}

.header-cart-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.75rem;
  margin-top: 1rem;
}

.header-cart-actions .btn {
  justify-content: center;
  width: 100%;
}

@media (max-width: 767px) {
  .header-cart-wrapper .blockcart .body {
    right: -0.75rem;
    width: min(24rem, 100vw - 1rem);
  }
}
.header-nav {
  background: var(--color-primary);
  transition: transform 0.32s cubic-bezier(0.22, 1, 0.36, 1);
}

.header-nav a {
  color: var(--color-white);
}

.header-nav .submenu a:hover {
  color: var(--color-secondary);
}

.header-menu .ps-mainmenu--desktop,
.header-menu .ps-mainmenu__desktop {
  display: block !important;
}

.header-menu .ps-mainmenu__tree {
  display: flex;
  align-items: center;
  gap: 0;
  margin: 0;
  padding: 0;
  list-style: none;
}

.header-menu .ps-mainmenu__tree-item-wrapper {
  padding: 0.5rem;
}

.header-menu .ps-mainmenu__tree-item-wrapper:hover,
.header-menu .ps-mainmenu__tree-item-wrapper:has(+ div:hover) {
  background: rgba(var(--color-secondary-rgb), 0.8);
}

.header-menu .ps-mainmenu__tree-link {
  padding: 0;
  font-size: 16px;
}

.header-menu .ps-mainmenu__tree-dropdown-toggle {
  padding: 0;
  color: var(--color-white);
  transition: padding 0.32s cubic-bezier(0.22, 1, 0.36, 1);
}

.header-menu .dropdown-toggle::after {
  border-color: currentcolor;
}

body.header-condensed .site-header {
  box-shadow: 0 10px 28px rgba(var(--color-primary-rgb), 0.12);
}

body.header-condensed .top-strip {
  opacity: 1;
  transform: translateY(-0.2rem) scaleY(0.94);
}

body.header-condensed .top-strip-row {
  gap: 1rem;
}

body.header-condensed .header-main-row {
  gap: 1.15rem;
  padding: 0.2rem 0rem;
}

body.header-condensed .header-utility-row {
  gap: 0.85rem;
  padding: 0.38rem 0.75rem;
}

body.header-condensed .header-utility {
  font-size: 0.86rem;
}

body.header-condensed .header-utility .btn {
  padding: 0.5rem 0.75rem;
}

body.header-condensed .header-search .ps-searchbar__input.form-control {
  height: 2.85rem;
  padding-inline: 1.2rem 3.2rem;
  font-size: 0.94rem;
}

body.header-condensed .header-search .ps-searchbar__magnifier {
  right: 1rem;
  font-size: 1.4rem;
}

body.header-condensed .header-actions {
  gap: 1rem;
}

body.header-condensed .header-action-badge {
  min-width: 1.2rem;
  height: 1.2rem;
  font-size: 0.65rem;
}

@media (prefers-reduced-motion: reduce) {
  .site-header,
  .top-strip,
  .top-strip-row,
  .header-utility,
  .header-utility-row,
  .header-main,
  .header-main-row,
  .brand-block .logo,
  .header-search .ps-searchbar__input.form-control,
  .header-search .ps-searchbar__magnifier,
  .header-actions,
  .header-action-icon,
  .header-action-badge,
  .header-menu .ps-mainmenu__tree-lprimary,
  .header-menu .ps-mainmenu__tree-dropdown-toggle,
  .header-utility-pro {
    transition: none !important;
    will-change: auto !important;
  }
}
@media (max-width: 1199.98px) {
  .header-main-row {
    gap: 0.9rem;
    padding: 1rem 0;
  }
  .brand-block {
    flex: 1 1 auto;
    gap: 0.65rem;
  }
  .brand-block .logo {
    width: clamp(180px, 48vw, 260px);
  }
  .header-actions {
    flex: 0 0 auto;
    gap: 0.85rem;
  }
  .header-action-icon {
    width: 1.8rem;
    height: 1.8rem;
  }
  .top-strip-row {
    gap: 1rem;
    font-size: 0.88rem;
  }
  .header-utility {
    display: none;
  }
  .header-search {
    display: none;
  }
  .header-menu .ps-mainmenu__desktop {
    display: none !important;
  }
  .header-menu .ps-mainmenu__mobile-toggle {
    display: flex;
    justify-content: flex-start;
  }
  .header-menu .ps-mainmenu__mobile-toggle .menu-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.25rem 0;
    color: var(--color-white);
  }
  .header-menu .ps-mainmenu__mobile-toggle .menu-toggle:hover,
  .header-menu .ps-mainmenu__mobile-toggle .menu-toggle:focus {
    color: var(--color-white);
    text-decoration: none;
  }
  .header-menu .ps-mainmenu__mobile-toggle .menu-toggle .material-icons {
    color: currentcolor;
    font-size: 2rem;
    line-height: 1;
  }
  .ps-mainmenu.ps-mainmenu--mobile {
    color: var(--color-primary);
    position: fixed;
    inset: 0;
    z-index: 1060;
    width: 100vw;
    max-width: 100vw;
    height: 100vh;
    min-height: 100vh;
  }
  .ps-mainmenu.ps-mainmenu--mobile.show,
  .ps-mainmenu.ps-mainmenu--mobile.showing,
  .ps-mainmenu.ps-mainmenu--mobile.hiding {
    overflow: hidden;
    background: var(--color-primary);
  }
  .ps-mainmenu.ps-mainmenu--mobile::before {
    content: none;
  }
  .ps-mainmenu.ps-mainmenu--mobile.show::before,
  .ps-mainmenu.ps-mainmenu--mobile.showing::before,
  .ps-mainmenu.ps-mainmenu--mobile.hiding::before {
    content: "";
    position: absolute;
    right: -3.5rem;
    bottom: 4.5rem;
    z-index: 0;
    width: 16rem;
    height: 16rem;
    background: url("../img/mascotte.svg") no-repeat center/contain;
    opacity: 0.08;
    transform: rotate(-8deg);
    pointer-events: none;
  }
  .ps-mainmenu.ps-mainmenu--mobile .offcanvas-header {
    display: flex;
    justify-content: space-between;
    position: relative;
    z-index: 1;
    align-items: center;
    padding: 1.1rem 1.25rem 1rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    background: var(--color-primary);
    color: var(--color-white);
  }
  .ps-mainmenu.ps-mainmenu--mobile .btn-close,
  .ps-mainmenu.ps-mainmenu--mobile .ps-mainmenu__back-button .btn {
    color: var(--color-white);
    opacity: 1;
  }
  .ps-mainmenu.ps-mainmenu--mobile .btn-close {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.75rem;
    height: 2.75rem;
    padding: 0;
    border-radius: 999px;
    filter: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M1 1l14 14M15 1L1 15' stroke='%23fff' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");
  }
  .ps-mainmenu.ps-mainmenu--mobile .ps-mainmenu__back-button .btn {
    padding-inline: 0;
    font-weight: 600;
  }
  .ps-mainmenu.ps-mainmenu--mobile .ps-mainmenu__back-button {
    min-width: 0;
  }
  .ps-mainmenu.ps-mainmenu--mobile .ps-mainmenu__mobile {
    position: relative;
    z-index: 1;
    padding: 1rem 1rem 1.25rem;
    overflow-y: auto;
    height: calc(100vh - 5.25rem);
  }
  .ps-mainmenu.ps-mainmenu--mobile .menu__list {
    margin: 0;
    padding: 0;
    list-style: none;
  }
  .ps-mainmenu.ps-mainmenu--mobile .menu__list > li + li {
    margin-top: 0.85rem;
  }
  .ps-mainmenu.ps-mainmenu--mobile .menu__title {
    padding: 0;
    color: var(--color-white);
    font-size: 1rem;
    font-weight: 700;
    text-transform: none;
    letter-spacing: 0;
    border-bottom: 0;
    background: transparent !important;
  }
  .ps-mainmenu.ps-mainmenu--mobile .menu__list > li {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.265);
    box-shadow: 0 14px 28px rgba(var(--color-primary-rgb), 0.06);
    backdrop-filter: blur(4px);
  }
  .ps-mainmenu.ps-mainmenu--mobile .menu__link {
    display: block;
    flex: 1 1 auto;
    padding: 1.05rem 1.15rem;
    color: white;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.3;
    text-decoration: none;
  }
  .ps-mainmenu.ps-mainmenu--mobile .menu__link:hover,
  .ps-mainmenu.ps-mainmenu--mobile .menu__link:focus {
    color: var(--color-secondary);
    text-decoration: none;
  }
  .ps-mainmenu.ps-mainmenu--mobile .menu__toggle-child {
    flex: 0 0 auto;
    margin-right: 0.35rem;
    padding: 0.65rem;
    color: white;
    background: transparent;
  }
  .ps-mainmenu.ps-mainmenu--mobile .menu__toggle-child .material-icons {
    font-size: 1.5rem;
    line-height: 1;
  }
  .header-nav {
    padding: 0.35rem 0;
  }
}
@media (max-width: 767.98px) {
  .header-main-row {
    gap: 0.75rem;
    padding: 0.85rem 0;
  }
  .brand-block .logo {
    width: clamp(150px, 44vw, 210px);
  }
  .header-search {
    display: flex;
    flex: 0 0 auto;
    min-width: 0;
    width: auto;
  }
  .header-search #_desktop_ps_searchbar {
    display: none !important;
  }
  .header-search .ps-searchbar--mobile {
    display: flex !important;
    align-items: center;
  }
  .header-search .header-block,
  .header-search .header-block__action-btn,
  .header-actions .header-action,
  .header-cart-wrapper .header-block,
  .header-cart-wrapper .header-block__action-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }
  .header-search .header-block__action-btn,
  .header-cart-wrapper .header-block__action-btn,
  .header-action {
    width: 1.9rem;
    height: 1.9rem;
    padding: 0;
    color: var(--color-primary);
    line-height: 1;
  }
  .header-search .header-block__icon,
  .header-cart-wrapper .header-block__icon {
    font-size: 1.65rem;
    line-height: 1;
  }
  .header-actions {
    gap: 0.65rem;
  }
  .header-action-icon {
    width: 1.65rem;
    height: 1.65rem;
  }
  .header-action-icon svg {
    display: block;
    width: 100%;
    height: 100%;
  }
  .header-action-badge {
    min-width: 1.2rem;
    height: 1.2rem;
    font-size: 0.65rem;
  }
  .top-strip-row {
    justify-content: flex-start;
    overflow-x: auto;
    padding: 0.5rem 0;
  }
  .top-strip-row::-webkit-scrollbar {
    display: none;
  }
}
#search-by-model {
  position: absolute;
  left: 50%;
  bottom: 0;
  z-index: 9;
  width: min(1120px, 100% - 2rem);
  padding: 0;
  transform: translate(-50%, 50%);
}

#search-by-model .header {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-weight: 600;
}

#search-by-model .wrapper {
  background: var(--color-white);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
}

@media (max-width: 767.98px) {
  #search-by-model {
    position: relative;
    bottom: auto;
    left: auto;
    transform: none;
    width: calc(100% - 1.5rem);
    margin: 1rem auto 0;
  }
}
.block-reassurance,
.blockreassurance {
  position: relative;
  overflow: hidden;
  background: var(--color-primary);
  color: var(--color-white);
  padding: 3rem 2rem;
}

.block-reassurance-tail {
  position: absolute;
  z-index: 0;
  width: 9rem;
  color: rgba(255, 255, 255, 0.35);
  pointer-events: none;
}

.block-reassurance-tail svg {
  display: block;
  width: 100%;
  height: auto;
}

.block-reassurance-tail path {
  fill: currentColor;
}

.block-reassurance-tail--left {
  top: 0;
  left: 4.5rem;
  transform: rotate(10deg);
}

.block-reassurance-tail--right {
  bottom: 0;
  right: 4.5rem;
  transform: scaleX(-1) scaleY(-1);
}

.block-reassurance > .container {
  position: relative;
  z-index: 1;
}

.block-reassurance-item,
.blockreassurance-item {
  display: inline-flex;
  align-items: start;
  gap: 0.75rem;
  color: var(--color-white);
  font-size: 15px;
  padding: 0 2rem;
}

.block-reassurance-item .h4,
.blockreassurance-item .h4 {
  font-weight: 600;
}

.block-reassurance-item img,
.blockreassurance-item img {
  width: 65px;
  height: 65px;
}

.block-reassurance-item .img-wrapper,
.blockreassurance-item .img-wrapper {
  background: var(--color-secondary);
  border-radius: 50%;
  padding: 1rem;
}

#index .ka-cms-list {
  background-color: #f5f5f5;
  padding: 7rem 2rem;
}

#index .footer .block-reassurance {
  display: none;
}

.flash-countdown {
  margin: 1.4rem auto;
}

.flash-countdown__inner {
  position: relative;
  display: flex;
  overflow: visible;
  border-radius: var(--radius);
}

.flash-countdown__intro {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  gap: 1.25rem;
  padding: 1rem 3.35rem 1rem 2rem;
  color: var(--color-white);
  background: var(--color-primary);
  border-radius: 0.9rem 0 0 0.9rem;
  width: 52%;
}

.flash-countdown__intro::after {
  content: "";
  position: absolute;
  top: 0;
  right: -3.2rem;
  width: 6.4rem;
  height: 100%;
  background: var(--color-primary);
  clip-path: polygon(0 0, 100% 0, 48% 100%, 0 100%);
}

.flash-countdown__icon {
  flex: 0 0 auto;
  color: var(--color-secondary);
}

.flash-countdown__icon svg {
  display: block;
  width: 5rem;
  height: auto;
}

.flash-countdown__copy {
  display: grid;
  gap: 0.15rem;
}

.flash-countdown__label {
  display: block;
  font-size: 23px;
  font-weight: 700;
  line-height: 1.1;
}

.flash-countdown__subtitle {
  font-size: 1.05rem;
  color: rgba(255, 255, 255, 0.88);
}

.flash-countdown__timer {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.8rem 6.4rem 0.8rem 4rem;
  color: var(--color-white);
  background: linear-gradient(180deg, #ff991f 0%, #ff7a00 100%);
  border-radius: 0 0.9rem 0.9rem 0;
  width: 48%;
}

.flash-countdown__unit {
  position: relative;
  z-index: 1;
  display: grid;
  justify-items: center;
  align-content: center;
  min-width: 4.5rem;
}

.flash-countdown__value {
  font-size: clamp(2rem, 1.6vw + 1.15rem, 3.2rem);
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.02em;
}

.flash-countdown__separator {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  align-self: center;
  height: clamp(2rem, 1.6vw + 1.15rem, 3.2rem);
  font-size: clamp(1.9rem, 1.35vw + 1rem, 3rem);
  font-weight: 700;
  line-height: 1;
}

.flash-countdown__unit-label {
  width: 100%;
  margin-top: 0.2rem;
  text-align: center;
  font-size: 0.95rem;
  line-height: 1;
  color: rgba(255, 255, 255, 0.92);
}

.flash-countdown__mascot {
  position: absolute;
  right: 0rem;
  bottom: 60%;
  z-index: 3;
  transform: translate(50%, 50%);
  width: 200px;
  height: 200px;
}

.shop-mbg .flash-countdown__intro {
  background: var(--color-secondary);
}

.shop-mbg .flash-countdown__intro::after {
  background: var(--color-secondary);
}

.shop-mbg .flash-countdown__timer {
  background: var(--color-gradient);
}

.shop-mbg .flash-countdown__icon svg path {
  fill: var(--color-primary);
}

@media (max-width: 991.98px) {
  .flash-countdown__inner {
    grid-template-columns: 1fr;
    overflow: hidden;
  }
  .flash-countdown__intro {
    border-radius: 0.9rem 0.9rem 0 0;
    padding-right: 1.4rem;
  }
  .flash-countdown__intro::after {
    display: none;
  }
  .flash-countdown__timer {
    justify-content: flex-start;
    padding: 1.15rem 1.5rem 1.35rem;
    border-radius: 0 0 0.9rem 0.9rem;
  }
  .flash-countdown__mascot {
    display: none;
  }
}
@media (max-width: 575.98px) {
  .flash-countdown {
    margin: 1.2rem auto;
  }
  .flash-countdown__intro {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.85rem;
    padding: 1.25rem;
  }
  .flash-countdown__icon svg {
    width: 4.2rem;
  }
  .flash-countdown__subtitle {
    font-size: 0.95rem;
  }
  .flash-countdown__timer {
    gap: 0.55rem;
    padding: 1rem 1.1rem 1.15rem;
  }
  .flash-countdown__unit {
    min-width: 0;
    flex: 1 1 0;
  }
  .flash-countdown__separator {
    height: clamp(1.8rem, 1.4vw + 1rem, 2.6rem);
  }
  .flash-countdown__unit-label {
    font-size: 0.82rem;
  }
}
.shop-mbg .ksc-widget {
  position: absolute;
  top: max(270px, 25%);
  left: 50%;
  width: 25%;
  margin: 0;
  transform: translate(50%, 0%);
  padding: 2rem;
}

.shop-mbg .ksc-widget__grid {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}

.shop-mbg .ksc-widget__title {
  align-items: start;
}

.shop-mbg .ksc-widget__title h3 {
  font-size: 20px;
  font-weight: bold;
}

.shop-mbg .ksc-widget .btn {
  width: 100%;
}

.shop-mbg .ksc-widget .ksc-combobox {
  position: relative;
  width: 100%;
}

@media (max-width: 767.98px) {
  .shop-mbg .ka.ka-hero {
    margin-bottom: 1.5rem;
  }
  .shop-mbg .ka.ka-hero.ka-hero--with-image::after {
    display: none;
  }
  .shop-mbg .ka.ka-hero.ka-hero--with-image .ka-block__inner {
    position: relative;
    inset: auto;
    display: block;
    min-height: 0;
    padding: 1.25rem 1rem 0;
  }
  .shop-mbg .ka.ka-hero .ka-hero__media {
    margin-bottom: 0;
  }
  .shop-mbg .ka.ka-hero .ka-hero__image {
    min-height: 180px;
    max-height: 240px;
    object-fit: cover;
    object-position: center;
  }
  .shop-mbg .ka.ka-hero .ka-hero__content {
    max-width: none;
    width: 100%;
    margin-left: 0;
  }
  .shop-mbg .ka.ka-hero .ka-hero__eyebrow {
    margin-bottom: 0.75rem;
  }
  .shop-mbg .ka.ka-hero .ka-hero__title {
    margin-bottom: 0.75rem;
    font-size: clamp(2rem, 9vw, 3rem);
    line-height: 0.95;
  }
  .shop-mbg .ka.ka-hero .ka-hero__intro {
    margin-top: 0.75rem;
    font-size: 0.95rem;
    line-height: 1.45;
  }
  .shop-mbg .ka.ka-hero .ka-hero__benefits {
    gap: 0.75rem;
    margin-top: 1rem;
  }
  .shop-mbg .ka.ka-hero .ka-hero__benefit {
    align-items: flex-start;
    gap: 0.75rem;
    font-size: 0.92rem;
  }
  .shop-mbg .ka.ka-hero .ka-hero__benefit-icon {
    flex: 0 0 28px;
    width: 28px;
    height: 28px;
  }
  .shop-mbg .ksc-widget {
    position: relative;
    top: auto;
    left: auto;
    width: calc(100% - 2rem);
    margin: 1rem auto 0;
    padding: 1.25rem 1rem;
    transform: none;
  }
  .shop-mbg .ksc-widget__title {
    align-items: center;
  }
  .shop-mbg .ksc-widget__title h3 {
    font-size: 1.1rem;
    line-height: 1.25;
  }
  .shop-mbg .ksc-widget__grid {
    gap: 0.85rem;
  }
}
.product-sheet__hero {
  --bs-gutter-x: 1.8rem;
  --bs-gutter-y: 1.8rem;
  align-items: start;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.product-sheet__gallery,
.product-sheet__summary,
.product-sheet__details,
.product-sheet__aside {
  min-width: 0;
}

.product-sheet__summary {
  position: relative;
  display: grid;
  gap: 1rem;
  align-content: start;
  min-width: 0;
  padding: clamp(0.5rem, 0.9vw, 0.75rem);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.product-sheet__eyebrow {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.75rem;
  position: relative;
  z-index: 1;
}

.product-sheet__brand,
.product-sheet__reference {
  display: inline-flex;
  align-items: center;
  min-height: 2.25rem;
  padding: 0.35rem 0.9rem;
  border-radius: 999px;
  font-size: 0.88rem;
  font-weight: 600;
  text-decoration: none;
}

.product-sheet__brand {
  color: var(--color-white);
  background: var(--color-primary);
}

.product-sheet__brand:hover {
  color: var(--color-white);
  background: var(--color-primary-hover);
}

.product-sheet__reference {
  color: var(--color-primary);
  background: rgba(var(--color-primary-rgb), 0.08);
}

.product-sheet__title {
  margin: 0;
  color: var(--color-primary);
  font-size: clamp(2.35rem, 2.8vw, 4rem);
  font-weight: 800;
  letter-spacing: -0.04em;
}

.product-sheet__lead {
  color: rgba(var(--color-primary-rgb), 0.8);
  font-size: 0.98rem;
  line-height: 1.6;
  position: relative;
  z-index: 1;
}
.product-sheet__lead p {
  margin-bottom: 0;
}

.product-sheet__purchase {
  display: grid;
  gap: 1.1rem;
  padding: 1.15rem 1.2rem;
  border-radius: var(--radius);
  background: transparent;
  border: 1px solid rgba(var(--color-primary-rgb), 0.1);
  position: relative;
  z-index: 1;
}

.product-sheet__content {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
  margin-top: 2rem;
  align-items: start;
}

.product-sheet__tabs {
  width: 100%;
}

.product-sheet__tabs-nav {
  display: flex;
  flex-wrap: wrap;
  justify-content: start;
  gap: 0;
  margin: 0 auto;
  border: 0;
}

.product-sheet__tabs-nav .nav-item {
  margin: 0;
}

.product-sheet__tabs-nav .nav-link {
  min-width: min(100%, 260px);
  padding: 1rem 1.5rem;
  border: 0;
  background: white;
  color: var(--text-color);
  font-size: 1rem;
  text-align: center;
  transition: background-color 0.25s ease, color 0.25s ease, transform 0.25s ease;
}

.product-sheet__tabs-nav .nav-link:hover {
  color: var(--color-primary);
  border-bottom: 2px solid var(--color-secondary);
}

.product-sheet__tabs-nav .nav-link.active {
  color: var(--text-color);
  border-bottom: 2px solid var(--color-secondary);
  font-weight: bold;
}

.product-sheet__tabs-panel {
  position: relative;
  overflow: visible;
  padding: 3rem;
  border-radius: var(--radius);
  border-top-left-radius: 0;
  box-shadow: 0 18px 42px rgba(var(--color-primary-rgb), 0.12);
}

.product-sheet__tabs-content {
  position: relative;
  z-index: 1;
  max-width: 80%;
  color: var(--text-color);
}

.product-sheet__tabs-content > .tab-pane,
.product-sheet__tabs-content > .fade {
  display: none !important;
  opacity: 0;
  visibility: hidden;
}

.product-sheet__tabs-content > .tab-pane.active,
.product-sheet__tabs-content > .tab-pane.show.active,
.product-sheet__tabs-content > .fade.active,
.product-sheet__tabs-content > .fade.show.active {
  display: block !important;
  opacity: 1;
  visibility: visible;
}

.product-sheet__tab-pane {
  color: inherit;
}

.product-sheet__tab-pane > *:first-child {
  margin-top: 0;
}

.product-sheet__tab-pane > *:last-child {
  margin-bottom: 0;
}

.product-sheet__tabs-mascot {
  position: absolute;
  right: -2.2rem;
  bottom: -2.4rem;
  z-index: 2;
  width: clamp(150px, 18vw, 260px);
  pointer-events: none;
  transform: rotate(-6deg);
}

.product-sheet__tabs-mascot img {
  display: block;
  width: 100%;
  height: auto;
  filter: drop-shadow(0 18px 28px rgba(0, 0, 0, 0.16));
}

.product-sheet__reassurance {
  width: 100%;
}

.product-sheet__aside .block-reassurance {
  overflow: hidden;
  border: 1px solid rgba(var(--color-primary-rgb), 0.08);
  border-radius: var(--radius);
  background: linear-gradient(180deg, rgb(255, 255, 255) 0%, rgba(248, 248, 248, 0.96) 100%);
  box-shadow: 0 14px 30px rgba(var(--color-primary-rgb), 0.06);
}

.product-sheet__accordion .accordion-item {
  overflow: hidden;
  border: 1px solid rgba(var(--color-primary-rgb), 0.08);
  border-radius: var(--radius);
  background: linear-gradient(180deg, rgb(255, 255, 255) 0%, rgba(248, 248, 248, 0.96) 100%);
  box-shadow: 0 14px 30px rgba(var(--color-primary-rgb), 0.06);
}

.product-sheet__accordion .accordion-item + .accordion-item {
  margin-top: 0.85rem;
}

.product-sheet__accordion .accordion-button {
  position: relative;
  padding: 1.15rem 1.35rem;
  color: var(--color-primary);
  font-size: 1rem;
  font-weight: 700;
  background: transparent;
  box-shadow: none;
  transition: background-color 0.25s ease, color 0.25s ease, padding-left 0.25s ease;
}

.product-sheet__accordion .accordion-button::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 1rem;
  width: 0.4rem;
  height: calc(100% - 1.25rem);
  border-radius: 999px;
  background: var(--color-gradient);
  transform: translateY(-50%);
  opacity: 0.95;
}

.product-sheet__accordion .accordion-button:not(.collapsed),
.product-sheet__accordion .accordion-button.collapsed {
  padding-left: 1.55rem;
}

.product-sheet__accordion .accordion-button:not(.collapsed) {
  color: var(--color-white);
  background: var(--color-primary);
}

.product-sheet__accordion .accordion-button::after {
  width: 2rem;
  height: 2rem;
  border-radius: 999px;
  background-color: rgba(var(--color-primary-rgb), 0.06);
  background-position: center;
  background-size: 1rem;
}

.product-sheet__accordion .accordion-button:not(.collapsed)::after {
  background-color: rgba(255, 255, 255, 0.16);
}

.product-sheet__accordion .accordion-button:focus {
  border-color: transparent;
  box-shadow: 0 0 0 0.18rem rgba(var(--color-primary-rgb), 0.12);
}

.product-sheet__accordion .accordion-body {
  padding: 1.45rem 1.5rem 1.5rem;
  color: rgba(var(--color-primary-rgb), 0.84);
  line-height: 1.7;
  background: rgba(255, 255, 255, 0.92);
}

.product-sheet__attachment + .product-sheet__attachment {
  margin-top: 1rem;
  padding-top: 1rem;
  border-top: 1px solid rgba(var(--color-primary-rgb), 0.08);
}

.product-sheet__attachment-name {
  margin-bottom: 0.35rem;
  color: var(--color-white);
  font-weight: 600;
}

.product-sheet__attachment-description {
  margin-bottom: 0.65rem;
}

.product-sheet__attachment-link {
  color: rgba(255, 255, 255, 0.96);
  font-weight: 600;
  text-decoration: none;
}

.product-sheet__accessories {
  margin-top: 2.5rem;
}

#product .breadcrumb {
  margin-bottom: 1.25rem;
}

#product .product__images {
  display: grid;
  gap: 0.75rem;
}

#product .product__carousel,
#product .product__no-image {
  position: relative;
  overflow: visible;
  border-radius: 0;
  padding: 0;
  background: transparent;
  box-shadow: none;
  border: 0;
}

.product-flags .badge {
  border: none;
  display: inline-flex;
  align-items: center;
  min-height: 2.25rem;
  padding: 0.35rem 0.9rem;
  border-radius: 999px;
  font-size: 0.88rem;
  font-weight: 600;
  text-decoration: none;
}

.product-flag.discount,
.product-flag.discount-percentage,
.product-flag.discount-amount {
  color: var(--color-white) !important;
  background: var(--color-primary) !important;
}

.product-flag.on-sale {
  color: var(--color-white) !important;
  background: var(--color-secondary) !important;
}

.product-flag.new {
  color: var(--color-primary) !important;
  background: rgba(var(--color-primary-rgb), 0.08) !important;
}

.product-flag.online-only,
.product-flag.available-online {
  color: var(--color-primary) !important;
  background: rgba(var(--color-primary-rgb), 0.12) !important;
}

.product-flag.pack {
  color: #5b3aa3 !important;
  background: rgba(91, 58, 163, 0.12) !important;
}

.product-flag.out_of_stock,
.product-flag.out-of-stock {
  color: #5f6875 !important;
  background: rgba(95, 104, 117, 0.12) !important;
}

#product .product__carousel .carousel-inner,
#product .product__no-image {
  border-radius: calc(var(--radius) - 0.05rem);
}

#product .product__carousel .carousel-item,
#product .product__no-image {
  padding: 0;
}

#product .product__carousel .carousel-inner {
  overflow: hidden;
  border: 1px solid rgba(var(--color-primary-rgb), 0.08);
  background: var(--color-white);
}

#product .product__carousel .carousel-item img,
#product .product__no-image img {
  width: 100%;
  aspect-ratio: 1/1;
  object-fit: contain;
  display: block;
  border-radius: 0;
}

#product .product__zoom {
  position: absolute;
  right: 1rem;
  bottom: 1rem;
  z-index: 2;
  width: 3.6rem;
  height: 3.6rem;
  border: 0;
  border-radius: 999px;
  color: var(--color-white);
  background: var(--color-primary);
}

#product .product__zoom:hover {
  color: var(--color-white);
  background: var(--color-primary-hover);
}

#product .product__thumbnails {
  margin-top: 0;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 0.75rem;
}

#product .product__thumbnails-viewport {
  overflow-x: auto;
  overflow-y: hidden;
  padding-bottom: 0.35rem;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

#product .product__thumbnails-viewport::-webkit-scrollbar {
  display: none;
}

#product .product__thumbnails-list {
  display: flex;
  flex-wrap: nowrap;
  gap: 0.9rem;
  padding: 0;
  margin: 0;
  list-style: none;
  min-width: max-content;
  scroll-snap-type: x proximity;
}

#product .product__thumbnail {
  display: block;
  flex: 0 0 calc((100% - 3.6rem) / 5);
  min-width: 110px;
  max-width: 140px;
  padding: 0;
  border: 1px solid rgba(var(--color-primary-rgb), 0.1);
  border-radius: calc(var(--radius) - 0.15rem);
  background: var(--color-white);
  scroll-snap-align: start;
  transition: border-color 0.25s ease, box-shadow 0.25s ease;
}

#product .product__thumbnail.active,
#product .product__thumbnail:hover {
  border-color: var(--color-secondary);
  box-shadow: none;
}

#product .product__thumbnail-image {
  display: block;
  width: 100%;
  aspect-ratio: 1/1;
  object-fit: cover;
  border-radius: inherit;
}

#product .product__thumbnails-nav {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.6rem;
  height: 2.6rem;
  border: 1px solid rgba(var(--color-primary-rgb), 0.12);
  border-radius: 999px;
  background: var(--color-white);
  color: var(--color-primary);
  box-shadow: 0 10px 22px rgba(var(--color-primary-rgb), 0.08);
  transition: color 0.2s ease, border-color 0.2s ease, opacity 0.2s ease, transform 0.2s ease;
}

#product .product__thumbnails-nav:hover,
#product .product__thumbnails-nav:focus {
  color: var(--color-secondary);
  border-color: rgba(var(--color-primary-rgb), 0.22);
  transform: translateY(-1px);
}

#product .product__thumbnails-nav:disabled {
  opacity: 0.35;
  cursor: default;
  transform: none;
}

#product .carousel-control-prev,
#product .carousel-control-next {
  width: 3rem;
  opacity: 1;
  color: var(--color-primary);
}

#product .carousel-control-prev {
  left: 0.35rem;
}

#product .carousel-control-next {
  right: 0.35rem;
}

#product .carousel-control-prev-icon,
#product .carousel-control-next-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.92);
  box-shadow: 0 8px 18px rgba(var(--color-primary-rgb), 0.12);
}

#product .product__prices {
  display: grid;
  gap: 0.45rem;
  padding-bottom: 0.9rem;
  border-bottom: 1px solid rgba(var(--color-primary-rgb), 0.08);
}

#product .product__prices,
#product .product__actions {
  margin-bottom: 0;
}

#product .product-discount {
  order: 1;
}

#product .regular-price {
  color: rgba(var(--color-primary-rgb), 0.46);
  font-size: 0.92rem;
  font-weight: 600;
  text-decoration-thickness: 2px;
}

#product .product-price {
  margin: 0;
}

#product .current-price {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.75rem;
}

#product .current-price-value {
  color: var(--color-primary);
  font-size: clamp(2.15rem, 2vw, 3rem);
  font-weight: 800;
  line-height: 1;
  letter-spacing: -0.04em;
}

#product .discount {
  display: inline-flex;
  align-items: center;
  min-height: 1.75rem;
  padding: 0.15rem 0.5rem;
  border-radius: 999px;
  color: #0f66ff;
  background: transparent;
  font-size: 0.88rem;
  font-weight: 400;
}

#product .product-unit-price,
#product .product__tax-inline,
#product .product-pack-price,
#product .product-without-taxes,
#product .tax-shipping-delivery-label,
#product .delivery-information {
  margin: 0;
  color: rgba(var(--color-primary-rgb), 0.68);
  font-size: 0.88rem;
}

#product .product__tax-inline {
  align-self: flex-end;
  line-height: 1.2;
  white-space: nowrap;
}

#product .product-variants {
  display: grid;
  gap: 1rem;
}

#product .product-variants-item {
  padding: 0;
  border-radius: 0;
  background: transparent;
  border: 0;
}

#product .product-variants-item .control-label {
  display: block;
  margin-bottom: 0.55rem;
  color: var(--color-primary);
  font-size: 0.95rem;
  font-weight: 700;
}

#product .product-variants-item .form-control,
#product .product-variants-item .form-control-select {
  min-height: 2.45rem;
  border-radius: 0.35rem;
  border-color: rgba(var(--color-primary-rgb), 0.14);
  box-shadow: none;
}

#product .product-variants-item ul {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem;
  padding: 0;
  margin: 0;
  list-style: none;
}

#product .product-variants-item .input-container {
  margin: 0;
  float: none;
}

#product .product-variants-item .radio-label {
  display: inline-flex;
  align-items: center;
  min-height: 2.4rem;
  padding: 0.45rem 0.85rem;
  border: 1px solid rgba(var(--color-primary-rgb), 0.12);
  border-radius: 999px;
  color: var(--color-primary);
  background: var(--color-white);
  font-weight: 600;
  transition: border-color 0.2s ease, color 0.2s ease, background-color 0.2s ease;
}

#product .product-variants-item .input-radio {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

#product .product-variants-item .input-radio:checked + .radio-label {
  color: var(--color-white);
  background: var(--color-primary);
  border-color: var(--color-primary);
}

#product .product-variants-item .color,
#product .product-variants-item .texture {
  width: 1.5rem;
  height: 1.5rem;
  border: 2px solid var(--color-white);
  border-radius: 0.2rem;
  box-shadow: 0 0 0 1px rgba(var(--color-primary-rgb), 0.12);
}

#product .product-variants-item .input-color:checked + .color,
#product .product-variants-item .input-color:checked + .texture {
  box-shadow: 0 0 0 2px var(--color-secondary), 0 10px 20px rgba(var(--color-primary-rgb), 0.12);
}

#product .product__add-to-cart-container {
  display: grid;
  gap: 0.85rem;
}

#product .product__availability-status,
#product .product__delivery-infos,
#product .product-additional-info {
  padding: 0;
  border-radius: 0;
  background: transparent;
  border: 0;
}

#product .product__availability-status {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  padding-top: 0.15rem;
}

#product .product__availability-icon {
  font-size: 1.2rem;
}

#product .product__actions-qty-add {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem;
  align-items: center;
}

#product .product__quantity {
  min-width: 0;
}

#product .product__quantity .form-control {
  min-height: 3.3rem;
  border-radius: 999px;
  border-color: rgba(var(--color-primary-rgb), 0.12);
  text-align: center;
}

#product .product__actions-qty-add > *:not(.product__add-to-cart.add) {
  flex: 0 0 auto;
}

#product .product__actions-qty-add .qty-btn,
#product .product__actions-qty-add .bootstrap-touchspin-up,
#product .product__actions-qty-add .bootstrap-touchspin-down,
#product .product__actions-qty-add .btn-touchspin,
#product .product__actions-qty-add .js-increase-product-quantity,
#product .product__actions-qty-add .js-decrease-product-quantity {
  width: 3.3rem;
  min-width: 3.3rem;
  height: 3.3rem;
  padding: 0;
  border-radius: 999px;
  border: 1px solid rgba(var(--color-primary-rgb), 0.12);
  background: var(--color-white);
  color: var(--color-primary);
  box-shadow: none;
}

#product .product__add-to-cart.add {
  flex: 1 1 240px;
}

#product .product__add-to-cart-button {
  width: 100%;
  min-height: 3.3rem;
  gap: 0.6rem;
  background: var(--color-gradient);
  border: 0;
  font-size: 0.98rem;
  font-weight: 700;
  box-shadow: 0 18px 28px rgba(var(--color-primary-rgb), 0.14);
}

#product .product__add-to-cart-button:hover,
#product .product__add-to-cart-button:focus {
  background: var(--color-gradient-hover);
}

#product .product-minimal-quantity {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  color: rgba(var(--color-primary-rgb), 0.72);
  font-size: 0.92rem;
}

#product .product__additional-info > * + * {
  margin-top: 0.9rem;
}

#product .comment_anchor_content {
  display: grid;
  gap: 0.35rem;
}

#product .comment_anchor_summary {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.45rem 0.7rem;
}

#product .comment_anchor_content .comment_anchor {
  color: rgba(var(--color-primary-rgb), 0.7);
  font-size: 0.92rem;
  text-decoration: none;
}

#product .comment_anchor_cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: auto;
  padding: 0.15rem 0.65rem;
  border: 1px solid rgba(var(--color-primary-rgb), 0.18);
  border-radius: 999px;
  color: var(--color-primary);
  font-size: 0.78rem;
  font-weight: 600;
  line-height: 1.2;
  background: rgba(var(--color-primary-rgb), 0.04);
  box-shadow: none;
}

#product .comment_anchor_cta:hover,
#product .comment_anchor_cta:focus {
  color: var(--color-primary);
  border-color: rgba(var(--color-primary-rgb), 0.35);
  background: rgba(var(--color-primary-rgb), 0.08);
}

#product .ps-sharebuttons {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.9rem;
}

#product .ps-sharebuttons__label {
  color: var(--color-primary);
  font-size: 0.95rem;
  font-weight: 400;
}

#product .ps-sharebuttons__list {
  display: flex;
  gap: 0.45rem;
  align-items: center;
  padding: 0;
  margin: 0;
  list-style: none;
}

#product .ps-sharebuttons__link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  color: var(--color-primary);
  text-decoration: none;
}

#product .ps-sharebuttons__link:hover {
  color: var(--color-secondary);
}

#product .product-manufacturer,
#product .product-reference,
#product .product-quantities,
#product .product-availability-date,
#product .product-condition {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  padding: 0.8rem 0;
  border-bottom: 1px solid rgba(var(--color-primary-rgb), 0.08);
}

#product .product-manufacturer .label,
#product .product-reference .label,
#product .product-quantities .label,
#product .product-condition .label {
  color: var(--color-primary);
  font-weight: 700;
}

#product .product-features .h6 {
  margin-bottom: 1rem;
  color: var(--color-primary);
  font-size: 1rem;
  font-weight: 700;
  text-transform: none;
}

#product .data-sheet {
  display: grid;
  grid-template-columns: minmax(0, 220px) minmax(0, 1fr);
  margin: 0;
}

#product .data-sheet .name,
#product .data-sheet .value {
  padding: 0.85rem 0;
  margin: 0;
  border-bottom: 1px solid rgba(var(--color-primary-rgb), 0.08);
}

#product .data-sheet .name {
  color: var(--color-primary);
  font-weight: 600;
}

#product .product-sheet__accessories .product-accessories {
  padding: 2rem;
  border-radius: var(--radius);
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 10px 28px rgba(var(--color-primary-rgb), 0.06);
}

#product .product-sheet__accessories .h5 {
  margin-bottom: 1.5rem;
  color: var(--color-primary);
  font-size: clamp(1.5rem, 2vw, 2rem);
  font-weight: 800;
  text-transform: none;
  letter-spacing: -0.03em;
}

.product-sticky-bar {
  position: fixed;
  top: var(--product-sticky-offset, 5.5rem);
  left: 0;
  right: 0;
  z-index: 1026;
  padding: 0 1rem;
  opacity: 0;
  transform: translateY(-0.75rem);
  pointer-events: none;
  transition: opacity 0.22s ease, transform 0.22s ease;
}

.product-sticky-bar.is-active {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}

.product-sticky-bar__inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 1rem;
  align-items: center;
  padding: 0.75rem 1rem;
  border: 1px solid rgba(var(--color-primary-rgb), 0.14);
  border-radius: 0.5rem;
  background: rgba(255, 255, 255, 0.98);
  box-shadow: 0 16px 32px rgba(var(--color-primary-rgb), 0.12);
}

.product-sticky-bar__summary {
  display: flex;
  align-items: center;
  min-width: 0;
  gap: 1rem;
}

.product-sticky-bar__media {
  flex: 0 0 auto;
}

.product-sticky-bar__image {
  display: block;
  width: 64px;
  height: 64px;
  object-fit: contain;
  border: 1px solid rgba(var(--color-primary-rgb), 0.08);
  border-radius: 0.35rem;
  background: var(--color-white);
}

.product-sticky-bar__content {
  min-width: 0;
}

.product-sticky-bar__title,
.product-sticky-bar__price {
  margin: 0;
}

.product-sticky-bar__title {
  overflow: hidden;
  color: var(--color-primary);
  font-size: 0.98rem;
  font-weight: 600;
  line-height: 1.35;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.product-sticky-bar__price {
  margin-top: 0.3rem;
  color: var(--color-primary);
  font-size: 0.95rem;
  font-weight: 700;
}

.product-sticky-bar__button {
  min-width: 220px;
  min-height: 3rem;
  padding: 0.8rem 1.4rem;
  border: 0;
  font-size: 0.95rem;
  font-weight: 700;
  text-transform: uppercase;
  box-shadow: none;
}

.product-sticky-bar__button[disabled] {
  opacity: 0.6;
}

.product-sticky-bar__close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  padding: 0;
  border: 0;
  color: rgba(var(--color-primary-rgb), 0.8);
  background: transparent;
}

.product-sticky-bar__close:hover {
  color: var(--color-primary);
}

@media (max-width: 991.98px) {
  .product-sticky-bar {
    display: none;
  }
  .product-sheet__hero {
    --bs-gutter-x: 1rem;
    --bs-gutter-y: 1rem;
  }
  .product-sheet__tabs-panel {
    min-height: 0;
    padding: 2rem 1.5rem;
  }
  .product-sheet__tabs-content {
    max-width: 100%;
  }
  .product-sheet__tabs-mascot {
    width: 150px;
  }
  #product .product-sheet__reassurance .block-reassurance,
  #product .product-sheet__reassurance .blockreassurance_product {
    padding: 2rem 1.25rem;
  }
  #product .product-sheet__reassurance .block-reassurance-item {
    padding: 0 1rem;
  }
  #product .product-sheet__reassurance .blockreassurance_product {
    gap: 1.5rem;
  }
  #product .product-sheet__reassurance .blockreassurance_product > div {
    grid-template-columns: 82px minmax(0, 1fr);
  }
  #product .product-sheet__reassurance .blockreassurance_product .item-product {
    width: 82px;
    height: 82px;
  }
}
@media (max-width: 767.98px) {
  .product-sheet {
    margin-bottom: 3rem;
  }
  .product-sheet__hero {
    padding: 1rem;
    gap: 1rem;
  }
  .product-sheet__summary,
  .product-sheet__purchase {
    padding: 1rem;
  }
  .product-sheet__title {
    font-size: 2rem;
  }
  .product-sheet__tabs-nav {
    justify-content: stretch;
    padding: 0;
  }
  .product-sheet__tabs-nav .nav-item {
    flex: 1 1 100%;
  }
  .product-sheet__tabs-nav .nav-link {
    width: 100%;
    min-width: 0;
    border-radius: 1rem 1rem 0 0;
    font-size: 0.94rem;
  }
  .product-sheet__tabs-panel {
    padding: 1.5rem 1.1rem;
    border-radius: var(--radius);
  }
  .product-sheet__tabs-mascot {
    display: none;
  }
  #product .product-sheet__reassurance .block-reassurance,
  #product .product-sheet__reassurance .blockreassurance_product {
    padding: 1rem;
  }
  #product .product-sheet__reassurance .block-reassurance-item {
    padding: 0;
  }
  #product .product-sheet__reassurance .block-reassurance-item .img-wrapper {
    width: 58px;
    height: 58px;
    padding: 0.85rem;
  }
  #product .product-sheet__reassurance .blockreassurance_product {
    grid-template-columns: 1fr;
    gap: 1rem;
  }
  #product .product-sheet__reassurance .blockreassurance_product > div {
    grid-template-columns: 58px minmax(0, 1fr);
    gap: 0.75rem;
  }
  #product .product-sheet__reassurance .blockreassurance_product .item-product {
    width: 58px;
    height: 58px;
  }
  #product .product-sheet__reassurance .blockreassurance_product .item-product img,
  #product .product-sheet__reassurance .blockreassurance_product .item-product svg {
    width: 28px;
    height: 28px;
  }
  #product .current-price-value {
    font-size: 1.9rem;
  }
  #product .product__carousel,
  #product .product__no-image {
    padding: 1rem;
  }
  #product .product__thumbnails {
    gap: 0.5rem;
  }
  #product .product__thumbnails-list {
    gap: 0.75rem;
  }
  #product .product__thumbnail {
    flex-basis: calc((100% - 2.25rem) / 4);
    min-width: 82px;
    max-width: 120px;
  }
  #product .product__thumbnails-nav {
    width: 2.35rem;
    height: 2.35rem;
  }
  #product .product__actions-qty-add {
    flex-direction: column;
    align-items: stretch;
  }
  #product .product__quantity,
  #product .product__add-to-cart.add {
    width: 100%;
  }
  #product .product__add-to-cart.add {
    flex: 0 0 auto;
  }
  #product .data-sheet {
    grid-template-columns: 1fr;
  }
  #product .data-sheet .name {
    padding-bottom: 0.25rem;
    border-bottom: 0;
  }
  #product .data-sheet .value {
    padding-top: 0;
  }
}
@media (max-width: 575.98px) {
  #product .product__thumbnails {
    grid-template-columns: minmax(0, 1fr);
  }
  #product .product__thumbnail {
    flex-basis: calc((100% - 0.9rem) / 2.4);
    min-width: 88px;
    max-width: 110px;
  }
  #product .product__thumbnails-nav {
    display: none;
  }
}
#chatbox-toggle.has-text {
  width: 150px;
}

@media (max-width: 768px) {
  #chatbox-toggle.has-text {
    background: white;
    border: none;
    box-shadow: none;
    padding: 0;
    width: unset;
    bottom: 5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
    border-radius: 50%;
  }
  #chatbox-toggle.has-text .chatbox-icon {
    width: 40px;
    height: 40px;
  }
}
.stars-container {
  text-align: start;
}

.ka.ka-reviews-showcase {
  padding: clamp(2.5rem, 4vw, 4rem) 0;
}

.ka.ka-reviews-showcase .ka-reviews-showcase__header {
  margin: 0 auto clamp(1.75rem, 3vw, 2.5rem);
  max-width: 58rem;
}

.ka.ka-reviews-showcase .ka-reviews-showcase__header .ka-block__title {
  color: #10233a;
  font-size: clamp(2rem, 3vw, 3rem);
}

.ka.ka-reviews-showcase .ka-reviews-showcase__header .ka-block__subtitle {
  color: #4d5d72;
}

.ka.ka-reviews-showcase .ka-reviews-showcase__grid {
  display: grid;
  grid-template-columns: minmax(220px, 0.9fr) minmax(320px, 1.55fr) minmax(280px, 1fr);
  gap: 1.5rem;
  align-items: stretch;
}

.ka.ka-reviews-showcase .ka-reviews-showcase__score-card {
  background: linear-gradient(180deg, #ff7a00 0%, #ffa54a 100%);
  border-radius: 1.5rem;
  color: #fff;
  padding: 2rem 1.5rem;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  box-shadow: 0 20px 45px rgba(255, 122, 0, 0.18);
}

.ka.ka-reviews-showcase .ka-reviews-showcase__score-label {
  font-size: 0.95rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  margin-bottom: 1rem;
}

.ka.ka-reviews-showcase .ka-reviews-showcase__score-value {
  font-size: clamp(3rem, 5vw, 4.6rem);
  font-weight: 800;
  line-height: 0.9;
}

.ka.ka-reviews-showcase .ka-reviews-showcase__score-value span,
.ka.ka-reviews-showcase .ka-reviews-showcase__source-score span {
  font-size: 0.46em;
  font-weight: 700;
}

.ka.ka-reviews-showcase .ka-reviews-showcase__stars,
.ka.ka-reviews-showcase .ka-reviews-showcase__source-stars {
  display: flex;
  gap: 0.18rem;
  align-items: center;
}

.ka.ka-reviews-showcase .ka-reviews-showcase__score-card .ka-reviews-showcase__stars {
  justify-content: center;
  margin: 1rem 0 0.75rem;
}

.ka.ka-reviews-showcase .ka-reviews-showcase__star {
  color: rgba(255, 122, 0, 0.2);
  font-size: 1rem;
  line-height: 1;
}

.ka.ka-reviews-showcase .ka-reviews-showcase__score-card .ka-reviews-showcase__star {
  color: rgba(255, 255, 255, 0.35);
}

.ka.ka-reviews-showcase .ka-reviews-showcase__star.is-active {
  color: #ff8a00;
}

.ka.ka-reviews-showcase .ka-reviews-showcase__score-card .ka-reviews-showcase__star.is-active {
  color: #fff;
}

.ka.ka-reviews-showcase .ka-reviews-showcase__score-foot {
  font-size: 0.98rem;
  line-height: 1.45;
  margin: 0;
}

.ka.ka-reviews-showcase .ka-reviews-showcase__sources {
  display: grid;
  gap: 1rem;
}

.ka.ka-reviews-showcase .ka-reviews-showcase__source-card,
.ka.ka-reviews-showcase .ka-reviews-showcase__recent-card {
  background: #f1efed;
  border: 1px solid rgba(255, 122, 0, 0.55);
  border-radius: 1.4rem;
}

.ka.ka-reviews-showcase .ka-reviews-showcase__source-card {
  padding: 1rem 1.2rem 1.15rem;
  box-shadow: 0 10px 25px rgba(16, 35, 58, 0.06);
}

.ka.ka-reviews-showcase .ka-reviews-showcase__source-main {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  align-items: flex-start;
}

.ka.ka-reviews-showcase .ka-reviews-showcase__source-brand {
  display: flex;
  gap: 0.9rem;
  align-items: flex-start;
}

.ka.ka-reviews-showcase .ka-reviews-showcase__source-logo {
  width: 2.75rem;
  height: 2.75rem;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  flex: 0 0 auto;
  color: #10233a;
  font-weight: 800;
}

.ka.ka-reviews-showcase .ka-reviews-showcase__source-logo img,
.ka.ka-reviews-showcase .ka-reviews-showcase__source-logo svg {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.ka.ka-reviews-showcase .ka-reviews-showcase__source-title,
.ka.ka-reviews-showcase .ka-reviews-showcase__author,
.ka.ka-reviews-showcase .ka-reviews-showcase__recent-head h3 {
  color: #10233a;
  font-weight: 800;
}

.ka.ka-reviews-showcase .ka-reviews-showcase__source-title {
  margin: 0 0 0.15rem;
}

.ka.ka-reviews-showcase .ka-reviews-showcase__source-meta,
.ka.ka-reviews-showcase .ka-reviews-showcase__date {
  color: #66758a;
  font-size: 0.92rem;
}

.ka.ka-reviews-showcase .ka-reviews-showcase__source-meta {
  margin: 0 0 0.35rem;
}

.ka.ka-reviews-showcase .ka-reviews-showcase__source-score {
  color: #10233a;
  font-size: 2.25rem;
  font-weight: 800;
  line-height: 1;
  white-space: nowrap;
}

.ka.ka-reviews-showcase .ka-reviews-showcase__source-aside {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 0.8rem;
  flex: 0 0 auto;
}

.ka.ka-reviews-showcase .ka-reviews-showcase__source-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.25rem;
  padding: 0.5rem 1rem;
  border-radius: 999px;
  color: #fff;
  font-size: 0.86rem;
  font-weight: 700;
  text-decoration: none;
}

.ka.ka-reviews-showcase .ka-reviews-showcase__source-card.is-site .ka-reviews-showcase__source-button {
  background: #ff8a00;
}

.ka.ka-reviews-showcase .ka-reviews-showcase__source-card.is-google .ka-reviews-showcase__source-button {
  background: #4f86f7;
}

.ka.ka-reviews-showcase .ka-reviews-showcase__source-card.is-trustpilot .ka-reviews-showcase__source-button {
  background: #00b67a;
}

.ka.ka-reviews-showcase .ka-reviews-showcase__recent {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
}

.ka.ka-reviews-showcase .ka-reviews-showcase__recent-head h3 {
  margin: 0;
  font-size: 1.1rem;
}

.ka.ka-reviews-showcase .ka-reviews-showcase__recent-card {
  padding: 1.5rem 1.4rem;
  min-height: 100%;
}

.ka.ka-reviews-showcase .ka-reviews-showcase__quote {
  margin: 0 0 1rem;
  color: #24374f;
  font-size: 0.98rem;
  line-height: 1.65;
}

.ka.ka-reviews-showcase .ka-reviews-showcase__author {
  margin: 0 0 0.2rem;
  text-align: center;
}

.ka.ka-reviews-showcase .ka-reviews-showcase__date {
  margin: 0;
  text-align: center;
}

.ka.ka-reviews-showcase .ka-reviews-showcase__nav {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-top: 0.9rem;
}

.ka.ka-reviews-showcase .ka-reviews-showcase__nav .carousel-control-prev,
.ka.ka-reviews-showcase .ka-reviews-showcase__nav .carousel-control-next {
  position: static;
  width: 2rem;
  height: 2rem;
  border: 0;
  background: transparent;
  color: #10233a;
  opacity: 1;
}

.ka.ka-reviews-showcase .ka-reviews-showcase__nav .carousel-control-prev span,
.ka.ka-reviews-showcase .ka-reviews-showcase__nav .carousel-control-next span {
  font-size: 2rem;
  line-height: 1;
}

.ka.ka-reviews-showcase .ka-reviews-showcase__nav .carousel-indicators {
  position: static;
  display: flex;
  gap: 0.45rem;
  margin: 0;
}

.ka.ka-reviews-showcase .ka-reviews-showcase__nav .carousel-indicators button {
  width: 0.55rem;
  height: 0.55rem;
  margin: 0;
  border: 0;
  border-radius: 999px;
  background: rgba(16, 35, 58, 0.18);
  opacity: 1;
}

.ka.ka-reviews-showcase .ka-reviews-showcase__nav .carousel-indicators button.active {
  background: #10233a;
}

@media (max-width: 1199.98px) {
  .ka.ka-reviews-showcase .ka-reviews-showcase__grid {
    grid-template-columns: 1fr;
  }
  .ka.ka-reviews-showcase .ka-reviews-showcase__score-card {
    max-width: 22rem;
    margin: 0 auto;
  }
}
@media (min-width: 768px) {
  .page-category .ka-listing-toolbar__actions {
    display: none;
  }
}
@media (max-width: 767.98px) {
  .ka.ka-reviews-showcase .ka-reviews-showcase__source-main {
    flex-direction: column;
  }
  .ka.ka-reviews-showcase .ka-reviews-showcase__source-aside {
    align-items: flex-start;
  }
  .ka.ka-reviews-showcase .ka-reviews-showcase__source-score {
    font-size: 1.9rem;
  }
  .page-category #js-product-list-top {
    margin-bottom: 1rem;
  }
  .page-category .ka-listing-toolbar {
    align-items: stretch;
    gap: 0.85rem;
    padding: 1rem;
    border: 1px solid rgba(var(--color-primary-rgb), 0.08);
    border-radius: 1rem;
    background: #f8f5f0;
    box-shadow: 0 18px 40px rgba(var(--color-primary-rgb), 0.06);
  }
  .page-category .ka-listing-toolbar .products__count {
    display: none;
  }
  .page-category .ka-listing-toolbar .products__sort {
    display: grid;
    gap: 0.75rem;
    width: 100%;
  }
  .page-category .ka-listing-toolbar__sort {
    display: grid;
    gap: 0.4rem;
  }
  .page-category .ka-listing-toolbar__sort .products__sort-label {
    display: none;
  }
  .page-category .ka-listing-toolbar__sort .products__sort-dropdown {
    width: 100%;
  }
  .page-category .ka-listing-toolbar__sort .products__sort-dropdown-button {
    width: 100%;
    justify-content: space-between;
    padding: 0.9rem 1rem;
    border-color: rgba(var(--color-primary-rgb), 0.08);
    border-radius: 0.9rem;
    background: var(--color-white);
    color: rgba(var(--color-primary-rgb), 0.74);
    font-weight: 600;
    box-shadow: 0 10px 24px rgba(var(--color-primary-rgb), 0.05);
  }
  .page-category .ka-listing-toolbar__actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.75rem;
  }
  .page-category .ka-listing-toolbar__button {
    width: 100%;
    min-height: 3rem;
    padding: 0.85rem 1rem;
    border-radius: 0.9rem;
    font-weight: 700;
    box-shadow: none;
  }
  .page-category .ka-listing-toolbar__button .material-icons {
    font-size: 1.2rem;
  }
  .page-category .ka-listing-toolbar .products__filter-button.btn-secondary {
    background: var(--color-gradient);
    border-color: transparent;
  }
  .page-category .ka-listing-toolbar .products__category-button.btn-outline-primary {
    border-color: rgba(var(--color-primary-rgb), 0.18);
    background: var(--color-white);
    color: var(--color-primary);
  }
  .page-category .ps-facetedsearch--mobile,
  .page-category .ka-category-links-offcanvas {
    width: min(88vw, 24rem);
  }
}
@media (max-width: 767.98px) {
  .ka.ka-hero {
    margin-bottom: 5rem;
  }
  .ka.ka-hero.ka-hero--with-image .ka-block__inner {
    position: relative;
    inset: auto;
    display: block;
    min-height: 0;
    padding: 1rem 1rem 0;
  }
  .ka.ka-hero.ka-hero--with-image::after {
    display: none;
  }
  .ksc-widget {
    width: 100%;
    margin: 0;
  }
  .block-reassurance {
    padding: 1rem;
  }
  .block-reassurance-item {
    padding: 1rem;
  }
  .block-reassurance-tail {
    display: none;
  }
  .ka.ka-split .ka-split__content {
    padding: 1rem;
  }
}
@media (max-width: 420px) {
  .page-category .ka-listing-toolbar__actions {
    grid-template-columns: minmax(0, 1fr);
  }
}
.submenu a {
  color: var(--color-primary);
}

.product-pack-selector {
  border: 0;
  padding: 0;
  margin: 0 0 1.5rem;
}
.product-pack-selector__legend {
  font-weight: 600;
  font-size: 1rem;
  padding: 0;
  margin-bottom: 0.75rem;
}

.product-pack-list {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

.product-pack-card {
  position: relative;
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 0.75rem 1rem;
  border: 2px solid var(--color-grey, #e5e5e5);
  border-radius: var(--radius, 0.5rem);
  background: var(--color-white);
  cursor: pointer;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.15s ease;
}
.product-pack-card:hover {
  border-color: var(--color-secondary);
  box-shadow: var(--shadow);
  transform: translateY(-1px);
}
.product-pack-card__input {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: 0;
  opacity: 0;
}
.product-pack-card__check {
  flex: 0 0 auto;
  width: 22px;
  height: 22px;
  border: 2px solid var(--color-grey, #cfcfcf);
  border-radius: 5px;
  background: var(--color-white);
  position: relative;
  transition: background-color 0.2s ease, border-color 0.2s ease;
}
.product-pack-card__check::after {
  content: "";
  position: absolute;
  left: 6px;
  top: 2px;
  width: 6px;
  height: 11px;
  border: solid var(--color-white);
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
  opacity: 0;
  transition: opacity 0.15s ease;
}
.product-pack-card__media {
  flex: 0 0 auto;
  width: 56px;
  height: 56px;
  border-radius: calc(var(--radius, 0.5rem) - 0.2rem);
  overflow: hidden;
  background: var(--color-grey, #f5f5f5);
}
.product-pack-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.product-pack-card__text {
  display: flex;
  flex-direction: column;
  gap: 0.15rem;
  min-width: 0;
}
.product-pack-card__title {
  font-weight: 600;
  color: var(--text-color, #091b2c);
}
.product-pack-card__price {
  font-weight: 600;
  font-size: 0.9rem;
  color: var(--color-secondary);
}
.product-pack-card--selected, .product-pack-card:has(.product-pack-card__input:checked) {
  border-color: var(--color-secondary);
  background: rgba(var(--color-primary-rgb, 15, 36, 56), 0.04);
}
.product-pack-card--selected .product-pack-card__check, .product-pack-card:has(.product-pack-card__input:checked) .product-pack-card__check {
  background: var(--color-secondary);
  border-color: var(--color-secondary);
}
.product-pack-card--selected .product-pack-card__check::after, .product-pack-card:has(.product-pack-card__input:checked) .product-pack-card__check::after {
  opacity: 1;
}
.product-pack-card__input:focus-visible ~ .product-pack-card__check {
  outline: 2px solid var(--color-secondary);
  outline-offset: 2px;
}

@media (max-width: 767.98px) {
  .product-pack-selector__legend {
    font-size: 0.9rem;
  }
  .product-pack-card {
    padding: 0.55rem 0.75rem;
    gap: 0.7rem;
  }
  .product-pack-card__media {
    width: 46px;
    height: 46px;
  }
  .product-pack-card__title {
    font-size: 0.88rem;
  }
  .product-pack-card__price {
    font-size: 0.8rem;
  }
  .product-sticky-bar {
    display: block;
    top: auto;
    bottom: 0;
    padding: 0 0.5rem;
    transform: translateY(0.75rem);
  }
  .product-sticky-bar.is-active {
    transform: translateY(0);
  }
  .product-sticky-bar__inner {
    position: relative;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.55rem 2.6rem 0.55rem 0.7rem;
    border-radius: 0.85rem 0.85rem 0 0;
    box-shadow: 0 -10px 28px rgba(var(--color-primary-rgb), 0.16);
  }
  .product-sticky-bar__media,
  .product-sticky-bar__title {
    display: none;
  }
  .product-sticky-bar__summary {
    flex: 0 0 auto;
  }
  .product-sticky-bar__price {
    font-size: 1rem;
    white-space: nowrap;
  }
  .product-sticky-bar__pack {
    display: none;
  }
  .product-sticky-bar__button {
    flex: 1 1 auto;
    white-space: nowrap;
    padding-inline: 0.75rem;
  }
  .product-sticky-bar__close {
    position: absolute;
    top: 5px;
    right: 5px;
    width: 1.6rem;
    height: 1.6rem;
  }
}
.product-miniature__pack-select {
  position: relative;
  z-index: 2;
  margin: 0.35rem 0;
}

.product-pack-quickselect {
  position: relative;
  width: 100%;
  min-height: 40px;
  padding: 0.4rem 2.1rem 0.4rem 1rem;
  font-size: 0.85rem;
  font-weight: 600;
  color: var(--text-color, #091b2c);
  background-color: var(--color-white);
  border: 1px solid #d7dfe8;
  border-radius: 999px;
  cursor: pointer;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  appearance: none;
  -webkit-appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2 4l4 4 4-4' fill='none' stroke='%233f5063' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 0.85rem center;
  background-size: 12px;
}
.product-pack-quickselect:hover, .product-pack-quickselect:focus-visible {
  border-color: var(--color-secondary);
  box-shadow: 0 0 0 3px rgba(249, 121, 2, 0.12);
  outline: none;
}

#product .product__availability-status--badge {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  width: fit-content;
  padding: 0.4rem 0.9rem;
  border-radius: 999px;
  font-size: 0.85rem;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.01em;
}

#product .product__availability-status--badge .product__availability-icon {
  font-size: 1rem;
}

#product .product__availability-status--badge .product__availability-messages small {
  font-weight: 500;
}

#product .product__availability-status--out-of-stock {
  color: #b42318;
  background: rgba(180, 35, 24, 0.1);
  margin-top: 1rem;
}

#product .product__availability-status--in-stock {
  color: #1f7a3d;
  background: rgba(31, 122, 61, 0.1);
}

#product .product__availability-status--available,
#product .product__availability-status--last-items {
  color: #9a5b00;
  background: rgba(249, 121, 2, 0.12);
}

#product .product__quantity .form-control {
  min-height: 3rem;
  width: 5.5rem;
  border-radius: 999px;
  border-color: rgba(var(--color-primary-rgb), 0.12);
}

#product .product__actions-qty-add .qty-btn,
#product .product__actions-qty-add .bootstrap-touchspin-up,
#product .product__actions-qty-add .bootstrap-touchspin-down,
#product .product__actions-qty-add .btn-touchspin,
#product .product__actions-qty-add .js-increase-product-quantity,
#product .product__actions-qty-add .js-decrease-product-quantity {
  width: 3rem;
  min-width: 3rem;
  height: 3rem;
  border: 1px solid rgba(var(--color-primary-rgb), 0.12);
  border-radius: 999px;
  background: var(--color-white);
  color: var(--color-primary);
  transition: border-color 0.2s ease, color 0.2s ease;
}

#product .product__actions-qty-add .bootstrap-touchspin-up:hover,
#product .product__actions-qty-add .bootstrap-touchspin-down:hover,
#product .product__actions-qty-add .js-increase-product-quantity:hover,
#product .product__actions-qty-add .js-decrease-product-quantity:hover {
  border-color: var(--color-secondary);
  color: var(--color-secondary);
}

.mailalert-card {
  display: grid;
  gap: 0.85rem;
  padding: 1.25rem 1.35rem;
  border: 1px solid rgba(var(--color-primary-rgb), 0.1);
  border-radius: var(--radius);
  background: rgba(var(--color-primary-rgb), 0.03);
  box-shadow: 0 10px 28px rgba(var(--color-primary-rgb), 0.06);
  text-align: left;
}

.mailalert-card__head {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
}

.mailalert-card__icon {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 999px;
  background: var(--color-gradient);
  color: var(--color-white);
  font-size: 1.3rem;
}

.mailalert-card__title {
  margin: 0;
  color: var(--color-primary);
  font-size: 1.05rem;
  font-weight: 700;
}

.mailalert-card__text {
  margin: 0.2rem 0 0;
  color: rgba(var(--color-primary-rgb), 0.75);
  font-size: 0.92rem;
  line-height: 1.45;
}

.mailalert-card__form {
  display: flex;
  flex-wrap: wrap;
  gap: 0.6rem;
}

.mailalert-card__input {
  flex: 1 1 12rem;
  min-height: 3rem;
  border-radius: 999px;
  border-color: rgba(var(--color-primary-rgb), 0.14);
}

.mailalert-card__button {
  flex: 1 1 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.45rem;
  min-height: 3rem;
  border: 0;
  border-radius: 999px;
  background: var(--color-gradient);
  font-weight: 700;
}

.mailalert-card__button:hover,
.mailalert-card__button:focus {
  background: var(--color-gradient-hover);
}

.mailalert-card__reassurance {
  margin: 0;
  color: rgba(var(--color-primary-rgb), 0.6);
  font-size: 0.82rem;
}

.mailalert-card--confirmed {
  display: flex;
  align-items: center;
  gap: 0.6rem;
}

.mailalert-card--confirmed .mailalert-card__icon {
  width: 2rem;
  height: 2rem;
  font-size: 1.1rem;
}

.product-sticky-bar__pack {
  flex: 1 1 14rem;
  min-width: 0;
}

.product-sticky-bar__pack-select {
  width: 100%;
  min-height: 2.75rem;
  padding: 0.4rem 2.2rem 0.4rem 0.9rem;
  font-size: 0.9rem;
  font-weight: 600;
  color: var(--color-primary);
  background-color: var(--color-white);
  border: 1px solid rgba(var(--color-primary-rgb), 0.16);
  border-radius: 999px;
  cursor: pointer;
}

.product-sticky-bar__pack-select:focus-visible {
  outline: 2px solid var(--color-secondary);
  outline-offset: 2px;
}

@media (max-width: 767.98px) {
  .product-sticky-bar__pack {
    flex-basis: 100%;
    order: 3;
  }
}
#product .product-sheet__description table,
#product .product-sheet__tab-pane table,
#product .rich-text table {
  width: 100%;
  border-collapse: collapse;
  margin: 1.4rem 0;
  font-size: 0.94rem;
  background: var(--color-white);
  border: 1px solid rgba(var(--color-primary-rgb), 0.1);
  border-radius: var(--radius);
  overflow: hidden;
}

#product .product-sheet__description table th,
#product .product-sheet__description table td,
#product .product-sheet__tab-pane table th,
#product .product-sheet__tab-pane table td,
#product .rich-text table th,
#product .rich-text table td {
  padding: 0.7rem 0.95rem;
  border: 1px solid rgba(var(--color-primary-rgb), 0.08);
  text-align: left;
  vertical-align: top;
}

#product .product-sheet__description table th,
#product .product-sheet__tab-pane table th,
#product .rich-text table th {
  color: var(--color-primary);
  font-weight: 700;
  background: rgba(var(--color-primary-rgb), 0.05);
}

#product .product-sheet__description table tbody tr:nth-child(even),
#product .product-sheet__tab-pane table tbody tr:nth-child(even),
#product .rich-text table tbody tr:nth-child(even) {
  background: rgba(var(--color-primary-rgb), 0.025);
}

@media (max-width: 767.98px) {
  #product .product-sheet__description table,
  #product .product-sheet__tab-pane table,
  #product .rich-text table {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    white-space: nowrap;
  }
  #product .data-sheet {
    grid-template-columns: 1fr;
  }
  #product .data-sheet .name {
    padding-bottom: 0.2rem;
    border-bottom: 0;
  }
  #product .data-sheet .value {
    padding-top: 0.2rem;
  }
}
.pagination__container {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-top: 2rem;
}

.pagination__number {
  color: rgba(var(--color-primary-rgb), 0.7);
  font-size: 0.9rem;
}

.pagination {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.4rem;
  padding: 0;
  margin: 0;
  list-style: none;
}

.pagination .page-item .page-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.3rem;
  min-width: 2.6rem;
  height: 2.6rem;
  padding: 0 0.6rem;
  color: var(--color-primary);
  background: var(--color-white);
  border: 1px solid rgba(var(--color-primary-rgb), 0.12);
  border-radius: 999px;
  font-weight: 600;
  line-height: 1;
  transition: border-color 0.2s ease, color 0.2s ease, background 0.2s ease;
}

.pagination .page-item .page-link:hover {
  border-color: var(--color-secondary);
  color: var(--color-secondary);
}

.pagination .page-item .page-link:focus-visible {
  outline: 2px solid var(--color-secondary);
  outline-offset: 2px;
}

.pagination .page-item.active .page-link {
  color: var(--color-white);
  background: var(--color-gradient);
  border-color: transparent;
}

.pagination .page-item .page-link.disabled,
.pagination .page-item .page-link[disabled] {
  opacity: 0.45;
  cursor: not-allowed;
}

.ka-listing-toolbar__sort {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  flex-wrap: wrap;
}

.ka-listing-toolbar__sort .products__sort-label {
  margin: 0;
  white-space: nowrap;
  color: rgba(var(--color-primary-rgb), 0.75);
  font-size: 0.9rem;
  font-weight: 600;
}

.ka-listing-toolbar__sort .products__sort-dropdown {
  position: relative;
}

.ka-listing-toolbar__sort .products__sort-dropdown-button {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  min-height: 2.75rem;
  padding: 0.4rem 1rem;
  border-radius: 999px;
  border: 1px solid rgba(var(--color-primary-rgb), 0.16);
  background: var(--color-white);
  color: var(--color-primary);
  font-weight: 600;
}

.ka-listing-toolbar__sort .products__sort-dropdown-button:focus-visible {
  outline: 2px solid var(--color-secondary);
  outline-offset: 2px;
}

.ka-listing-toolbar__sort .dropdown-item.current {
  font-weight: 700;
  color: var(--color-secondary);
}

.top-menu .sub-menu {
  border: 1px solid rgba(var(--color-primary-rgb), 0.08);
  border-radius: var(--radius);
  box-shadow: 0 18px 40px rgba(var(--color-primary-rgb), 0.12);
  background: var(--color-white);
}

.top-menu a[data-depth="1"],
.top-menu a[data-depth="2"],
.top-menu .sub-menu .dropdown-item {
  display: block;
  padding: 0.55rem 1rem;
  color: var(--color-primary);
  font-size: 0.95rem;
  border-radius: calc(var(--radius) * 0.6);
  transition: background 0.2s ease, color 0.2s ease;
}

.top-menu a[data-depth="2"] {
  font-size: 0.9rem;
  color: rgba(var(--color-primary-rgb), 0.78);
}

.top-menu .sub-menu .dropdown-item:hover,
.top-menu .sub-menu .dropdown-item:focus,
.top-menu a[data-depth="1"]:hover,
.top-menu a[data-depth="1"]:focus,
.top-menu a[data-depth="2"]:hover,
.top-menu a[data-depth="2"]:focus {
  background: rgba(var(--color-secondary-rgb, 249, 121, 2), 0.1);
  color: var(--color-secondary);
}

.top-menu .sub-menu .dropdown-item:focus-visible,
.top-menu a[data-depth="1"]:focus-visible,
.top-menu a[data-depth="2"]:focus-visible {
  outline: 2px solid var(--color-secondary);
  outline-offset: -2px;
}

.ps-mainmenu.ps-mainmenu--desktop .submenu__right-items.active {
  display: block !important;
  column-count: 5;
  column-gap: 1.5rem;
}

.ps-mainmenu.ps-mainmenu--desktop .submenu__right-items.active > .menu-item__group--nochild {
  break-inside: avoid;
  -webkit-column-break-inside: avoid;
  width: 100%;
  margin: 0 0 4px;
}

.ps-mainmenu.ps-mainmenu--desktop .submenu__right-items.active .menu-item__group--nochild a {
  font-size: 0.95rem !important;
  line-height: 1.4 !important;
  margin-bottom: 0 !important;
  font-weight: 500;
}

@media (max-width: 1399.98px) {
  .ps-mainmenu.ps-mainmenu--desktop .submenu__right-items.active {
    column-count: 4;
  }
}
.ka-menu-tools {
  display: flex;
  flex-direction: column;
  gap: 0.65rem;
  margin-bottom: 1.1rem;
}

.ka-menu-search {
  position: relative;
  display: flex;
  align-items: center;
}

.ka-menu-search__ico {
  position: absolute;
  left: 0.75rem;
  font-size: 1.15rem;
  color: rgba(var(--color-primary-rgb), 0.5);
  pointer-events: none;
}

.ka-menu-search__input {
  width: min(360px, 100%);
  padding: 0.6rem 1rem 0.6rem 2.45rem;
  border: 1px solid rgba(var(--color-primary-rgb), 0.18);
  border-radius: 999px;
  font-size: 0.9rem;
  color: var(--color-primary);
  background: var(--color-white);
}

.ka-menu-search__input:focus {
  outline: none;
  border-color: var(--color-secondary);
  box-shadow: 0 0 0 3px rgba(249, 121, 2, 0.15);
}

.ka-menu-az {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
}

.ka-menu-az__btn {
  min-width: 26px;
  height: 26px;
  padding: 0 5px;
  border: 1px solid rgba(var(--color-primary-rgb), 0.14);
  background: var(--color-white);
  border-radius: 6px;
  font-size: 12px;
  font-weight: 600;
  line-height: 1;
  color: var(--color-primary);
  cursor: pointer;
  transition: border-color 0.15s ease, color 0.15s ease, background 0.15s ease;
}

.ka-menu-az__btn:hover:not(:disabled) {
  border-color: var(--color-secondary);
  color: var(--color-primary);
}

.ka-menu-az__btn.is-active {
  background: var(--color-gradient);
  border-color: transparent;
  color: var(--color-white);
}

.ka-menu-az__btn.is-active:hover:not(:disabled) {
  color: var(--color-primary);
}

.ka-menu-az__btn:disabled {
  opacity: 0.35;
  cursor: default;
}

.ka-menu-results {
  display: none;
}

.ps-mainmenu.ps-mainmenu--desktop .submenu__right.ka-searching > .submenu__right-items {
  display: none !important;
}

.ps-mainmenu.ps-mainmenu--desktop .submenu__right.ka-searching .ka-menu-results {
  display: block;
  column-count: 5;
  column-gap: 1.5rem;
}

.ps-mainmenu.ps-mainmenu--desktop .submenu__right.ka-searching .ka-menu-results > * {
  break-inside: avoid;
  -webkit-column-break-inside: avoid;
  width: 100%;
  margin: 0 0 4px;
}

.ka-menu-results .menu-item__group--nochild a {
  font-size: 0.95rem;
  line-height: 1.4;
  font-weight: 500;
}

.ka-menu-empty {
  margin: 0;
  color: rgba(var(--color-primary-rgb), 0.6);
  font-size: 0.9rem;
}

@media (max-width: 1399.98px) {
  .ps-mainmenu.ps-mainmenu--desktop .submenu__right.ka-searching .ka-menu-results {
    column-count: 4;
  }
}
#product .current-price-value,
#product .product__price-value {
  color: var(--color-secondary);
}

body.shop-mbg #product .current-price-value,
body.shop-mbg #product .product__price-value {
  color: var(--color-primary);
}

#product .product-flags {
  padding-top: 1.25rem;
}

.ka-pwd-hint {
  margin: 0.4rem 0 0;
  font-size: 0.82rem;
  line-height: 1.35;
  color: rgba(var(--color-primary-rgb), 0.62);
}

#manufacturer #main .ka-manufacturers-list {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 1rem;
  padding-left: 0;
  list-style: none;
}

#manufacturer #main .ka-manufacturers-list > .brand {
  margin: 0;
}

@media (min-width: 768px) {
  #manufacturer #main .ka-manufacturers-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (min-width: 1200px) {
  #manufacturer #main .ka-manufacturers-list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (max-width: 767.98px) {
  .footer-mascotte {
    position: static;
    display: block;
    width: 130px;
    height: auto;
    margin: 0.5rem auto 0;
    inset: auto;
  }
}
@media (max-width: 767.98px) {
  .header-menu {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 0.1rem 1rem;
  }
  .header-menu .ka-mobile-band-icons {
    order: 0;
    display: flex;
    align-items: center;
    gap: 1.35rem;
    margin: 0;
  }
  .header-menu .ka-mobile-band-icons a,
  .header-menu .ka-mobile-band-icons button,
  .header-menu .ka-mobile-band-icons .header-action,
  .header-menu .ka-mobile-band-icons svg,
  .header-menu .ka-mobile-band-icons i,
  .header-menu .ka-mobile-band-icons path {
    color: #fff;
    fill: #fff;
  }
  .header-menu .ps-mainmenu--desktop {
    order: 1 !important;
    margin-left: 0;
    flex: 0 0 auto;
  }
  .header-menu .ps-mainmenu--mobile {
    order: 2 !important;
  }
  .header-main-row {
    align-items: center;
  }
  .header-main-row .brand-block {
    flex: 0 1 auto;
    min-width: 0;
    padding-right: 10px;
  }
  .header-main-row .brand-block .logo,
  .header-main-row .brand-block img {
    max-height: 2.7rem;
    max-width: calc(100vw - 100px);
    height: auto;
    width: auto;
  }
}
.page-cms .page-header {
  text-align: center;
  margin: clamp(1.5rem, 4vw, 3rem) auto clamp(1.25rem, 3vw, 2rem);
  padding: 0 1rem;
}

.page-cms .page-header .page-title-section,
.page-cms .page-header h1 {
  display: inline-block;
  margin: 0;
  color: var(--color-primary);
  font-weight: 800;
  font-size: clamp(1.9rem, 4.5vw, 3rem);
  line-height: 1.15;
}

.page-cms .page-header .page-title-section::after,
.page-cms .page-header h1::after {
  content: "";
  display: block;
  width: 64px;
  height: 4px;
  margin: 0.75rem auto 0;
  background: var(--color-secondary);
  border-radius: 2px;
}

.ka.ka-reviews-showcase .ka-reviews-toggle {
  display: none;
}

.ka-compat-cta {
  display: none;
}

.ksc-widget.ka-compat-flash {
  animation: kaCompatFlash 1.4s ease;
}

@keyframes kaCompatFlash {
  0%, 100% {
    box-shadow: 0 0 0 0 rgba(249, 121, 2, 0);
  }
  30% {
    box-shadow: 0 0 0 4px rgba(249, 121, 2, 0.55);
  }
}
@keyframes kaCompatPulse {
  0%, 100% {
    box-shadow: 0 0 0 3px rgba(247, 165, 75, 0.28);
  }
  50% {
    box-shadow: 0 0 0 6px rgba(247, 165, 75, 0.12);
  }
}
@media (max-width: 767.98px) {
  .ka-compat-cta {
    position: relative;
    overflow: hidden;
    display: block;
    width: calc(100% - 2rem);
    margin: 1rem auto 1.25rem;
    padding: 1.4rem 1.3rem;
    border: 0;
    border-radius: 22px;
    background: linear-gradient(140deg, #0c1b33 0%, #122a4e 50%, #1a4e92 100%);
    box-shadow: 0 20px 46px -16px rgba(10, 24, 52, 0.7), 0 2px 6px rgba(0, 0, 0, 0.1);
    color: #fff;
    text-align: left;
    cursor: pointer;
    transition: transform 0.15s ease, box-shadow 0.15s ease;
  }
  .ka-compat-cta:active {
    transform: translateY(1px);
  }
  .ka-compat-cta::before {
    content: "";
    position: absolute;
    right: -55px;
    top: -75px;
    width: 220px;
    height: 220px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(38, 108, 200, 0.5) 0%, rgba(38, 108, 200, 0) 70%);
    pointer-events: none;
  }
  .ka-compat-cta::after {
    content: "";
    position: absolute;
    right: 30px;
    bottom: -110px;
    width: 200px;
    height: 200px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.05);
    pointer-events: none;
  }
  .ka-compat-cta__badge,
  .ka-compat-cta__main,
  .ka-compat-cta__foot {
    position: relative;
    z-index: 1;
  }
  .ka-compat-cta__badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 1.1rem;
    padding: 6px 12px;
    border: 1px solid rgba(247, 165, 75, 0.45);
    border-radius: 999px;
    background: rgba(242, 121, 14, 0.18);
    color: #fbd3a6;
    font-size: 0.72rem;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
  }
  .ka-compat-cta__dot {
    flex: 0 0 auto;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #f7a54b;
    box-shadow: 0 0 0 4px rgba(247, 165, 75, 0.25);
    animation: kaCompatPulse 1.8s ease-in-out infinite;
  }
  .ka-compat-cta__main {
    display: flex;
    align-items: flex-start;
    gap: 16px;
  }
  .ka-compat-cta__icon {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 58px;
    height: 58px;
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.18);
  }
  .ka-compat-cta__content {
    flex: 1 1 auto;
    min-width: 0;
  }
  .ka-compat-cta__title {
    display: block;
    margin: 0;
    color: #fff;
    font-size: 1.4rem;
    line-height: 1.12;
    font-weight: 700;
    letter-spacing: -0.015em;
  }
  .ka-compat-cta__chips {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 7px;
    margin-top: 0.7rem;
  }
  .ka-compat-cta__chip {
    display: inline-flex;
    align-items: center;
    padding: 6px 12px;
    border: 1px solid rgba(255, 255, 255, 0.16);
    border-radius: 9px;
    background: rgba(255, 255, 255, 0.12);
    color: #fff;
    font-size: 0.8rem;
    font-weight: 500;
  }
  .ka-compat-cta__chip--accent {
    border-color: rgba(247, 165, 75, 0.4);
    background: rgba(247, 165, 75, 0.2);
    color: #fbd3a6;
    font-weight: 600;
  }
  .ka-compat-cta__op {
    color: rgba(255, 255, 255, 0.55);
    font-weight: 600;
    font-size: 0.95rem;
  }
  .ka-compat-cta__foot {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem 1rem;
    margin-top: 1.4rem;
  }
  .ka-compat-cta__note {
    flex: 1 1 auto;
    color: rgba(255, 255, 255, 0.7);
    font-size: 0.8rem;
    font-weight: 400;
  }
  .ka-compat-cta__go {
    flex: 0 0 auto;
    margin-left: auto;
    display: inline-flex;
    align-items: center;
    gap: 9px;
    padding: 0.7rem 1.3rem;
    border-radius: 999px;
    background: linear-gradient(135deg, #f7a54b 0%, #f2790e 100%);
    color: #fff;
    font-size: 0.95rem;
    font-weight: 600;
    box-shadow: 0 10px 22px -8px rgba(0, 0, 0, 0.5);
  }
  .ka-compat-cta__go svg {
    flex: 0 0 auto;
  }
  .ka.ka-hero .ka-hero__media,
  .ka.ka-hero .ka-hero__image {
    display: none;
  }
  .ka.ka-hero .ka-hero__title {
    font-size: clamp(2rem, 9vw, 3rem);
    line-height: 1.12;
  }
  .ka.ka-hero .ka-hero__actions {
    margin-bottom: 2.25rem;
  }
  .ka.ka-hero.ka-hero--with-image .ka-block__inner {
    padding-bottom: 0.5rem;
  }
  .block-reassurance .row > [class*=col-],
  .block-reassurance .col-md-3 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .block-reassurance-item {
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 0.5rem;
    padding: 1rem 0.5rem;
  }
  .block-reassurance-item .img-wrapper {
    width: 48px;
    height: 48px;
    padding: 11px;
    flex: 0 0 auto;
  }
  .block-reassurance-item .img-wrapper img,
  .block-reassurance-item img,
  .block-reassurance-item svg {
    width: 100%;
    height: 100%;
    object-fit: contain;
  }
  .ka.ka-reviews-showcase.ka-reviews--has-toggle .ka-reviews-showcase__sources {
    display: none;
  }
  .ka.ka-reviews-showcase.ka-reviews--has-toggle.ka-reviews--details-open .ka-reviews-showcase__sources {
    display: grid;
  }
  .ka.ka-reviews-showcase .ka-reviews-toggle {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    justify-self: center;
    margin: 0.85rem auto 0;
    padding: 0.35rem 0.6rem;
    border: 0;
    background: none;
    color: var(--color-secondary);
    font-weight: 700;
    font-size: 0.95rem;
    text-decoration: underline;
    text-underline-offset: 3px;
    cursor: pointer;
  }
  .ka.ka-reviews-showcase .ka-reviews-toggle::after {
    content: "▾";
    text-decoration: none;
    font-size: 0.72em;
    transition: transform 0.2s ease;
  }
  .ka.ka-reviews-showcase.ka-reviews--details-open .ka-reviews-toggle::after {
    transform: rotate(180deg);
  }
  .ka.ka-split .ka-split__media,
  .ka.ka-split .ka-split__image {
    display: none;
  }
  .ka.ka-services .ka-services__card {
    min-height: 220px;
  }
  .ka.ka-services .ka-services__content {
    width: 100%;
    max-width: 100%;
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
  }
  .ka.ka-services .ka-services__name {
    margin-top: 0.5rem;
  }
  .ka:not(.ka-hero) .ka-block__header,
  .ka:not(.ka-hero) .ka-block__title,
  .ka.ka-split .ka-split__title,
  .ka.ka-services .ka-services__name {
    margin-top: 0.75rem;
  }
  .ka.ka-split .ka-split__content,
  .ka.ka-services .ka-services__content {
    padding-bottom: 1.25rem;
  }
  footer .footer__brand,
  footer .footer-logo,
  footer img {
    max-width: 100%;
    height: auto;
  }
}
@media (max-width: 767.98px) {
  .product-sheet,
  .product-sheet__hero,
  .product-sheet__hero.product-container,
  .product-sheet .container,
  .product-sheet__content,
  .product-sheet__tabs {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0;
    margin-right: 0;
  }
  .product-sheet__hero > .row {
    --bs-gutter-x: 0;
    margin-left: 0;
    margin-right: 0;
  }
  .product-sheet__gallery,
  .product-sheet__summary {
    width: 100%;
    max-width: 100%;
  }
  .product-sheet__content {
    min-width: 0;
  }
  .product-sheet__content > * {
    min-width: 0;
    max-width: 100%;
  }
  .product-sheet__tabs-nav {
    flex-wrap: wrap;
    max-width: 100%;
  }
  .product-sheet__tabs,
  .product-sheet__tabs-panel,
  .product-sheet__tabs-content {
    min-width: 0;
    max-width: 100%;
  }
  .product-sheet__tabs-content table,
  .product-sheet .rich-text table {
    display: block;
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
  }
  .module-products .products {
    grid-template-columns: minmax(0, 1fr);
  }
}
@media (max-width: 767.98px) {
  #flash-countdown {
    width: calc(100% - 2rem);
    max-width: 520px;
    margin-inline: auto;
  }
  #flash-countdown .flash-countdown__inner {
    flex-direction: column;
  }
  #flash-countdown .flash-countdown__intro,
  #flash-countdown #countdown-timer {
    width: 100%;
    box-sizing: border-box;
  }
  #flash-countdown #countdown-timer {
    justify-content: center;
  }
  #flash-countdown .flash-countdown__icon {
    align-self: center;
  }
  #flash-countdown.ka-cd-inview .flash-countdown__icon {
    animation: kaTruckIn 0.7s cubic-bezier(0.22, 1, 0.36, 1) both;
  }
}
@keyframes kaTruckIn {
  from {
    transform: translateX(-60px);
    opacity: 0;
  }
  to {
    transform: translateX(0);
    opacity: 1;
  }
}
@media (max-width: 767.98px) {
  .ka.ka-brands .ka-brands__card {
    padding: 14px 8px;
    line-height: 1.15;
    overflow-wrap: break-word;
    word-break: break-word;
    hyphens: auto;
  }
}
#blockcart-modal .modal-header {
  padding-block: 0.9rem 0.75rem;
  border-bottom: 1px solid rgba(var(--color-primary-rgb), 0.1);
}
#blockcart-modal .blockcart-modal__title {
  font-size: 1.2rem;
  gap: 0.6rem;
}
#blockcart-modal .blockcart-modal__title-icon {
  font-size: 1.5rem;
}
#blockcart-modal .modal-body {
  padding-top: 1.1rem;
  padding-bottom: 1.1rem;
}
#blockcart-modal .blockcart-modal__product .row {
  align-items: center;
}
#blockcart-modal .blockcart-modal__image {
  max-height: 120px;
  border: 1px solid rgba(var(--color-primary-rgb), 0.08);
  border-radius: var(--radius);
  background: var(--color-white);
  object-fit: contain;
}
#blockcart-modal .blockcart-modal__name {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.3;
  margin-bottom: 0.45rem;
  color: var(--text-color);
}
#blockcart-modal .blockcart-modal__price {
  font-size: 1.25rem;
  font-weight: 700;
  color: var(--color-secondary);
  margin-bottom: 0.5rem;
}
#blockcart-modal .blockcart-modal__quantity {
  display: inline-block;
  margin-bottom: 0;
  padding: 0.15rem 0.6rem;
  border-radius: 999px;
  font-size: 0.82rem;
  font-weight: 600;
  color: rgba(var(--color-primary-rgb), 0.75);
  background: rgba(var(--color-primary-rgb), 0.06);
}
#blockcart-modal .blockcart-modal__summary {
  padding: 1.25rem;
  border-radius: var(--radius);
  background: rgba(var(--color-primary-rgb), 0.035);
}
#blockcart-modal .blockcart-modal__nb-products {
  margin-bottom: 0.75rem;
  padding-bottom: 0.75rem;
  border-bottom: 1px solid rgba(var(--color-primary-rgb), 0.1);
  font-weight: 600;
  color: var(--text-color);
}
#blockcart-modal .blockcart-modal__total {
  margin-bottom: 0.35rem;
  color: rgba(var(--color-primary-rgb), 0.78);
}
#blockcart-modal .blockcart-modal__total .value {
  font-weight: 600;
  color: var(--text-color);
}
#blockcart-modal .blockcart-modal__total--bold:last-child {
  margin-top: 0.75rem;
  padding-top: 0.75rem;
  border-top: 1px solid rgba(var(--color-primary-rgb), 0.1);
  margin-bottom: 0;
  font-size: 1.1rem;
  color: var(--text-color);
}
#blockcart-modal .blockcart-modal__total--bold:last-child .value {
  color: var(--color-secondary);
}

body.shop-mbg #blockcart-modal .blockcart-modal__price,
body.shop-mbg #blockcart-modal .blockcart-modal__total--bold:last-child .value {
  color: var(--color-primary);
}

#blockcart-modal .blockcart-modal__extra {
  margin-top: 1rem !important;
}
#blockcart-modal .ucsm-block--modal {
  padding-top: 0.75rem;
}
#blockcart-modal .ucsm-block--modal .ucsm-block__title {
  margin-bottom: 0.75rem;
  font-size: 1.1rem;
}
#blockcart-modal .ucsm-block--modal .product-miniature__image-container {
  max-height: 120px;
  overflow: hidden;
}
#blockcart-modal .ucsm-block--modal .product-miniature__image {
  height: 120px;
  object-fit: contain;
  transform: none;
}
#blockcart-modal .ucsm-block--modal .product-miniature__title,
#blockcart-modal .ucsm-block--modal .product-miniature__title * {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  font-size: 0.85rem;
  line-height: 1.3;
}

#lgcomments_products.lgcomments_store_reviews {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 1rem 2.5rem;
}
#lgcomments_products.lgcomments_store_reviews .lgcomment_summary {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.25rem;
  margin-bottom: 1.75rem;
}
#lgcomments_products.lgcomments_store_reviews .lgcomment_summary .row {
  display: contents;
}
#lgcomments_products.lgcomments_store_reviews .lgcomment_summary .row > [class*=col-] {
  float: none;
  width: auto;
  max-width: none;
  background: var(--color-white);
  border: 1px solid rgba(var(--color-primary-rgb), 0.1);
  border-radius: 1rem;
  padding: 1.4rem 1.5rem;
  box-shadow: 0 10px 26px rgba(var(--color-primary-rgb), 0.06);
}
#lgcomments_products.lgcomments_store_reviews .lgcomment_summary table {
  width: 100%;
  border-collapse: collapse;
}
#lgcomments_products.lgcomments_store_reviews .lgcomment_summary td,
#lgcomments_products.lgcomments_store_reviews .lgcomment_summary th {
  padding: 0.3rem 0.45rem;
  vertical-align: middle;
  border: 0;
}
#lgcomments_products.lgcomments_store_reviews .lgcomment_summary .title {
  color: var(--color-primary);
  font-weight: 800;
  font-size: 1.05rem;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  margin-bottom: 0.6rem;
}
#lgcomments_products.lgcomments_store_reviews .lgcomment_summary .small {
  margin: 0;
  font-size: 0.92rem;
  color: #4d5d72;
}
#lgcomments_products.lgcomments_store_reviews .lgcomment_summary .small b {
  color: var(--color-primary);
}
#lgcomments_products.lgcomments_store_reviews .lgcomment_summary .logo {
  max-width: 90px;
  height: auto;
}
#lgcomments_products.lgcomments_store_reviews .lgcomment_summary a {
  display: inline-flex;
  align-items: center;
  gap: 0.3rem;
  text-decoration: none;
  color: var(--color-primary);
  transition: opacity 0.15s ease;
}
#lgcomments_products.lgcomments_store_reviews .lgcomment_summary a:hover {
  opacity: 0.7;
}
#lgcomments_products.lgcomments_store_reviews .lgcomment_button {
  text-align: center;
  margin: 0 0 1.75rem;
}
#lgcomments_products.lgcomments_store_reviews .lgcomment_button a,
#lgcomments_products.lgcomments_store_reviews .lgcomment_button .btn {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  background: var(--color-gradient);
  color: var(--color-white);
  font-weight: 700;
  padding: 0.85rem 1.85rem;
  border-radius: 999px;
  border: 0;
  box-shadow: 0 12px 24px rgba(var(--color-primary-rgb), 0.12);
  text-decoration: none;
}
#lgcomments_products.lgcomments_store_reviews .lgcomment_button a:hover,
#lgcomments_products.lgcomments_store_reviews .lgcomment_button .btn:hover {
  background: var(--color-gradient-hover);
}
#lgcomments_products.lgcomments_store_reviews .lgcomment_reviews .row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.25rem;
  align-items: start;
  margin: 0;
}
#lgcomments_products.lgcomments_store_reviews .lgcomment_reviews .row > [class*=col-] {
  float: none;
  width: auto;
  max-width: none;
  padding: 0;
}
#lgcomments_products.lgcomments_store_reviews .lgcomment_reviews .lgcomment_linebreak {
  display: none;
}
#lgcomments_products.lgcomments_store_reviews .lgcomment_review.lgcomment_block {
  height: 100%;
  background: var(--color-white);
  border: 1px solid rgba(var(--color-primary-rgb), 0.1);
  border-radius: 1rem;
  padding: 1.4rem 1.5rem;
  box-shadow: 0 10px 26px rgba(var(--color-primary-rgb), 0.06);
}
#lgcomments_products.lgcomments_store_reviews .lgcomment_review.lgcomment_block .title {
  color: var(--color-primary);
  font-weight: 800;
  font-size: 1.02rem;
  margin-bottom: 0.4rem;
}
#lgcomments_products.lgcomments_store_reviews .lgcomment_review.lgcomment_block .rating_img {
  margin-bottom: 0.6rem;
}
#lgcomments_products.lgcomments_store_reviews .lgcomment_review.lgcomment_block .comment {
  color: #3a4a5e;
  line-height: 1.55;
}
#lgcomments_products.lgcomments_store_reviews .lgcomment_review.lgcomment_block .credits {
  margin-top: 1rem;
  padding-top: 0.75rem;
  border-top: 1px solid rgba(var(--color-primary-rgb), 0.08);
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 0.75rem;
}
#lgcomments_products.lgcomments_store_reviews .lgcomment_review.lgcomment_block .credits .name {
  color: var(--color-primary);
  font-weight: 700;
}
#lgcomments_products.lgcomments_store_reviews .lgcomment_review.lgcomment_block .credits .date {
  color: #8090a2;
  font-size: 0.85rem;
  white-space: nowrap;
}
#lgcomments_products.lgcomments_store_reviews .lgcomment_review.lgcomment_block .answer {
  margin-top: 0.85rem;
  padding: 0.8rem 1rem 0.85rem 1.05rem;
  background: rgba(var(--color-secondary-rgb), 0.07);
  border-left: 3px solid var(--color-secondary);
  border-radius: 0.6rem;
  font-size: 0.9rem;
  color: #3a4a5e;
}
#lgcomments_products.lgcomments_store_reviews .lgcomment_pagination {
  margin-top: 1.75rem;
}
#lgcomments_products.lgcomments_store_reviews .lgcomment_pagination nav.pagination,
#lgcomments_products.lgcomments_store_reviews .lgcomment_pagination .pagination {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem 1rem;
  padding-top: 1.25rem;
  border-top: 1px solid rgba(var(--color-primary-rgb), 0.08);
  margin: 0;
}
#lgcomments_products.lgcomments_store_reviews .lgcomment_pagination [class*=col-] {
  float: none;
  width: auto;
  max-width: none;
  margin: 0;
  padding: 0;
}
#lgcomments_products.lgcomments_store_reviews .lgcomment_pagination [class*=col-md-4],
#lgcomments_products.lgcomments_store_reviews .lgcomment_pagination [class*=col-md-6] {
  color: #4d5d72;
  font-size: 0.9rem;
}
#lgcomments_products.lgcomments_store_reviews .lgcomment_pagination [class*=col-md-6] {
  margin-left: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 0.35rem;
}
#lgcomments_products.lgcomments_store_reviews .lgcomment_pagination .page-list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.35rem;
  list-style: none;
  margin: 0;
  padding: 0;
}
#lgcomments_products.lgcomments_store_reviews .lgcomment_pagination .page-list li {
  list-style: none;
  margin: 0;
  padding: 0;
}
#lgcomments_products.lgcomments_store_reviews .lgcomment_pagination .page-list .spacer {
  display: inline-flex;
  align-items: flex-end;
  padding: 0 0.25rem;
  color: #8090a2;
}
#lgcomments_products.lgcomments_store_reviews .lgcomment_pagination .page-list .material-icons {
  font-size: 1.1rem;
}
#lgcomments_products.lgcomments_store_reviews .lgcomment_pagination a,
#lgcomments_products.lgcomments_store_reviews .lgcomment_pagination .page-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2.4rem;
  height: 2.4rem;
  padding: 0 0.65rem;
  border: 1px solid rgba(var(--color-primary-rgb), 0.15);
  border-radius: 0.5rem;
  color: var(--color-primary);
  font-weight: 600;
  text-decoration: none;
  transition: border-color 0.15s ease, color 0.15s ease, background 0.15s ease;
}
#lgcomments_products.lgcomments_store_reviews .lgcomment_pagination a:hover,
#lgcomments_products.lgcomments_store_reviews .lgcomment_pagination .page-link:hover {
  border-color: var(--color-secondary);
  color: var(--color-secondary);
}
#lgcomments_products.lgcomments_store_reviews .lgcomment_pagination a.disabled {
  opacity: 0.4;
  pointer-events: none;
}
#lgcomments_products.lgcomments_store_reviews .lgcomment_pagination .active a,
#lgcomments_products.lgcomments_store_reviews .lgcomment_pagination a.active,
#lgcomments_products.lgcomments_store_reviews .lgcomment_pagination .current a,
#lgcomments_products.lgcomments_store_reviews .lgcomment_pagination .current > span {
  background: var(--color-gradient);
  color: var(--color-white);
  border-color: transparent;
}
#lgcomments_products.lgcomments_store_reviews .lgcomments_law_block {
  margin-top: 1.75rem;
  font-size: 0.8rem;
  color: #8090a2;
  text-align: center;
}

@media (max-width: 767.98px) {
  #lgcomments_products.lgcomments_store_reviews .lgcomment_summary,
  #lgcomments_products.lgcomments_store_reviews .lgcomment_reviews .row {
    grid-template-columns: 1fr;
  }
  #lgcomments_products.lgcomments_store_reviews .lgcomment_pagination nav.pagination {
    justify-content: center;
  }
}
.product-sheet__tab-pane .lgcomment_button.btn,
.product-sheet__tab-pane .lgcomment_button {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  background: var(--color-gradient);
  color: var(--color-white);
  font-weight: 700;
  padding: 0.8rem 1.7rem;
  border-radius: 999px;
  border: 0;
  box-shadow: 0 12px 24px rgba(var(--color-primary-rgb), 0.12);
}
.product-sheet__tab-pane .lgcomment_button.btn:hover,
.product-sheet__tab-pane .lgcomment_button:hover {
  background: var(--color-gradient-hover);
}
.product-sheet__tab-pane .commentfiltertitle {
  color: var(--color-primary);
  font-weight: 700;
}
.product-sheet__tab-pane .commentfilter {
  color: #4d5d72;
}
.product-sheet__tab-pane .productComment {
  background: var(--color-white);
  border: 1px solid rgba(var(--color-primary-rgb), 0.1);
  border-radius: 1rem;
  padding: 1.25rem 1.4rem;
  margin-bottom: 1rem;
  box-shadow: 0 8px 22px rgba(var(--color-primary-rgb), 0.05);
}
.product-sheet__tab-pane .productComment .info-block {
  color: var(--color-primary);
  font-weight: 700;
}
.product-sheet__tab-pane .productComment .content-block.comment {
  color: #3a4a5e;
  line-height: 1.55;
  margin-top: 0.4rem;
}
.product-sheet__tab-pane .productComment .answer {
  margin-top: 0.85rem;
  padding: 0.8rem 1rem 0.85rem 1.05rem;
  background: rgba(var(--color-secondary-rgb), 0.07);
  border-left: 3px solid var(--color-secondary);
  border-radius: 0.6rem;
  font-size: 0.92rem;
  color: #3a4a5e;
}

/* Réponses du vendeur — label + texte (page avis + onglet fiche produit) */
.lgcomment_review .answer,
.productComment .answer {
  display: block;
}

.ka-answer__label {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  font-weight: 800;
  font-size: 0.8rem;
  text-transform: uppercase;
  letter-spacing: 0.02em;
  color: var(--color-secondary);
  margin-bottom: 0.3rem;
}

.ka-answer__label::before {
  content: "↳";
  font-size: 1.05em;
  line-height: 1;
}

.ka-answer__text {
  display: block;
  line-height: 1.5;
}

.social-login {
  margin: 1.5rem 0;
}
.social-login__label {
  font-size: 0.85rem;
  color: #888;
  margin-bottom: 1rem;
  text-align: center;
  position: relative;
}
.social-login__label::before, .social-login__label::after {
  content: "";
  display: inline-block;
  width: 25%;
  height: 1px;
  background: #ddd;
  vertical-align: middle;
  margin: 0 0.75rem;
}
.social-login #output {
  list-style: none;
  padding: 0;
  margin: 0 auto;
  max-width: 360px;
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
}
.social-login #output li {
  width: 100%;
}
.social-login #output {
  list-style: none;
  padding: 0;
  margin: 0 auto;
  max-width: 360px;
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
}
.social-login #output li {
  width: 100%;
}
.social-login .kbazm-social.kbazm-pill {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.6rem;
  width: 100%;
  padding: 0.65rem 1rem;
  border-radius: 8px;
  border: 1px solid #ddd;
  background: #fff;
  color: #222 !important;
  font-weight: 500;
  font-size: 0.95rem;
  text-decoration: none;
  transition: background 0.2s, border-color 0.2s;
}
.social-login .kbazm-social.kbazm-pill:hover {
  background: #f7f7f7;
  border-color: #bbb;
}
.social-login .kbazm-social.kbazm-pill .kb-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  font-size: 18px;
  line-height: 1;
}
.social-login .kbazm-social.kbazm-pill .kb-text {
  flex: 0 0 auto;
  text-align: center;
}
.social-login .kbazm-social.kbazm-pill.kbazm-facebook .kb-icon i {
  color: #1877f2;
}
.social-login .kbazm-social.kbazm-pill.kbazm-paypal .kb-icon i {
  color: #003087;
}
.social-login .kbazm-social.kbazm-pill.kbazm-google .kb-icon i {
  display: none;
}
.social-login .kbazm-social.kbazm-pill.kbazm-google .kb-icon {
  background-image: url("/themes/Kagency/assets/img/google-g.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 18px 18px;
}

/* Réponses du vendeur — label + texte (page avis + onglet fiche produit) */
.lgcomment_review .answer,
.productComment .answer {
  display: block;
}

.ka-answer__label {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  font-weight: 800;
  font-size: 0.8rem;
  text-transform: uppercase;
  letter-spacing: 0.02em;
  color: var(--color-secondary);
  margin-bottom: 0.3rem;
}

.ka-answer__label::before {
  content: "↳";
  font-size: 1.05em;
  line-height: 1;
}

.ka-answer__text {
  display: block;
  line-height: 1.5;
}

/* ============================================================== *
 *  Page avis boutique — carte "Note globale" + répartition       *
 *  (refonte charte, données site uniquement)                     *
 * ============================================================== */
#lgcomments_products.lgcomments_store_reviews .lgcomment_summary.ka-srev {
  display: grid;
  grid-template-columns: minmax(210px, 0.85fr) minmax(300px, 1.6fr);
  gap: 1.25rem;
  align-items: stretch;
  margin-bottom: 1.75rem;
}
#lgcomments_products.lgcomments_store_reviews .ka-srev__score {
  background: linear-gradient(165deg, var(--color-secondary) 0%, #ffb267 100%);
  border-radius: 1.5rem;
  color: #fff;
  padding: 2rem 1.4rem;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  box-shadow: 0 18px 40px rgba(var(--color-secondary-rgb), 0.22);
}
#lgcomments_products.lgcomments_store_reviews .ka-srev__score-label {
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  font-size: 0.88rem;
  margin-bottom: 0.4rem;
  opacity: 0.95;
}
#lgcomments_products.lgcomments_store_reviews .ka-srev__score-value {
  font-size: clamp(2.8rem, 5vw, 4.4rem);
  font-weight: 800;
  line-height: 0.9;
}
#lgcomments_products.lgcomments_store_reviews .ka-srev__score-value span {
  font-size: 0.4em;
  font-weight: 700;
  opacity: 0.9;
}
#lgcomments_products.lgcomments_store_reviews .ka-srev__score-stars {
  position: relative;
  display: inline-block;
  font-size: 1.45rem;
  line-height: 1;
  margin: 0.75rem auto 0.85rem;
  letter-spacing: 0.12em;
}
#lgcomments_products.lgcomments_store_reviews .ka-srev__score-stars::before {
  content: "★★★★★";
  color: rgba(255, 255, 255, 0.4);
}
#lgcomments_products.lgcomments_store_reviews .ka-srev__score-stars::after {
  content: "★★★★★";
  color: #fff;
  position: absolute;
  left: 0;
  top: 0;
  width: var(--ka-rate, 100%);
  overflow: hidden;
  white-space: nowrap;
}
#lgcomments_products.lgcomments_store_reviews .ka-srev__score-base {
  font-size: 0.96rem;
  line-height: 1.4;
  margin: 0;
}
#lgcomments_products.lgcomments_store_reviews .ka-srev__score-base b {
  font-weight: 800;
}
#lgcomments_products.lgcomments_store_reviews .ka-srev__breakdown {
  background: var(--color-white);
  border: 1px solid rgba(var(--color-primary-rgb), 0.1);
  border-radius: 1.25rem;
  padding: 1.35rem 1.6rem;
  box-shadow: 0 10px 26px rgba(var(--color-primary-rgb), 0.06);
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 0.5rem;
}
#lgcomments_products.lgcomments_store_reviews .kbazm-social.kbazm-pill {
  display: flex;
  align-items: center;
  width: 100%;
  padding: 0.65rem 1rem;
  border-radius: 50px;
  border: 1px solid #ddd;
  background: #fff;
  color: #222 !important;
  font-weight: 500;
  font-size: 0.95rem;
  text-decoration: none;
  transition: background 0.2s, border-color 0.2s;
}
#lgcomments_products.lgcomments_store_reviews .kbazm-social.kbazm-pill:hover {
  background: #f5f5f5;
  border-color: #bbb;
}
#lgcomments_products.lgcomments_store_reviews .kbazm-social.kbazm-pill .kb-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  margin-right: 0.75rem;
  flex-shrink: 0;
}
#lgcomments_products.lgcomments_store_reviews .kbazm-social.kbazm-pill .kb-text {
  flex: 1;
  text-align: center;
}
#lgcomments_products.lgcomments_store_reviews .kbazm-social.kbazm-pill.kbazm-facebook .kb-icon {
  background: #1877f2;
  color: #fff;
}
#lgcomments_products.lgcomments_store_reviews .kbazm-social.kbazm-pill.kbazm-google .kb-icon {
  background: #fff;
  border: 1px solid #ddd;
}
#lgcomments_products.lgcomments_store_reviews .ka-srev__breakdown-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  margin-bottom: 0.35rem;
}
#lgcomments_products.lgcomments_store_reviews .ka-srev__breakdown-title {
  color: var(--color-primary);
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  font-size: 1rem;
}
#lgcomments_products.lgcomments_store_reviews .ka-srev__breakdown-count {
  color: var(--color-secondary);
  font-weight: 800;
}
#lgcomments_products.lgcomments_store_reviews .ka-srev__reset {
  font-size: 0.82rem;
  color: #67768a;
  text-decoration: none;
  white-space: nowrap;
}
#lgcomments_products.lgcomments_store_reviews .ka-srev__reset:hover {
  color: var(--color-secondary);
  text-decoration: underline;
}
#lgcomments_products.lgcomments_store_reviews .ka-srev__bar-row {
  display: flex;
  align-items: center;
  gap: 0.7rem;
  text-decoration: none;
  color: var(--color-primary);
}
#lgcomments_products.lgcomments_store_reviews .ka-srev__bar-row:hover .ka-srev__bar > span {
  filter: brightness(0.95);
}
#lgcomments_products.lgcomments_store_reviews .ka-srev__bar-row.is-empty {
  opacity: 0.4;
  pointer-events: none;
}
#lgcomments_products.lgcomments_store_reviews .ka-srev__bar-label {
  flex: 0 0 2.1rem;
  font-weight: 700;
  font-size: 0.9rem;
  display: inline-flex;
  align-items: center;
  gap: 0.1rem;
  color: var(--color-primary);
}
#lgcomments_products.lgcomments_store_reviews .ka-srev__bar-label i {
  color: var(--color-secondary);
  font-style: normal;
  font-size: 0.85em;
}
#lgcomments_products.lgcomments_store_reviews .ka-srev__bar {
  flex: 1 1 auto;
  height: 0.6rem;
  background: rgba(var(--color-primary-rgb), 0.08);
  border-radius: 999px;
  overflow: hidden;
}
#lgcomments_products.lgcomments_store_reviews .ka-srev__bar > span {
  display: block;
  height: 100%;
  background: var(--color-secondary);
  border-radius: 999px;
}
#lgcomments_products.lgcomments_store_reviews .ka-srev__bar-n {
  flex: 0 0 auto;
  min-width: 2.1rem;
  text-align: right;
  font-weight: 700;
  font-size: 0.88rem;
  color: #4d5d72;
}
@media (max-width: 767.98px) {
  #lgcomments_products.lgcomments_store_reviews .lgcomment_summary.ka-srev {
    grid-template-columns: 1fr;
  }
}

/* Encart avis sous le prix (fiche produit) */
.comment_anchor_content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.2rem;
}

.comment_anchor_content .comment_anchor_summary {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
}

.ka-rev-count {
  font-weight: 700;
  color: var(--color-primary);
  font-size: 0.95rem;
}

.ka-rev-count--empty {
  color: #67768a;
  font-weight: 600;
}

.ka-read-reviews,
a.comment_anchor.ka-read-reviews {
  display: inline-block;
  margin-top: 0.1rem;
  color: var(--color-secondary);
  font-weight: 700;
  text-decoration: underline;
  cursor: pointer;
  font-size: 0.95rem;
  background: none;
  border: 0;
  padding: 0;
}

.ka-read-reviews:hover,
a.comment_anchor.ka-read-reviews:hover {
  color: var(--color-secondary-hover);
}

/* Compteur d'avis sur la vignette listing (lgcomments) */
.stars-container .ka-list-review-count {
  margin-left: 0.3rem;
  font-size: 0.82rem;
  color: #67768a;
  font-weight: 600;
  vertical-align: middle;
}

/* ============================================================== *
 *  Page avis boutique — carte "Note globale" + répartition       *
 *  (refonte charte, données site uniquement)                     *
 * ============================================================== */
#lgcomments_products.lgcomments_store_reviews .lgcomment_summary.ka-srev {
  display: grid;
  grid-template-columns: minmax(210px, 0.85fr) minmax(300px, 1.6fr);
  gap: 1.25rem;
  align-items: stretch;
  margin-bottom: 1.75rem;
}
#lgcomments_products.lgcomments_store_reviews .ka-srev__score {
  background: linear-gradient(165deg, var(--color-secondary) 0%, #ffb267 100%);
  border-radius: 1.5rem;
  color: #fff;
  padding: 2rem 1.4rem;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  box-shadow: 0 18px 40px rgba(var(--color-secondary-rgb), 0.22);
}
#lgcomments_products.lgcomments_store_reviews .ka-srev__score-label {
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  font-size: 0.88rem;
  margin-bottom: 0.4rem;
  opacity: 0.95;
}
#lgcomments_products.lgcomments_store_reviews .ka-srev__score-value {
  font-size: clamp(2.8rem, 5vw, 4.4rem);
  font-weight: 800;
  line-height: 0.9;
}
#lgcomments_products.lgcomments_store_reviews .ka-srev__score-value span {
  font-size: 0.4em;
  font-weight: 700;
  opacity: 0.9;
}
#lgcomments_products.lgcomments_store_reviews .ka-srev__score-stars {
  position: relative;
  display: inline-block;
  font-size: 1.45rem;
  line-height: 1;
  margin: 0.75rem auto 0.85rem;
  letter-spacing: 0.12em;
}
#lgcomments_products.lgcomments_store_reviews .ka-srev__score-stars::before {
  content: "★★★★★";
  color: rgba(255, 255, 255, 0.4);
}
#lgcomments_products.lgcomments_store_reviews .ka-srev__score-stars::after {
  content: "★★★★★";
  color: #fff;
  position: absolute;
  left: 0;
  top: 0;
  width: var(--ka-rate, 100%);
  overflow: hidden;
  white-space: nowrap;
}
#lgcomments_products.lgcomments_store_reviews .ka-srev__score-base {
  font-size: 0.96rem;
  line-height: 1.4;
  margin: 0;
}
#lgcomments_products.lgcomments_store_reviews .ka-srev__score-base b {
  font-weight: 800;
}
#lgcomments_products.lgcomments_store_reviews .ka-srev__breakdown {
  background: var(--color-white);
  border: 1px solid rgba(var(--color-primary-rgb), 0.1);
  border-radius: 1.25rem;
  padding: 1.35rem 1.6rem;
  box-shadow: 0 10px 26px rgba(var(--color-primary-rgb), 0.06);
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 0.5rem;
}
#lgcomments_products.lgcomments_store_reviews .ka-srev__breakdown-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  margin-bottom: 0.35rem;
}
#lgcomments_products.lgcomments_store_reviews .ka-srev__breakdown-title {
  color: var(--color-primary);
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  font-size: 1rem;
}
#lgcomments_products.lgcomments_store_reviews .ka-srev__breakdown-count {
  color: var(--color-secondary);
  font-weight: 800;
}
#lgcomments_products.lgcomments_store_reviews .ka-srev__reset {
  font-size: 0.82rem;
  color: #67768a;
  text-decoration: none;
  white-space: nowrap;
}
#lgcomments_products.lgcomments_store_reviews .ka-srev__reset:hover {
  color: var(--color-secondary);
  text-decoration: underline;
}
#lgcomments_products.lgcomments_store_reviews .ka-srev__bar-row {
  display: flex;
  align-items: center;
  gap: 0.7rem;
  text-decoration: none;
  color: var(--color-primary);
}
#lgcomments_products.lgcomments_store_reviews .ka-srev__bar-row:hover .ka-srev__bar > span {
  filter: brightness(0.95);
}
#lgcomments_products.lgcomments_store_reviews .ka-srev__bar-row.is-empty {
  opacity: 0.4;
  pointer-events: none;
}
#lgcomments_products.lgcomments_store_reviews .ka-srev__bar-label {
  flex: 0 0 2.1rem;
  font-weight: 700;
  font-size: 0.9rem;
  display: inline-flex;
  align-items: center;
  gap: 0.1rem;
  color: var(--color-primary);
}
#lgcomments_products.lgcomments_store_reviews .ka-srev__bar-label i {
  color: var(--color-secondary);
  font-style: normal;
  font-size: 0.85em;
}
#lgcomments_products.lgcomments_store_reviews .ka-srev__bar {
  flex: 1 1 auto;
  height: 0.6rem;
  background: rgba(var(--color-primary-rgb), 0.08);
  border-radius: 999px;
  overflow: hidden;
}
#lgcomments_products.lgcomments_store_reviews .ka-srev__bar > span {
  display: block;
  height: 100%;
  background: var(--color-secondary);
  border-radius: 999px;
}
#lgcomments_products.lgcomments_store_reviews .ka-srev__bar-n {
  flex: 0 0 auto;
  min-width: 2.1rem;
  text-align: right;
  font-weight: 700;
  font-size: 0.88rem;
  color: #4d5d72;
}
@media (max-width: 767.98px) {
  #lgcomments_products.lgcomments_store_reviews .lgcomment_summary.ka-srev {
    grid-template-columns: 1fr;
  }
}

/* Encart avis sous le prix (fiche produit) */
.comment_anchor_content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.2rem;
}

.comment_anchor_content .comment_anchor_summary {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
}

.ka-rev-count {
  font-weight: 700;
  color: var(--color-primary);
  font-size: 0.95rem;
}

.ka-rev-count--empty {
  color: #67768a;
  font-weight: 600;
}

.ka-read-reviews,
a.comment_anchor.ka-read-reviews {
  display: inline-block;
  margin-top: 0.1rem;
  color: var(--color-secondary);
  font-weight: 700;
  text-decoration: underline;
  cursor: pointer;
  font-size: 0.95rem;
  background: none;
  border: 0;
  padding: 0;
}

.ka-read-reviews:hover,
a.comment_anchor.ka-read-reviews:hover {
  color: var(--color-secondary-hover);
}

/* Compteur d'avis sur la vignette listing (lgcomments) */
.stars-container .ka-list-review-count {
  margin-left: 0.3rem;
  font-size: 0.82rem;
  color: #67768a;
  font-weight: 600;
  vertical-align: middle;
}

/* ============================================================== *
 *  Fiche produit — filtres des avis (lgcomments) en pastilles    *
 * ============================================================== */
#lgcomment .lgcomment_summary {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
  padding: 0 0 1.05rem;
  margin: 0 0 1.25rem;
  border-bottom: 1px solid rgba(var(--color-primary-rgb), 0.1);
}
#lgcomment .commentfiltertitle {
  flex: 0 0 100%;
  margin: 0 0 0.15rem;
}
#lgcomment .commentfiltertitle span {
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  font-size: 0.9rem;
  color: var(--color-primary);
}
#lgcomment .clearfix {
  display: none;
}
#lgcomment .commentfilter {
  margin: 0;
}
#lgcomment .commentfilter > span {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.36rem 0.72rem;
  background: var(--color-white);
  border: 1px solid rgba(var(--color-primary-rgb), 0.16);
  border-radius: 999px;
  font-size: 0.85rem;
  font-weight: 700;
  color: #4d5d72;
  cursor: pointer;
  white-space: nowrap;
  transition: border-color 0.15s ease, background 0.15s ease, color 0.15s ease;
}
#lgcomment .commentfilter > span:hover {
  border-color: var(--color-secondary);
  background: rgba(var(--color-secondary-rgb), 0.07);
  color: var(--color-primary);
}
#lgcomment .commentfilter > span[style*=pointer-events] {
  opacity: 0.4;
}
#lgcomment .commentfilter.active > span,
#lgcomment .commentfilter.selected > span,
#lgcomment .commentfilter.current > span {
  border-color: var(--color-secondary);
  background: var(--color-secondary);
  color: #fff;
}
#lgcomment .commentfilter img {
  height: 0.85rem;
  width: auto;
  display: block;
}
#lgcomment .commentfilterreset {
  margin-left: auto;
}
#lgcomment .commentfilterreset span {
  display: inline-flex;
  align-items: center;
  gap: 0.3rem;
  cursor: pointer;
  color: var(--color-secondary);
  font-weight: 700;
  font-size: 0.85rem;
  text-decoration: underline;
}
#lgcomment .commentfilterreset span:hover {
  color: var(--color-secondary-hover);
}

/* ============================================================== *
 *  Bandeau du haut .top-strip : défilement continu sur mobile    *
 * ============================================================== */
@media (max-width: 767.98px) {
  .top-strip.ka-strip-marquee .top-strip-row {
    overflow: hidden;
    position: relative;
    -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 6%, #000 94%, transparent 100%);
    mask-image: linear-gradient(90deg, transparent 0, #000 6%, #000 94%, transparent 100%);
  }
  .top-strip.ka-strip-marquee .ka-strip-track {
    display: flex;
    width: max-content;
    align-items: center;
    gap: 2.75rem;
    padding-left: 2.75rem;
    /* défile puis s'arrête après 2 passages */
    animation: kaStripScroll 16s linear 2 both;
  }
  .top-strip.ka-strip-marquee .top-strip-item {
    flex: 0 0 auto;
    white-space: nowrap;
  }
  @keyframes kaStripScroll {
    from {
      transform: translateX(0);
    }
    to {
      transform: translateX(-50%);
    }
  }
}
/* ============================================================== *
 *  Fiche produit : compteur livraison express (compact)          *
 * ============================================================== */
.product-sheet__countdown {
  margin-top: 1.25rem;
}

.product-sheet__countdown #flash-countdown {
  width: 100%;
  margin: 0;
}

/* Carte EMPILÉE : intro (bleu) au-dessus, timer (orange) en dessous.
   On neutralise la disposition horizontale du home (largeur 52% + biseau)
   qui se chevauche dans la colonne produit, plus étroite. */
.product-sheet__countdown .flash-countdown__inner {
  flex-direction: column;
  overflow: hidden;
  gap: 0;
}

.product-sheet__countdown .flash-countdown__intro {
  width: 100%;
  justify-content: center;
  padding: 0.85rem 1.1rem;
  border-radius: 0.9rem 0.9rem 0 0;
}

.product-sheet__countdown .flash-countdown__intro::after {
  display: none; /* pas de biseau en disposition empilée */
}

.product-sheet__countdown .flash-countdown__timer {
  width: 100%;
  justify-content: center;
  padding: 0.7rem 1rem 0.85rem;
  border-radius: 0 0 0.9rem 0.9rem;
}

.product-sheet__countdown .flash-countdown__mascot,
.product-sheet__countdown .flash-countdown__subtitle {
  display: none; /* place limitée sous la galerie */
}

/* typographie compacte adaptée à la colonne produit */
.product-sheet__countdown .flash-countdown__label {
  font-size: 1rem;
}

.product-sheet__countdown .flash-countdown__value {
  font-size: 1.7rem;
}

.product-sheet__countdown .flash-countdown__separator {
  font-size: 1.4rem;
  height: 1.7rem;
}

.product-sheet__countdown .flash-countdown__unit-label {
  font-size: 0.72rem;
}

.product-sheet__countdown .flash-countdown__icon svg {
  width: 34px;
  height: 34px;
}

/* ============================================================== *
 *  MBG mobile : lisibilité du slider "triangles" (texte+bouton)  *
 * ============================================================== */
@media (max-width: 767.98px) {
  body.shop-mbg .ka-triangles-slider__content {
    background: rgba(255, 255, 255, 0.86);
    -webkit-backdrop-filter: blur(2px);
    backdrop-filter: blur(2px);
    border-radius: 14px;
    padding: 1.05rem 1.1rem 1.2rem;
    box-shadow: 0 10px 26px rgba(9, 27, 44, 0.12);
  }
  body.shop-mbg .ka-triangles-slider__content :where(h1, h2, h3, h4, p, span, li, strong):not(.btn):not([class*=btn]) {
    color: #091b2c;
  }
}
/* ============================================================== *
 *  Footer : logo par boutique (FBG = blanc dédié, MBG = header)  *
 * ============================================================== */
.footer-logo img {
  max-width: 100%;
  height: auto;
}

/* ============================================================== *
 *  Catégories : empilées (sans carousel) sur mobile              *
 * ============================================================== */
@media (max-width: 767.98px) {
  .ka.ka-categories .ka-categories__viewport {
    overflow: visible !important;
  }
  .ka.ka-categories .ka-categories__track {
    flex-direction: column;
    gap: 1rem;
    transform: none !important; /* neutralise un éventuel Embla déjà initialisé */
  }
  .ka.ka-categories .ka-categories__slide {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    flex: 0 0 auto !important;
    margin: 0 !important;
  }
  .ka.ka-categories .ka-categories__control {
    display: none !important;
  }
}
/* ── Pastille « Livraison offerte » animée sur le hero ─────────────────────── */
.fbg-ship-badge {
  position: absolute;
  top: clamp(12px, 2.2vw, 26px);
  right: clamp(12px, 3vw, 46px);
  z-index: 3;
  width: 132px;
  height: 132px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  color: #fff;
  border-radius: 50%;
  background: var(--color-secondary);
  box-shadow: 0 10px 24px rgba(13, 34, 56, 0.28);
  overflow: hidden;
  pointer-events: none;
  animation: fbgShipPop 0.6s cubic-bezier(0.18, 0.89, 0.32, 1.28) both, fbgShipFloat 4s ease-in-out 1s infinite;
}

.shop-mbg .fbg-ship-badge {
  display: none;
}

.fbg-ship-badge__ring {
  position: absolute;
  inset: 6px;
  border-radius: 50%;
  border: 2px dashed rgba(255, 255, 255, 0.55);
  animation: fbgShipSpin 14s linear infinite;
}

.fbg-ship-badge__content {
  position: relative;
  z-index: 1;
  padding: 0 6px;
}

.fbg-ship-badge__free {
  display: block;
  font-weight: 800;
  font-size: 15px;
  line-height: 1.05;
  text-transform: uppercase;
  letter-spacing: 0.02em;
}

.fbg-ship-badge__from {
  display: block;
  margin-top: 3px;
  font-weight: 600;
  font-size: 11px;
  opacity: 0.95;
}

.fbg-ship-badge__road {
  position: relative;
  z-index: 1;
  width: 70px;
  height: 18px;
  margin-top: 4px;
  overflow: hidden;
}

.fbg-ship-badge__road::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 2px;
  height: 2px;
  background: repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.7) 0 6px, transparent 6px 12px);
  animation: fbgShipRoad 0.5s linear infinite;
}

.fbg-ship-badge__truck {
  position: absolute;
  bottom: 2px;
  left: 0;
  width: 30px;
  height: auto;
  animation: fbgShipDrive 3.2s linear infinite;
}

.fbg-ship-badge__wheel {
  transform-origin: 0 0;
  animation: fbgShipWheel 0.5s linear infinite;
}

@keyframes fbgShipDrive {
  0% {
    transform: translateX(-140%);
  }
  50% {
    transform: translateX(18%) translateY(-0.5px);
  }
  100% {
    transform: translateX(160%);
  }
}
@keyframes fbgShipWheel {
  to {
    transform: rotate(360deg);
  }
}
@keyframes fbgShipSpin {
  to {
    transform: rotate(360deg);
  }
}
@keyframes fbgShipRoad {
  to {
    background-position: -12px 0;
  }
}
@keyframes fbgShipPop {
  0% {
    transform: scale(0) rotate(-12deg);
    opacity: 0;
  }
  100% {
    transform: scale(1) rotate(0);
    opacity: 1;
  }
}
@keyframes fbgShipFloat {
  0%, 100% {
    translate: 0 0;
  }
  50% {
    translate: 0 -4px;
  }
}
/* Mobile : pastille réduite, toujours affichée en mode graphique */
@media (max-width: 767px) {
  .fbg-ship-badge {
    width: 92px;
    height: 92px;
    top: 8px;
    right: 8px;
    box-shadow: 0 6px 16px rgba(13, 34, 56, 0.3);
  }
  .fbg-ship-badge__ring {
    inset: 4px;
  }
  .fbg-ship-badge__free {
    font-size: 10px;
  }
  .fbg-ship-badge__from {
    font-size: 8px;
    margin-top: 2px;
  }
  .fbg-ship-badge__road {
    width: 50px;
    height: 13px;
    margin-top: 2px;
  }
  .fbg-ship-badge__truck {
    width: 22px;
  }
}
/* Accessibilité : on coupe les animations si l'utilisateur le demande */
@media (prefers-reduced-motion: reduce) {
  .fbg-ship-badge,
  .fbg-ship-badge__ring,
  .fbg-ship-badge__truck,
  .fbg-ship-badge__wheel,
  .fbg-ship-badge__road::after {
    animation: none !important;
  }
  .fbg-ship-badge__truck {
    left: 50%;
    transform: translateX(-50%);
  }
}
/* ============================================================== *
 *  MBG : carte "Note globale" (page avis) aux couleurs MBG       *
 *  (le dégradé orange FBG jurait sur le rouge MBG)               *
 * ============================================================== */
body.shop-mbg #lgcomments_products.lgcomments_store_reviews .ka-srev__score {
  background: linear-gradient(165deg, var(--color-primary) 0%, #f5795f 100%);
  box-shadow: 0 18px 40px rgba(233, 76, 47, 0.22);
}
body.shop-mbg #lgcomments_products.lgcomments_store_reviews .ka-srev__breakdown-count {
  color: var(--color-primary);
}
body.shop-mbg #lgcomments_products.lgcomments_store_reviews .ka-srev__bar > span {
  background: var(--color-primary);
}
body.shop-mbg #lgcomments_products.lgcomments_store_reviews .ka-srev__bar-label i {
  color: var(--color-primary);
}
body.shop-mbg #lgcomments_products.lgcomments_store_reviews .ka-srev__reset:hover {
  color: var(--color-primary);
}

/* ─── Footer réassurance : paiements & transporteurs ──────────────────────── */
.footer-reassurance {
  background: var(--color-primary);
  border-top: 1px solid rgba(255, 255, 255, 0.14);
  padding: 1.375rem 0 1.625rem;
  color: var(--color-white);
}

.shop-mbg .footer-reassurance {
  background: var(--color-secondary);
}

.footer-reassurance .container {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
  gap: 1.25rem 4rem;
}

.footer-reassurance__group {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.625rem;
}

.footer-reassurance__label {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  font-size: 0.8125rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  opacity: 0.85;
}

.footer-reassurance__items {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.5rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.fr-badge {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  background: var(--color-white);
  border-radius: 2rem;
  padding: 0.4375rem 0.9375rem;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.01em;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.18);
  cursor: default;
}

/* Couleurs de marque */
.fr-badge--monetico {
  color: #0e777d;
}

.fr-badge--paypal {
  font-style: italic;
}

.fr-badge--paypal .fr-badge__pay {
  color: #003087;
}

.fr-badge--paypal .fr-badge__pal {
  color: #0070ba;
}

.fr-badge--alma {
  color: #fa5022;
}

.fr-badge--laposte {
  color: #003da5;
  box-shadow: inset 0 -3px 0 #ffcd00, 0 2px 8px rgba(0, 0, 0, 0.18);
}

.fr-badge--chronopost {
  color: #124291;
}

.fr-badge--mondialrelay {
  color: #96154a;
}

.fr-badge--retrait {
  background: transparent;
  border: 1px solid rgba(255, 255, 255, 0.4);
  color: var(--color-white);
  font-weight: 600;
  box-shadow: none;
}

@media (max-width: 575px) {
  .footer-reassurance .container {
    flex-direction: column;
    align-items: center;
    gap: 1.25rem;
  }
}
/* ─── Listes (puces) dans les contenus riches PrettyBlocks / blocs Kagency ──
   Hummingbird reset `ol,ul { list-style:none }` globalement et ne restaure
   que `.rich-text ul`. On restaure ici les listes dans les zones de contenu
   éditées via l'éditeur (PrettyBlocks / kagencyblocks). */
.rich-text ol {
  list-style: decimal;
  padding-left: 1.2rem;
}

.ka-content__body ul,
.ka-faq__answer ul,
.ka-hero__content ul,
.ka-split__text ul,
.ka-split__content ul,
.ka-image-editor__text ul,
.ka-services__text ul,
.ka-sidebar-promo__text ul,
.ka-pro-benefits__text ul,
.ka-triangles-slider__text ul {
  list-style: disc;
  padding-left: 1.2rem;
}
.ka-content__body ol,
.ka-faq__answer ol,
.ka-hero__content ol,
.ka-split__text ol,
.ka-split__content ol,
.ka-image-editor__text ol,
.ka-services__text ol,
.ka-sidebar-promo__text ol,
.ka-pro-benefits__text ol,
.ka-triangles-slider__text ol {
  list-style: decimal;
  padding-left: 1.2rem;
}
.ka-content__body ul ul,
.ka-faq__answer ul ul,
.ka-hero__content ul ul,
.ka-split__text ul ul,
.ka-split__content ul ul,
.ka-image-editor__text ul ul,
.ka-services__text ul ul,
.ka-sidebar-promo__text ul ul,
.ka-pro-benefits__text ul ul,
.ka-triangles-slider__text ul ul {
  list-style: circle;
}
.ka-content__body li,
.ka-faq__answer li,
.ka-hero__content li,
.ka-split__text li,
.ka-split__content li,
.ka-image-editor__text li,
.ka-services__text li,
.ka-sidebar-promo__text li,
.ka-pro-benefits__text li,
.ka-triangles-slider__text li {
  margin-bottom: 0.25rem;
}

/* ─── MBG : encart "Note globale" (avis boutique) aux couleurs MBG ────────── */
body.shop-mbg #lgcomments_products.lgcomments_store_reviews .ka-srev__score {
  background: linear-gradient(165deg, var(--color-primary) 0%, #ee664d 100%);
  box-shadow: 0 18px 40px rgba(233, 76, 47, 0.22);
}
body.shop-mbg #lgcomments_products.lgcomments_store_reviews .ka-srev__bar > span {
  background: var(--color-primary);
}
body.shop-mbg #lgcomments_products.lgcomments_store_reviews .ka-srev__reset:hover {
  color: var(--color-primary);
}

/* ─── MBG : bloc "Avis" de la home (ka-reviews-showcase) aligné sur la carte
   "Note globale" de la page avis (dégradé rouge MBG) ─────────────────────── */
body.shop-mbg .ka.ka-reviews-showcase .ka-reviews-showcase__score-card {
  background: linear-gradient(165deg, var(--color-primary) 0%, #ee664d 100%);
  box-shadow: 0 18px 40px rgba(233, 76, 47, 0.22);
}
body.shop-mbg .ka.ka-reviews-showcase .ka-reviews-showcase__star {
  color: rgba(233, 76, 47, 0.2);
}
body.shop-mbg .ka.ka-reviews-showcase .ka-reviews-showcase__star.is-active {
  color: var(--color-primary);
}
body.shop-mbg .ka.ka-reviews-showcase .ka-reviews-showcase__score-card .ka-reviews-showcase__star {
  color: rgba(255, 255, 255, 0.35);
}
body.shop-mbg .ka.ka-reviews-showcase .ka-reviews-showcase__score-card .ka-reviews-showcase__star.is-active {
  color: #fff;
}
body.shop-mbg .ka.ka-reviews-showcase .ka-reviews-showcase__source-card,
body.shop-mbg .ka.ka-reviews-showcase .ka-reviews-showcase__recent-card {
  border-color: rgba(233, 76, 47, 0.55);
}
