/* ============================================================
   LUMIHOME 统一样式入口：lumihome-unified.css

   维护说明：
   1. 所有模板页面只引用本文件，避免多个 CSS 文件和页面内联 style 互相覆盖。
   2. 文件顺序严格模拟旧页面加载顺序：第三方依赖 -> theme.css -> site.css -> 页面内联样式 -> 0603 修复 -> 最终验收兜底 -> 首页最终锁定。
   3. 每个大区块都标注来源，后续修改请优先在对应区块内处理，不要再往 HTML 里新增 <style>。
   4. 页脚、导航、首页热卖等容易反复出问题的模块在文件后部有高优先级兜底规则。
   ============================================================ */
@import url("./swiper-local.css");


/* ============================================================
   01. 主题基础层：theme.css
   来源：/Users/vin/Downloads/lumihome/theme.css

   作用：Shopify 原主题基础样式、组件默认样式、全局变量。
   注意：这是最低业务优先级层，后面的模板内联样式和修复层会覆盖它。
   ============================================================ */
/** Shopify CDN: Minification failed

Line 23663:243 Unexpected ")"
Line 25134:0 Unexpected "}"

**/
/*! minireset.css v0.0.6 | MIT License | github.com/jgthms/minireset.css */
/*! PhotoSwipe main CSS by Dmitry Semenov | photoswipe.com | MIT license */
@media screen and (max-width: 740px) {
  .hidden-phone {
    display: none !important;
  }
}

@media screen and (min-width: 741px) and (max-width: 999px) {
  .hidden-tablet {
    display: none !important;
  }
}

@media screen and (min-width: 741px) {
  .hidden-tablet-and-up {
    display: none !important;
  }
}

@media screen and (max-width: 999px) {
  .hidden-pocket {
    display: none !important;
  }
}

@media screen and (min-width: 1000px) and (max-width: 1199px) {
  .hidden-lap {
    display: none !important;
  }
}

@media screen and (min-width: 1000px) {
  .hidden-lap-and-up {
    display: none !important;
  }
}

@media screen and (min-width: 1200px) {
  .hidden-desk {
    display: none !important;
  }
}

@media screen and (min-width: 1400px) {
  .hidden-wide {
    display: none !important;
  }
}

@media screen and (pointer: fine) {
  .hidden-no-touch {
    display: none !important;
  }
}

@media screen and not (pointer: fine) {
  .hidden-touch {
    display: none !important;
  }
}

@media print {
  .hidden-print {
    display: none !important;
  }
}

*, :before, :after {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  box-sizing: border-box !important;
}

html {
  -ms-overflow-style: -ms-autohiding-scrollbar;
  -moz-text-size-adjust: 100%;
  text-size-adjust: 100%;
  font-family: sans-serif;
}

body {
  margin: 0;
}

[hidden] {
  display: none;
}

blockquote:first-child, ul:first-child, ol:first-child, p:first-child, h1:first-child, h2:first-child, h3:first-child, h4:first-child, h5:first-child, h6:first-child {
  margin-block-start: 0 !important;
}

blockquote:last-child, ul:last-child, ol:last-child, p:last-child, h1:last-child, h2:last-child, h3:last-child, h4:last-child, h5:last-child, h6:last-child {
  margin-block-end: 0 !important;
}

a {
  color: inherit;
  text-decoration: none;
}

button, input, select, textarea {
  color: inherit;
  font: inherit;
  text-align: inherit;
  margin: 0;
}

button, [type="submit"] {
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
  touch-action: manipulation;
  background: none;
  border: none;
  border-radius: 0;
  padding: 0;
  overflow: visible;
}

button[disabled], html input[disabled] {
  cursor: default;
}

img, video {
  vertical-align: top;
  border-style: none;
  max-width: 100%;
  height: auto;
}

img:-moz-loading {
  visibility: hidden;
}

iframe {
  border: 0;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

td, th {
  padding: 0;
}

.pswp {
  touch-action: none;
  z-index: 1500;
  -webkit-backface-visibility: hidden;
  outline: none;
  width: 100%;
  height: 100%;
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
}

.pswp img {
  max-width: none;
}

.pswp--animate_opacity {
  opacity: .001;
  will-change: opacity;
  transition: opacity .333s cubic-bezier(.4, 0, .22, 1);
}

.pswp--open {
  display: block;
}

.pswp--zoom-allowed .pswp__img {
  cursor: var(--zoom-cursor-svg-url) 26 26, zoom-in;
}

.pswp--zoomed-in .pswp__img {
  cursor: grab;
}

.pswp--dragging .pswp__img {
  cursor: grabbing;
}

.pswp__bg {
  background: rgb(var(--background));
  opacity: 0;
  -webkit-backface-visibility: hidden;
  will-change: opacity;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  transform: translateZ(0);
}

.pswp__scroll-wrap {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
}

.pswp__container, .pswp__zoom-wrap {
  touch-action: none;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}

.pswp__container, .pswp__img {
  -webkit-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
}

.pswp__zoom-wrap {
  transform-origin: 0 0;
  width: 100%;
  transition: transform .333s cubic-bezier(.4, 0, .22, 1);
  position: absolute;
}

.pswp__bg {
  will-change: opacity;
  transition: opacity .333s cubic-bezier(.4, 0, .22, 1);
}

.pswp--animated-in .pswp__bg, .pswp--animated-in .pswp__zoom-wrap {
  transition: none;
}

.pswp__container, .pswp__zoom-wrap {
  -webkit-backface-visibility: hidden;
}

.pswp__item {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  overflow: hidden;
}

.pswp__img {
  width: auto;
  height: auto;
  position: absolute;
  top: 0;
  left: 0;
}

.pswp__top-bar {
  position: absolute;
  top: var(--container-gutter);
}

.pswp__top-bar:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: var(--container-gutter);
}

.pswp__top-bar:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: var(--container-gutter);
}

.pswp__prev-next-buttons {
  margin-inline: var(--container-gutter);
  pointer-events: none;
  justify-content: space-between;
  display: flex;
  position: absolute;
  top: calc(50% - 28px);
  left: 0;
  right: 0;
}

.pswp__dots-nav-wrapper {
  padding-inline: var(--container-gutter);
  background: rgb(var(--background));
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding-block-start: 20px;
  padding-block-end: 20px;
  transition: opacity .25s ease-in-out .2s, transform .25s ease-in-out .2s;
  display: flex;
  position: absolute;
  bottom: 0;
}

.pswp__dots-nav-wrapper .dots-nav {
  padding-inline-start: 20px;
  padding-inline-end: 20px;
}

.pswp__ui--hidden .pswp__dots-nav-wrapper {
  opacity: 0;
  transform: translateY(10px);
}

.pswp__button svg {
  transition: transform .25s ease-in-out;
}

@supports (padding: max(0px)) {
  .pswp__dots-nav-wrapper {
    padding-block-end: max(20px, env(safe-area-inset-bottom, 0px)  + 20px);
  }
}

@media screen and (pointer: fine) {
  .pswp__button:hover svg {
    transform: rotateZ(90deg);
  }
}

.flickity-enabled {
  position: relative;
  overflow: visible !important;
}

.flickity-enabled:focus {
  outline-offset: 2px;
}

.flickity-viewport {
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
}

.flickity-slider {
  width: 100%;
  height: 100%;
  position: absolute;
}

.flickity-enabled.is-draggable {
  -webkit-tap-highlight-color: transparent;
  -webkit-user-select: none;
  user-select: none;
}

.flickity-enabled.is-draggable:not(.is-hovering-right):not(.is-hovering-left) .flickity-viewport {
  cursor: grab;
}

.flickity-enabled.is-draggable:not(.is-hovering-right):not(.is-hovering-left) .flickity-viewport.is-pointer-down {
  cursor: grabbing;
}

.flickity-enabled.is-hovering-right .flickity-viewport {
  cursor: var(--arrow-right-svg-url) 17 14, e-resize;
}

.flickity-enabled.is-hovering-left .flickity-viewport {
  cursor: var(--arrow-left-svg-url) 17 14, w-resize;
}

.flickity-rtl .flickity-page-dots {
  direction: rtl;
}

.flickity-enabled.is-fade .flickity-slider > * {
  pointer-events: none;
  z-index: 0;
  transition: visibility .2s linear;
}

.flickity-enabled.is-fade .flickity-slider > .is-selected {
  pointer-events: auto;
  z-index: 1;
}

.flickity-enabled.is-fade .flickity-slider > :not(.is-selected) {
  visibility: hidden;
}

html {
  font-family: var(--text-font-family);
  font-weight: var(--text-font-weight);
  font-style: var(--text-font-style);
  font-size: calc(var(--base-font-size)  - 1px);
  color: rgb(var(--text-color));
  background: rgb(var(--background));
  line-height: 1.71429;
}

:lang(ar) * {
  letter-spacing: normal !important;
}

p strong, p b {
  font-weight: var(--text-font-bold-weight);
}

.heading, .blockquote, .rte h1, .rte h2, .rte h3, .rte h4, .rte h5, .rte h6, .rte blockquote {
  font-family: var(--heading-font-family);
  font-weight: var(--heading-font-weight);
  font-style: var(--heading-font-style);
  color: rgb(var(--heading-color));
  text-transform: var(--heading-text-transform);
  display: block;
}

.text--small {
  font-size: calc(var(--base-font-size)  - 2px);
  line-height: 1.69231;
}

.text--xsmall {
  font-size: calc(var(--base-font-size)  - 3px);
  line-height: 1.5;
}

.text--xxsmall {
  font-size: calc(var(--base-font-size)  - 5px);
  line-height: 1.5;
}

.text--large {
  font-size: calc(var(--base-font-size)  + 1px);
}

.text--subdued {
  color: rgba(var(--text-color), .7);
}

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

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

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

.text--strong {
  font-weight: var(--text-font-bold-weight);
}

.text--underlined {
  text-underline-offset: 3px;
  text-decoration: underline;
}

p a:not(.button), .rte a:not(.button), .link {
  text-underline-offset: 2px;
  text-decoration: underline;
  -webkit-text-decoration-color: rgba(var(--text-color), .35);
  text-decoration-color: rgba(var(--text-color), .35);
  transition: text-decoration-color .2s ease-in-out, color .2s ease-in-out;
}

.heading--small.link {
  line-height: 1.8;
}

@media screen and (pointer: fine) {
  p a:not(.button):hover, .rte a:not(.button):hover, .link:hover {
    color: rgb(var(--text-color));
    -webkit-text-decoration-color: rgb(var(--text-color));
    text-decoration-color: rgb(var(--text-color));
  }
}

.link--animated {
  width: max-content;
  display: block;
  position: relative;
}

.link--animated:after {
  content: "";
  transform-origin: var(--transform-origin-end);
  background: currentColor;
  width: 100%;
  height: 0px;
  transition: transform .3s;
  position: absolute;
  bottom: 2px;
  left: 0;
  transform: scaleX(0);
}

.text--underlined.link--animated {
  text-decoration: none;
  color:white;
}

.text--underlined.link--animated:after {
  transform: scaleX(1);
}

@media screen and (pointer: fine) {
  .link--animated[aria-expanded="true"]:after, .link--animated:hover:after {
    transform-origin: var(--transform-origin-start);
    transform: scaleX(1);
  }

  @keyframes textUnderlinedAnimatedKeyframes {
    0% {
      transform-origin: var(--transform-origin-end);
      transform: scaleX(1);
    }

    50% {
      transform-origin: var(--transform-origin-end);
      transform: scaleX(0);
    }

    51% {
      transform-origin: var(--transform-origin-start);
    }

    100% {
      transform: scaleX(1);
    }
  }

  .text--underlined.link--animated:hover:after {
    animation: .6s textUnderlinedAnimatedKeyframes;
  }
}

.link--faded {
  transition: opacity .25s ease-in-out;
}

.link--faded:hover {
  transform: scale(1.02);
  color:#3A9D5F;
}

.visually-hidden {
  clip: rect(0 0 0 0);
  border: 0;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  position: absolute !important;
}

@media screen and (min-width: 741px) {
  html {
    font-size: var(--base-font-size);
    line-height: 1.73333;
  }

  .text--small {
    font-size: calc(var(--base-font-size)  - 1px);
    line-height: 1.71429;
  }

  .text--xsmall {
    font-size: calc(var(--base-font-size)  - 2px);
    line-height: 1.53846;
  }

  .text--xxsmall {
    font-size: calc(var(--base-font-size)  - 4px);
    line-height: 1.53846;
  }

  .text--large {
    font-size: calc(var(--base-font-size)  + 5px);
  }
}

.heading:first-child {
  margin-block-start: 0;
}

.heading:last-child {
  margin-block-end: 0;
}

.heading--small, .heading--xsmall, .heading--xxsmall {
  font-family: var(--text-font-family);
  font-style: var(--text-font-style);
  text-transform: uppercase;
  font-weight: var(--text-font-bold-weight);
  letter-spacing: 1px;
  line-height: 1.46636;
}

.heading--xxsmall {
  font-size: var(--heading-xxsmall-font-size);
}

.heading--xsmall {
  font-size: var(--heading-xsmall-font-size);
}

.heading--small {
  font-size: var(--heading-small-font-size);
  line-height: 1.5;
}

.heading--large, .rte .heading--large {
  font-size: var(--heading-large-font-size);
  letter-spacing: -.9px;
  line-height: 1.11111;
}

.h1, .rte h1 {
  font-size: var(--heading-h1-font-size);
  letter-spacing: -.9px;
  line-height: 1.11111;
}

@media screen and (min-width: 1000px) {
  .h1, .rte h1 {
    font-size: 38px
  }
}

.h2, .rte h2 {
  font-size: var(--heading-h2-font-size);
  letter-spacing: 0px;
  line-height: 1.13333;
}

@media screen and (min-width: 1000px) {
  .h2, .rte h2 {
    font-size: 32px
  }
}

.h3, .rte h3 {
  font-size: var(--heading-h3-font-size);
  letter-spacing: 0px;
  line-height: 1.15385;
}

@media screen and (min-width: 1000px) {
  .h3, .rte h3 {
    font-size: 30px
  }
}

.h4, .rte h4 {
  font-size: var(--heading-h4-font-size);
  letter-spacing: 0px;
  line-height: 1.16667;
}

.h5, .rte h5 {
  font-size: var(--heading-h5-font-size);
  letter-spacing: 0px;
  line-height: 1.2;
}

.h6, .rte h6 {
  font-size: var(--heading-h6-font-size);
  line-height: 1.25;
}

.blockquote, .rte blockquote {
  font-size: var(--heading-h4-font-size);
  letter-spacing: -.3px;
  padding-block-start: 24px;
  padding-block-end: 0;
  padding-inline-start: 24px;
  padding-inline-end: 24px;
  line-height: 1.16667;
  position: relative;
}

.blockquote:before, .rte blockquote:before {
  content: "";
  background: rgb(var(--text-color));
  opacity: .15;
  width: 71px;
  height: 56px;
  position: absolute;
  top: -10px;
  -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMDEgODAiPiAgICA8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTAgNDEuNzdWMGg0MS42MDR2NDEuNzdMMjAuMDI2IDgwSC45ODdMMjEuNzIgNDEuNzdIMHptNTkuMzk2IDBWMEgxMDF2NDEuNzdMNzkuNDIyIDgwSDYwLjM4M2wyMC43MzItMzguMjNINTkuMzk2eiIgZmlsbD0iY3VycmVudENvbG9yIiAvPjwvc3ZnPg==");
  mask-image: url("data:image/svg+xml;base64,PHN2ZyBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMDEgODAiPiAgICA8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTAgNDEuNzdWMGg0MS42MDR2NDEuNzdMMjAuMDI2IDgwSC45ODdMMjEuNzIgNDEuNzdIMHptNTkuMzk2IDBWMEgxMDF2NDEuNzdMNzkuNDIyIDgwSDYwLjM4M2wyMC43MzItMzguMjNINTkuMzk2eiIgZmlsbD0iY3VycmVudENvbG9yIiAvPjwvc3ZnPg==");
  -webkit-mask-size: 71px 56px;
  mask-size: 71px 56px;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}

.blockquote:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  left: calc(50% - 35.5px);
}

.rte blockquote:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  left: calc(50% - 35.5px);
}

.blockquote:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  right: calc(50% - 35.5px);
}

.rte blockquote:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  right: calc(50% - 35.5px);
}

.unordered-list, .text-container ul, .rte ul {
  margin-inline-start: 1.25em;
  margin-inline-end: 0;
  padding: 0;
  list-style-type: inherit;
}

.ordered-list, .text-container ol, .rte ol {
  margin-inline-start: 1em;
  margin-inline-end: 0;
  padding: 0;
}

.unordered-list li, .text-container ul li, .rte ul li {
  padding-block-start: 2px;
  padding-block-end: 2px;
  padding-inline-start: 0;
  padding-inline-end: 5px;
}

.ordered-list li, .text-container ol li, .rte ol li {
  padding-block-start: 3px;
  padding-block-end: 3px;
  padding-inline-start: 0;
  padding-inline-end: 9px;
}

.unordered-list li::marker, .text-container ul li::marker, .rte ul li::marker {
  color: inherit;
  font-size: 16px;
}

.ordered-list li::marker, .text-container ol li::marker, .rte ol li::marker {
  color: inherit;
  font-size: 11px;
}

.table-wrapper {
  overflow-x: auto;
}

.table, .rte table {
  --table-spacing: 16px;
  width: 100%;
}

.table--loose {
  --table-spacing: 24px;
}

.table th:not([class*="text--"]), .rte table th:not([class*="text--"]) {
  text-align: start;
}

.table th, .rte table th {
  border-bottom: 1px solid rgb(var(--border-color));
  padding-block-end: 15px;
  padding-inline: var(--table-spacing);
}

.table td.half-spaced, .rte table td.half-spaced {
  padding: calc(var(--table-spacing) / 2);
}

.table td, .rte table td {
  padding: var(--table-spacing);
  padding-block-end: 0;
}

.table tr[onclick] {
  cursor: pointer;
}

.table th:first-child, .rte table th:first-child, .table td:first-child, .rte table td:first-child {
  padding-inline-start: 0;
}

.table th:last-child, .rte table th:last-child, .table td:last-child, .rte table td:last-child {
  padding-inline-end: 0;
}

.table tfoot tr:first-child td, .rte table tfoot tr:first-child td {
  border-top: 1px solid rgb(var(--border-color));
}

.table tfoot tr:not(:first-child) td, .rte table tfoot tr:not(:first-child) td {
  padding-block-start: 8px;
}

.table--bordered td {
  border-top: 1px solid rgb(var(--border-color));
  padding-block-end: var(--table-spacing);
}

.table--footered tbody tr:last-child td {
  padding-block-end: var(--table-spacing);
}

@media screen and (max-width: 740px) {
  .table tfoot td, .rte table tfoot td {
    padding-block-start: 16px;
  }
}

@media screen and (min-width: 741px) {
  .ordered-list li::marker, .text-container ol li::marker, .rte ol li::marker {
    font-size: 12px;
  }

  .heading--xsmall {
    line-height: 1.46667;
  }

  .heading--small {
    line-height: 1.23077;
  }

  .heading--large {
    line-height: 1;
  }

  .h1, .rte h1 {
    letter-spacing: -1px;
    line-height: 1.04167;
  }

  .h2, .rte h2 {
    letter-spacing: 0px;
    line-height: 1.10526;
  }

  .h3, .rte h3 {
    letter-spacing: 0px;
    line-height: 1.0625;
  }

  .h4, .rte h4 {
    letter-spacing: 0px;
    line-height: 1.16667;
  }

  .h5, .rte h5 {
    letter-spacing: 0px;
    line-height: 1.2;
  }

  .h6, .rte h6 {
    line-height: 1.22222;
  }

  .blockquote, .rte blockquote {
    letter-spacing: -.6px;
    min-height: 63px;
    padding-inline-start: 49px;
    padding-inline-end: 0;
    line-height: 1.16667;
  }

  .blockquote--center {
    padding-inline-start: 0;
  }

  .blockquote:not(.blockquote--center):before, .rte blockquote:not(.blockquote--center):before {
    width: 80px;
    height: 63px;
    top: 0;
    -webkit-mask-size: 80px 63px;
    mask-size: 80px 63px;
  }

  .blockquote:not(.blockquote--center):not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
    left: 0;
  }

  .rte blockquote:not(.blockquote--center):not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
    left: 0;
  }

  .blockquote:not(.blockquote--center):is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
    right: 0;
  }

  .rte blockquote:not(.blockquote--center):is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
    right: 0;
  }

  .unordered-list li, .text-container ul li, .rte ul li {
    padding-block-start: 4px;
    padding-block-end: 4px;
    padding-inline-start: 0;
    padding-inline-end: 5px;
  }

  .ordered-list li, .text-container ol li, .rte ol li {
    padding-block-start: 4px;
    padding-block-end: 4px;
    padding-inline-start: 0;
    padding-inline-end: 9px;
  }
}

@media screen and (min-width: 1000px) {
  .table {
    --table-spacing: 24px;
  }

  .table--loose {
    --table-spacing: 32px;
  }
}

@media screen and (min-width: 1200px) {
  .heading--large, .rte .heading--large {
    line-height: 1;
  }

  .h1, .rte h1 {
    letter-spacing: -1px;
    line-height: 1.07143;
  }

  .h2, .rte h2 {
    letter-spacing: 0px;
    line-height: 1.08333;
  }

  .h3, .rte h3 {
    letter-spacing: 0px;
    line-height: 1.11111;
  }

  .h4, .rte h4 {
    letter-spacing: 0px;
    line-height: 1.13333;
  }

  .h5, .rte h5 {
    letter-spacing: 0px;
    line-height: 1.16667;
  }

  .h6, .rte h6 {
    line-height: 1.22222;
  }

  .blockquote, .rte blockquote {
    letter-spacing: -.7px;
    min-height: 80px;
    padding-inline-start: 69px;
    line-height: 1.13333;
  }

  .blockquote--center, .rte .blockquote--center {
    padding-inline-start: 0;
  }

  .blockquote:not(.blockquote--center):before, .rte blockquote:not(.blockquote--center):before {
    width: 101px;
    height: 81px;
    -webkit-mask-size: 101px 81px;
    mask-size: 101px 81px;
  }
}

.text-container p:not(.heading) + p, .rte p:not(.heading) + p, .text-container p + form, .rte p + form {
  margin-block-start: 24px;
}

.text-container .heading--large, .rte .heading--large {
  margin-block-start: 48px;
  margin-block-end: 40px;
  margin-inline-start: 0;
  margin-inline-end: 0;
}

.text-container .h1, .rte h1 {
  margin-block-start: 48px;
  margin-block-end: 24px;
  margin-inline-start: 0;
  margin-inline-end: 0;
}

.text-container .h2, .rte h2, .text-container .h3, .rte h3, .text-container .h4, .rte h4, .text-container .h5, .rte h5, .text-container .h6, .rte h6 {
  margin-block-start: 40px;
  margin-block-end: 16px;
  margin-inline-start: 0;
  margin-inline-end: 0;
  font-size: 1.5em;
}

.text-container .heading--small, .rte .heading--small {
  margin: 16px 0;
}

.text-container .heading--xsmall, .rte .heading--xsmall {
  margin: 12px 0;
}

.blockquote, .rte blockquote {
  margin-block-start: 48px;
  margin-block-end: 64px;
  margin-inline-start: 0;
  margin-inline-end: 0;
}

.text-container img:not([style*="float"]), .rte img:not([style*="float"]) {
  margin: 34px 0;
  display: block;
}

.text-container ul, .rte ul, .text-container ol, .rte ol {
  margin-block-start: 1em;
  margin-block-end: 1em;
}

@media screen and (min-width: 1000px) {
  .text-container p + form, .rte p + form {
    margin-block-start: 32px;
  }

  .text-container .h1, .rte h1 {
    margin-block-start: 48px;
    margin-block-end: 32px;
    margin-inline-start: 0;
    margin-inline-end: 0;
  }

  .text-container .h2, .rte h2, .text-container .h3, .rte h3, .text-container .h4, .rte h4 {
    margin-block-start: 48px;
    margin-block-end: 24px;
    margin-inline-start: 0;
    margin-inline-end: 0;
  }

  .text-container .h5, .rte h5, .text-container .h6, .rte h6 {
    margin-block-start: 40px;
    margin-block-end: 16px;
    margin-inline-start: 0;
    margin-inline-end: 0;
  }

  .blockquote, .rte blockquote {
    margin-block-start: 80px;
    margin-block-end: 96px;
    margin-inline-start: 0;
    margin-inline-end: 0;
  }
}

.rte > :first-child, .text-container > :first-child {
  margin-block-start: 0;
}

.rte > :last-child, .text-container > :last-child {
  margin-block-end: 0;
}

.heading--small + .heading--large {
  margin-block-start: 32px;
}

.heading--small + p, .heading--xsmall + p, .heading--small + p, .heading--small + .h1, .heading--small + h1, .heading--small + .h2, .heading--small + h2, .heading--small + .h3, .heading--small + h3, .heading--small + .h4, .heading--small + h4, .heading--small + .h5, .heading--small + h5, .heading--small + .h6, .heading--small + h6, .heading--xsmall + p, .heading--xsmall + .h1, .heading--xsmall + h1, .heading--xsmall + .h2, .heading--xsmall + h2, .heading--xsmall + .h3, .heading--xsmall + h3 {
  margin-block-start: 16px;
}

.heading--xsmall + .h4, .heading--xsmall + h4, .heading--xsmall + .h5, .heading--xsmall + h5, .heading--xsmall + .h6, .heading--xsmall + h6 {
  margin-block-start: 12px;
}

.heading + .button-wrapper, .heading + .button-group, p + .button-wrapper, p + .button-group, .button-wrapper + p, .button-group + p {
  margin-block-start: 32px;
}

@media screen and (min-width: 741px) {
  .heading--small + p, .heading--small + .h1, .heading--small + h1, .heading--small + .h2, .heading--small + h2, .heading--small + .h3, .heading--small + h3, .heading--small + .h4, .heading--small + h4 {
    margin-block-start: 24px;
  }

  .heading--small + .h5, .heading--small + h5, .heading--small + .h6, .heading--small + h6 {
    margin-block-start: 16px;
  }

  .heading--xsmall + .h1, .heading--xsmall + h1, .heading--xsmall + .h2, .heading--xsmall + h2 {
    margin-block-start: 24px;
  }
}

.shopify-section {
  color: rgb(var(--text-color));
  scroll-margin-top: calc(var(--header-height, 0px) * var(--enable-sticky-header)  + var(--announcement-bar-height, 0px) * var(--enable-sticky-announcement-bar));
}

.js .no-focus-outline :focus {
  outline: none;
}

.lock-all {
  touch-action: none;
  overflow: hidden;
}

@media screen and (max-width: 740px) {
  .lock-mobile {
    touch-action: none;
    overflow: hidden;
  }
}

.container, .shopify-policy__container.shopify-policy__container {
  max-width: var(--container-max-width);
  padding-inline: var(--container-gutter);
  --container-outer-margin: 0px;
  width: 100%;
  margin-inline-start: auto;
  margin-inline-end: auto;
}

.container--small {
  max-width: 930px;
}

@media screen and (max-width: 999px) {
  .container--flush {
    padding-inline-start: 0;
    padding-inline-end: 0;
  }
}

@media screen and (min-width: 1400px) {
  .container--medium {
    padding-inline: calc(var(--container-gutter)  + var(--grid-column-width)  + var(--grid-gap));
  }
}

.js .no-js {
  display: none !important;
}

.js .js\:hidden, .no-js .no-js\:hidden {
  display: none;
}

[reveal] {
  opacity: 0;
}

[reveal-visibility] {
  visibility: hidden;
}

.no-js [reveal] {
  opacity: 1;
}

.no-js [reveal-visibility] {
  visibility: visible;
}

.skip-to-content:focus {
  clip: auto;
  color: rgb(var(--text-color));
  background-color: rgb(var(--background));
  opacity: 1;
  z-index: 10000;
  width: auto;
  height: auto;
  margin: 0;
  padding: 10px;
  transition: none;
}


.vertical-breather {
  padding-block: var(--vertical-breather);
}


.vertical-breather--tight {
  padding-block: var(--vertical-breather-tight);
}

.vertical-breather--margin {
  margin-block: var(--vertical-breather);
  padding-block-start: 0 !important;
  padding-block-end: 0 !important;
}

.vertical-breather--margin.vertical-breather--tight {
  margin-block: var(--vertical-breather-tight);
}

@media screen and (min-width: 741px) {
  .vertical-breather--extra-tight {
    padding-block-start: 48px;
    padding-block-end: 48px;
  }

  .vertical-breather--margin.vertical-breather--extra-tight {
    margin-block-start: 48px;
    margin-block-end: 48px;
  }
}

.anchor {
  scroll-margin-top: calc(var(--header-height, 0px) * var(--enable-sticky-header)  + var(--announcement-bar-height, 0px) * var(--enable-sticky-announcement-bar)  + var(--anchor-offset, 20px));
}

.anchor.vertical-breather:not(.vertical-breather--margin) {
  --anchor-offset: 0px;
}

.anchor.vertical-breather--margin {
  --anchor-offset: var(--vertical-breather);
}

.anchor.vertical-breather--tight.vertical-breather--margin {
  --anchor-offset: var(--vertical-breather-tight);
}

.icon {
  vertical-align: middle;
  pointer-events: none;
  background: none;
  display: block;
  overflow: visible;
}

.icon--inline {
  display: inline-block;
}

.icon-text {
  align-items: center;
  display: flex;
}

@media screen and (max-width:741px) {
  .icon--picto-lock, .icon--picto-address, .icon--picto-credit-card { 
    width: 20px
  }
}

.iconmax {
    display: flex;
    justify-content: center;
    align-items: center;
}

.iconmax img {
    margin-inline-end: 0px!important;
}

.icon-text svg, .icon-text img {
  margin-inline-end: 12px;
}
  
.icon--picto-address {
   margin-inline-end: 8px!important
 }

@supports (scale: 1) {
  [dir="rtl"] .icon--direction-aware {
    scale: -1 1;
  }
}

@supports not (scale: 1) {
  [dir="rtl"] .icon--direction-aware {
    transform: scale(-1, 1);
  }
}

.list--unstyled {
  margin: 0;
  padding: 0;
  list-style: none;
}

.loading-bar {
  opacity: 0;
  background: rgb(var(--loading-bar-background));
  transform-origin: 0;
  z-index: 50;
  pointer-events: none;
  width: 100%;
  height: 3px;
  transition: transform .25s ease-in-out;
  position: fixed;
  top: 0;
  left: 0;
  transform: scaleX(0);
}

.loading-bar.is-visible {
  opacity: 1;
}

.section {
  margin: var(--vertical-breather) 0;
  display: block;
}

.section--tight {
  margin-block: var(--vertical-breather-tight);
}

.section:empty {
  display: none;
}

.section--flush {
  margin-block-start: 0;
  margin-block-end: 0;
}

.section__color-wrapper {
  background: rgb(var(--section-background, var(--background)));
  display: flow-root;
}

.section__color-wrapper--boxed {
  border-radius: var(--block-border-radius);
}

.section__header {
  text-align: center;
  max-width: 1000px;
  margin-block-end: min(32px, var(--vertical-breather));
  margin-inline-start: auto;
  margin-inline-end: auto;
}

.section__header:only-child {
  margin-block-end: 0;
}

.section__header--tight {
  max-width: 800px;
}

.section__header--left {
  text-align: start;
  margin-left: 0;
}

.section__header--right {
  text-align: end;
  margin-right: 0;
}

.section__footer {
  text-align: center;
  margin-block-start: 32px;
}

@media screen and (min-width: 741px) {
  .section__header {
    margin-block-end: min(40px, var(--vertical-breather));
  }

  .section__footer {
    margin-block-start: min(40px, var(--vertical-breather));
  }

}

@media screen and (min-width: 1000px) {
  .section__header {
    margin-block-end: min(48px, var(--vertical-breather));
  }

  .section__footer {
    margin-block-start: min(48px, var(--vertical-breather));
  }

}

.page-header {
  text-align: left;
  position: relative;
}

.page-header--secondary {
  background: rgb(var(--secondary-background));
}

.page-header--clear:after, .page-header:before {
  content: "";
  clear: left;
  display: table;
}

.page-header__text-wrapper {
  margin: 60px 0 37px 0;
}

.page-header--small .page-header__text-wrapper {
  margin-block-start: 24px;
  margin-block-end: 24px;
}

.page-header--alone .page-header__text-wrapper {
  margin-block-end: 72px;
}

.page-content, .shopify-policy__body {
  max-width: 1200px;
  margin-block-end: min(var(--vertical-breather), 80px);
  margin-inline-start: auto;
  margin-inline-end: auto;
}

.page-content--medium, .shopify-policy__body {
  max-width: 670px;
}

.page-content--small {
  max-width: 460px;
}

.page-content--fluid {
  max-width: none;
}

@media screen and (min-width: 741px) {
  .page-header__text-wrapper {
    margin-block-start: 68px;
    margin-block-end: 68px;
  }

  .page-header--small .page-header__text-wrapper {
    margin-block-start: 48px;
    margin-block-end: 40px;
  }

  .page-header--alone .page-header__text-wrapper {
    margin-block-end: 120px;
  }

  .breadcrumb--floating + .page-header__text-wrapper {
    margin-block-start: 65px;
    text-align:center
  }
}

.breadcrumb {
  z-index: 1;
}

.breadcrumb--floating {
  position: absolute;
  top: 0;
}

.breadcrumb--floating:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 0;
}

.breadcrumb--floating:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 0;
}

.breadcrumb__list {
  margin: 0;
  padding: 26px 0;
  list-style: none;
  display: inline-flex;
}

.breadcrumb__item + .breadcrumb__item:before {
  content: "/";
  opacity: .7;
  float: left;
  margin: 0 4px;
}

.breadcrumb__link {
  transition: opacity .2s ease-in-out;
}

.breadcrumb__link:not([aria-current="page"]):not(:hover) {
  opacity: .7;
}

[dir="rtl"] .breadcrumb__item + .breadcrumb__item:before {
  float: right;
}



.pagination {
  justify-content: center;
  margin-block-start: 40px;
  display: flex;
}

.pagination__nav {
  border-collapse: separate;
  table-layout: fixed;
  display: table;
}

.pagination__nav-item {
  box-shadow: 1px 0 0 0 rgb(var(--border-color)), 0 1px 0 0 rgb(var(--border-color)), 1px 1px 0 0 rgb(var(--border-color)), 1px 0 0 0 rgb(var(--border-color)) inset, 0 1px 0 0 rgb(var(--border-color)) inset;
  vertical-align: middle;
  text-align: center;
  width: 47px;
  height: 47px;
  display: table-cell;
  position: relative;
}

.pagination__nav-item:first-child:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-left-radius: var(--button-border-radius);
  border-bottom-left-radius: var(--button-border-radius);
}

.pagination__nav-item:first-child:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  border-top-left-radius: var(--button-border-radius);
  border-bottom-left-radius: var(--button-border-radius);
}

.pagination__nav-item:first-child:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-right-radius: var(--button-border-radius);
  border-bottom-right-radius: var(--button-border-radius);
}

.pagination__nav-item:first-child:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  border-top-right-radius: var(--button-border-radius);
  border-bottom-right-radius: var(--button-border-radius);
}

.pagination__nav-item:last-child:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-right-radius: var(--button-border-radius);
  border-bottom-right-radius: var(--button-border-radius);
}

.pagination__nav-item:last-child:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  border-top-right-radius: var(--button-border-radius);
  border-bottom-right-radius: var(--button-border-radius);
}

.pagination__nav-item:last-child:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-left-radius: var(--button-border-radius);
  border-bottom-left-radius: var(--button-border-radius);
}

.pagination__nav-item:last-child:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  border-top-left-radius: var(--button-border-radius);
  border-bottom-left-radius: var(--button-border-radius);
}

.pagination__nav-item svg {
  margin: 0 auto;
}

.pagination__nav-item[aria-current]:before {
  content: "";
  pointer-events: none;
  z-index: 1;
  max-width: calc(100% - 3px);
  max-height: calc(100% - 3px);
  position: absolute;
  top: 2px;
  bottom: 0;
  left: 2px;
  right: 0;
  box-shadow: 0 0 0 2px;
}

@media screen and (min-width: 741px) {
  .pagination {
    margin-block-start: 48px;
  }

  .pagination__nav-item {
    width: 56px;
    height: 56px;
  }
}

.linklist__item:not(:first-child) {
  padding-block-start: 12px;
}

/*! minireset.css v0.0.6 | MIT License | github.com/jgthms/minireset.css */
/*! PhotoSwipe main CSS by Dmitry Semenov | photoswipe.com | MIT license */


@media screen and (min-width: 741px) and (max-width: 999px) {
  .hidden-tablet {
    display: none !important;
  }
}

@media screen and (min-width: 741px) {
  .hidden-tablet-and-up {
    display: none !important;
  }
}

@media screen and (max-width: 999px) {
  .hidden-pocket {
    display: none !important;
  }
}

@media screen and (min-width: 1000px) and (max-width: 1199px) {
  .hidden-lap {
    display: none !important;
  }
}

@media screen and (min-width: 1000px) {
  .hidden-lap-and-up {
    display: none !important;
  }
}

@media screen and (min-width: 1200px) {
  .hidden-desk {
    display: none !important;
  }
}

@media screen and (min-width: 1400px) {
  .hidden-wide {
    display: none !important;
  }
}

@media screen and (pointer: fine) {
  .hidden-no-touch {
    display: none !important;
  }
}

@media screen and not (pointer: fine) {
  .hidden-touch {
    display: none !important;
  }
}

@media print {
  .hidden-print {
    display: none !important;
  }
}

*, :before, :after {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  box-sizing: border-box !important;
}

html {
  -ms-overflow-style: -ms-autohiding-scrollbar;
  -moz-text-size-adjust: 100%;
  text-size-adjust: 100%;
  font-family: sans-serif;
}

body {
  margin: 0;
}

[hidden] {
  display: none;
}

blockquote:first-child, ul:first-child, ol:first-child, p:first-child, h1:first-child, h2:first-child, h3:first-child, h4:first-child, h5:first-child, h6:first-child {
  margin-block-start: 0 !important;
}

blockquote:last-child, ul:last-child, ol:last-child, p:last-child, h1:last-child, h2:last-child, h3:last-child, h4:last-child, h5:last-child, h6:last-child {
  margin-block-end: 0 !important;
}

a {
  color: inherit;
  text-decoration: none;
}

button, input, select, textarea {
  color: inherit;
  font: inherit;
  text-align: inherit;
  margin: 0;
}

button, [type="submit"] {
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
  touch-action: manipulation;
  background: none;
  border: none;
  border-radius: 0;
  padding: 0;
  overflow: visible;
}

button[disabled], html input[disabled] {
  cursor: default;
}

img, video {
  vertical-align: top;
  border-style: none;
  max-width: 100%;
  height: auto;
}

img:-moz-loading {
  visibility: hidden;
}

iframe {
  border: 0;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

td, th {
  padding: 0;
}

.pswp {
  touch-action: none;
  z-index: 1500;
  -webkit-backface-visibility: hidden;
  outline: none;
  width: 100%;
  height: 100%;
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
}

.pswp img {
  max-width: none;
}

.pswp--animate_opacity {
  opacity: .001;
  will-change: opacity;
  transition: opacity .333s cubic-bezier(.4, 0, .22, 1);
}

.pswp--open {
  display: block;
}

.pswp--zoom-allowed .pswp__img {
  cursor: var(--zoom-cursor-svg-url) 26 26, zoom-in;
}

.pswp--zoomed-in .pswp__img {
  cursor: grab;
}

.pswp--dragging .pswp__img {
  cursor: grabbing;
}

.pswp__bg {
  background: rgb(var(--background));
  opacity: 0;
  -webkit-backface-visibility: hidden;
  will-change: opacity;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  transform: translateZ(0);
}

.pswp__scroll-wrap {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
}

.pswp__container, .pswp__zoom-wrap {
  touch-action: none;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}

.pswp__container, .pswp__img {
  -webkit-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
}

.pswp__zoom-wrap {
  transform-origin: 0 0;
  width: 100%;
  transition: transform .333s cubic-bezier(.4, 0, .22, 1);
  position: absolute;
}

.pswp__bg {
  will-change: opacity;
  transition: opacity .333s cubic-bezier(.4, 0, .22, 1);
}

.pswp--animated-in .pswp__bg, .pswp--animated-in .pswp__zoom-wrap {
  transition: none;
}

.pswp__container, .pswp__zoom-wrap {
  -webkit-backface-visibility: hidden;
}

.pswp__item {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  overflow: hidden;
}

.pswp__img {
  width: auto;
  height: auto;
  position: absolute;
  top: 0;
  left: 0;
}

.pswp__top-bar {
  position: absolute;
  top: var(--container-gutter);
}

.pswp__top-bar:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: var(--container-gutter);
}

.pswp__top-bar:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: var(--container-gutter);
}

.pswp__prev-next-buttons {
  margin-inline: var(--container-gutter);
  pointer-events: none;
  justify-content: space-between;
  display: flex;
  position: absolute;
  top: calc(50% - 28px);
  left: 0;
  right: 0;
}

.pswp__dots-nav-wrapper {
  padding-inline: var(--container-gutter);
  background: rgb(var(--background));
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding-block-start: 20px;
  padding-block-end: 20px;
  transition: opacity .25s ease-in-out .2s, transform .25s ease-in-out .2s;
  display: flex;
  position: absolute;
  bottom: 0;
}

.pswp__dots-nav-wrapper .dots-nav {
  padding-inline-start: 20px;
  padding-inline-end: 20px;
}

.pswp__ui--hidden .pswp__dots-nav-wrapper {
  opacity: 0;
  transform: translateY(10px);
}

.pswp__button svg {
  transition: transform .25s ease-in-out;
}

@supports (padding: max(0px)) {
  .pswp__dots-nav-wrapper {
    padding-block-end: max(20px, env(safe-area-inset-bottom, 0px)  + 20px);
  }
}

@media screen and (pointer: fine) {
  .pswp__button:hover svg {
    transform: rotateZ(90deg);
  }
}

.flickity-enabled {
  position: relative;
  overflow: visible !important;
}

.flickity-enabled:focus {
  outline-offset: 2px;
}

.flickity-viewport {
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
}

.flickity-slider {
  width: 100%;
  height: 100%;
  position: absolute;
}

.flickity-enabled.is-draggable {
  -webkit-tap-highlight-color: transparent;
  -webkit-user-select: none;
  user-select: none;
}

.flickity-enabled.is-draggable:not(.is-hovering-right):not(.is-hovering-left) .flickity-viewport {
  cursor: grab;
}

.flickity-enabled.is-draggable:not(.is-hovering-right):not(.is-hovering-left) .flickity-viewport.is-pointer-down {
  cursor: grabbing;
}

.flickity-enabled.is-hovering-right .flickity-viewport {
  cursor: var(--arrow-right-svg-url) 17 14, e-resize;
}

.flickity-enabled.is-hovering-left .flickity-viewport {
  cursor: var(--arrow-left-svg-url) 17 14, w-resize;
}

.flickity-rtl .flickity-page-dots {
  direction: rtl;
}

.flickity-enabled.is-fade .flickity-slider > * {
  pointer-events: none;
  z-index: 0;
  transition: visibility .2s linear;
}

.flickity-enabled.is-fade .flickity-slider > .is-selected {
  pointer-events: auto;
  z-index: 1;
}

.flickity-enabled.is-fade .flickity-slider > :not(.is-selected) {
  visibility: hidden;
}

html {
  font-family: var(--text-font-family);
  font-weight: var(--text-font-weight);
  font-style: var(--text-font-style);
  font-size: calc(var(--base-font-size)  - 1px);
  color: rgb(var(--text-color));
  background: rgb(var(--background));
  line-height: 1.71429;
}

:lang(ar) * {
  letter-spacing: normal !important;
}

p strong, p b {
  font-weight: var(--text-font-bold-weight);
}

.heading, .blockquote, .rte h1, .rte h2, .rte h3, .rte h4, .rte h5, .rte h6, .rte blockquote {
  font-family: var(--heading-font-family);
  font-weight: var(--heading-font-weight);
  font-style: var(--heading-font-style);
  color: rgb(var(--heading-color));
  text-transform: var(--heading-text-transform);
  display: block;
}

.text--small {
  font-size: calc(var(--base-font-size)  - 2px);
  line-height: 1.69231;
}

.text--xsmall {
  font-size: calc(var(--base-font-size)  - 3px);
  line-height: 1.5;
}

.text--xxsmall {
  font-size: calc(var(--base-font-size)  - 5px);
  line-height: 1.5;
}

.text--large {
  font-size: calc(var(--base-font-size)  + 1px);
}

.text--subdued {
  color: rgba(var(--text-color), .7);
}

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

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

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

.text--strong {
  font-weight: var(--text-font-bold-weight);
}

.text--underlined {
  text-underline-offset: 3px;
  text-decoration: underline;
}

p a:not(.button), .rte a:not(.button), .link {
  text-underline-offset: 2px;
  text-decoration: underline;
  -webkit-text-decoration-color: rgba(var(--text-color), .35);
  text-decoration-color: rgba(var(--text-color), .35);
  transition: text-decoration-color .2s ease-in-out, color .2s ease-in-out;
}

.heading--small.link {
  line-height: 1.8;
}

@media screen and (pointer: fine) {
  p a:not(.button):hover, .rte a:not(.button):hover, .link:hover {
    color: rgb(var(--text-color));
    -webkit-text-decoration-color: rgb(var(--text-color));
    text-decoration-color: rgb(var(--text-color));
  }
}

.link--animated {
  width: max-content;
  display: block;
  position: relative;
}

.link--animated:after {
  content: "";
  transform-origin: var(--transform-origin-end);
  background: currentColor;
  width: 100%;
  height: 0px;
  transition: transform .3s;
  position: absolute;
  bottom: 2px;
  left: 0;
  transform: scaleX(0);
}

.text--underlined.link--animated {
  text-decoration: none;
  color:white;
}

.text--underlined.link--animated:after {
  transform: scaleX(1);
}

@media screen and (pointer: fine) {
  .link--animated[aria-expanded="true"]:after, .link--animated:hover:after {
    transform-origin: var(--transform-origin-start);
    transform: scaleX(1);
  }

  @keyframes textUnderlinedAnimatedKeyframes {
    0% {
      transform-origin: var(--transform-origin-end);
      transform: scaleX(1);
    }

    50% {
      transform-origin: var(--transform-origin-end);
      transform: scaleX(0);
    }

    51% {
      transform-origin: var(--transform-origin-start);
    }

    100% {
      transform: scaleX(1);
    }
  }

  .text--underlined.link--animated:hover:after {
    animation: .6s textUnderlinedAnimatedKeyframes;
  }
}

.link--faded {
  transition: opacity .25s ease-in-out;
}

.link--faded:hover {
  transform: scale(1.02);
  color:#3A9D5F;
}

.visually-hidden {
  clip: rect(0 0 0 0);
  border: 0;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  position: absolute !important;
}

@media screen and (min-width: 741px) {
  html {
    font-size: var(--base-font-size);
    line-height: 1.73333;
  }

  .text--small {
    font-size: calc(var(--base-font-size)  - 1px);
    line-height: 1.71429;
  }

  .text--xsmall {
    font-size: calc(var(--base-font-size)  - 2px);
    line-height: 1.53846;
  }

  .text--xxsmall {
    font-size: calc(var(--base-font-size)  - 4px);
    line-height: 1.53846;
  }

  .text--large {
    font-size: calc(var(--base-font-size)  + 5px);
  }
}

.heading:first-child {
  margin-block-start: 0;
}

.heading:last-child {
  margin-block-end: 0;
}

.heading--small, .heading--xsmall, .heading--xxsmall {
  font-family: var(--text-font-family);
  font-style: var(--text-font-style);
  text-transform: uppercase;
  font-weight: var(--text-font-bold-weight);
  letter-spacing: 1px;
  line-height: 1.46636;
}

.heading--xxsmall {
  font-size: var(--heading-xxsmall-font-size);
}

.heading--xsmall {
  font-size: var(--heading-xsmall-font-size);
}

.heading--small {
  font-size: var(--heading-small-font-size);
  line-height: 1.5;
}

.heading--large, .rte .heading--large {
  font-size: var(--heading-large-font-size);
  letter-spacing: -.9px;
  line-height: 1.11111;
}

.h1, .rte h1 {
  font-size: var(--heading-h1-font-size);
  letter-spacing: -.9px;
  line-height: 1.11111;
}

@media screen and (min-width: 1000px) {
  .h1, .rte h1 {
    font-size: 38px
  }
}

.h2, .rte h2 {
  font-size: var(--heading-h2-font-size);
  letter-spacing: 0px;
  line-height: 1.13333;
}

@media screen and (min-width: 1000px) {
  .h2, .rte h2 {
    font-size: 32px
  }
}

.h3, .rte h3 {
  font-size: var(--heading-h3-font-size);
  letter-spacing: 0px;
  line-height: 1.15385;
}

@media screen and (min-width: 1000px) {
  .h3, .rte h3 {
    font-size: 30px
  }
}

.h4, .rte h4 {
  font-size: var(--heading-h4-font-size);
  letter-spacing: 0px;
  line-height: 1.16667;
}

.h5, .rte h5 {
  font-size: var(--heading-h5-font-size);
  letter-spacing: 0px;
  line-height: 1.2;
}

.h6, .rte h6 {
  font-size: var(--heading-h6-font-size);
  line-height: 1.25;
}

.blockquote, .rte blockquote {
  font-size: var(--heading-h4-font-size);
  letter-spacing: -.3px;
  padding-block-start: 24px;
  padding-block-end: 0;
  padding-inline-start: 24px;
  padding-inline-end: 24px;
  line-height: 1.16667;
  position: relative;
}

.blockquote:before, .rte blockquote:before {
  content: "";
  background: rgb(var(--text-color));
  opacity: .15;
  width: 71px;
  height: 56px;
  position: absolute;
  top: -10px;
  -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMDEgODAiPiAgICA8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTAgNDEuNzdWMGg0MS42MDR2NDEuNzdMMjAuMDI2IDgwSC45ODdMMjEuNzIgNDEuNzdIMHptNTkuMzk2IDBWMEgxMDF2NDEuNzdMNzkuNDIyIDgwSDYwLjM4M2wyMC43MzItMzguMjNINTkuMzk2eiIgZmlsbD0iY3VycmVudENvbG9yIiAvPjwvc3ZnPg==");
  mask-image: url("data:image/svg+xml;base64,PHN2ZyBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMDEgODAiPiAgICA8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTAgNDEuNzdWMGg0MS42MDR2NDEuNzdMMjAuMDI2IDgwSC45ODdMMjEuNzIgNDEuNzdIMHptNTkuMzk2IDBWMEgxMDF2NDEuNzdMNzkuNDIyIDgwSDYwLjM4M2wyMC43MzItMzguMjNINTkuMzk2eiIgZmlsbD0iY3VycmVudENvbG9yIiAvPjwvc3ZnPg==");
  -webkit-mask-size: 71px 56px;
  mask-size: 71px 56px;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}

.blockquote:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  left: calc(50% - 35.5px);
}

.rte blockquote:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  left: calc(50% - 35.5px);
}

.blockquote:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  right: calc(50% - 35.5px);
}

.rte blockquote:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  right: calc(50% - 35.5px);
}

.unordered-list, .text-container ul, .rte ul {
  margin-inline-start: 1.25em;
  margin-inline-end: 0;
  padding: 0;
  list-style-type: inherit;
}

.ordered-list, .text-container ol, .rte ol {
  margin-inline-start: 1em;
  margin-inline-end: 0;
  padding: 0;
}

.unordered-list li, .text-container ul li, .rte ul li {
  padding-block-start: 2px;
  padding-block-end: 2px;
  padding-inline-start: 0;
  padding-inline-end: 5px;
}

.ordered-list li, .text-container ol li, .rte ol li {
  padding-block-start: 3px;
  padding-block-end: 3px;
  padding-inline-start: 0;
  padding-inline-end: 9px;
}

.unordered-list li::marker, .text-container ul li::marker, .rte ul li::marker {
  color: inherit;
  font-size: 16px;
}

.ordered-list li::marker, .text-container ol li::marker, .rte ol li::marker {
  color: inherit;
  font-size: 11px;
}

.table-wrapper {
  overflow-x: auto;
}

.table, .rte table {
  --table-spacing: 16px;
  width: 100%;
}

.table--loose {
  --table-spacing: 24px;
}

.table th:not([class*="text--"]), .rte table th:not([class*="text--"]) {
  text-align: start;
}

.table th, .rte table th {
  border-bottom: 1px solid rgb(var(--border-color));
  padding-block-end: 15px;
  padding-inline: var(--table-spacing);
}

.table td.half-spaced, .rte table td.half-spaced {
  padding: calc(var(--table-spacing) / 2);
}

.table td, .rte table td {
  padding: var(--table-spacing);
  padding-block-end: 0;
}

.table tr[onclick] {
  cursor: pointer;
}

.table th:first-child, .rte table th:first-child, .table td:first-child, .rte table td:first-child {
  padding-inline-start: 0;
}

.table th:last-child, .rte table th:last-child, .table td:last-child, .rte table td:last-child {
  padding-inline-end: 0;
}

.table tfoot tr:first-child td, .rte table tfoot tr:first-child td {
  border-top: 1px solid rgb(var(--border-color));
}

.table tfoot tr:not(:first-child) td, .rte table tfoot tr:not(:first-child) td {
  padding-block-start: 8px;
}

.table--bordered td {
  border-top: 1px solid rgb(var(--border-color));
  padding-block-end: var(--table-spacing);
}

.table--footered tbody tr:last-child td {
  padding-block-end: var(--table-spacing);
}

@media screen and (max-width: 740px) {
  .table tfoot td, .rte table tfoot td {
    padding-block-start: 16px;
  }
}

@media screen and (min-width: 741px) {
  .ordered-list li::marker, .text-container ol li::marker, .rte ol li::marker {
    font-size: 12px;
  }

  .heading--xsmall {
    line-height: 1.46667;
  }

  .heading--small {
    line-height: 1.23077;
  }

  .heading--large {
    line-height: 1;
  }

  .h1, .rte h1 {
    letter-spacing: -1px;
    line-height: 1.04167;
  }

  .h2, .rte h2 {
    letter-spacing: 0px;
    line-height: 1.10526;
  }

  .h3, .rte h3 {
    letter-spacing: 0px;
    line-height: 1.0625;
  }

  .h4, .rte h4 {
    letter-spacing: 0px;
    line-height: 1.16667;
  }

  .h5, .rte h5 {
    letter-spacing: 0px;
    line-height: 1.2;
  }

  .h6, .rte h6 {
    line-height: 1.22222;
  }

  .blockquote, .rte blockquote {
    letter-spacing: -.6px;
    min-height: 63px;
    padding-inline-start: 49px;
    padding-inline-end: 0;
    line-height: 1.16667;
  }

  .blockquote--center {
    padding-inline-start: 0;
  }

  .blockquote:not(.blockquote--center):before, .rte blockquote:not(.blockquote--center):before {
    width: 80px;
    height: 63px;
    top: 0;
    -webkit-mask-size: 80px 63px;
    mask-size: 80px 63px;
  }

  .blockquote:not(.blockquote--center):not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
    left: 0;
  }

  .rte blockquote:not(.blockquote--center):not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
    left: 0;
  }

  .blockquote:not(.blockquote--center):is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
    right: 0;
  }

  .rte blockquote:not(.blockquote--center):is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
    right: 0;
  }

  .unordered-list li, .text-container ul li, .rte ul li {
    padding-block-start: 4px;
    padding-block-end: 4px;
    padding-inline-start: 0;
    padding-inline-end: 5px;
  }

  .ordered-list li, .text-container ol li, .rte ol li {
    padding-block-start: 4px;
    padding-block-end: 4px;
    padding-inline-start: 0;
    padding-inline-end: 9px;
  }
}

@media screen and (min-width: 1000px) {
  .table {
    --table-spacing: 24px;
  }

  .table--loose {
    --table-spacing: 32px;
  }
}

@media screen and (min-width: 1200px) {
  .heading--large, .rte .heading--large {
    line-height: 1;
  }

  .h1, .rte h1 {
    letter-spacing: -1px;
    line-height: 1.07143;
  }

  .h2, .rte h2 {
    letter-spacing: 0px;
    line-height: 1.08333;
  }

  .h3, .rte h3 {
    letter-spacing: 0px;
    line-height: 1.11111;
  }

  .h4, .rte h4 {
    letter-spacing: 0px;
    line-height: 1.13333;
  }

  .h5, .rte h5 {
    letter-spacing: 0px;
    line-height: 1.16667;
  }

  .h6, .rte h6 {
    line-height: 1.22222;
  }

  .blockquote, .rte blockquote {
    letter-spacing: -.7px;
    min-height: 80px;
    padding-inline-start: 69px;
    line-height: 1.13333;
  }

  .blockquote--center, .rte .blockquote--center {
    padding-inline-start: 0;
  }

  .blockquote:not(.blockquote--center):before, .rte blockquote:not(.blockquote--center):before {
    width: 101px;
    height: 81px;
    -webkit-mask-size: 101px 81px;
    mask-size: 101px 81px;
  }
}

.text-container p:not(.heading) + p, .rte p:not(.heading) + p, .text-container p + form, .rte p + form {
  margin-block-start: 24px;
}

.text-container .heading--large, .rte .heading--large {
  margin-block-start: 48px;
  margin-block-end: 40px;
  margin-inline-start: 0;
  margin-inline-end: 0;
}

.text-container .h1, .rte h1 {
  margin-block-start: 48px;
  margin-block-end: 24px;
  margin-inline-start: 0;
  margin-inline-end: 0;
}

.text-container .h2, .rte h2, .text-container .h3, .rte h3, .text-container .h4, .rte h4, .text-container .h5, .rte h5, .text-container .h6, .rte h6 {
  margin-block-start: 40px;
  margin-block-end: 16px;
  margin-inline-start: 0;
  margin-inline-end: 0;
  font-size: 1.5em;
}

.text-container .heading--small, .rte .heading--small {
  margin: 16px 0;
}

.text-container .heading--xsmall, .rte .heading--xsmall {
  margin: 12px 0;
}

.blockquote, .rte blockquote {
  margin-block-start: 48px;
  margin-block-end: 64px;
  margin-inline-start: 0;
  margin-inline-end: 0;
}

.text-container img:not([style*="float"]), .rte img:not([style*="float"]) {
  margin: 34px 0;
  display: block;
}

.text-container ul, .rte ul, .text-container ol, .rte ol {
  margin-block-start: 1em;
  margin-block-end: 1em;
}

@media screen and (min-width: 1000px) {
  .text-container p + form, .rte p + form {
    margin-block-start: 32px;
  }

  .text-container .h1, .rte h1 {
    margin-block-start: 48px;
    margin-block-end: 32px;
    margin-inline-start: 0;
    margin-inline-end: 0;
  }

  .text-container .h2, .rte h2, .text-container .h3, .rte h3, .text-container .h4, .rte h4 {
    margin-block-start: 48px;
    margin-block-end: 24px;
    margin-inline-start: 0;
    margin-inline-end: 0;
  }

  .text-container .h5, .rte h5, .text-container .h6, .rte h6 {
    margin-block-start: 40px;
    margin-block-end: 16px;
    margin-inline-start: 0;
    margin-inline-end: 0;
  }

  .blockquote, .rte blockquote {
    margin-block-start: 80px;
    margin-block-end: 96px;
    margin-inline-start: 0;
    margin-inline-end: 0;
  }
}

.rte > :first-child, .text-container > :first-child {
  margin-block-start: 0;
}

.rte > :last-child, .text-container > :last-child {
  margin-block-end: 0;
}

.heading--small + .heading--large {
  margin-block-start: 32px;
}

.heading--small + p, .heading--xsmall + p, .heading--small + p, .heading--small + .h1, .heading--small + h1, .heading--small + .h2, .heading--small + h2, .heading--small + .h3, .heading--small + h3, .heading--small + .h4, .heading--small + h4, .heading--small + .h5, .heading--small + h5, .heading--small + .h6, .heading--small + h6, .heading--xsmall + p, .heading--xsmall + .h1, .heading--xsmall + h1, .heading--xsmall + .h2, .heading--xsmall + h2, .heading--xsmall + .h3, .heading--xsmall + h3 {
  margin-block-start: 16px;
}

.heading--xsmall + .h4, .heading--xsmall + h4, .heading--xsmall + .h5, .heading--xsmall + h5, .heading--xsmall + .h6, .heading--xsmall + h6 {
  margin-block-start: 12px;
}

.heading + .button-wrapper, .heading + .button-group, p + .button-wrapper, p + .button-group, .button-wrapper + p, .button-group + p {
  margin-block-start: 32px;
}

@media screen and (min-width: 741px) {
  .heading--small + p, .heading--small + .h1, .heading--small + h1, .heading--small + .h2, .heading--small + h2, .heading--small + .h3, .heading--small + h3, .heading--small + .h4, .heading--small + h4 {
    margin-block-start: 24px;
  }

  .heading--small + .h5, .heading--small + h5, .heading--small + .h6, .heading--small + h6 {
    margin-block-start: 16px;
  }

  .heading--xsmall + .h1, .heading--xsmall + h1, .heading--xsmall + .h2, .heading--xsmall + h2 {
    margin-block-start: 24px;
  }
}

.shopify-section {
  color: rgb(var(--text-color));
  scroll-margin-top: calc(var(--header-height, 0px) * var(--enable-sticky-header)  + var(--announcement-bar-height, 0px) * var(--enable-sticky-announcement-bar));
}

.js .no-focus-outline :focus {
  outline: none;
}

.lock-all {
  touch-action: none;
  overflow: hidden;
}

@media screen and (max-width: 740px) {
  .lock-mobile {
    touch-action: none;
    overflow: hidden;
  }
}

.container, .shopify-policy__container.shopify-policy__container {
  max-width: var(--container-max-width);
  padding-inline: var(--container-gutter);
  --container-outer-margin: 0px;
  width: 100%;
  margin-inline-start: auto;
  margin-inline-end: auto;
}

.container--small {
  max-width: 930px;
}

@media screen and (max-width: 999px) {
  .container--flush {
    padding-inline-start: 0;
    padding-inline-end: 0;
  }
}

@media screen and (min-width: 1400px) {
  .container--medium {
    padding-inline: calc(var(--container-gutter)  + var(--grid-column-width)  + var(--grid-gap));
  }
}

.js .no-js {
  display: none !important;
}

.js .js\:hidden, .no-js .no-js\:hidden {
  display: none;
}

[reveal] {
  opacity: 0;
}

[reveal-visibility] {
  visibility: hidden;
}

.no-js [reveal] {
  opacity: 1;
}

.no-js [reveal-visibility] {
  visibility: visible;
}

.skip-to-content:focus {
  clip: auto;
  color: rgb(var(--text-color));
  background-color: rgb(var(--background));
  opacity: 1;
  z-index: 10000;
  width: auto;
  height: auto;
  margin: 0;
  padding: 10px;
  transition: none;
}


.vertical-breather {
  padding-block: var(--vertical-breather);
}


.vertical-breather--tight {
  padding-block: var(--vertical-breather-tight);
}

.vertical-breather--margin {
  margin-block: var(--vertical-breather);
  padding-block-start: 0 !important;
  padding-block-end: 0 !important;
}

.vertical-breather--margin.vertical-breather--tight {
  margin-block: var(--vertical-breather-tight);
}

@media screen and (min-width: 741px) {
  .vertical-breather--extra-tight {
    padding-block-start: 48px;
    padding-block-end: 48px;
  }

  .vertical-breather--margin.vertical-breather--extra-tight {
    margin-block-start: 48px;
    margin-block-end: 48px;
  }
}

.anchor {
  scroll-margin-top: calc(var(--header-height, 0px) * var(--enable-sticky-header)  + var(--announcement-bar-height, 0px) * var(--enable-sticky-announcement-bar)  + var(--anchor-offset, 20px));
}

.anchor.vertical-breather:not(.vertical-breather--margin) {
  --anchor-offset: 0px;
}

.anchor.vertical-breather--margin {
  --anchor-offset: var(--vertical-breather);
}

.anchor.vertical-breather--tight.vertical-breather--margin {
  --anchor-offset: var(--vertical-breather-tight);
}

.icon {
  vertical-align: middle;
  pointer-events: none;
  background: none;
  display: block;
  overflow: visible;
}

.icon--inline {
  display: inline-block;
}

.icon-text {
  align-items: center;
  display: flex;
}

@media screen and (max-width:741px) {
  .icon--picto-lock, .icon--picto-address, .icon--picto-credit-card { 
    width: 20px
  }
}

.iconmax {
    display: flex;
    justify-content: center;
    align-items: center;
}

.iconmax img {
    margin-inline-end: 0px!important;
}

.icon-text svg, .icon-text img {
  margin-inline-end: 12px;
}
  
.icon--picto-address {
   margin-inline-end: 8px!important
 }

@supports (scale: 1) {
  [dir="rtl"] .icon--direction-aware {
    scale: -1 1;
  }
}

@supports not (scale: 1) {
  [dir="rtl"] .icon--direction-aware {
    transform: scale(-1, 1);
  }
}

.list--unstyled {
  margin: 0;
  padding: 0;
  list-style: none;
}

.loading-bar {
  opacity: 0;
  background: rgb(var(--loading-bar-background));
  transform-origin: 0;
  z-index: 50;
  pointer-events: none;
  width: 100%;
  height: 3px;
  transition: transform .25s ease-in-out;
  position: fixed;
  top: 0;
  left: 0;
  transform: scaleX(0);
}

.loading-bar.is-visible {
  opacity: 1;
}

.section {
  margin: var(--vertical-breather) 0;
  display: block;
}

.section--tight {
  margin-block: var(--vertical-breather-tight);
}

.section:empty {
  display: none;
}

.section--flush {
  margin-block-start: 0;
  margin-block-end: 0;
}

.section__color-wrapper {
  background: rgb(var(--section-background, var(--background)));
  display: flow-root;
}

.section__color-wrapper--boxed {
  border-radius: var(--block-border-radius);
}

.section__header {
  text-align: center;
  max-width: 1000px;
  margin-block-end: min(32px, var(--vertical-breather));
  margin-inline-start: auto;
  margin-inline-end: auto;
}

.section__header:only-child {
  margin-block-end: 0;
}

.section__header--tight {
  max-width: 800px;
}

.section__header--left {
  text-align: start;
  margin-left: 0;
}

.section__header--right {
  text-align: end;
  margin-right: 0;
}

.section__footer {
  text-align: center;
  margin-block-start: 32px;
}

@media screen and (min-width: 741px) {
  .section__header {
    margin-block-end: min(40px, var(--vertical-breather));
  }

  .section__footer {
    margin-block-start: min(40px, var(--vertical-breather));
  }

}

@media screen and (min-width: 1000px) {
  .section__header {
    margin-block-end: min(48px, var(--vertical-breather));
  }

  .section__footer {
    margin-block-start: min(48px, var(--vertical-breather));
  }

}

.page-header {
  text-align: center;
  position: relative;
}

.page-header--secondary {
  background: rgb(var(--secondary-background));
}

.page-header--clear:after, .page-header:before {
  content: "";
  clear: left;
  display: table;
}

.page-header__text-wrapper {
  margin: 60px 0 37px 0;
}

.page-header--small .page-header__text-wrapper {
  margin-block-start: 24px;
  margin-block-end: 24px;
}

.page-header--alone .page-header__text-wrapper {
  margin-block-end: 72px;
}

.page-content, .shopify-policy__body {
  max-width: 1200px;
  margin-block-end: min(var(--vertical-breather), 80px);
  margin-inline-start: auto;
  margin-inline-end: auto;
}

.page-content--medium, .shopify-policy__body {
  max-width: 670px;
}

.page-content--small {
  max-width: 460px;
}

.page-content--fluid {
  max-width: none;
}

@media screen and (min-width: 741px) {
  .page-header__text-wrapper {
    margin-block-start: 68px;
    margin-block-end: 68px;
  }

  .page-header--small .page-header__text-wrapper {
    margin-block-start: 48px;
    margin-block-end: 40px;
  }

  .page-header--alone .page-header__text-wrapper {
    margin-block-end: 120px;
  }

  .breadcrumb--floating + .page-header__text-wrapper {
    margin-block-start: 65px;
    text-align:center
  }
}

.breadcrumb {
  z-index: 1;
}

.breadcrumb--floating {
  position: absolute;
  top: 0;
}

.breadcrumb--floating:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 0;
}

.breadcrumb--floating:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 0;
}

.breadcrumb__list {
  margin: 0;
  padding: 26px 0;
  list-style: none;
  display: inline-flex;
}

.breadcrumb__item + .breadcrumb__item:before {
  content: "/";
  opacity: .7;
  float: left;
  margin: 0 4px;
}

.breadcrumb__link {
  transition: opacity .2s ease-in-out;
}

.breadcrumb__link:not([aria-current="page"]):not(:hover) {
  opacity: .7;
}

[dir="rtl"] .breadcrumb__item + .breadcrumb__item:before {
  float: right;
}



.pagination {
  justify-content: center;
  margin-block-start: 40px;
  display: flex;
}

.pagination__nav {
  border-collapse: separate;
  table-layout: fixed;
  display: table;
}

.pagination__nav-item {
  box-shadow: 1px 0 0 0 rgb(var(--border-color)), 0 1px 0 0 rgb(var(--border-color)), 1px 1px 0 0 rgb(var(--border-color)), 1px 0 0 0 rgb(var(--border-color)) inset, 0 1px 0 0 rgb(var(--border-color)) inset;
  vertical-align: middle;
  text-align: center;
  width: 47px;
  height: 47px;
  display: table-cell;
  position: relative;
}

.pagination__nav-item:first-child:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-left-radius: var(--button-border-radius);
  border-bottom-left-radius: var(--button-border-radius);
}

.pagination__nav-item:first-child:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  border-top-left-radius: var(--button-border-radius);
  border-bottom-left-radius: var(--button-border-radius);
}

.pagination__nav-item:first-child:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-right-radius: var(--button-border-radius);
  border-bottom-right-radius: var(--button-border-radius);
}

.pagination__nav-item:first-child:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  border-top-right-radius: var(--button-border-radius);
  border-bottom-right-radius: var(--button-border-radius);
}

.pagination__nav-item:last-child:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-right-radius: var(--button-border-radius);
  border-bottom-right-radius: var(--button-border-radius);
}

.pagination__nav-item:last-child:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  border-top-right-radius: var(--button-border-radius);
  border-bottom-right-radius: var(--button-border-radius);
}

.pagination__nav-item:last-child:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-left-radius: var(--button-border-radius);
  border-bottom-left-radius: var(--button-border-radius);
}

.pagination__nav-item:last-child:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  border-top-left-radius: var(--button-border-radius);
  border-bottom-left-radius: var(--button-border-radius);
}

.pagination__nav-item svg {
  margin: 0 auto;
}

.pagination__nav-item[aria-current]:before {
  content: "";
  pointer-events: none;
  z-index: 1;
  max-width: calc(100% - 3px);
  max-height: calc(100% - 3px);
  position: absolute;
  top: 2px;
  bottom: 0;
  left: 2px;
  right: 0;
  box-shadow: 0 0 0 2px;
}

@media screen and (min-width: 741px) {
  .pagination {
    margin-block-start: 48px;
  }

  .pagination__nav-item {
    width: 56px;
    height: 56px;
  }
}

.linklist__item:not(:first-child) {
  padding-block-start: 12px;
}

.linklist__item a {
  word-break: break-word;
  display: inline-block;
}

@media screen and (min-width: 1000px) {
  .linklist__item:not(:first-child) {
    padding-block-start: 6px;
  }
}

.animated-plus {
  display: inline-block;
  width: 10px;
  height: 10px;
  position: relative;
  padding-top: 13px; 
  transition: transform 0.3s ease; 
}

.animated-plus:before {
  content: "";
  position: absolute;
  width: 8px; 
  height: 8px; 
  border-right: 2px solid currentColor; 
  border-bottom: 2px solid currentColor; 
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(45deg); 
  transition: transform 0.3s ease; 
}

[aria-expanded="true"] > .animated-plus:before {
  transform: translate(-50%, -50%) rotate(-135deg); 
}



.aspect-ratio {
  margin-inline-start: auto;
  margin-inline-end: auto;
  display: block;
  position: relative;
}

.aspect-ratio img, .aspect-ratio video, .aspect-ratio svg {
  top: 0;
  object-fit: cover;
  object-position: center;
  width: 100%;
  max-width: 100%;
  height: 100%;
  max-height: 100%;
  position: absolute;
  left: 0;
}

.aspect-ratio--square img, .aspect-ratio--short img, .aspect-ratio--tall img, .aspect-ratio--rectangular img {
  object-fit: contain;
  top: 50%;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 50%;
  transform: translate(-50%, -50%) !important;
}

.aspect-ratio--square {
  padding-block-end: 100% !important;
}

.aspect-ratio--short {
  padding-block-end: 75% !important;
}

.aspect-ratio--tall {
  padding-block-end: 150% !important;
}

@supports (aspect-ratio: 1 / 1) {
  .aspect-ratio {
    aspect-ratio: var(--aspect-ratio);
    padding-bottom: 0 !important;
  }

  .aspect-ratio--natural img, .aspect-ratio--natural video, .aspect-ratio--natural svg {
    width: auto;
    position: relative;
  }

  .aspect-ratio--square {
    aspect-ratio: 1;
  }

  .aspect-ratio--short {
    aspect-ratio: 4 / 3;
  }

  .aspect-ratio--tall {
    aspect-ratio: 2 / 3;
  }

}


.placeholder-image {
  background-color: rgb(var(--secondary-background));
  padding-block-end: 75%;
  position: relative;
}

.placeholder-background {
  background-color: rgb(var(--secondary-background));
}

.placeholder-image svg {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
}

.placeholder-image svg:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 0;
}

.placeholder-image svg:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 0;
}

@media screen and (min-width: 1000px) {
  .placeholder-image {
    padding-block-end: 45%;
  }
}

.progress-bar {
  background: rgba(var(--text-color), .15);
  height: 2px;
  display: block;
  position: relative;
}

.progress-bar:before {
  content: "";
  width: calc(100% / var(--divider));
  transform: translateX(calc(var(--transform-logical-flip) * var(--transform, 0%) * (var(--divider)  - 1)));
  transform-origin: var(--transform-origin-start);
  background: rgb(var(--text-color));
  height: 100%;
  position: absolute;
  top: 0;
}

.progress-bar:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  left: 0;
}

.progress-bar:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  right: 0;
}

[draggable].is-scrollable {
  cursor: none;
}

.custom-drag-cursor {
  pointer-events: none;
  visibility: visible;
  width: 60px;
  height: 60px;
  transition: visibility .15s linear;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
}

.custom-drag-cursor svg {
  opacity: 1;
  transition: transform .15s ease-in-out, opacity .15s ease-in-out;
  transform: scale(1);
}

.custom-drag-cursor[hidden] svg {
  opacity: 0;
  transform: scale(.5);
}

@media screen and (max-width: 999px), screen and not (pointer: fine) {
  .custom-drag-cursor {
    display: none;
  }
}

.tap-area {
  position: relative;
}

.tap-area:before {
  content: "";
  position: absolute;
  top: -6px;
  bottom: -6px;
  left: -6px;
  right: -6px;
}

.tap-area--large:before {
  top: -10px;
  bottom: -10px;
  left: -10px;
  right: -10px;
}

@media screen and (max-width: 999px) {
  .scroller {
    scroll-snap-type: x mandatory;
    margin-inline: calc(-1 * var(--container-gutter));
    scrollbar-width: none;
    overflow-x: auto;
    overflow-y: hidden;
  }

  .scroller::-webkit-scrollbar {
    display: none;
  }

  .scroller__inner {
    padding-inline: var(--container-gutter);
    min-width: min-content;
    margin-inline-start: auto;
    margin-inline-end: auto;
  }
}

.hide-scrollbar {
  scrollbar-width: none;
  overflow-x: auto;
  overflow-y: hidden;
}

.hide-scrollbar::-webkit-scrollbar {
  display: none;
}

.js .animated-element {
  visibility: hidden;
}

.square-separator {
  vertical-align: middle;
  background: currentColor;
  flex-shrink: 0;
  width: 4px;
  height: 4px;
  margin: 0 8px;
  display: inline-block;
  position: relative;
}

.square-separator--block {
  margin-inline-start: 12px;
  margin-inline-end: 12px;
  top: 1px;
}

.square-separator--subdued {
  opacity: .5;
}

@keyframes prevNextButtonKeyframe {
  0% {
    transform: translateX(0%);
  }

  50% {
    transform: translateX(calc(50% + 10px));
  }

  51% {
    transform: translateX(calc(-50% - 10px));
  }

  100% {
    transform: translateX(0%);
  }
}

.prev-next-buttons {
  pointer-events: none;
  display: inline-grid;
}

.prev-next-buttons--row {
  grid-auto-flow: column;
}

.prev-next-button {
  background: #3a9d5f;
  color: white;
  border: 1px solid rgba(var(--prev-next-button-color, var(--root-text-color)), .15);
  border-radius: var(--button-border-radius);
  pointer-events: auto;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  transition: color .2s ease-in-out;
  display: flex;
  overflow: hidden;
}

.prev-next-button[disabled] {
  color: rgba(var(--prev-next-button-color), .3);
}

.prev-next-button svg {
  width: 100%;
}

.prev-next-buttons:not(.prev-next-buttons--row) .prev-next-button:first-child:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)), .prev-next-buttons:not(.prev-next-buttons--row) .prev-next-button:first-child:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.prev-next-buttons:not(.prev-next-buttons--row) .prev-next-button:last-child:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)), .prev-next-buttons:not(.prev-next-buttons--row) .prev-next-button:last-child:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.prev-next-buttons--row .prev-next-button:first-child:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.prev-next-buttons--row .prev-next-button:first-child:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.prev-next-buttons--row .prev-next-button:last-child:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.prev-next-buttons--row .prev-next-button:last-child:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

@media screen and (min-width: 741px) {
  .prev-next-button:not(.prev-next-button--small) {
    width: 56px;
    height: 56px;
  }

  .prev-next-buttons:not(.prev-next-buttons--row) .prev-next-button:last-child {
    border-top: none;
  }

  .prev-next-buttons--row .prev-next-button:last-child {
    border-left: none;
  }
}

@media screen and (pointer: fine) {
  .prev-next-button--prev:hover svg {
    animation: .3s ease-in-out reverse forwards prevNextButtonKeyframe;
  }

  .prev-next-button--next:hover svg {
    animation: .3s ease-in-out forwards prevNextButtonKeyframe;
  }
}

.dots-nav {
  flex-wrap: wrap;
  justify-content: flex-start;
  margin: -6px;
  display: flex;
}

.dots-nav--centered {
  justify-content: center;
}

.dots-nav__item {
  background: rgb(var(--text-color));
  border-radius: min(var(--button-border-radius), 6px);
  opacity: .3;
  width: 6px;
  height: 6px;
  margin: 6px;
  transition: opacity .2s ease-in-out;
  position: relative;
}

.dots-nav__item[aria-current="true"] {
  opacity: 1;
}

.price-list {
  flex-wrap: wrap;
  align-items: baseline;
  display: inline-flex;
}

.price-list--centered {
  justify-content: center;
}

.price-list--stack {
  display: inline-grid;
}

.price-list:not(.price-list--stack) > .price:not(:last-child) {
  margin-inline-end: 10px;
}

.price-list > .price--block {
  flex-basis: 100%;
  margin-inline-start: 0 !important;
}

.price-list + .link {
  margin-inline-start: 16px;
}

.price--highlight {
  color: rgb(var(--product-on-sale-accent));
  font-size: 1.1em;
  font-weight:500
}

@media screen and (max-width: 741px) {
  .price--highlight {
    font-size: 1em;
  }
}

.price--compare {
    text-decoration: line-through;
    color: #282828a3;
    font-weight: 500;
    text-decoration-thickness: 1px;
}

.price--large {
  font-size: calc(var(--base-font-size)  + 3px);
}

.unit-price-measurement {
  display: inline-flex;
}

@media screen and (min-width: 1000px) {
  .price--large:not(.price--compare) {
    font-size: calc(var(--base-font-size)  + 7px);
  }
}

.iconlabel {
  width: 19px;
  margin-left: 1px;
}

@media screen and (max-width: 741px) {
  .iconlabel {
    width: 13px;
  }
}


.label {
  vertical-align: top;
  font-family: var(--text-font-family);
  font-style: var(--text-font-style);
  font-weight: 500;
  letter-spacing: .5px;
  border-radius: min(var(--block-border-radius), 2px);
  padding: 0 5px;
  font-size: 10px;
  display: inline-block;
}

.label--highlight {
  background: rgb(var(--product-on-sale-accent));
  color: #fff;
  padding: 3px 5px;
}

.label--subdued {
  background: rgb(var(--product-sold-out-accent));
  color: #fff;
}

.label--new {
    background: #282828;
    color: #fff;
    border-radius: 50px;
    padding: 2px 5px;
}



.labelmax {
  vertical-align: top;
  font-family: var(--text-font-family);
  font-style: var(--text-font-style);
  font-weight: var(--text-font-bold-weight);
  text-transform: uppercase;
  letter-spacing: .5px;
  border-radius: min(var(--block-border-radius), 2px);
  padding: 0 5px;
  font-size: 10px;
  display: inline-block;
}


.label--subdueddefault {
  background: #ffa447;
  color: #fff;
  font-size: 11px!important;
}

.label--subduedsolar {
  background: #ffa447;
  color: #fff;
  font-size: 11px!important;
}

.label--solarcolumn {
  background: #ffa447;
  color: #fff;
  font-size: 20px!important;
  padding: 5px 15px;
  font-weight: 700;
}

.label--subdued230 {
  background: #b35656;
  color: #fff;
  font-size: 11px!important;
}

.label--230column {
  background: #b35656;
  color: #fff;
  font-size: 20px!important;
  padding: 5px 15px;
  font-weight: 700;
}

.label--subdued12 {
  background: #3ca0d1;
  color: #fff;
  font-size: 11px!important;
}

.label--12column {
  background: #3ca0d1;
  color: #fff;
  font-size: 20px!important;
  padding: 5px 15px;
  font-weight: 700;
}

.label--label2image {
    background: #f4f4f4;
    color: #000;
    font-weight: 500;
}

@media screen and (max-width: 741px) {
  .label--label2image {
    font-size: 9px!important;
    font-weight: 500
  }
  .label--subdueddefault {
    background: #ffa447;
    color: #fff;
    font-size: 10px!important;
}

  .label--subduedsolar {
    background: #ffa447;
    color: #fff;
    font-size: 10px!important;
}

  .label--subdued230 {
    background: #b35656;
    color: #fff;
    font-size: 10px!important;
}

  .label--subdued12 {
    background: #628cb9;
    color: #fff;
    font-size: 10px!important;
  }
}

.label--custom {
  background: rgb(var(--product-custom-label-background));
  color: rgb(var(--product-custom-label-text-color));
}

.label--custom2 {
  background: rgb(var(--product-custom-label-2-background));
  color: rgb(var(--product-custom-label-2-text-color));
}

.label-list {
  pointer-events: none;
  flex-direction: column;
  align-items: flex-start;
  display: flex;
}

.label-list:not(.label-list--horizontal) .label:not(:last-child) {
  margin-block-end: 4px;
}

.label-list--horizontal {
  flex-direction: row;
}

.label-list--horizontal .label:not(:last-child) {
  margin-inline-end: 4px;
}

@media screen and (min-width: 741px) {
  .label {
    font-size: 11px;
  }
}

.tag-list {
  flex-wrap: wrap;
  align-items: center;
  margin: -6px;
  display: flex;
}

.tag {
  background: rgba(var(--text-color), .05);
  align-items: center;
  margin: 6px;
  padding-block-start: 7px;
  padding-block-end: 8px;
  padding-inline-start: 14px;
  padding-inline-end: 13px;
  display: flex;
}

.tag__icon {
  cursor: pointer;
  margin-block-start: 1px;
  margin-block-end: 0;
  margin-inline-start: 0;
  margin-inline-end: 9px;
  position: relative;
}

.tag-link {
  padding-inline-start: 6px;
}

.social-media {
  flex-wrap: wrap;
  display: flex;
}

.social-media__item {
  box-shadow: 1px 0 0 0 rgb(var(--border-color)), 0 1px 0 0 rgb(var(--border-color)), 1px 1px 0 0 rgb(var(--border-color)), 1px 0 0 0 rgb(var(--border-color)) inset, 0 1px 0 0 rgb(var(--border-color)) inset;
  position: relative;
  transform: translateZ(0);
}

.no-focus-outline .social-media__item {
  overflow: hidden;
}

.social-media__item:before {
  content: "";
  clip-path: polygon(0 25%, 100% 0, 100% 100%, 0% 100%);
  transform-origin: bottom;
  pointer-events: none;
  z-index: 1;
  background: currentColor;
  width: calc(100% + 1px);
  height: calc(100% + 1px);
  transition: transform .3s cubic-bezier(.215, .61, .355, 1), clip-path .3s cubic-bezier(.215, .61, .355, 1);
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  transform: scaleY(0);
}

.social-media:not(.social-media--no-radius) .social-media__item:first-child:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-left-radius: var(--button-border-radius);
  border-bottom-left-radius: var(--button-border-radius);
}

.social-media:not(.social-media--no-radius) .social-media__item:first-child:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-right-radius: var(--button-border-radius);
  border-bottom-right-radius: var(--button-border-radius);
}

.social-media:not(.social-media--no-radius) .social-media__item:last-child:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-right-radius: var(--button-border-radius);
  border-bottom-right-radius: var(--button-border-radius);
}

.social-media:not(.social-media--no-radius) .social-media__item:last-child:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-left-radius: var(--button-border-radius);
  border-bottom-left-radius: var(--button-border-radius);
}

.social-media__link {
  color: currentColor;
  z-index: 1;
  justify-content: center;
  align-items: center;
  width: 45px;
  height: 45px;
  transition: color .3s cubic-bezier(.215, .61, .355, 1);
  display: flex;
  position: relative;
}

@media screen and (min-width: 741px) {
  .social-media__link {
    width: 55px;
    height: 55px;
  }
}

@media screen and (pointer: fine) {
  .social-media__item:hover .social-media__link {
    color: rgb(var(--background));
  }

  .social-media__item:hover:before {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
    transform: scaleY(1);
  }
}

.banner {
  text-align: start;
  justify-content: flex-start;
  align-items: flex-start;
  padding: 12px 16px;
  display: flex;
}

.banner--centered {
  justify-content: center;
}

.banner--margin {
  margin-block-start: 24px;
}

.banner__ribbon {
  margin-inline-end: 10px;
}

.banner__content {
  margin: 0;
}

.banner--success {
  --text-color: rgb(var(--success-color));
  background: rgb(var(--success-background));
  color: rgb(var(--success-color));
}

.banner--error {
  --text-color: rgb(var(--error-color));
  background: rgb(var(--error-background));
  color: rgb(var(--error-color));
}

.banner__content ul {
  padding-inline-start: 10px;
  list-style-position: inside;
}

@media screen and (min-width: 741px) {
  .banner {
    padding: 13px 18px;
  }
}

.tabs-nav {
  margin-block-end: 32px;
  display: block;
  position: relative;
}

.tabs-nav:not(:first-child) {
  margin-block-start: 24px;
}

.tabs-nav__scroller {
  display: block;
}

.tabs-nav__scroller-inner {
  line-height: 1;
  position: relative;
}

.tabs-nav__item-list {
  vertical-align: top;
  box-shadow: 0 -1px rgb(var(--border-color)) inset;
  grid-auto-columns: max-content;
  grid-auto-flow: column;
  justify-content: flex-start;
  gap: 32px;
  display: inline-grid;
}

.tabs-nav__item {
  opacity: .7;
  padding-block-end: 18px;
  transition: opacity .25s ease-in-out;
}

.tabs-nav__item[aria-expanded="true"] {
  opacity: 1;
}

.tabs-nav__position {
  transform: scaleX(var(--scale, 0)) translateX(var(--translate, 0));
  transform-origin: 0;
  background: #3A9D5F;
  width: 100%;
  height: 2px;
  position: absolute;
  bottom: 0;
}

.tabs-nav__position:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 0;
}

.tabs-nav__position:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 0;
}

.tabs-nav__position.is-initialized {
  transition: transform .4s ease-in-out;
}

@supports (scale: 0) {
  .tabs-nav__position {
    scale: var(--scale, 0) 1;
    translate: calc(var(--translate, 0) * var(--scale, 0));
    transform: none;
  }

  .tabs-nav__position.is-initialized {
    transition: scale .2s ease-in-out, translate .4s ease-in-out;
  }
}

.tabs-nav--center .tabs-nav__scroller-inner {
  max-width: max-content;
  margin-inline-start: auto;
  margin-inline-end: auto;
}

.tabs-nav__arrows {
  z-index: 1;
  display: none;
  position: absolute;
  top: -5px;
}

.tabs-nav__arrows:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 0;
}

.tabs-nav__arrows:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 0;
}

.tabs-nav__scroller.is-scrollable + .tabs-nav__arrows {
  display: flex;
}

.tabs-nav__arrow-item {
  background: rgb(var(--background));
  border: 1px solid rgb(var(--border-color));
  justify-content: center;
  align-items: center;
  width: 24px;
  height: 24px;
  display: flex;
}

.tabs-nav__arrow-item + .tabs-nav__arrow-item {
  border-inline-start: none;
}

.tabs-nav[arrows] .tabs-nav__scroller {
  overflow: hidden;
}

.tabs-nav[arrows] .tabs-nav__scroller.is-scrollable:before {
  content: "";
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(to var(--transform-origin-start), rgb(var(--section-background, var(--background))), rgba(var(--section-background, var(--background)), 0));
  width: 48px;
  height: 100%;
  position: absolute;
  top: -2px;
}

.tabs-nav[arrows] .tabs-nav__scroller.is-scrollable:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  right: 48px;
}

.tabs-nav[arrows] .tabs-nav__scroller.is-scrollable:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  left: 48px;
}

.tabs-nav[arrows] .tabs-nav__item-list {
  width: 100%;
  min-width: max-content;
  margin-inline-end: 0;
}

.tabs-nav[arrows] .tabs-nav__item-list:after {
  content: "";
  width: 35px;
  display: block;
}

.tabs-nav--no-border.tabs-nav--narrow {
  margin-block-end: 24px;
}

.tabs-nav--no-border .tabs-nav__item-list {
  box-shadow: none;
}

.tabs-nav--no-border.tabs-nav--narrow .tabs-nav__item {
  padding-block-end: 5px;
}

@media screen and (max-width: 999px) {
  .tabs-nav--edge2edge {
    margin-inline: calc(-1 * var(--container-gutter));
  }

  .tabs-nav--edge2edge .tabs-nav__scroller-inner {
    padding-inline: var(--container-gutter);
    min-width: max-content;
  }
}

@media screen and (min-width: 741px) {
  .tabs-nav:not(:first-child) {
    margin-block-start: 32px;
  }

  .tabs-nav--no-border.tabs-nav--narrow {
    margin-block-end: 32px;
  }

  .tabs-nav__item-list {
    gap: 54px;
  }

  .tabs-nav--loose .tabs-nav__item-list {
    gap: 72px;
  }

  .tabs-nav--narrow .tabs-nav__item-list {
    gap: 40px;
  }
}

.empty-state {
  text-align: center;
  margin: 100px 0;
  position: relative;
}

.empty-state--bottom-only {
  margin-block-start: 24px;
}

.empty-state__background-text {
  text-align: center;
  opacity: .05;
  width: 100%;
  margin-block-start: -20px;
  font-size: 120px;
  font-weight: bold;
  line-height: 0;
  position: absolute;
}

.empty-state__background-text:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 0;
}

.empty-state__background-text:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 0;
}

@media screen and (min-width: 741px) {
  .empty-state {
    margin-block-start: 150px;
    margin-block-end: 150px;
  }

  .empty-state--bottom-only {
    margin-block-start: 50px;
  }

  .empty-state__background-text {
    margin-block-start: -35px;
    font-size: 200px;
    position: absolute;
  }
}

@media screen and (min-width: 1200px) {
  .empty-state {
    margin-block-start: 225px;
    margin-block-end: 225px;
  }

  .empty-state--bottom-only {
    margin-block-start: 50px;
  }
}

.bubble-count {
  color: rgb(var(--background));
  background: rgb(var(--heading-color));
  font-weight: var(--text-font-bold-weight);
  font-family: var(--text-font-family);
  font-style: var(--text-font-style);
  letter-spacing: 0;
  border-radius: 21px;
  justify-content: center;
  align-items: center;
  min-width: 21px;
  height: 21px;
  font-size: 9px;
  line-height: 1;
  transition: background .2s ease-in-out, color .2s ease-in-out;
  display: inline-flex;
  position: relative;
}

.bubble-count--top {
  vertical-align: top;
}

.quantity-selector {
  --quantity-selector-height: 46px;
  border: 1px solid rgb(var(--border-color));
  border-radius: var(--button-border-radius);
  vertical-align: middle;
  justify-content: flex-start;
  align-items: center;
  display: inline-flex;
}

.quantity-selector__button {
  height: var(--quantity-selector-height);
  width: var(--quantity-selector-height);
  justify-content: center;
  align-items: center;
  display: flex;
}

.quantity-selector__input {
  height: var(--quantity-selector-height);
  line-height: var(--quantity-selector-height);
  text-align: center;
  -webkit-appearance: none;
  appearance: none;
  background: none;
  border: none;
  padding: 0 10px;
}

.quantity-selector--small {
  --quantity-selector-height: 28px;
}

.quantity-selector--small .quantity-selector__input {
  padding: 0 2px;
}

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

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

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

  100% {
    stroke-dasharray: 89 200;
    stroke-dashoffset: -124px;
  }
}

@keyframes spinnerColor {
  0% {
    stroke: currentColor;
  }

  40% {
    stroke: currentColor;
  }

  66% {
    stroke: currentColor;
  }

  80%, 90% {
    stroke: currentColor;
  }
}

.spinner svg {
  transform-origin: center;
  margin: auto;
  animation: 2s linear infinite spinnerRotate;
}

.spinner circle {
  animation: 1.5s ease-in-out infinite spinnerDash, 6s ease-in-out infinite spinnerColor;
}

[data-tooltip] {
  position: relative;
}

[data-tooltip]:before {
  content: attr(data-tooltip);
  white-space: nowrap;
  background: rgb(var(--heading-color));
  color: rgb(var(--background));
  font-size: calc(var(--base-font-size)  - 2px);
  pointer-events: none;
  visibility: hidden;
  opacity: 0;
  z-index: 1;
  padding: 5px 10px;
  transition: visibility .2s ease-in-out, opacity .2s ease-in-out;
  position: absolute;
  bottom: calc(100% + 6px);
  left: 50%;
  transform: translateX(-50%);
}

[data-tooltip]:after {
  content: "";
  border-style: solid;
  border-width: 6px;
  border-color: transparent transparent rgb(var(--heading-color)) rgb(var(--heading-color));
  visibility: hidden;
  z-index: 1;
  opacity: 0;
  width: 0;
  height: 0;
  transition: visibility .2s ease-in-out, opacity .2s ease-in-out;
  position: absolute;
  bottom: calc(100% + 1px);
  left: calc(50% - 7px);
  transform: rotate(-45deg);
  box-shadow: -1px 1px 1px #0000001a;
}

[data-tooltip]:hover:before, [data-tooltip]:hover:after {
  opacity: 1;
  visibility: visible;
}

[data-tooltip-position="bottom-left"]:before {
  top: calc(100% + 4px);
  bottom: auto;
  left: auto;
  right: -6px;
  transform: none;
}

[data-tooltip-position="bottom-left"]:after {
  top: calc(100% - 1px);
  left: calc(50% - 6px);
  transform: rotate(135deg);
}

.cart-notification {
  --heading-color: 255, 255, 255;
  --text-color: 255, 255, 255;
  --cart-notification-background: rgb(var(--success-color));
  transform: translateY(var(--cart-notification-offset, 0px));
  color: rgb(var(--text-color));
  visibility: visible;
  width: 100%;
  transition: visibility .25s ease-in-out, transform .25s ease-in-out;
  display: block;
  position: absolute;
  top: 100%;
  overflow: hidden;
}

.cart-notification--error {
  --cart-notification-background: rgb(var(--error-color));
}

.cart-notification--drawer {
  --cart-notification-offset: 0;
  top: var(--header-height-without-bottom-nav);
  z-index: 1;
}

.cart-notification--fixed {
  position: fixed;
  top: 0;
}

.cart-notification[hidden] {
  visibility: hidden;
}

.cart-notification__overflow {
  background: var(--cart-notification-background);
  transition: opacity .25s ease-in-out, transform .25s ease-in-out;
  transform: translateY(0);
}

.cart-notification[hidden] .cart-notification__overflow {
  opacity: 0;
  transform: translateY(-100%);
}

.cart-notification__wrapper {
  justify-content: center;
  align-items: flex-start;
  padding-block-start: 14px;
  padding-block-end: 14px;
  display: flex;
  position: relative;
}

.cart-notification .icon--cart-notification {
  position: relative;
  top: 2px;
}

.cart-notification__text-wrapper {
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  margin-inline-start: 12px;
  display: flex;
}

.cart-notification__heading {
  margin-inline-end: 12px;
  font-size: 14px;
}

.cart-notification__close {
  margin-block-start: -1px;
  position: absolute;
}

.cart-notification__close:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 0;
}

.cart-notification__close:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 0;
}

.cart-notification--drawer .cart-notification__text-wrapper {
  flex-grow: 1;
  justify-content: space-between;
}

@media screen and (max-width: 740px) {
  .cart-notification__text-wrapper {
    flex-grow: 1;
    justify-content: space-between;
  }
}

@media screen and (max-width: 999px) {
  .cart-notification {
    transform: none !important;
  }
}

@media screen and (min-width: 741px) {
  .cart-notification__wrapper {
    padding-block-start: 19px;
    padding-block-end: 19px;
  }

  .cart-notification .icon--cart-notification {
    top: 4px;
  }

  .cart-notification__heading {
    margin-inline-end: 16px;
    font-size: 16px;
  }

  .cart-notification__close svg {
    width: 15px;
    height: 15px;
  }
}

.payment-methods-list {
  grid-template-columns: repeat(auto-fit, 38px);
  gap: 8px;
  display: grid;
}

.payment-methods-list--center {
  justify-content: center;
}

@media screen and (min-width: 741px) {
  .payment-methods-list--auto {
    grid-auto-flow: column;
  }
}

.link-bar {
  text-align: center;
  display: block;
  position: relative;
}

.link-bar__wrapper {
  align-items: center;
  max-width: 100%;
  display: inline-flex;
  position: relative;
  padding: 10px;
  border-radius: 4px;
  overflow: hidden;
}

.link-bar__scroller {
  scroll-snap-type: x proximity;
}

.link-bar__title {
  z-index: 1;
  background: rgb(var(--background));
  flex-shrink: 0;
  position: sticky;
  left: 0;
}

.link-bar__title:after {
  content: "";
  background-image: linear-gradient(to var(--transform-origin-end), rgb(var(--background)) 35%, rgba(var(--background), 0));
  width: 28px;
  height: 100%;
  position: absolute;
  top: 0;
}

.link-bar__title + .link-bar__scroller {
  padding-inline-start: 28px;
}

.link-bar__linklist {
  grid-auto-flow: column;
  align-items: center;
  gap: 14px;
  min-width: max-content;
  display: grid;
}

.link-bar__link-item, .link-bar__title {
  padding-block-start: 14px;
  padding-block-end: 14px;
  padding: 15px;
  background: #EFFAF0 !important;
  border-radius: 30px;
  transition: transform .2s;
  font-size: 0.9em;
  font-weight: 600;
}

.link-bar__link-item--selected {
  scroll-snap-align: center;
}

.link-bar__link-item:hover {
  background-color: #e9e9e9 !important;
  transform: scale(0.95);
}

.activ-lien {
  background: #3a9d5f!important;
  color: white;
}

.activ-lien:hover {
  background: #4b8b3bc7!important;
  color: white;
}

@media screen and (max-width: 999px) {
  .link-bar__wrapper:after {
    content: "";
    width: var(--container-gutter);
    background-image: linear-gradient(to var(--transform-origin-start), rgb(var(--background)), rgba(var(--background), 0));
    height: 100%;
    position: absolute;
    top: 0;
  }

  .link-bar__wrapper:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):after {
    left: 100%;
  }

  .link-bar__wrapper:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):after {
    right: 100%;
  }

  .link-bar__scroller {
    margin-inline-end: calc(-1 * var(--container-gutter));
  }

  .link-bar__linklist {
    padding-inline-end: var(--container-gutter);
  }
}

@media screen and (min-width: 741px) {
  .link-bar__title + .link-bar__scroller {
    padding-inline-start: 48px;
  }

  .link-bar__linklist {
    gap: 25px;
  }

  .link-bar__link-item, .link-bar__title {
    padding-block-start: 20px;
    padding-block-end: 20px;
    padding: 10px 15px;
    background: white;
    font-size:1em;
  }
}

@media screen and (min-width: 1200px) {
  .link-bar__link-item, .link-bar__title {
    padding-block-start: 27px;
    padding-block-end: 27px;
    padding: 10px 15px;
    background: #f4f4f4;
    border-radius: 30px;
    font-size:1em;
  }
}

.mobile-share-buttons__item {
  align-items: center;
  margin-inline-start: 24px;
  margin-inline-end: 24px;
  padding-block-start: 20px;
  padding-block-end: 20px;
  display: flex;
}

@supports (padding: max(0px)) {
  .mobile-share-buttons {
    padding-block-end: max(20px, env(safe-area-inset-bottom)  + 20px);
  }
}

.mobile-share-buttons__item:not(:last-child) {
  border-block-end: 1px solid rgb(var(--border-color));
}

.mobile-share-buttons__item svg {
  margin-inline-end: 16px;
}

.mobile-toolbar {
  visibility: visible;
  z-index: 3;
  align-items: center;
  transition: margin-top .2s ease-in-out, visibility .2s ease-in-out;
  display: flex;
  position: sticky;
  top: calc(var(--enable-sticky-header) * var(--header-height, 0px)  + var(--announcement-bar-height, 0px) * var(--enable-sticky-announcement-bar));
}

.mobile-toolbar.is-collapsed {
  visibility: hidden;
  margin-top: -48px;
}

.mobile-toolbar--fixed {
  position: relative;
  top: 0;
}

.mobile-toolbar__item {
  border-top: 1px solid rgb(var(--border-color));
  border-bottom: 1px solid rgb(var(--border-color));
  background: rgb(var(--background));
  flex: 1 0 0;
  justify-content: center;
  align-items: center;
  padding: 11px;
  display: flex;
}

.mobile-toolbar__item + .mobile-toolbar__item {
  border-inline-start: 1px solid rgb(var(--border-color));
}

.mobile-toolbar__item .icon--chevron {
  margin-inline-start: 10px;
}

/*! minireset.css v0.0.6 | MIT License | github.com/jgthms/minireset.css */
/*! PhotoSwipe main CSS by Dmitry Semenov | photoswipe.com | MIT license */


@media screen and (min-width: 741px) and (max-width: 999px) {
  .hidden-tablet {
    display: none !important;
  }
}

@media screen and (min-width: 741px) {
  .hidden-tablet-and-up {
    display: none !important;
  }
}

@media screen and (max-width: 999px) {
  .hidden-pocket {
    display: none !important;
  }
}

@media screen and (min-width: 1000px) and (max-width: 1199px) {
  .hidden-lap {
    display: none !important;
  }
}

@media screen and (min-width: 1000px) {
  .hidden-lap-and-up {
    display: none !important;
  }
}

@media screen and (min-width: 1200px) {
  .hidden-desk {
    display: none !important;
  }
}

@media screen and (min-width: 1400px) {
  .hidden-wide {
    display: none !important;
  }
}

@media screen and (pointer: fine) {
  .hidden-no-touch {
    display: none !important;
  }
}

@media screen and (pointer: fine) {
  .hidden-touch {
    display: none !important;
  }
}

@media print {
  .hidden-print {
    display: none !important;
  }
}

*, :before, :after {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  box-sizing: border-box !important;
}

html {
  -ms-overflow-style: -ms-autohiding-scrollbar;
  -moz-text-size-adjust: 100%;
  text-size-adjust: 100%;
  font-family: sans-serif;
}

body {
  margin: 0;
}

[hidden] {
  display: none;
}

blockquote:first-child, ul:first-child, ol:first-child, p:first-child, h1:first-child, h2:first-child, h3:first-child, h4:first-child, h5:first-child, h6:first-child {
  margin-block-start: 0 !important;
}

blockquote:last-child, ul:last-child, ol:last-child, p:last-child, h1:last-child, h2:last-child, h3:last-child, h4:last-child, h5:last-child, h6:last-child {
  margin-block-end: 0 !important;
}

a {
  color: inherit;
  text-decoration: none;
}

button, input, select, textarea {
  color: inherit;
  font: inherit;
  text-align: inherit;
  margin: 0;
}

button, [type="submit"] {
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
  touch-action: manipulation;
  background: none;
  border: none;
  border-radius: 0;
  padding: 0;
  overflow: visible;
}

button[disabled], html input[disabled] {
  cursor: default;
}

img, video {
  vertical-align: top;
  border-style: none;
  max-width: 100%;
  height: auto;
}

img:-moz-loading {
  visibility: hidden;
}

iframe {
  border: 0;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

td, th {
  padding: 0;
}

.pswp {
  touch-action: none;
  z-index: 1500;
  -webkit-backface-visibility: hidden;
  outline: none;
  width: 100%;
  height: 100%;
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
}

.pswp img {
  max-width: none;
}

.pswp--animate_opacity {
  opacity: .001;
  will-change: opacity;
  transition: opacity .333s cubic-bezier(.4, 0, .22, 1);
}

.pswp--open {
  display: block;
}

.pswp--zoom-allowed .pswp__img {
  cursor: var(--zoom-cursor-svg-url) 26 26, zoom-in;
}

.pswp--zoomed-in .pswp__img {
  cursor: grab;
}

.pswp--dragging .pswp__img {
  cursor: grabbing;
}

.pswp__bg {
  background: rgb(var(--background));
  opacity: 0;
  -webkit-backface-visibility: hidden;
  will-change: opacity;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  transform: translateZ(0);
}

.pswp__scroll-wrap {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
}

.pswp__container, .pswp__zoom-wrap {
  touch-action: none;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}

.pswp__container, .pswp__img {
  -webkit-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
}

.pswp__zoom-wrap {
  transform-origin: 0 0;
  width: 100%;
  transition: transform .333s cubic-bezier(.4, 0, .22, 1);
  position: absolute;
}

.pswp__bg {
  will-change: opacity;
  transition: opacity .333s cubic-bezier(.4, 0, .22, 1);
}

.pswp--animated-in .pswp__bg, .pswp--animated-in .pswp__zoom-wrap {
  transition: none;
}

.pswp__container, .pswp__zoom-wrap {
  -webkit-backface-visibility: hidden;
}

.pswp__item {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  overflow: hidden;
}

.pswp__img {
  width: auto;
  height: auto;
  position: absolute;
  top: 0;
  left: 0;
}

.pswp__top-bar {
  position: absolute;
  top: var(--container-gutter);
}

.pswp__top-bar:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: var(--container-gutter);
}

.pswp__top-bar:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: var(--container-gutter);
}

.pswp__prev-next-buttons {
  margin-inline: var(--container-gutter);
  pointer-events: none;
  justify-content: space-between;
  display: flex;
  position: absolute;
  top: calc(50% - 28px);
  left: 0;
  right: 0;
}

.pswp__dots-nav-wrapper {
  padding-inline: var(--container-gutter);
  background: rgb(var(--background));
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding-block-start: 20px;
  padding-block-end: 20px;
  transition: opacity .25s ease-in-out .2s, transform .25s ease-in-out .2s;
  display: flex;
  position: absolute;
  bottom: 0;
}

.pswp__dots-nav-wrapper .dots-nav {
  padding-inline-start: 20px;
  padding-inline-end: 20px;
}

.pswp__ui--hidden .pswp__dots-nav-wrapper {
  opacity: 0;
  transform: translateY(10px);
}

.pswp__button svg {
  transition: transform .25s ease-in-out;
}

@supports (padding: max(0px)) {
  .pswp__dots-nav-wrapper {
    padding-block-end: max(20px, env(safe-area-inset-bottom, 0px)  + 20px);
  }
}

@media screen and (pointer: fine) {
  .pswp__button:hover svg {
    transform: rotateZ(90deg);
  }
}

.flickity-enabled {
  position: relative;
  overflow: visible !important;
}

.flickity-enabled:focus {
  outline-offset: 2px;
}

.flickity-viewport {
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
}

.flickity-slider {
  width: 100%;
  height: 100%;
  position: absolute;
}

.flickity-enabled.is-draggable {
  -webkit-tap-highlight-color: transparent;
  -webkit-user-select: none;
  user-select: none;
}

.flickity-enabled.is-draggable:not(.is-hovering-right):not(.is-hovering-left) .flickity-viewport {
  cursor: grab;
}

.flickity-enabled.is-draggable:not(.is-hovering-right):not(.is-hovering-left) .flickity-viewport.is-pointer-down {
  cursor: grabbing;
}

.flickity-enabled.is-hovering-right .flickity-viewport {
  cursor: var(--arrow-right-svg-url) 17 14, e-resize;
}

.flickity-enabled.is-hovering-left .flickity-viewport {
  cursor: var(--arrow-left-svg-url) 17 14, w-resize;
}

.flickity-rtl .flickity-page-dots {
  direction: rtl;
}

.flickity-enabled.is-fade .flickity-slider > * {
  pointer-events: none;
  z-index: 0;
  transition: visibility .2s linear;
}

.flickity-enabled.is-fade .flickity-slider > .is-selected {
  pointer-events: auto;
  z-index: 1;
}

.flickity-enabled.is-fade .flickity-slider > :not(.is-selected) {
  visibility: hidden;
}

html {
  font-family: var(--text-font-family);
  font-weight: var(--text-font-weight);
  font-style: var(--text-font-style);
  font-size: calc(var(--base-font-size)  - 1px);
  color: rgb(var(--text-color));
  background: rgb(var(--background));
  line-height: 1.71429;
}

:lang(ar) * {
  letter-spacing: normal !important;
}

p strong, p b {
  font-weight: var(--text-font-bold-weight);
}

.heading, .blockquote, .rte h1, .rte h2, .rte h3, .rte h4, .rte h5, .rte h6, .rte blockquote {
  font-family: var(--heading-font-family);
  font-weight: var(--heading-font-weight);
  font-style: var(--heading-font-style);
  color: rgb(var(--heading-color));
  text-transform: var(--heading-text-transform);
  display: block;
}

.text--small {
  font-size: calc(var(--base-font-size)  - 2px);
  line-height: 1.69231;
}

.text--xsmall {
  font-size: calc(var(--base-font-size)  - 3px);
  line-height: 1.5;
}

.text--xxsmall {
  font-size: calc(var(--base-font-size)  - 5px);
  line-height: 1.5;
}

.text--large {
  font-size: calc(var(--base-font-size)  + 1px);
}

.text--subdued {
  color: rgba(var(--text-color), .7);
}

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

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

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

.text--strong {
  font-weight: var(--text-font-bold-weight);
}

.text--underlined {
  text-underline-offset: 3px;
  text-decoration: underline;
}

p a:not(.button), .rte a:not(.button), .link {
  text-underline-offset: 2px;
  text-decoration: underline;
  -webkit-text-decoration-color: rgba(var(--text-color), .35);
  text-decoration-color: rgba(var(--text-color), .35);
  transition: text-decoration-color .2s ease-in-out, color .2s ease-in-out;
}

.heading--small.link {
  line-height: 1.8;
}

@media screen and (pointer: fine) {
  p a:not(.button):hover, .rte a:not(.button):hover, .link:hover {
    color: rgb(var(--text-color));
    -webkit-text-decoration-color: rgb(var(--text-color));
    text-decoration-color: rgb(var(--text-color));
  }
}

.link--animated {
  width: max-content;
  display: block;
  position: relative;
}

.link--animated:after {
  content: "";
  transform-origin: var(--transform-origin-end);
  background: currentColor;
  width: 100%;
  height: 0px;
  transition: transform .3s;
  position: absolute;
  bottom: 2px;
  left: 0;
  transform: scaleX(0);
}

.text--underlined.link--animated {
  text-decoration: none;
  color:white;
}

.text--underlined.link--animated:after {
  transform: scaleX(1);
}

@media screen and (pointer: fine) {
  .link--animated[aria-expanded="true"]:after, .link--animated:hover:after {
    transform-origin: var(--transform-origin-start);
    transform: scaleX(1);
  }

  @keyframes textUnderlinedAnimatedKeyframes {
    0% {
      transform-origin: var(--transform-origin-end);
      transform: scaleX(1);
    }

    50% {
      transform-origin: var(--transform-origin-end);
      transform: scaleX(0);
    }

    51% {
      transform-origin: var(--transform-origin-start);
    }

    100% {
      transform: scaleX(1);
    }
  }

  .text--underlined.link--animated:hover:after {
    animation: .6s textUnderlinedAnimatedKeyframes;
  }
}

.link--faded {
  transition: opacity .25s ease-in-out;
}

.link--faded:hover {
  transform: scale(1.02);
  color:#3A9D5F;
}

.visually-hidden {
  clip: rect(0 0 0 0);
  border: 0;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  position: absolute !important;
}

@media screen and (min-width: 741px) {
  html {
    font-size: var(--base-font-size);
    line-height: 1.73333;
  }

  .text--small {
    font-size: calc(var(--base-font-size)  - 1px);
    line-height: 1.71429;
  }

  .text--xsmall {
    font-size: calc(var(--base-font-size)  - 2px);
    line-height: 1.53846;
  }

  .text--xxsmall {
    font-size: calc(var(--base-font-size)  - 4px);
    line-height: 1.53846;
  }

  .text--large {
    font-size: calc(var(--base-font-size)  + 5px);
  }
}

.heading:first-child {
  margin-block-start: 0;
}

.heading:last-child {
  margin-block-end: 0;
}

.heading--small, .heading--xsmall, .heading--xxsmall {
  font-family: var(--text-font-family);
  font-style: var(--text-font-style);
  text-transform: uppercase;
  font-weight: var(--text-font-bold-weight);
  letter-spacing: 1px;
  line-height: 1.46636;
}

.heading--xxsmall {
  font-size: var(--heading-xxsmall-font-size);
}

.heading--xsmall {
  font-size: var(--heading-xsmall-font-size);
}

.heading--small {
  font-size: var(--heading-small-font-size);
  line-height: 1.5;
}

.heading--large, .rte .heading--large {
  font-size: var(--heading-large-font-size);
  letter-spacing: -.9px;
  line-height: 1.11111;
}

.h1, .rte h1 {
  font-size: var(--heading-h1-font-size);
  letter-spacing: -.9px;
  line-height: 1.11111;
}

@media screen and (min-width: 1000px) {
  .h1, .rte h1 {
    font-size: 38px
  }
}

.h2, .rte h2 {
  font-size: var(--heading-h2-font-size);
  letter-spacing: 0px;
  line-height: 1.13333;
}

@media screen and (min-width: 1000px) {
  .h2, .rte h2 {
    font-size: 32px
  }
}

.h3, .rte h3 {
  font-size: var(--heading-h3-font-size);
  letter-spacing: 0px;
  line-height: 1.15385;
}

@media screen and (min-width: 1000px) {
  .h3, .rte h3 {
    font-size: 30px
  }
}

.h4, .rte h4 {
  font-size: var(--heading-h4-font-size);
  letter-spacing: 0px;
  line-height: 1.16667;
}

.h5, .rte h5 {
  font-size: var(--heading-h5-font-size);
  letter-spacing: 0px;
  line-height: 1.2;
}

.h6, .rte h6 {
  font-size: var(--heading-h6-font-size);
  line-height: 1.25;
}

.blockquote, .rte blockquote {
  font-size: var(--heading-h4-font-size);
  letter-spacing: -.3px;
  padding-block-start: 24px;
  padding-block-end: 0;
  padding-inline-start: 24px;
  padding-inline-end: 24px;
  line-height: 1.16667;
  position: relative;
}

.blockquote:before, .rte blockquote:before {
  content: "";
  background: rgb(var(--text-color));
  opacity: .15;
  width: 71px;
  height: 56px;
  position: absolute;
  top: -10px;
  -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMDEgODAiPiAgICA8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTAgNDEuNzdWMGg0MS42MDR2NDEuNzdMMjAuMDI2IDgwSC45ODdMMjEuNzIgNDEuNzdIMHptNTkuMzk2IDBWMEgxMDF2NDEuNzdMNzkuNDIyIDgwSDYwLjM4M2wyMC43MzItMzguMjNINTkuMzk2eiIgZmlsbD0iY3VycmVudENvbG9yIiAvPjwvc3ZnPg==");
  mask-image: url("data:image/svg+xml;base64,PHN2ZyBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMDEgODAiPiAgICA8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTAgNDEuNzdWMGg0MS42MDR2NDEuNzdMMjAuMDI2IDgwSC45ODdMMjEuNzIgNDEuNzdIMHptNTkuMzk2IDBWMEgxMDF2NDEuNzdMNzkuNDIyIDgwSDYwLjM4M2wyMC43MzItMzguMjNINTkuMzk2eiIgZmlsbD0iY3VycmVudENvbG9yIiAvPjwvc3ZnPg==");
  -webkit-mask-size: 71px 56px;
  mask-size: 71px 56px;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}

.blockquote:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  left: calc(50% - 35.5px);
}

.rte blockquote:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  left: calc(50% - 35.5px);
}

.blockquote:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  right: calc(50% - 35.5px);
}

.rte blockquote:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  right: calc(50% - 35.5px);
}

.unordered-list, .text-container ul, .rte ul {
  margin-inline-start: 1.25em;
  margin-inline-end: 0;
  padding: 0;
  list-style-type: inherit;
}

.ordered-list, .text-container ol, .rte ol {
  margin-inline-start: 1em;
  margin-inline-end: 0;
  padding: 0;
}

.unordered-list li, .text-container ul li, .rte ul li {
  padding-block-start: 2px;
  padding-block-end: 2px;
  padding-inline-start: 0;
  padding-inline-end: 5px;
}

.ordered-list li, .text-container ol li, .rte ol li {
  padding-block-start: 3px;
  padding-block-end: 3px;
  padding-inline-start: 0;
  padding-inline-end: 9px;
}

.unordered-list li::marker, .text-container ul li::marker, .rte ul li::marker {
  color: inherit;
  font-size: 16px;
}

.ordered-list li::marker, .text-container ol li::marker, .rte ol li::marker {
  color: inherit;
  font-size: 11px;
}

.table-wrapper {
  overflow-x: auto;
}

.table, .rte table {
  --table-spacing: 16px;
  width: 100%;
}

.table--loose {
  --table-spacing: 24px;
}

.table th:not([class*="text--"]), .rte table th:not([class*="text--"]) {
  text-align: start;
}

.table th, .rte table th {
  border-bottom: 1px solid rgb(var(--border-color));
  padding-block-end: 15px;
  padding-inline: var(--table-spacing);
}

.table td.half-spaced, .rte table td.half-spaced {
  padding: calc(var(--table-spacing) / 2);
}

.table td, .rte table td {
  padding: var(--table-spacing);
  padding-block-end: 0;
}

.table tr[onclick] {
  cursor: pointer;
}

.table th:first-child, .rte table th:first-child, .table td:first-child, .rte table td:first-child {
  padding-inline-start: 0;
}

.table th:last-child, .rte table th:last-child, .table td:last-child, .rte table td:last-child {
  padding-inline-end: 0;
}

.table tfoot tr:first-child td, .rte table tfoot tr:first-child td {
  border-top: 1px solid rgb(var(--border-color));
}

.table tfoot tr:not(:first-child) td, .rte table tfoot tr:not(:first-child) td {
  padding-block-start: 8px;
}

.table--bordered td {
  border-top: 1px solid rgb(var(--border-color));
  padding-block-end: var(--table-spacing);
}

.table--footered tbody tr:last-child td {
  padding-block-end: var(--table-spacing);
}

@media screen and (max-width: 740px) {
  .table tfoot td, .rte table tfoot td {
    padding-block-start: 16px;
  }
}

@media screen and (min-width: 741px) {
  .ordered-list li::marker, .text-container ol li::marker, .rte ol li::marker {
    font-size: 12px;
  }

  .heading--xsmall {
    line-height: 1.46667;
  }

  .heading--small {
    line-height: 1.23077;
  }

  .heading--large {
    line-height: 1;
  }

  .h1, .rte h1 {
    letter-spacing: -1px;
    line-height: 1.04167;
  }

  .h2, .rte h2 {
    letter-spacing: 0px;
    line-height: 1.10526;
  }

  .h3, .rte h3 {
    letter-spacing: 0px;
    line-height: 1.0625;
  }

  .h4, .rte h4 {
    letter-spacing: 0px;
    line-height: 1.16667;
  }

  .h5, .rte h5 {
    letter-spacing: 0px;
    line-height: 1.2;
  }

  .h6, .rte h6 {
    line-height: 1.22222;
  }

  .blockquote, .rte blockquote {
    letter-spacing: -.6px;
    min-height: 63px;
    padding-inline-start: 49px;
    padding-inline-end: 0;
    line-height: 1.16667;
  }

  .blockquote--center {
    padding-inline-start: 0;
  }

  .blockquote:not(.blockquote--center):before, .rte blockquote:not(.blockquote--center):before {
    width: 80px;
    height: 63px;
    top: 0;
    -webkit-mask-size: 80px 63px;
    mask-size: 80px 63px;
  }

  .blockquote:not(.blockquote--center):not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
    left: 0;
  }

  .rte blockquote:not(.blockquote--center):not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
    left: 0;
  }

  .blockquote:not(.blockquote--center):is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
    right: 0;
  }

  .rte blockquote:not(.blockquote--center):is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
    right: 0;
  }

  .unordered-list li, .text-container ul li, .rte ul li {
    padding-block-start: 4px;
    padding-block-end: 4px;
    padding-inline-start: 0;
    padding-inline-end: 5px;
  }

  .ordered-list li, .text-container ol li, .rte ol li {
    padding-block-start: 4px;
    padding-block-end: 4px;
    padding-inline-start: 0;
    padding-inline-end: 9px;
  }
}

@media screen and (min-width: 1000px) {
  .table {
    --table-spacing: 24px;
  }

  .table--loose {
    --table-spacing: 32px;
  }
}

@media screen and (min-width: 1200px) {
  .heading--large, .rte .heading--large {
    line-height: 1;
  }

  .h1, .rte h1 {
    letter-spacing: -1px;
    line-height: 1.07143;
  }

  .h2, .rte h2 {
    letter-spacing: 0px;
    line-height: 1.08333;
  }

  .h3, .rte h3 {
    letter-spacing: 0px;
    line-height: 1.11111;
  }

  .h4, .rte h4 {
    letter-spacing: 0px;
    line-height: 1.13333;
  }

  .h5, .rte h5 {
    letter-spacing: 0px;
    line-height: 1.16667;
  }

  .h6, .rte h6 {
    line-height: 1.22222;
  }

  .blockquote, .rte blockquote {
    letter-spacing: -.7px;
    min-height: 80px;
    padding-inline-start: 69px;
    line-height: 1.13333;
  }

  .blockquote--center, .rte .blockquote--center {
    padding-inline-start: 0;
  }

  .blockquote:not(.blockquote--center):before, .rte blockquote:not(.blockquote--center):before {
    width: 101px;
    height: 81px;
    -webkit-mask-size: 101px 81px;
    mask-size: 101px 81px;
  }
}

.text-container p:not(.heading) + p, .rte p:not(.heading) + p, .text-container p + form, .rte p + form {
  margin-block-start: 24px;
}

.text-container .heading--large, .rte .heading--large {
  margin-block-start: 48px;
  margin-block-end: 40px;
  margin-inline-start: 0;
  margin-inline-end: 0;
}

.text-container .h1, .rte h1 {
  margin-block-start: 48px;
  margin-block-end: 24px;
  margin-inline-start: 0;
  margin-inline-end: 0;
}

.text-container .h2, .rte h2, .text-container .h3, .rte h3, .text-container .h4, .rte h4, .text-container .h5, .rte h5, .text-container .h6, .rte h6 {
  margin-block-start: 40px;
  margin-block-end: 16px;
  margin-inline-start: 0;
  margin-inline-end: 0;
  font-size: 1.5em;
}

.text-container .heading--small, .rte .heading--small {
  margin: 16px 0;
}

.text-container .heading--xsmall, .rte .heading--xsmall {
  margin: 12px 0;
}

.blockquote, .rte blockquote {
  margin-block-start: 48px;
  margin-block-end: 64px;
  margin-inline-start: 0;
  margin-inline-end: 0;
}

.text-container img:not([style*="float"]), .rte img:not([style*="float"]) {
  margin: 34px 0;
  display: block;
}

.text-container ul, .rte ul, .text-container ol, .rte ol {
  margin-block-start: 1em;
  margin-block-end: 1em;
}

@media screen and (min-width: 1000px) {
  .text-container p + form, .rte p + form {
    margin-block-start: 32px;
  }

  .text-container .h1, .rte h1 {
    margin-block-start: 48px;
    margin-block-end: 32px;
    margin-inline-start: 0;
    margin-inline-end: 0;
  }

  .text-container .h2, .rte h2, .text-container .h3, .rte h3, .text-container .h4, .rte h4 {
    margin-block-start: 48px;
    margin-block-end: 24px;
    margin-inline-start: 0;
    margin-inline-end: 0;
  }

  .text-container .h5, .rte h5, .text-container .h6, .rte h6 {
    margin-block-start: 40px;
    margin-block-end: 16px;
    margin-inline-start: 0;
    margin-inline-end: 0;
  }

  .blockquote, .rte blockquote {
    margin-block-start: 80px;
    margin-block-end: 96px;
    margin-inline-start: 0;
    margin-inline-end: 0;
  }
}

.rte > :first-child, .text-container > :first-child {
  margin-block-start: 0;
}

.rte > :last-child, .text-container > :last-child {
  margin-block-end: 0;
}

.heading--small + .heading--large {
  margin-block-start: 32px;
}

.heading--small + p, .heading--xsmall + p, .heading--small + p, .heading--small + .h1, .heading--small + h1, .heading--small + .h2, .heading--small + h2, .heading--small + .h3, .heading--small + h3, .heading--small + .h4, .heading--small + h4, .heading--small + .h5, .heading--small + h5, .heading--small + .h6, .heading--small + h6, .heading--xsmall + p, .heading--xsmall + .h1, .heading--xsmall + h1, .heading--xsmall + .h2, .heading--xsmall + h2, .heading--xsmall + .h3, .heading--xsmall + h3 {
  margin-block-start: 16px;
}

.heading--xsmall + .h4, .heading--xsmall + h4, .heading--xsmall + .h5, .heading--xsmall + h5, .heading--xsmall + .h6, .heading--xsmall + h6 {
  margin-block-start: 12px;
}

.heading + .button-wrapper, .heading + .button-group, p + .button-wrapper, p + .button-group, .button-wrapper + p, .button-group + p {
  margin-block-start: 32px;
}

@media screen and (min-width: 741px) {
  .heading--small + p, .heading--small + .h1, .heading--small + h1, .heading--small + .h2, .heading--small + h2, .heading--small + .h3, .heading--small + h3, .heading--small + .h4, .heading--small + h4 {
    margin-block-start: 24px;
  }

  .heading--small + .h5, .heading--small + h5, .heading--small + .h6, .heading--small + h6 {
    margin-block-start: 16px;
  }

  .heading--xsmall + .h1, .heading--xsmall + h1, .heading--xsmall + .h2, .heading--xsmall + h2 {
    margin-block-start: 24px;
  }
}

.shopify-section {
  color: rgb(var(--text-color));
  scroll-margin-top: calc(var(--header-height, 0px) * var(--enable-sticky-header)  + var(--announcement-bar-height, 0px) * var(--enable-sticky-announcement-bar));
}

.js .no-focus-outline :focus {
  outline: none;
}

.lock-all {
  touch-action: none;
  overflow: hidden;
}

@media screen and (max-width: 740px) {
  .lock-mobile {
    touch-action: none;
    overflow: hidden;
  }
}

.container, .shopify-policy__container.shopify-policy__container {
  max-width: var(--container-max-width);
  padding-inline: var(--container-gutter);
  --container-outer-margin: 0px;
  width: 100%;
  margin-inline-start: auto;
  margin-inline-end: auto;
}

.container--small {
  max-width: 930px;
}

@media screen and (max-width: 999px) {
  .container--flush {
    padding-inline-start: 0;
    padding-inline-end: 0;
  }
}

@media screen and (min-width: 1400px) {
  .container--medium {
    padding-inline: calc(var(--container-gutter)  + var(--grid-column-width)  + var(--grid-gap));
  }
}

.js .no-js {
  display: none !important;
}

.js .js\:hidden, .no-js .no-js\:hidden {
  display: none;
}

[reveal] {
  opacity: 0;
}

[reveal-visibility] {
  visibility: hidden;
}

.no-js [reveal] {
  opacity: 1;
}

.no-js [reveal-visibility] {
  visibility: visible;
}

.skip-to-content:focus {
  clip: auto;
  color: rgb(var(--text-color));
  background-color: rgb(var(--background));
  opacity: 1;
  z-index: 10000;
  width: auto;
  height: auto;
  margin: 0;
  padding: 10px;
  transition: none;
}


.vertical-breather {
  padding-block: var(--vertical-breather);
}


.vertical-breather--tight {
  padding-block: var(--vertical-breather-tight);
}

.vertical-breather--margin {
  margin-block: var(--vertical-breather);
  padding-block-start: 0 !important;
  padding-block-end: 0 !important;
}

.vertical-breather--margin.vertical-breather--tight {
  margin-block: var(--vertical-breather-tight);
}

@media screen and (min-width: 741px) {
  .vertical-breather--extra-tight {
    padding-block-start: 48px;
    padding-block-end: 48px;
  }

  .vertical-breather--margin.vertical-breather--extra-tight {
    margin-block-start: 48px;
    margin-block-end: 48px;
  }
}

.anchor {
  scroll-margin-top: calc(var(--header-height, 0px) * var(--enable-sticky-header)  + var(--announcement-bar-height, 0px) * var(--enable-sticky-announcement-bar)  + var(--anchor-offset, 20px));
}

.anchor.vertical-breather:not(.vertical-breather--margin) {
  --anchor-offset: 0px;
}

.anchor.vertical-breather--margin {
  --anchor-offset: var(--vertical-breather);
}

.anchor.vertical-breather--tight.vertical-breather--margin {
  --anchor-offset: var(--vertical-breather-tight);
}

.icon {
  vertical-align: middle;
  pointer-events: none;
  background: none;
  display: block;
  overflow: visible;
}

.icon--inline {
  display: inline-block;
}

.icon-text {
  align-items: center;
  display: flex;
}

@media screen and (max-width:741px) {
  .icon--picto-lock, .icon--picto-address, .icon--picto-credit-card { 
    width: 20px
  }
}

.iconmax {
    display: flex;
    justify-content: center;
    align-items: center;
}

.iconmax img {
    margin-inline-end: 0px!important;
}

.icon-text svg, .icon-text img {
  margin-inline-end: 12px;
}
  
.icon--picto-address {
   margin-inline-end: 8px!important
 }

@supports (scale: 1) {
  [dir="rtl"] .icon--direction-aware {
    scale: -1 1;
  }
}

@supports not (scale: 1) {
  [dir="rtl"] .icon--direction-aware {
    transform: scale(-1, 1);
  }
}

.list--unstyled {
  margin: 0;
  padding: 0;
  list-style: none;
}

.loading-bar {
  opacity: 0;
  background: rgb(var(--loading-bar-background));
  transform-origin: 0;
  z-index: 50;
  pointer-events: none;
  width: 100%;
  height: 3px;
  transition: transform .25s ease-in-out;
  position: fixed;
  top: 0;
  left: 0;
  transform: scaleX(0);
}

.loading-bar.is-visible {
  opacity: 1;
}

.section {
  margin: var(--vertical-breather) 0;
  display: block;
}

.section--tight {
  margin-block: var(--vertical-breather-tight);
}

.section:empty {
  display: none;
}

.section--flush {
  margin-block-start: 0;
  margin-block-end: 0;
}

.section__color-wrapper {
  background: rgb(var(--section-background, var(--background)));
  display: flow-root;
}

.section__color-wrapper--boxed {
  border-radius: var(--block-border-radius);
}

.section__header {
  text-align: center;
  max-width: 1000px;
  margin-block-end: min(32px, var(--vertical-breather));
  margin-inline-start: auto;
  margin-inline-end: auto;
}

.section__header:only-child {
  margin-block-end: 0;
}

.section__header--tight {
  max-width: 800px;
}

.section__header--left {
  text-align: start;
  margin-left: 0;
}

.section__header--right {
  text-align: end;
  margin-right: 0;
}

.section__footer {
  text-align: center;
  margin-block-start: 32px;
}

@media screen and (min-width: 741px) {
  .section__header {
    margin-block-end: min(40px, var(--vertical-breather));
  }

  .section__footer {
    margin-block-start: min(40px, var(--vertical-breather));
  }

}

@media screen and (min-width: 1000px) {
  .section__header {
    margin-block-end: min(48px, var(--vertical-breather));
  }

  .section__footer {
    margin-block-start: min(48px, var(--vertical-breather));
  }

}

.page-header {
  text-align: center;
  position: relative;
}

.page-header--secondary {
  background: rgb(var(--secondary-background));
}

.page-header--clear:after, .page-header:before {
  content: "";
  clear: left;
  display: table;
}

.page-header__text-wrapper {
  margin: 60px 0 37px 0;
}

.page-header--small .page-header__text-wrapper {
  margin-block-start: 24px;
  margin-block-end: 24px;
}

.page-header--alone .page-header__text-wrapper {
  margin-block-end: 72px;
}

.page-content, .shopify-policy__body {
  max-width: 1200px;
  margin-block-end: min(var(--vertical-breather), 80px);
  margin-inline-start: auto;
  margin-inline-end: auto;
}

.page-content--medium, .shopify-policy__body {
  max-width: 670px;
}

.page-content--small {
  max-width: 460px;
}

.page-content--fluid {
  max-width: none;
}

@media screen and (min-width: 741px) {
  .page-header__text-wrapper {
    margin-block-start: 68px;
    margin-block-end: 68px;
  }

  .page-header--small .page-header__text-wrapper {
    margin-block-start: 48px;
    margin-block-end: 40px;
  }

  .page-header--alone .page-header__text-wrapper {
    margin-block-end: 120px;
  }

  .breadcrumb--floating + .page-header__text-wrapper {
    margin-block-start: 65px;
    text-align:center
  }
}

.breadcrumb {
  z-index: 1;
}

.breadcrumb--floating {
  position: absolute;
  top: 0;
}

.breadcrumb--floating:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 0;
}

.breadcrumb--floating:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 0;
}

.breadcrumb__list {
  margin: 0;
  padding: 26px 0;
  list-style: none;
  display: inline-flex;
}

.breadcrumb__item + .breadcrumb__item:before {
  content: "/";
  opacity: .7;
  float: left;
  margin: 0 4px;
}

.breadcrumb__link {
  transition: opacity .2s ease-in-out;
}

.breadcrumb__link:not([aria-current="page"]):not(:hover) {
  opacity: .7;
}

[dir="rtl"] .breadcrumb__item + .breadcrumb__item:before {
  float: right;
}



.pagination {
  justify-content: center;
  margin-block-start: 40px;
  display: flex;
}

.pagination__nav {
  border-collapse: separate;
  table-layout: fixed;
  display: table;
}

.pagination__nav-item {
  box-shadow: 1px 0 0 0 rgb(var(--border-color)), 0 1px 0 0 rgb(var(--border-color)), 1px 1px 0 0 rgb(var(--border-color)), 1px 0 0 0 rgb(var(--border-color)) inset, 0 1px 0 0 rgb(var(--border-color)) inset;
  vertical-align: middle;
  text-align: center;
  width: 47px;
  height: 47px;
  display: table-cell;
  position: relative;
}

.pagination__nav-item:first-child:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-left-radius: var(--button-border-radius);
  border-bottom-left-radius: var(--button-border-radius);
}

.pagination__nav-item:first-child:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  border-top-left-radius: var(--button-border-radius);
  border-bottom-left-radius: var(--button-border-radius);
}

.pagination__nav-item:first-child:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-right-radius: var(--button-border-radius);
  border-bottom-right-radius: var(--button-border-radius);
}

.pagination__nav-item:first-child:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  border-top-right-radius: var(--button-border-radius);
  border-bottom-right-radius: var(--button-border-radius);
}

.pagination__nav-item:last-child:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-right-radius: var(--button-border-radius);
  border-bottom-right-radius: var(--button-border-radius);
}

.pagination__nav-item:last-child:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  border-top-right-radius: var(--button-border-radius);
  border-bottom-right-radius: var(--button-border-radius);
}

.pagination__nav-item:last-child:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-left-radius: var(--button-border-radius);
  border-bottom-left-radius: var(--button-border-radius);
}

.pagination__nav-item:last-child:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  border-top-left-radius: var(--button-border-radius);
  border-bottom-left-radius: var(--button-border-radius);
}

.pagination__nav-item svg {
  margin: 0 auto;
}

.pagination__nav-item[aria-current]:before {
  content: "";
  pointer-events: none;
  z-index: 1;
  max-width: calc(100% - 3px);
  max-height: calc(100% - 3px);
  position: absolute;
  top: 2px;
  bottom: 0;
  left: 2px;
  right: 0;
  box-shadow: 0 0 0 2px;
}

@media screen and (min-width: 741px) {
  .pagination {
    margin-block-start: 48px;
  }

  .pagination__nav-item {
    width: 56px;
    height: 56px;
  }
}

.linklist__item:not(:first-child) {
  padding-block-start: 12px;
}

.linklist__item a {
  word-break: break-word;
  display: inline-block;
}

@media screen and (min-width: 1000px) {
  .linklist__item:not(:first-child) {
    padding-block-start: 6px;
  }
}

.animated-plus {
  display: inline-block;
  width: 10px;
  height: 10px;
  position: relative;
  padding-top: 13px; 
  transition: transform 0.3s ease; 
}

.animated-plus:before {
  content: "";
  position: absolute;
  width: 8px; 
  height: 8px; 
  border-right: 2px solid currentColor; 
  border-bottom: 2px solid currentColor; 
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(45deg); 
  transition: transform 0.3s ease; 
}

[aria-expanded="true"] > .animated-plus:before {
  transform: translate(-50%, -50%) rotate(-135deg); 
}



.aspect-ratio {
  margin-inline-start: auto;
  margin-inline-end: auto;
  display: block;
  position: relative;
}

.aspect-ratio img, .aspect-ratio video, .aspect-ratio svg {
  top: 0;
  object-fit: cover;
  object-position: center;
  width: 100%;
  max-width: 100%;
  height: 100%;
  max-height: 100%;
  position: absolute;
  left: 0;
}

.aspect-ratio--square img, .aspect-ratio--short img, .aspect-ratio--tall img, .aspect-ratio--rectangular img {
  object-fit: contain;
  top: 50%;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 50%;
  transform: translate(-50%, -50%) !important;
}

.aspect-ratio--square {
  padding-block-end: 100% !important;
}

.aspect-ratio--short {
  padding-block-end: 75% !important;
}

.aspect-ratio--tall {
  padding-block-end: 150% !important;
}

@supports (aspect-ratio: 1 / 1) {
  .aspect-ratio {
    aspect-ratio: var(--aspect-ratio);
    padding-bottom: 0 !important;
  }

  .aspect-ratio--natural img, .aspect-ratio--natural video, .aspect-ratio--natural svg {
    width: auto;
    position: relative;
  }

  .aspect-ratio--square {
    aspect-ratio: 1;
  }

  .aspect-ratio--short {
    aspect-ratio: 4 / 3;
  }

  .aspect-ratio--tall {
    aspect-ratio: 2 / 3;
  }

}


.placeholder-image {
  background-color: rgb(var(--secondary-background));
  padding-block-end: 75%;
  position: relative;
}

.placeholder-background {
  background-color: rgb(var(--secondary-background));
}

.placeholder-image svg {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
}

.placeholder-image svg:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 0;
}

.placeholder-image svg:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 0;
}

@media screen and (min-width: 1000px) {
  .placeholder-image {
    padding-block-end: 45%;
  }
}

.progress-bar {
  background: rgba(var(--text-color), .15);
  height: 2px;
  display: block;
  position: relative;
}

.progress-bar:before {
  content: "";
  width: calc(100% / var(--divider));
  transform: translateX(calc(var(--transform-logical-flip) * var(--transform, 0%) * (var(--divider)  - 1)));
  transform-origin: var(--transform-origin-start);
  background: rgb(var(--text-color));
  height: 100%;
  position: absolute;
  top: 0;
}

.progress-bar:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  left: 0;
}

.progress-bar:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  right: 0;
}

[draggable].is-scrollable {
  cursor: none;
}

.custom-drag-cursor {
  pointer-events: none;
  visibility: visible;
  width: 60px;
  height: 60px;
  transition: visibility .15s linear;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
}

.custom-drag-cursor svg {
  opacity: 1;
  transition: transform .15s ease-in-out, opacity .15s ease-in-out;
  transform: scale(1);
}

.custom-drag-cursor[hidden] svg {
  opacity: 0;
  transform: scale(.5);
}

@media screen and (max-width: 999px), screen and not (pointer: fine) {
  .custom-drag-cursor {
    display: none;
  }
}

.tap-area {
  position: relative;
}

.tap-area:before {
  content: "";
  position: absolute;
  top: -6px;
  bottom: -6px;
  left: -6px;
  right: -6px;
}

.tap-area--large:before {
  top: -10px;
  bottom: -10px;
  left: -10px;
  right: -10px;
}

@media screen and (max-width: 999px) {
  .scroller {
    scroll-snap-type: x mandatory;
    margin-inline: calc(-1 * var(--container-gutter));
    scrollbar-width: none;
    overflow-x: auto;
    overflow-y: hidden;
  }

  .scroller::-webkit-scrollbar {
    display: none;
  }

  .scroller__inner {
    padding-inline: var(--container-gutter);
    min-width: min-content;
    margin-inline-start: auto;
    margin-inline-end: auto;
  }
}

.hide-scrollbar {
  scrollbar-width: none;
  overflow-x: auto;
  overflow-y: hidden;
}

.hide-scrollbar::-webkit-scrollbar {
  display: none;
}

.js .animated-element {
  visibility: hidden;
}

.square-separator {
  vertical-align: middle;
  background: currentColor;
  flex-shrink: 0;
  width: 4px;
  height: 4px;
  margin: 0 8px;
  display: inline-block;
  position: relative;
}

.square-separator--block {
  margin-inline-start: 12px;
  margin-inline-end: 12px;
  top: 1px;
}

.square-separator--subdued {
  opacity: .5;
}

@keyframes prevNextButtonKeyframe {
  0% {
    transform: translateX(0%);
  }

  50% {
    transform: translateX(calc(50% + 10px));
  }

  51% {
    transform: translateX(calc(-50% - 10px));
  }

  100% {
    transform: translateX(0%);
  }
}

.prev-next-buttons {
  pointer-events: none;
  display: inline-grid;
}

.prev-next-buttons--row {
  grid-auto-flow: column;
}

.prev-next-button {
  background: #3a9d5f;
  color: white;
  border: 1px solid rgba(var(--prev-next-button-color, var(--root-text-color)), .15);
  border-radius: var(--button-border-radius);
  pointer-events: auto;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  transition: color .2s ease-in-out;
  display: flex;
  overflow: hidden;
}

.prev-next-button[disabled] {
  color: rgba(var(--prev-next-button-color), .3);
}

.prev-next-button svg {
  width: 100%;
}

.prev-next-buttons:not(.prev-next-buttons--row) .prev-next-button:first-child:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)), .prev-next-buttons:not(.prev-next-buttons--row) .prev-next-button:first-child:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.prev-next-buttons:not(.prev-next-buttons--row) .prev-next-button:last-child:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)), .prev-next-buttons:not(.prev-next-buttons--row) .prev-next-button:last-child:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.prev-next-buttons--row .prev-next-button:first-child:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.prev-next-buttons--row .prev-next-button:first-child:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.prev-next-buttons--row .prev-next-button:last-child:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.prev-next-buttons--row .prev-next-button:last-child:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

@media screen and (min-width: 741px) {
  .prev-next-button:not(.prev-next-button--small) {
    width: 56px;
    height: 56px;
  }

  .prev-next-buttons:not(.prev-next-buttons--row) .prev-next-button:last-child {
    border-top: none;
  }

  .prev-next-buttons--row .prev-next-button:last-child {
    border-left: none;
  }
}

@media screen and (pointer: fine) {
  .prev-next-button--prev:hover svg {
    animation: .3s ease-in-out reverse forwards prevNextButtonKeyframe;
  }

  .prev-next-button--next:hover svg {
    animation: .3s ease-in-out forwards prevNextButtonKeyframe;
  }
}

.dots-nav {
  flex-wrap: wrap;
  justify-content: flex-start;
  margin: -6px;
  display: flex;
}

.dots-nav--centered {
  justify-content: center;
}

.dots-nav__item {
  background: rgb(var(--text-color));
  border-radius: min(var(--button-border-radius), 6px);
  opacity: .3;
  width: 6px;
  height: 6px;
  margin: 6px;
  transition: opacity .2s ease-in-out;
  position: relative;
}

.dots-nav__item[aria-current="true"] {
  opacity: 1;
}

.price-list {
  flex-wrap: wrap;
  align-items: baseline;
  display: inline-flex;
}

.price-list--centered {
  justify-content: center;
}

.price-list--stack {
  display: inline-grid;
}

.price-list:not(.price-list--stack) > .price:not(:last-child) {
  margin-inline-end: 10px;
}

.price-list > .price--block {
  flex-basis: 100%;
  margin-inline-start: 0 !important;
}

.price-list + .link {
  margin-inline-start: 16px;
}

.price--highlight {
  color: rgb(var(--product-on-sale-accent));
  font-size: 1.1em;
  font-weight:500
}

@media screen and (max-width: 741px) {
  .price--highlight {
    font-size: 1em;
  }
}

.price--compare {
    text-decoration: line-through;
    color: #282828a3;
    font-weight: 500;
    text-decoration-thickness: 1px;
}

.price--large {
  font-size: calc(var(--base-font-size)  + 3px);
}

.unit-price-measurement {
  display: inline-flex;
}

@media screen and (min-width: 1000px) {
  .price--large:not(.price--compare) {
    font-size: calc(var(--base-font-size)  + 7px);
  }
}

.iconlabel {
  width: 19px;
  margin-left: 1px;
}

@media screen and (max-width: 741px) {
  .iconlabel {
    width: 13px;
  }
}


.label {
  vertical-align: top;
  font-family: var(--text-font-family);
  font-style: var(--text-font-style);
  font-weight: 500;
  letter-spacing: .5px;
  border-radius: min(var(--block-border-radius), 2px);
  padding: 0 5px;
  font-size: 10px;
  display: inline-block;
}

.label--highlight {
  background: rgb(var(--product-on-sale-accent));
  color: #fff;
  padding: 3px 5px;
}

.label--subdued {
  background: rgb(var(--product-sold-out-accent));
  color: #fff;
}

.label--new {
    background: #282828;
    color: #fff;
    border-radius: 50px;
    padding: 2px 5px;
}



.labelmax {
  vertical-align: top;
  font-family: var(--text-font-family);
  font-style: var(--text-font-style);
  font-weight: var(--text-font-bold-weight);
  text-transform: uppercase;
  letter-spacing: .5px;
  border-radius: min(var(--block-border-radius), 2px);
  padding: 0 5px;
  font-size: 10px;
  display: inline-block;
}


.label--subdueddefault {
  background: #ffa447;
  color: #fff;
  font-size: 11px!important;
}

.label--subduedsolar {
  background: #ffa447;
  color: #fff;
  font-size: 11px!important;
}

.label--solarcolumn {
  background: #ffa447;
  color: #fff;
  font-size: 20px!important;
  padding: 5px 15px;
  font-weight: 700;
}

.label--subdued230 {
  background: #b35656;
  color: #fff;
  font-size: 11px!important;
}

.label--230column {
  background: #b35656;
  color: #fff;
  font-size: 20px!important;
  padding: 5px 15px;
  font-weight: 700;
}

.label--subdued12 {
  background: #3ca0d1;
  color: #fff;
  font-size: 11px!important;
}

.label--12column {
  background: #3ca0d1;
  color: #fff;
  font-size: 20px!important;
  padding: 5px 15px;
  font-weight: 700;
}

.label--label2image {
    background: #f4f4f4;
    color: #000;
    font-weight: 500;
}

@media screen and (max-width: 741px) {
  .label--label2image {
    font-size: 9px!important;
    font-weight: 500
  }
  .label--subdueddefault {
    background: #ffa447;
    color: #fff;
    font-size: 10px!important;
}

  .label--subduedsolar {
    background: #ffa447;
    color: #fff;
    font-size: 10px!important;
}

  .label--subdued230 {
    background: #b35656;
    color: #fff;
    font-size: 10px!important;
}

  .label--subdued12 {
    background: #628cb9;
    color: #fff;
    font-size: 10px!important;
  }
}

.label--custom {
  background: rgb(var(--product-custom-label-background));
  color: rgb(var(--product-custom-label-text-color));
}

.label--custom2 {
  background: rgb(var(--product-custom-label-2-background));
  color: rgb(var(--product-custom-label-2-text-color));
}

.label-list {
  pointer-events: none;
  flex-direction: column;
  align-items: flex-start;
  display: flex;
}

.label-list:not(.label-list--horizontal) .label:not(:last-child) {
  margin-block-end: 4px;
}

.label-list--horizontal {
  flex-direction: row;
}

.label-list--horizontal .label:not(:last-child) {
  margin-inline-end: 4px;
}

@media screen and (min-width: 741px) {
  .label {
    font-size: 11px;
  }
}

.tag-list {
  flex-wrap: wrap;
  align-items: center;
  margin: -6px;
  display: flex;
}

.tag {
  background: rgba(var(--text-color), .05);
  align-items: center;
  margin: 6px;
  padding-block-start: 7px;
  padding-block-end: 8px;
  padding-inline-start: 14px;
  padding-inline-end: 13px;
  display: flex;
}

.tag__icon {
  cursor: pointer;
  margin-block-start: 1px;
  margin-block-end: 0;
  margin-inline-start: 0;
  margin-inline-end: 9px;
  position: relative;
}

.tag-link {
  padding-inline-start: 6px;
}

.social-media {
  flex-wrap: wrap;
  display: flex;
}

.social-media__item {
  box-shadow: 1px 0 0 0 rgb(var(--border-color)), 0 1px 0 0 rgb(var(--border-color)), 1px 1px 0 0 rgb(var(--border-color)), 1px 0 0 0 rgb(var(--border-color)) inset, 0 1px 0 0 rgb(var(--border-color)) inset;
  position: relative;
  transform: translateZ(0);
}

.no-focus-outline .social-media__item {
  overflow: hidden;
}

.social-media__item:before {
  content: "";
  clip-path: polygon(0 25%, 100% 0, 100% 100%, 0% 100%);
  transform-origin: bottom;
  pointer-events: none;
  z-index: 1;
  background: currentColor;
  width: calc(100% + 1px);
  height: calc(100% + 1px);
  transition: transform .3s cubic-bezier(.215, .61, .355, 1), clip-path .3s cubic-bezier(.215, .61, .355, 1);
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  transform: scaleY(0);
}

.social-media:not(.social-media--no-radius) .social-media__item:first-child:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-left-radius: var(--button-border-radius);
  border-bottom-left-radius: var(--button-border-radius);
}

.social-media:not(.social-media--no-radius) .social-media__item:first-child:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-right-radius: var(--button-border-radius);
  border-bottom-right-radius: var(--button-border-radius);
}

.social-media:not(.social-media--no-radius) .social-media__item:last-child:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-right-radius: var(--button-border-radius);
  border-bottom-right-radius: var(--button-border-radius);
}

.social-media:not(.social-media--no-radius) .social-media__item:last-child:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-left-radius: var(--button-border-radius);
  border-bottom-left-radius: var(--button-border-radius);
}

.social-media__link {
  color: currentColor;
  z-index: 1;
  justify-content: center;
  align-items: center;
  width: 45px;
  height: 45px;
  transition: color .3s cubic-bezier(.215, .61, .355, 1);
  display: flex;
  position: relative;
}

@media screen and (min-width: 741px) {
  .social-media__link {
    width: 55px;
    height: 55px;
  }
}

@media screen and (pointer: fine) {
  .social-media__item:hover .social-media__link {
    color: rgb(var(--background));
  }

  .social-media__item:hover:before {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
    transform: scaleY(1);
  }
}

.banner {
  text-align: start;
  justify-content: flex-start;
  align-items: flex-start;
  padding: 12px 16px;
  display: flex;
}

.banner--centered {
  justify-content: center;
}

.banner--margin {
  margin-block-start: 24px;
}

.banner__ribbon {
  margin-inline-end: 10px;
}

.banner__content {
  margin: 0;
}

.banner--success {
  --text-color: rgb(var(--success-color));
  background: rgb(var(--success-background));
  color: rgb(var(--success-color));
}

.banner--error {
  --text-color: rgb(var(--error-color));
  background: rgb(var(--error-background));
  color: rgb(var(--error-color));
}

.banner__content ul {
  padding-inline-start: 10px;
  list-style-position: inside;
}

@media screen and (min-width: 741px) {
  .banner {
    padding: 13px 18px;
  }
}

.tabs-nav {
  margin-block-end: 32px;
  display: block;
  position: relative;
}

.tabs-nav:not(:first-child) {
  margin-block-start: 24px;
}

.tabs-nav__scroller {
  display: block;
}

.tabs-nav__scroller-inner {
  line-height: 1;
  position: relative;
}

/*! minireset.css v0.0.6 | MIT License | github.com/jgthms/minireset.css */
/*! PhotoSwipe main CSS by Dmitry Semenov | photoswipe.com | MIT license */
@media screen and (max-width: 740px) {
  .hidden-phone {
    display: none !important;
  }
}

@media screen and (min-width: 741px) and (max-width: 999px) {
  .hidden-tablet {
    display: none !important;
  }
}

@media screen and (min-width: 741px) {
  .hidden-tablet-and-up {
    display: none !important;
  }
}

@media screen and (max-width: 999px) {
  .hidden-pocket {
    display: none !important;
  }
}

@media screen and (min-width: 1000px) and (max-width: 1199px) {
  .hidden-lap {
    display: none !important;
  }
}

@media screen and (min-width: 1000px) {
  .hidden-lap-and-up {
    display: none !important;
  }
}

@media screen and (min-width: 1200px) {
  .hidden-desk {
    display: none !important;
  }
}

@media screen and (min-width: 1400px) {
  .hidden-wide {
    display: none !important;
  }
}

@media screen and (pointer: fine) {
  .hidden-no-touch {
    display: none !important;
  }
}

@media screen and not (pointer: fine) {
  .hidden-touch {
    display: none !important;
  }
}

@media print {
  .hidden-print {
    display: none !important;
  }
}

*, :before, :after {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  box-sizing: border-box !important;
}

html {
  -ms-overflow-style: -ms-autohiding-scrollbar;
  -moz-text-size-adjust: 100%;
  text-size-adjust: 100%;
  font-family: sans-serif;
}

body {
  margin: 0;
}

[hidden] {
  display: none;
}

blockquote:first-child, ul:first-child, ol:first-child, p:first-child, h1:first-child, h2:first-child, h3:first-child, h4:first-child, h5:first-child, h6:first-child {
  margin-block-start: 0 !important;
}

blockquote:last-child, ul:last-child, ol:last-child, p:last-child, h1:last-child, h2:last-child, h3:last-child, h4:last-child, h5:last-child, h6:last-child {
  margin-block-end: 0 !important;
}

a {
  color: inherit;
  text-decoration: none;
}

button, input, select, textarea {
  color: inherit;
  font: inherit;
  text-align: inherit;
  margin: 0;
}

button, [type="submit"] {
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
  touch-action: manipulation;
  background: none;
  border: none;
  border-radius: 0;
  padding: 0;
  overflow: visible;
}

button[disabled], html input[disabled] {
  cursor: default;
}

img, video {
  vertical-align: top;
  border-style: none;
  max-width: 100%;
  height: auto;
}

img:-moz-loading {
  visibility: hidden;
}

iframe {
  border: 0;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

td, th {
  padding: 0;
}

.pswp {
  touch-action: none;
  z-index: 1500;
  -webkit-backface-visibility: hidden;
  outline: none;
  width: 100%;
  height: 100%;
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
}

.pswp img {
  max-width: none;
}

.pswp--animate_opacity {
  opacity: .001;
  will-change: opacity;
  transition: opacity .333s cubic-bezier(.4, 0, .22, 1);
}

.pswp--open {
  display: block;
}

.pswp--zoom-allowed .pswp__img {
  cursor: var(--zoom-cursor-svg-url) 26 26, zoom-in;
}

.pswp--zoomed-in .pswp__img {
  cursor: grab;
}

.pswp--dragging .pswp__img {
  cursor: grabbing;
}

.pswp__bg {
  background: rgb(var(--background));
  opacity: 0;
  -webkit-backface-visibility: hidden;
  will-change: opacity;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  transform: translateZ(0);
}

.pswp__scroll-wrap {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
}

.pswp__container, .pswp__zoom-wrap {
  touch-action: none;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}

.pswp__container, .pswp__img {
  -webkit-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
}

.pswp__zoom-wrap {
  transform-origin: 0 0;
  width: 100%;
  transition: transform .333s cubic-bezier(.4, 0, .22, 1);
  position: absolute;
}

.pswp__bg {
  will-change: opacity;
  transition: opacity .333s cubic-bezier(.4, 0, .22, 1);
}

.pswp--animated-in .pswp__bg, .pswp--animated-in .pswp__zoom-wrap {
  transition: none;
}

.pswp__container, .pswp__zoom-wrap {
  -webkit-backface-visibility: hidden;
}

.pswp__item {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  overflow: hidden;
}

.pswp__img {
  width: auto;
  height: auto;
  position: absolute;
  top: 0;
  left: 0;
}

.pswp__top-bar {
  position: absolute;
  top: var(--container-gutter);
}

.pswp__top-bar:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: var(--container-gutter);
}

.pswp__top-bar:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: var(--container-gutter);
}

.pswp__prev-next-buttons {
  margin-inline: var(--container-gutter);
  pointer-events: none;
  justify-content: space-between;
  display: flex;
  position: absolute;
  top: calc(50% - 28px);
  left: 0;
  right: 0;
}

.pswp__dots-nav-wrapper {
  padding-inline: var(--container-gutter);
  background: rgb(var(--background));
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding-block-start: 20px;
  padding-block-end: 20px;
  transition: opacity .25s ease-in-out .2s, transform .25s ease-in-out .2s;
  display: flex;
  position: absolute;
  bottom: 0;
}

.pswp__dots-nav-wrapper .dots-nav {
  padding-inline-start: 20px;
  padding-inline-end: 20px;
}

.pswp__ui--hidden .pswp__dots-nav-wrapper {
  opacity: 0;
  transform: translateY(10px);
}

.pswp__button svg {
  transition: transform .25s ease-in-out;
}

@supports (padding: max(0px)) {
  .pswp__dots-nav-wrapper {
    padding-block-end: max(20px, env(safe-area-inset-bottom, 0px)  + 20px);
  }
}

@media screen and (pointer: fine) {
  .pswp__button:hover svg {
    transform: rotateZ(90deg);
  }
}

.flickity-enabled {
  position: relative;
  overflow: visible !important;
}

.flickity-enabled:focus {
  outline-offset: 2px;
}

.flickity-viewport {
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
}

.flickity-slider {
  width: 100%;
  height: 100%;
  position: absolute;
}

.flickity-enabled.is-draggable {
  -webkit-tap-highlight-color: transparent;
  -webkit-user-select: none;
  user-select: none;
}

.flickity-enabled.is-draggable:not(.is-hovering-right):not(.is-hovering-left) .flickity-viewport {
  cursor: grab;
}

.flickity-enabled.is-draggable:not(.is-hovering-right):not(.is-hovering-left) .flickity-viewport.is-pointer-down {
  cursor: grabbing;
}

.flickity-enabled.is-hovering-right .flickity-viewport {
  cursor: var(--arrow-right-svg-url) 17 14, e-resize;
}

.flickity-enabled.is-hovering-left .flickity-viewport {
  cursor: var(--arrow-left-svg-url) 17 14, w-resize;
}

.flickity-rtl .flickity-page-dots {
  direction: rtl;
}

.flickity-enabled.is-fade .flickity-slider > * {
  pointer-events: none;
  z-index: 0;
  transition: visibility .2s linear;
}

.flickity-enabled.is-fade .flickity-slider > .is-selected {
  pointer-events: auto;
  z-index: 1;
}

.flickity-enabled.is-fade .flickity-slider > :not(.is-selected) {
  visibility: hidden;
}

html {
  font-family: var(--text-font-family);
  font-weight: var(--text-font-weight);
  font-style: var(--text-font-style);
  font-size: calc(var(--base-font-size)  - 1px);
  color: rgb(var(--text-color));
  background: rgb(var(--background));
  line-height: 1.71429;
}

:lang(ar) * {
  letter-spacing: normal !important;
}

p strong, p b {
  font-weight: var(--text-font-bold-weight);
}

.heading, .blockquote, .rte h1, .rte h2, .rte h3, .rte h4, .rte h5, .rte h6, .rte blockquote {
  font-family: var(--heading-font-family);
  font-weight: var(--heading-font-weight);
  font-style: var(--heading-font-style);
  color: rgb(var(--heading-color));
  text-transform: var(--heading-text-transform);
  display: block;
}

.text--small {
  font-size: calc(var(--base-font-size)  - 2px);
  line-height: 1.69231;
}

.text--xsmall {
  font-size: calc(var(--base-font-size)  - 3px);
  line-height: 1.5;
}

.text--xxsmall {
  font-size: calc(var(--base-font-size)  - 5px);
  line-height: 1.5;
}

.text--large {
  font-size: calc(var(--base-font-size)  + 1px);
}

.text--subdued {
  color: rgba(var(--text-color), .7);
}

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

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

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

.text--strong {
  font-weight: var(--text-font-bold-weight);
}

.text--underlined {
  text-underline-offset: 3px;
  text-decoration: underline;
}

p a:not(.button), .rte a:not(.button), .link {
  text-underline-offset: 2px;
  text-decoration: underline;
  -webkit-text-decoration-color: rgba(var(--text-color), .35);
  text-decoration-color: rgba(var(--text-color), .35);
  transition: text-decoration-color .2s ease-in-out, color .2s ease-in-out;
}

.heading--small.link {
  line-height: 1.8;
}

@media screen and (pointer: fine) {
  p a:not(.button):hover, .rte a:not(.button):hover, .link:hover {
    color: rgb(var(--text-color));
    -webkit-text-decoration-color: rgb(var(--text-color));
    text-decoration-color: rgb(var(--text-color));
  }
}

.link--animated {
  width: max-content;
  display: block;
  position: relative;
}

.link--animated:after {
  content: "";
  transform-origin: var(--transform-origin-end);
  background: currentColor;
  width: 100%;
  height: 0px;
  transition: transform .3s;
  position: absolute;
  bottom: 2px;
  left: 0;
  transform: scaleX(0);
}

.text--underlined.link--animated {
  text-decoration: none;
  color:white;
}

.text--underlined.link--animated:after {
  transform: scaleX(1);
}

@media screen and (pointer: fine) {
  .link--animated[aria-expanded="true"]:after, .link--animated:hover:after {
    transform-origin: var(--transform-origin-start);
    transform: scaleX(1);
  }

  @keyframes textUnderlinedAnimatedKeyframes {
    0% {
      transform-origin: var(--transform-origin-end);
      transform: scaleX(1);
    }

    50% {
      transform-origin: var(--transform-origin-end);
      transform: scaleX(0);
    }

    51% {
      transform-origin: var(--transform-origin-start);
    }

    100% {
      transform: scaleX(1);
    }
  }

  .text--underlined.link--animated:hover:after {
    animation: .6s textUnderlinedAnimatedKeyframes;
  }
}

.link--faded {
  transition: opacity .25s ease-in-out;
}

.link--faded:hover {
  transform: scale(1.02);
  color:#3A9D5F;
}

.visually-hidden {
  clip: rect(0 0 0 0);
  border: 0;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  position: absolute !important;
}

@media screen and (min-width: 741px) {
  html {
    font-size: var(--base-font-size);
    line-height: 1.73333;
  }

  .text--small {
    font-size: calc(var(--base-font-size)  - 1px);
    line-height: 1.71429;
  }

  .text--xsmall {
    font-size: calc(var(--base-font-size)  - 2px);
    line-height: 1.53846;
  }

  .text--xxsmall {
    font-size: calc(var(--base-font-size)  - 4px);
    line-height: 1.53846;
  }

  .text--large {
    font-size: calc(var(--base-font-size)  + 5px);
  }
}

.heading:first-child {
  margin-block-start: 0;
}

.heading:last-child {
  margin-block-end: 0;
}

.heading--small, .heading--xsmall, .heading--xxsmall {
  font-family: var(--text-font-family);
  font-style: var(--text-font-style);
  text-transform: uppercase;
  font-weight: var(--text-font-bold-weight);
  letter-spacing: 1px;
  line-height: 1.46636;
}

.heading--xxsmall {
  font-size: var(--heading-xxsmall-font-size);
}

.heading--xsmall {
  font-size: var(--heading-xsmall-font-size);
}

.heading--small {
  font-size: var(--heading-small-font-size);
  line-height: 1.5;
}

.heading--large, .rte .heading--large {
  font-size: var(--heading-large-font-size);
  letter-spacing: -.9px;
  line-height: 1.11111;
}

.h1, .rte h1 {
  font-size: var(--heading-h1-font-size);
  letter-spacing: -.9px;
  line-height: 1.11111;
}

@media screen and (min-width: 1000px) {
  .h1, .rte h1 {
    font-size: 38px
  }
}

.h2, .rte h2 {
  font-size: var(--heading-h2-font-size);
  letter-spacing: 0px;
  line-height: 1.13333;
}

@media screen and (min-width: 1000px) {
  .h2, .rte h2 {
    font-size: 32px
  }
}

.h3, .rte h3 {
  font-size: var(--heading-h3-font-size);
  letter-spacing: 0px;
  line-height: 1.15385;
}

@media screen and (min-width: 1000px) {
  .h3, .rte h3 {
    font-size: 30px
  }
}

.h4, .rte h4 {
  font-size: var(--heading-h4-font-size);
  letter-spacing: 0px;
  line-height: 1.16667;
}

.h5, .rte h5 {
  font-size: var(--heading-h5-font-size);
  letter-spacing: 0px;
  line-height: 1.2;
}

.h6, .rte h6 {
  font-size: var(--heading-h6-font-size);
  line-height: 1.25;
}

.blockquote, .rte blockquote {
  font-size: var(--heading-h4-font-size);
  letter-spacing: -.3px;
  padding-block-start: 24px;
  padding-block-end: 0;
  padding-inline-start: 24px;
  padding-inline-end: 24px;
  line-height: 1.16667;
  position: relative;
}

.blockquote:before, .rte blockquote:before {
  content: "";
  background: rgb(var(--text-color));
  opacity: .15;
  width: 71px;
  height: 56px;
  position: absolute;
  top: -10px;
  -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMDEgODAiPiAgICA8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTAgNDEuNzdWMGg0MS42MDR2NDEuNzdMMjAuMDI2IDgwSC45ODdMMjEuNzIgNDEuNzdIMHptNTkuMzk2IDBWMEgxMDF2NDEuNzdMNzkuNDIyIDgwSDYwLjM4M2wyMC43MzItMzguMjNINTkuMzk2eiIgZmlsbD0iY3VycmVudENvbG9yIiAvPjwvc3ZnPg==");
  mask-image: url("data:image/svg+xml;base64,PHN2ZyBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMDEgODAiPiAgICA8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTAgNDEuNzdWMGg0MS42MDR2NDEuNzdMMjAuMDI2IDgwSC45ODdMMjEuNzIgNDEuNzdIMHptNTkuMzk2IDBWMEgxMDF2NDEuNzdMNzkuNDIyIDgwSDYwLjM4M2wyMC43MzItMzguMjNINTkuMzk2eiIgZmlsbD0iY3VycmVudENvbG9yIiAvPjwvc3ZnPg==");
  -webkit-mask-size: 71px 56px;
  mask-size: 71px 56px;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}

.blockquote:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  left: calc(50% - 35.5px);
}

.rte blockquote:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  left: calc(50% - 35.5px);
}

.blockquote:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  right: calc(50% - 35.5px);
}

.rte blockquote:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  right: calc(50% - 35.5px);
}

.unordered-list, .text-container ul, .rte ul {
  margin-inline-start: 1.25em;
  margin-inline-end: 0;
  padding: 0;
  list-style-type: inherit;
}

.ordered-list, .text-container ol, .rte ol {
  margin-inline-start: 1em;
  margin-inline-end: 0;
  padding: 0;
}

.unordered-list li, .text-container ul li, .rte ul li {
  padding-block-start: 2px;
  padding-block-end: 2px;
  padding-inline-start: 0;
  padding-inline-end: 5px;
}

.ordered-list li, .text-container ol li, .rte ol li {
  padding-block-start: 3px;
  padding-block-end: 3px;
  padding-inline-start: 0;
  padding-inline-end: 9px;
}

.unordered-list li::marker, .text-container ul li::marker, .rte ul li::marker {
  color: inherit;
  font-size: 16px;
}

.ordered-list li::marker, .text-container ol li::marker, .rte ol li::marker {
  color: inherit;
  font-size: 11px;
}

.table-wrapper {
  overflow-x: auto;
}

.table, .rte table {
  --table-spacing: 16px;
  width: 100%;
}

.table--loose {
  --table-spacing: 24px;
}

.table th:not([class*="text--"]), .rte table th:not([class*="text--"]) {
  text-align: start;
}

.table th, .rte table th {
  border-bottom: 1px solid rgb(var(--border-color));
  padding-block-end: 15px;
  padding-inline: var(--table-spacing);
}

.table td.half-spaced, .rte table td.half-spaced {
  padding: calc(var(--table-spacing) / 2);
}

.table td, .rte table td {
  padding: var(--table-spacing);
  padding-block-end: 0;
}

.table tr[onclick] {
  cursor: pointer;
}

.table th:first-child, .rte table th:first-child, .table td:first-child, .rte table td:first-child {
  padding-inline-start: 0;
}

.table th:last-child, .rte table th:last-child, .table td:last-child, .rte table td:last-child {
  padding-inline-end: 0;
}

.table tfoot tr:first-child td, .rte table tfoot tr:first-child td {
  border-top: 1px solid rgb(var(--border-color));
}

.table tfoot tr:not(:first-child) td, .rte table tfoot tr:not(:first-child) td {
  padding-block-start: 8px;
}

.table--bordered td {
  border-top: 1px solid rgb(var(--border-color));
  padding-block-end: var(--table-spacing);
}

.table--footered tbody tr:last-child td {
  padding-block-end: var(--table-spacing);
}

@media screen and (max-width: 740px) {
  .table tfoot td, .rte table tfoot td {
    padding-block-start: 16px;
  }
}

@media screen and (min-width: 741px) {
  .ordered-list li::marker, .text-container ol li::marker, .rte ol li::marker {
    font-size: 12px;
  }

  .heading--xsmall {
    line-height: 1.46667;
  }

  .heading--small {
    line-height: 1.23077;
  }

  .heading--large {
    line-height: 1;
  }

  .h1, .rte h1 {
    letter-spacing: -1px;
    line-height: 1.04167;
  }

  .h2, .rte h2 {
    letter-spacing: 0px;
    line-height: 1.10526;
  }

  .h3, .rte h3 {
    letter-spacing: 0px;
    line-height: 1.0625;
  }

  .h4, .rte h4 {
    letter-spacing: 0px;
    line-height: 1.16667;
  }

  .h5, .rte h5 {
    letter-spacing: 0px;
    line-height: 1.2;
  }

  .h6, .rte h6 {
    line-height: 1.22222;
  }

  .blockquote, .rte blockquote {
    letter-spacing: -.6px;
    min-height: 63px;
    padding-inline-start: 49px;
    padding-inline-end: 0;
    line-height: 1.16667;
  }

  .blockquote--center {
    padding-inline-start: 0;
  }

  .blockquote:not(.blockquote--center):before, .rte blockquote:not(.blockquote--center):before {
    width: 80px;
    height: 63px;
    top: 0;
    -webkit-mask-size: 80px 63px;
    mask-size: 80px 63px;
  }

  .blockquote:not(.blockquote--center):not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
    left: 0;
  }

  .rte blockquote:not(.blockquote--center):not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
    left: 0;
  }

  .blockquote:not(.blockquote--center):is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
    right: 0;
  }

  .rte blockquote:not(.blockquote--center):is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
    right: 0;
  }

  .unordered-list li, .text-container ul li, .rte ul li {
    padding-block-start: 4px;
    padding-block-end: 4px;
    padding-inline-start: 0;
    padding-inline-end: 5px;
  }

  .ordered-list li, .text-container ol li, .rte ol li {
    padding-block-start: 4px;
    padding-block-end: 4px;
    padding-inline-start: 0;
    padding-inline-end: 9px;
  }
}

@media screen and (min-width: 1000px) {
  .table {
    --table-spacing: 24px;
  }

  .table--loose {
    --table-spacing: 32px;
  }
}

@media screen and (min-width: 1200px) {
  .heading--large, .rte .heading--large {
    line-height: 1;
  }

  .h1, .rte h1 {
    letter-spacing: -1px;
    line-height: 1.07143;
  }

  .h2, .rte h2 {
    letter-spacing: 0px;
    line-height: 1.08333;
  }

  .h3, .rte h3 {
    letter-spacing: 0px;
    line-height: 1.11111;
  }

  .h4, .rte h4 {
    letter-spacing: 0px;
    line-height: 1.13333;
  }

  .h5, .rte h5 {
    letter-spacing: 0px;
    line-height: 1.16667;
  }

  .h6, .rte h6 {
    line-height: 1.22222;
  }

  .blockquote, .rte blockquote {
    letter-spacing: -.7px;
    min-height: 80px;
    padding-inline-start: 69px;
    line-height: 1.13333;
  }

  .blockquote--center, .rte .blockquote--center {
    padding-inline-start: 0;
  }

  .blockquote:not(.blockquote--center):before, .rte blockquote:not(.blockquote--center):before {
    width: 101px;
    height: 81px;
    -webkit-mask-size: 101px 81px;
    mask-size: 101px 81px;
  }
}

.text-container p:not(.heading) + p, .rte p:not(.heading) + p, .text-container p + form, .rte p + form {
  margin-block-start: 24px;
}

.text-container .heading--large, .rte .heading--large {
  margin-block-start: 48px;
  margin-block-end: 40px;
  margin-inline-start: 0;
  margin-inline-end: 0;
}

.text-container .h1, .rte h1 {
  margin-block-start: 48px;
  margin-block-end: 24px;
  margin-inline-start: 0;
  margin-inline-end: 0;
}

.text-container .h2, .rte h2, .text-container .h3, .rte h3, .text-container .h4, .rte h4, .text-container .h5, .rte h5, .text-container .h6, .rte h6 {
  margin-block-start: 40px;
  margin-block-end: 16px;
  margin-inline-start: 0;
  margin-inline-end: 0;
  font-size: 1.5em;
}

.text-container .heading--small, .rte .heading--small {
  margin: 16px 0;
}

.text-container .heading--xsmall, .rte .heading--xsmall {
  margin: 12px 0;
}

.blockquote, .rte blockquote {
  margin-block-start: 48px;
  margin-block-end: 64px;
  margin-inline-start: 0;
  margin-inline-end: 0;
}

.text-container img:not([style*="float"]), .rte img:not([style*="float"]) {
  margin: 34px 0;
  display: block;
}

.text-container ul, .rte ul, .text-container ol, .rte ol {
  margin-block-start: 1em;
  margin-block-end: 1em;
}

@media screen and (min-width: 1000px) {
  .text-container p + form, .rte p + form {
    margin-block-start: 32px;
  }

  .text-container .h1, .rte h1 {
    margin-block-start: 48px;
    margin-block-end: 32px;
    margin-inline-start: 0;
    margin-inline-end: 0;
  }

  .text-container .h2, .rte h2, .text-container .h3, .rte h3, .text-container .h4, .rte h4 {
    margin-block-start: 48px;
    margin-block-end: 24px;
    margin-inline-start: 0;
    margin-inline-end: 0;
  }

  .text-container .h5, .rte h5, .text-container .h6, .rte h6 {
    margin-block-start: 40px;
    margin-block-end: 16px;
    margin-inline-start: 0;
    margin-inline-end: 0;
  }

  .blockquote, .rte blockquote {
    margin-block-start: 80px;
    margin-block-end: 96px;
    margin-inline-start: 0;
    margin-inline-end: 0;
  }
}

.rte > :first-child, .text-container > :first-child {
  margin-block-start: 0;
}

.rte > :last-child, .text-container > :last-child {
  margin-block-end: 0;
}

.heading--small + .heading--large {
  margin-block-start: 32px;
}

.heading--small + p, .heading--xsmall + p, .heading--small + p, .heading--small + .h1, .heading--small + h1, .heading--small + .h2, .heading--small + h2, .heading--small + .h3, .heading--small + h3, .heading--small + .h4, .heading--small + h4, .heading--small + .h5, .heading--small + h5, .heading--small + .h6, .heading--small + h6, .heading--xsmall + p, .heading--xsmall + .h1, .heading--xsmall + h1, .heading--xsmall + .h2, .heading--xsmall + h2, .heading--xsmall + .h3, .heading--xsmall + h3 {
  margin-block-start: 16px;
}

.heading--xsmall + .h4, .heading--xsmall + h4, .heading--xsmall + .h5, .heading--xsmall + h5, .heading--xsmall + .h6, .heading--xsmall + h6 {
  margin-block-start: 12px;
}

.heading + .button-wrapper, .heading + .button-group, p + .button-wrapper, p + .button-group, .button-wrapper + p, .button-group + p {
  margin-block-start: 32px;
}

@media screen and (min-width: 741px) {
  .heading--small + p, .heading--small + .h1, .heading--small + h1, .heading--small + .h2, .heading--small + h2, .heading--small + .h3, .heading--small + h3, .heading--small + .h4, .heading--small + h4 {
    margin-block-start: 24px;
  }

  .heading--small + .h5, .heading--small + h5, .heading--small + .h6, .heading--small + h6 {
    margin-block-start: 16px;
  }

  .heading--xsmall + .h1, .heading--xsmall + h1, .heading--xsmall + .h2, .heading--xsmall + h2 {
    margin-block-start: 24px;
  }
}

.shopify-section {
  color: rgb(var(--text-color));
  scroll-margin-top: calc(var(--header-height, 0px) * var(--enable-sticky-header)  + var(--announcement-bar-height, 0px) * var(--enable-sticky-announcement-bar));
}

.js .no-focus-outline :focus {
  outline: none;
}

.lock-all {
  touch-action: none;
  overflow: hidden;
}

@media screen and (max-width: 740px) {
  .lock-mobile {
    touch-action: none;
    overflow: hidden;
  }
}

.container, .shopify-policy__container.shopify-policy__container {
  max-width: var(--container-max-width);
  padding-inline: var(--container-gutter);
  --container-outer-margin: 0px;
  width: 100%;
  margin-inline-start: auto;
  margin-inline-end: auto;
}

.container--small {
  max-width: 930px;
}

@media screen and (max-width: 999px) {
  .container--flush {
    padding-inline-start: 0;
    padding-inline-end: 0;
  }
}

@media screen and (min-width: 1400px) {
  .container--medium {
    padding-inline: calc(var(--container-gutter)  + var(--grid-column-width)  + var(--grid-gap));
  }
}

.js .no-js {
  display: none !important;
}

.js .js\:hidden, .no-js .no-js\:hidden {
  display: none;
}

[reveal] {
  opacity: 0;
}

[reveal-visibility] {
  visibility: hidden;
}

.no-js [reveal] {
  opacity: 1;
}

.no-js [reveal-visibility] {
  visibility: visible;
}

.skip-to-content:focus {
  clip: auto;
  color: rgb(var(--text-color));
  background-color: rgb(var(--background));
  opacity: 1;
  z-index: 10000;
  width: auto;
  height: auto;
  margin: 0;
  padding: 10px;
  transition: none;
}


.vertical-breather {
  padding-block: var(--vertical-breather);
}


.vertical-breather--tight {
  padding-block: var(--vertical-breather-tight);
}

.vertical-breather--margin {
  margin-block: var(--vertical-breather);
  padding-block-start: 0 !important;
  padding-block-end: 0 !important;
}

.vertical-breather--margin.vertical-breather--tight {
  margin-block: var(--vertical-breather-tight);
}

@media screen and (min-width: 741px) {
  .vertical-breather--extra-tight {
    padding-block-start: 48px;
    padding-block-end: 48px;
  }

  .vertical-breather--margin.vertical-breather--extra-tight {
    margin-block-start: 48px;
    margin-block-end: 48px;
  }
}

.anchor {
  scroll-margin-top: calc(var(--header-height, 0px) * var(--enable-sticky-header)  + var(--announcement-bar-height, 0px) * var(--enable-sticky-announcement-bar)  + var(--anchor-offset, 20px));
}

.anchor.vertical-breather:not(.vertical-breather--margin) {
  --anchor-offset: 0px;
}

.anchor.vertical-breather--margin {
  --anchor-offset: var(--vertical-breather);
}

.anchor.vertical-breather--tight.vertical-breather--margin {
  --anchor-offset: var(--vertical-breather-tight);
}

.icon {
  vertical-align: middle;
  pointer-events: none;
  background: none;
  display: block;
  overflow: visible;
}

.icon--inline {
  display: inline-block;
}

.icon-text {
  align-items: center;
  display: flex;
}

@media screen and (max-width:741px) {
  .icon--picto-lock, .icon--picto-address, .icon--picto-credit-card { 
    width: 20px
  }
}

.iconmax {
    display: flex;
    justify-content: center;
    align-items: center;
}

.iconmax img {
    margin-inline-end: 0px!important;
}

.icon-text svg, .icon-text img {
  margin-inline-end: 12px;
}
  
.icon--picto-address {
   margin-inline-end: 8px!important
 }

@supports (scale: 1) {
  [dir="rtl"] .icon--direction-aware {
    scale: -1 1;
  }
}

@supports not (scale: 1) {
  [dir="rtl"] .icon--direction-aware {
    transform: scale(-1, 1);
  }
}

.list--unstyled {
  margin: 0;
  padding: 0;
  list-style: none;
}

.loading-bar {
  opacity: 0;
  background: rgb(var(--loading-bar-background));
  transform-origin: 0;
  z-index: 50;
  pointer-events: none;
  width: 100%;
  height: 3px;
  transition: transform .25s ease-in-out;
  position: fixed;
  top: 0;
  left: 0;
  transform: scaleX(0);
}

.loading-bar.is-visible {
  opacity: 1;
}

.section {
  margin: var(--vertical-breather) 0;
  display: block;
}

.section--tight {
  margin-block: var(--vertical-breather-tight);
}

.section:empty {
  display: none;
}

.section--flush {
  margin-block-start: 0;
  margin-block-end: 0;
}

.section__color-wrapper {
  background: rgb(var(--section-background, var(--background)));
  display: flow-root;
}

.section__color-wrapper--boxed {
  border-radius: var(--block-border-radius);
}

.section__header {
  text-align: center;
  max-width: 1000px;
  margin-block-end: min(32px, var(--vertical-breather));
  margin-inline-start: auto;
  margin-inline-end: auto;
}

.section__header:only-child {
  margin-block-end: 0;
}

.section__header--tight {
  max-width: 800px;
}

.section__header--left {
  text-align: start;
  margin-left: 0;
}

.section__header--right {
  text-align: end;
  margin-right: 0;
}

.section__footer {
  text-align: center;
  margin-block-start: 32px;
}

@media screen and (min-width: 741px) {
  .section__header {
    margin-block-end: min(40px, var(--vertical-breather));
  }

  .section__footer {
    margin-block-start: min(40px, var(--vertical-breather));
  }

}

@media screen and (min-width: 1000px) {
  .section__header {
    margin-block-end: min(48px, var(--vertical-breather));
  }

  .section__footer {
    margin-block-start: min(48px, var(--vertical-breather));
  }

}

.page-header {
  text-align: center;
  position: relative;
}

.page-header--secondary {
  background: rgb(var(--secondary-background));
}

.page-header--clear:after, .page-header:before {
  content: "";
  clear: left;
  display: table;
}

.page-header__text-wrapper {
  margin: 60px 0 37px 0;
}

.page-header--small .page-header__text-wrapper {
  margin-block-start: 24px;
  margin-block-end: 24px;
}

.page-header--alone .page-header__text-wrapper {
  margin-block-end: 72px;
}

.page-content, .shopify-policy__body {
  max-width: 1200px;
  margin-block-end: min(var(--vertical-breather), 80px);
  margin-inline-start: auto;
  margin-inline-end: auto;
}

.page-content--medium, .shopify-policy__body {
  max-width: 670px;
}

.page-content--small {
  max-width: 460px;
}

.page-content--fluid {
  max-width: none;
}

@media screen and (min-width: 741px) {
  .page-header__text-wrapper {
    margin-block-start: 68px;
    margin-block-end: 68px;
  }

  .page-header--small .page-header__text-wrapper {
    margin-block-start: 48px;
    margin-block-end: 40px;
  }

  .page-header--alone .page-header__text-wrapper {
    margin-block-end: 120px;
  }

  .breadcrumb--floating + .page-header__text-wrapper {
    margin-block-start: 65px;
    text-align:center
  }
}

.breadcrumb {
  z-index: 1;
}

.breadcrumb--floating {
  position: absolute;
  top: 0;
}

.breadcrumb--floating:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 0;
}

.breadcrumb--floating:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 0;
}

.breadcrumb__list {
  margin: 0;
  padding: 26px 0;
  list-style: none;
  display: inline-flex;
}

.breadcrumb__item + .breadcrumb__item:before {
  content: "/";
  opacity: .7;
  float: left;
  margin: 0 4px;
}

.breadcrumb__link {
  transition: opacity .2s ease-in-out;
}

.breadcrumb__link:not([aria-current="page"]):not(:hover) {
  opacity: .7;
}

[dir="rtl"] .breadcrumb__item + .breadcrumb__item:before {
  float: right;
}



.pagination {
  justify-content: center;
  margin-block-start: 40px;
  display: flex;
}

.pagination__nav {
  border-collapse: separate;
  table-layout: fixed;
  display: table;
}

.pagination__nav-item {
  box-shadow: 1px 0 0 0 rgb(var(--border-color)), 0 1px 0 0 rgb(var(--border-color)), 1px 1px 0 0 rgb(var(--border-color)), 1px 0 0 0 rgb(var(--border-color)) inset, 0 1px 0 0 rgb(var(--border-color)) inset;
  vertical-align: middle;
  text-align: center;
  width: 47px;
  height: 47px;
  display: table-cell;
  position: relative;
}

.pagination__nav-item:first-child:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-left-radius: var(--button-border-radius);
  border-bottom-left-radius: var(--button-border-radius);
}

.pagination__nav-item:first-child:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  border-top-left-radius: var(--button-border-radius);
  border-bottom-left-radius: var(--button-border-radius);
}

.pagination__nav-item:first-child:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-right-radius: var(--button-border-radius);
  border-bottom-right-radius: var(--button-border-radius);
}

.pagination__nav-item:first-child:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  border-top-right-radius: var(--button-border-radius);
  border-bottom-right-radius: var(--button-border-radius);
}

.pagination__nav-item:last-child:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-right-radius: var(--button-border-radius);
  border-bottom-right-radius: var(--button-border-radius);
}

.pagination__nav-item:last-child:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  border-top-right-radius: var(--button-border-radius);
  border-bottom-right-radius: var(--button-border-radius);
}

.pagination__nav-item:last-child:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-left-radius: var(--button-border-radius);
  border-bottom-left-radius: var(--button-border-radius);
}

.pagination__nav-item:last-child:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  border-top-left-radius: var(--button-border-radius);
  border-bottom-left-radius: var(--button-border-radius);
}

.pagination__nav-item svg {
  margin: 0 auto;
}

.pagination__nav-item[aria-current]:before {
  content: "";
  pointer-events: none;
  z-index: 1;
  max-width: calc(100% - 3px);
  max-height: calc(100% - 3px);
  position: absolute;
  top: 2px;
  bottom: 0;
  left: 2px;
  right: 0;
  box-shadow: 0 0 0 2px;
}

@media screen and (min-width: 741px) {
  .pagination {
    margin-block-start: 48px;
  }

  .pagination__nav-item {
    width: 56px;
    height: 56px;
  }
}

.linklist__item:not(:first-child) {
  padding-block-start: 12px;
}

/*! minireset.css v0.0.6 | MIT License | github.com/jgthms/minireset.css */
/*! PhotoSwipe main CSS by Dmitry Semenov | photoswipe.com | MIT license */


@media screen and (min-width: 741px) and (max-width: 999px) {
  .hidden-tablet {
    display: none !important;
  }
}

@media screen and (min-width: 741px) {
  .hidden-tablet-and-up {
    display: none !important;
  }
}

@media screen and (max-width: 999px) {
  .hidden-pocket {
    display: none !important;
  }
}

@media screen and (min-width: 1000px) and (max-width: 1199px) {
  .hidden-lap {
    display: none !important;
  }
}

@media screen and (min-width: 1000px) {
  .hidden-lap-and-up {
    display: none !important;
  }
}

@media screen and (min-width: 1200px) {
  .hidden-desk {
    display: none !important;
  }
}

@media screen and (min-width: 1400px) {
  .hidden-wide {
    display: none !important;
  }
}

@media screen and (pointer: fine) {
  .hidden-no-touch {
    display: none !important;
  }
}

@media screen and not (pointer: fine) {
  .hidden-touch {
    display: none !important;
  }
}

@media print {
  .hidden-print {
    display: none !important;
  }
}

*, :before, :after {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  box-sizing: border-box !important;
}

html {
  -ms-overflow-style: -ms-autohiding-scrollbar;
  -moz-text-size-adjust: 100%;
  text-size-adjust: 100%;
  font-family: sans-serif;
}

body {
  margin: 0;
}

[hidden] {
  display: none;
}

blockquote:first-child, ul:first-child, ol:first-child, p:first-child, h1:first-child, h2:first-child, h3:first-child, h4:first-child, h5:first-child, h6:first-child {
  margin-block-start: 0 !important;
}

blockquote:last-child, ul:last-child, ol:last-child, p:last-child, h1:last-child, h2:last-child, h3:last-child, h4:last-child, h5:last-child, h6:last-child {
  margin-block-end: 0 !important;
}

a {
  color: inherit;
  text-decoration: none;
}

button, input, select, textarea {
  color: inherit;
  font: inherit;
  text-align: inherit;
  margin: 0;
}

button, [type="submit"] {
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
  touch-action: manipulation;
  background: none;
  border: none;
  border-radius: 0;
  padding: 0;
  overflow: visible;
}

button[disabled], html input[disabled] {
  cursor: default;
}

img, video {
  vertical-align: top;
  border-style: none;
  max-width: 100%;
  height: auto;
}

img:-moz-loading {
  visibility: hidden;
}

iframe {
  border: 0;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

td, th {
  padding: 0;
}

.pswp {
  touch-action: none;
  z-index: 1500;
  -webkit-backface-visibility: hidden;
  outline: none;
  width: 100%;
  height: 100%;
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
}

.pswp img {
  max-width: none;
}

.pswp--animate_opacity {
  opacity: .001;
  will-change: opacity;
  transition: opacity .333s cubic-bezier(.4, 0, .22, 1);
}

.pswp--open {
  display: block;
}

.pswp--zoom-allowed .pswp__img {
  cursor: var(--zoom-cursor-svg-url) 26 26, zoom-in;
}

.pswp--zoomed-in .pswp__img {
  cursor: grab;
}

.pswp--dragging .pswp__img {
  cursor: grabbing;
}

.pswp__bg {
  background: rgb(var(--background));
  opacity: 0;
  -webkit-backface-visibility: hidden;
  will-change: opacity;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  transform: translateZ(0);
}

.pswp__scroll-wrap {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
}

.pswp__container, .pswp__zoom-wrap {
  touch-action: none;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}

.pswp__container, .pswp__img {
  -webkit-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
}

.pswp__zoom-wrap {
  transform-origin: 0 0;
  width: 100%;
  transition: transform .333s cubic-bezier(.4, 0, .22, 1);
  position: absolute;
}

.pswp__bg {
  will-change: opacity;
  transition: opacity .333s cubic-bezier(.4, 0, .22, 1);
}

.pswp--animated-in .pswp__bg, .pswp--animated-in .pswp__zoom-wrap {
  transition: none;
}

.pswp__container, .pswp__zoom-wrap {
  -webkit-backface-visibility: hidden;
}

.pswp__item {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  overflow: hidden;
}

.pswp__img {
  width: auto;
  height: auto;
  position: absolute;
  top: 0;
  left: 0;
}

.pswp__top-bar {
  position: absolute;
  top: var(--container-gutter);
}

.pswp__top-bar:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: var(--container-gutter);
}

.pswp__top-bar:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: var(--container-gutter);
}

.pswp__prev-next-buttons {
  margin-inline: var(--container-gutter);
  pointer-events: none;
  justify-content: space-between;
  display: flex;
  position: absolute;
  top: calc(50% - 28px);
  left: 0;
  right: 0;
}

.pswp__dots-nav-wrapper {
  padding-inline: var(--container-gutter);
  background: rgb(var(--background));
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding-block-start: 20px;
  padding-block-end: 20px;
  transition: opacity .25s ease-in-out .2s, transform .25s ease-in-out .2s;
  display: flex;
  position: absolute;
  bottom: 0;
}

.pswp__dots-nav-wrapper .dots-nav {
  padding-inline-start: 20px;
  padding-inline-end: 20px;
}

.pswp__ui--hidden .pswp__dots-nav-wrapper {
  opacity: 0;
  transform: translateY(10px);
}

.pswp__button svg {
  transition: transform .25s ease-in-out;
}

@supports (padding: max(0px)) {
  .pswp__dots-nav-wrapper {
    padding-block-end: max(20px, env(safe-area-inset-bottom, 0px)  + 20px);
  }
}

@media screen and (pointer: fine) {
  .pswp__button:hover svg {
    transform: rotateZ(90deg);
  }
}

.flickity-enabled {
  position: relative;
  overflow: visible !important;
}

.flickity-enabled:focus {
  outline-offset: 2px;
}

.flickity-viewport {
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
}

.flickity-slider {
  width: 100%;
  height: 100%;
  position: absolute;
}

.flickity-enabled.is-draggable {
  -webkit-tap-highlight-color: transparent;
  -webkit-user-select: none;
  user-select: none;
}

.flickity-enabled.is-draggable:not(.is-hovering-right):not(.is-hovering-left) .flickity-viewport {
  cursor: grab;
}

.flickity-enabled.is-draggable:not(.is-hovering-right):not(.is-hovering-left) .flickity-viewport.is-pointer-down {
  cursor: grabbing;
}

.flickity-enabled.is-hovering-right .flickity-viewport {
  cursor: var(--arrow-right-svg-url) 17 14, e-resize;
}

.flickity-enabled.is-hovering-left .flickity-viewport {
  cursor: var(--arrow-left-svg-url) 17 14, w-resize;
}

.flickity-rtl .flickity-page-dots {
  direction: rtl;
}

.flickity-enabled.is-fade .flickity-slider > * {
  pointer-events: none;
  z-index: 0;
  transition: visibility .2s linear;
}

.flickity-enabled.is-fade .flickity-slider > .is-selected {
  pointer-events: auto;
  z-index: 1;
}

.flickity-enabled.is-fade .flickity-slider > :not(.is-selected) {
  visibility: hidden;
}

html {
  font-family: var(--text-font-family);
  font-weight: var(--text-font-weight);
  font-style: var(--text-font-style);
  font-size: calc(var(--base-font-size)  - 1px);
  color: rgb(var(--text-color));
  background: rgb(var(--background));
  line-height: 1.71429;
}

:lang(ar) * {
  letter-spacing: normal !important;
}

p strong, p b {
  font-weight: var(--text-font-bold-weight);
}

.heading, .blockquote, .rte h1, .rte h2, .rte h3, .rte h4, .rte h5, .rte h6, .rte blockquote {
  font-family: var(--heading-font-family);
  font-weight: var(--heading-font-weight);
  font-style: var(--heading-font-style);
  color: rgb(var(--heading-color));
  text-transform: var(--heading-text-transform);
  display: block;
}

.text--small {
  font-size: calc(var(--base-font-size)  - 2px);
  line-height: 1.69231;
}

.text--xsmall {
  font-size: calc(var(--base-font-size)  - 3px);
  line-height: 1.5;
}

.text--xxsmall {
  font-size: calc(var(--base-font-size)  - 5px);
  line-height: 1.5;
}

.text--large {
  font-size: calc(var(--base-font-size)  + 1px);
}

.text--subdued {
  color: rgba(var(--text-color), .7);
}

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

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

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

.text--strong {
  font-weight: var(--text-font-bold-weight);
}

.text--underlined {
  text-underline-offset: 3px;
  text-decoration: underline;
}

p a:not(.button), .rte a:not(.button), .link {
  text-underline-offset: 2px;
  text-decoration: underline;
  -webkit-text-decoration-color: rgba(var(--text-color), .35);
  text-decoration-color: rgba(var(--text-color), .35);
  transition: text-decoration-color .2s ease-in-out, color .2s ease-in-out;
}

.heading--small.link {
  line-height: 1.8;
}

@media screen and (pointer: fine) {
  p a:not(.button):hover, .rte a:not(.button):hover, .link:hover {
    color: rgb(var(--text-color));
    -webkit-text-decoration-color: rgb(var(--text-color));
    text-decoration-color: rgb(var(--text-color));
  }
}

.link--animated {
  width: max-content;
  display: block;
  position: relative;
}

.link--animated:after {
  content: "";
  transform-origin: var(--transform-origin-end);
  background: currentColor;
  width: 100%;
  height: 0px;
  transition: transform .3s;
  position: absolute;
  bottom: 2px;
  left: 0;
  transform: scaleX(0);
}

.text--underlined.link--animated {
  text-decoration: none;
  color:white;
}

.text--underlined.link--animated:after {
  transform: scaleX(1);
}

@media screen and (pointer: fine) {
  .link--animated[aria-expanded="true"]:after, .link--animated:hover:after {
    transform-origin: var(--transform-origin-start);
    transform: scaleX(1);
  }

  @keyframes textUnderlinedAnimatedKeyframes {
    0% {
      transform-origin: var(--transform-origin-end);
      transform: scaleX(1);
    }

    50% {
      transform-origin: var(--transform-origin-end);
      transform: scaleX(0);
    }

    51% {
      transform-origin: var(--transform-origin-start);
    }

    100% {
      transform: scaleX(1);
    }
  }

  .text--underlined.link--animated:hover:after {
    animation: .6s textUnderlinedAnimatedKeyframes;
  }
}

.link--faded {
  transition: opacity .25s ease-in-out;
}

.link--faded:hover {
  transform: scale(1.02);
  color:#3A9D5F;
}

.visually-hidden {
  clip: rect(0 0 0 0);
  border: 0;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  position: absolute !important;
}

@media screen and (min-width: 741px) {
  html {
    font-size: var(--base-font-size);
    line-height: 1.73333;
  }

  .text--small {
    font-size: calc(var(--base-font-size)  - 1px);
    line-height: 1.71429;
  }

  .text--xsmall {
    font-size: calc(var(--base-font-size)  - 2px);
    line-height: 1.53846;
  }

  .text--xxsmall {
    font-size: calc(var(--base-font-size)  - 4px);
    line-height: 1.53846;
  }

  .text--large {
    font-size: calc(var(--base-font-size)  + 5px);
  }
}

.heading:first-child {
  margin-block-start: 0;
}

.heading:last-child {
  margin-block-end: 0;
}

.heading--small, .heading--xsmall, .heading--xxsmall {
  font-family: var(--text-font-family);
  font-style: var(--text-font-style);
  text-transform: uppercase;
  font-weight: var(--text-font-bold-weight);
  letter-spacing: 1px;
  line-height: 1.46636;
}

.heading--xxsmall {
  font-size: var(--heading-xxsmall-font-size);
}

.heading--xsmall {
  font-size: var(--heading-xsmall-font-size);
}

.heading--small {
  font-size: var(--heading-small-font-size);
  line-height: 1.5;
}

.heading--large, .rte .heading--large {
  font-size: var(--heading-large-font-size);
  letter-spacing: -.9px;
  line-height: 1.11111;
}

.h1, .rte h1 {
  font-size: var(--heading-h1-font-size);
  letter-spacing: -.9px;
  line-height: 1.11111;
}

@media screen and (min-width: 1000px) {
  .h1, .rte h1 {
    font-size: 38px
  }
}

.h2, .rte h2 {
  font-size: var(--heading-h2-font-size);
  letter-spacing: 0px;
  line-height: 1.13333;
}

@media screen and (min-width: 1000px) {
  .h2, .rte h2 {
    font-size: 32px
  }
}

.h3, .rte h3 {
  font-size: var(--heading-h3-font-size);
  letter-spacing: 0px;
  line-height: 1.15385;
}

@media screen and (min-width: 1000px) {
  .h3, .rte h3 {
    font-size: 30px
  }
}

.h4, .rte h4 {
  font-size: var(--heading-h4-font-size);
  letter-spacing: 0px;
  line-height: 1.16667;
}

.h5, .rte h5 {
  font-size: var(--heading-h5-font-size);
  letter-spacing: 0px;
  line-height: 1.2;
}

.h6, .rte h6 {
  font-size: var(--heading-h6-font-size);
  line-height: 1.25;
}

.blockquote, .rte blockquote {
  font-size: var(--heading-h4-font-size);
  letter-spacing: -.3px;
  padding-block-start: 24px;
  padding-block-end: 0;
  padding-inline-start: 24px;
  padding-inline-end: 24px;
  line-height: 1.16667;
  position: relative;
}

.blockquote:before, .rte blockquote:before {
  content: "";
  background: rgb(var(--text-color));
  opacity: .15;
  width: 71px;
  height: 56px;
  position: absolute;
  top: -10px;
  -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMDEgODAiPiAgICA8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTAgNDEuNzdWMGg0MS42MDR2NDEuNzdMMjAuMDI2IDgwSC45ODdMMjEuNzIgNDEuNzdIMHptNTkuMzk2IDBWMEgxMDF2NDEuNzdMNzkuNDIyIDgwSDYwLjM4M2wyMC43MzItMzguMjNINTkuMzk2eiIgZmlsbD0iY3VycmVudENvbG9yIiAvPjwvc3ZnPg==");
  mask-image: url("data:image/svg+xml;base64,PHN2ZyBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMDEgODAiPiAgICA8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTAgNDEuNzdWMGg0MS42MDR2NDEuNzdMMjAuMDI2IDgwSC45ODdMMjEuNzIgNDEuNzdIMHptNTkuMzk2IDBWMEgxMDF2NDEuNzdMNzkuNDIyIDgwSDYwLjM4M2wyMC43MzItMzguMjNINTkuMzk2eiIgZmlsbD0iY3VycmVudENvbG9yIiAvPjwvc3ZnPg==");
  -webkit-mask-size: 71px 56px;
  mask-size: 71px 56px;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}

.blockquote:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  left: calc(50% - 35.5px);
}

.rte blockquote:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  left: calc(50% - 35.5px);
}

.blockquote:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  right: calc(50% - 35.5px);
}

.rte blockquote:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  right: calc(50% - 35.5px);
}

.unordered-list, .text-container ul, .rte ul {
  margin-inline-start: 1.25em;
  margin-inline-end: 0;
  padding: 0;
  list-style-type: inherit;
}

.ordered-list, .text-container ol, .rte ol {
  margin-inline-start: 1em;
  margin-inline-end: 0;
  padding: 0;
}

.unordered-list li, .text-container ul li, .rte ul li {
  padding-block-start: 2px;
  padding-block-end: 2px;
  padding-inline-start: 0;
  padding-inline-end: 5px;
}

.ordered-list li, .text-container ol li, .rte ol li {
  padding-block-start: 3px;
  padding-block-end: 3px;
  padding-inline-start: 0;
  padding-inline-end: 9px;
}

.unordered-list li::marker, .text-container ul li::marker, .rte ul li::marker {
  color: inherit;
  font-size: 16px;
}

.ordered-list li::marker, .text-container ol li::marker, .rte ol li::marker {
  color: inherit;
  font-size: 11px;
}

.table-wrapper {
  overflow-x: auto;
}

.table, .rte table {
  --table-spacing: 16px;
  width: 100%;
}

.table--loose {
  --table-spacing: 24px;
}

.table th:not([class*="text--"]), .rte table th:not([class*="text--"]) {
  text-align: start;
}

.table th, .rte table th {
  border-bottom: 1px solid rgb(var(--border-color));
  padding-block-end: 15px;
  padding-inline: var(--table-spacing);
}

.table td.half-spaced, .rte table td.half-spaced {
  padding: calc(var(--table-spacing) / 2);
}

.table td, .rte table td {
  padding: var(--table-spacing);
  padding-block-end: 0;
}

.table tr[onclick] {
  cursor: pointer;
}

.table th:first-child, .rte table th:first-child, .table td:first-child, .rte table td:first-child {
  padding-inline-start: 0;
}

.table th:last-child, .rte table th:last-child, .table td:last-child, .rte table td:last-child {
  padding-inline-end: 0;
}

.table tfoot tr:first-child td, .rte table tfoot tr:first-child td {
  border-top: 1px solid rgb(var(--border-color));
}

.table tfoot tr:not(:first-child) td, .rte table tfoot tr:not(:first-child) td {
  padding-block-start: 8px;
}

.table--bordered td {
  border-top: 1px solid rgb(var(--border-color));
  padding-block-end: var(--table-spacing);
}

.table--footered tbody tr:last-child td {
  padding-block-end: var(--table-spacing);
}

@media screen and (max-width: 740px) {
  .table tfoot td, .rte table tfoot td {
    padding-block-start: 16px;
  }
}

@media screen and (min-width: 741px) {
  .ordered-list li::marker, .text-container ol li::marker, .rte ol li::marker {
    font-size: 12px;
  }

  .heading--xsmall {
    line-height: 1.46667;
  }

  .heading--small {
    line-height: 1.23077;
  }

  .heading--large {
    line-height: 1;
  }

  .h1, .rte h1 {
    letter-spacing: -1px;
    line-height: 1.04167;
  }

  .h2, .rte h2 {
    letter-spacing: 0px;
    line-height: 1.10526;
  }

  .h3, .rte h3 {
    letter-spacing: 0px;
    line-height: 1.0625;
  }

  .h4, .rte h4 {
    letter-spacing: 0px;
    line-height: 1.16667;
  }

  .h5, .rte h5 {
    letter-spacing: 0px;
    line-height: 1.2;
  }

  .h6, .rte h6 {
    line-height: 1.22222;
  }

  .blockquote, .rte blockquote {
    letter-spacing: -.6px;
    min-height: 63px;
    padding-inline-start: 49px;
    padding-inline-end: 0;
    line-height: 1.16667;
  }

  .blockquote--center {
    padding-inline-start: 0;
  }

  .blockquote:not(.blockquote--center):before, .rte blockquote:not(.blockquote--center):before {
    width: 80px;
    height: 63px;
    top: 0;
    -webkit-mask-size: 80px 63px;
    mask-size: 80px 63px;
  }

  .blockquote:not(.blockquote--center):not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
    left: 0;
  }

  .rte blockquote:not(.blockquote--center):not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
    left: 0;
  }

  .blockquote:not(.blockquote--center):is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
    right: 0;
  }

  .rte blockquote:not(.blockquote--center):is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
    right: 0;
  }

  .unordered-list li, .text-container ul li, .rte ul li {
    padding-block-start: 4px;
    padding-block-end: 4px;
    padding-inline-start: 0;
    padding-inline-end: 5px;
  }

  .ordered-list li, .text-container ol li, .rte ol li {
    padding-block-start: 4px;
    padding-block-end: 4px;
    padding-inline-start: 0;
    padding-inline-end: 9px;
  }
}

@media screen and (min-width: 1000px) {
  .table {
    --table-spacing: 24px;
  }

  .table--loose {
    --table-spacing: 32px;
  }
}

@media screen and (min-width: 1200px) {
  .heading--large, .rte .heading--large {
    line-height: 1;
  }

  .h1, .rte h1 {
    letter-spacing: -1px;
    line-height: 1.07143;
  }

  .h2, .rte h2 {
    letter-spacing: 0px;
    line-height: 1.08333;
  }

  .h3, .rte h3 {
    letter-spacing: 0px;
    line-height: 1.11111;
  }

  .h4, .rte h4 {
    letter-spacing: 0px;
    line-height: 1.13333;
  }

  .h5, .rte h5 {
    letter-spacing: 0px;
    line-height: 1.16667;
  }

  .h6, .rte h6 {
    line-height: 1.22222;
  }

  .blockquote, .rte blockquote {
    letter-spacing: -.7px;
    min-height: 80px;
    padding-inline-start: 69px;
    line-height: 1.13333;
  }

  .blockquote--center, .rte .blockquote--center {
    padding-inline-start: 0;
  }

  .blockquote:not(.blockquote--center):before, .rte blockquote:not(.blockquote--center):before {
    width: 101px;
    height: 81px;
    -webkit-mask-size: 101px 81px;
    mask-size: 101px 81px;
  }
}

.text-container p:not(.heading) + p, .rte p:not(.heading) + p, .text-container p + form, .rte p + form {
  margin-block-start: 24px;
}

.text-container .heading--large, .rte .heading--large {
  margin-block-start: 48px;
  margin-block-end: 40px;
  margin-inline-start: 0;
  margin-inline-end: 0;
}

.text-container .h1, .rte h1 {
  margin-block-start: 48px;
  margin-block-end: 24px;
  margin-inline-start: 0;
  margin-inline-end: 0;
}

.text-container .h2, .rte h2, .text-container .h3, .rte h3, .text-container .h4, .rte h4, .text-container .h5, .rte h5, .text-container .h6, .rte h6 {
  margin-block-start: 40px;
  margin-block-end: 16px;
  margin-inline-start: 0;
  margin-inline-end: 0;
  font-size: 1.5em;
}

.text-container .heading--small, .rte .heading--small {
  margin: 16px 0;
}

.text-container .heading--xsmall, .rte .heading--xsmall {
  margin: 12px 0;
}

.blockquote, .rte blockquote {
  margin-block-start: 48px;
  margin-block-end: 64px;
  margin-inline-start: 0;
  margin-inline-end: 0;
}

.text-container img:not([style*="float"]), .rte img:not([style*="float"]) {
  margin: 34px 0;
  display: block;
}

.text-container ul, .rte ul, .text-container ol, .rte ol {
  margin-block-start: 1em;
  margin-block-end: 1em;
}

@media screen and (min-width: 1000px) {
  .text-container p + form, .rte p + form {
    margin-block-start: 32px;
  }

  .text-container .h1, .rte h1 {
    margin-block-start: 48px;
    margin-block-end: 32px;
    margin-inline-start: 0;
    margin-inline-end: 0;
  }

  .text-container .h2, .rte h2, .text-container .h3, .rte h3, .text-container .h4, .rte h4 {
    margin-block-start: 48px;
    margin-block-end: 24px;
    margin-inline-start: 0;
    margin-inline-end: 0;
  }

  .text-container .h5, .rte h5, .text-container .h6, .rte h6 {
    margin-block-start: 40px;
    margin-block-end: 16px;
    margin-inline-start: 0;
    margin-inline-end: 0;
  }

  .blockquote, .rte blockquote {
    margin-block-start: 80px;
    margin-block-end: 96px;
    margin-inline-start: 0;
    margin-inline-end: 0;
  }
}

.rte > :first-child, .text-container > :first-child {
  margin-block-start: 0;
}

.rte > :last-child, .text-container > :last-child {
  margin-block-end: 0;
}

.heading--small + .heading--large {
  margin-block-start: 32px;
}

.heading--small + p, .heading--xsmall + p, .heading--small + p, .heading--small + .h1, .heading--small + h1, .heading--small + .h2, .heading--small + h2, .heading--small + .h3, .heading--small + h3, .heading--small + .h4, .heading--small + h4, .heading--small + .h5, .heading--small + h5, .heading--small + .h6, .heading--small + h6, .heading--xsmall + p, .heading--xsmall + .h1, .heading--xsmall + h1, .heading--xsmall + .h2, .heading--xsmall + h2, .heading--xsmall + .h3, .heading--xsmall + h3 {
  margin-block-start: 16px;
}

.heading--xsmall + .h4, .heading--xsmall + h4, .heading--xsmall + .h5, .heading--xsmall + h5, .heading--xsmall + .h6, .heading--xsmall + h6 {
  margin-block-start: 12px;
}

.heading + .button-wrapper, .heading + .button-group, p + .button-wrapper, p + .button-group, .button-wrapper + p, .button-group + p {
  margin-block-start: 32px;
}

@media screen and (min-width: 741px) {
  .heading--small + p, .heading--small + .h1, .heading--small + h1, .heading--small + .h2, .heading--small + h2, .heading--small + .h3, .heading--small + h3, .heading--small + .h4, .heading--small + h4 {
    margin-block-start: 24px;
  }

  .heading--small + .h5, .heading--small + h5, .heading--small + .h6, .heading--small + h6 {
    margin-block-start: 16px;
  }

  .heading--xsmall + .h1, .heading--xsmall + h1, .heading--xsmall + .h2, .heading--xsmall + h2 {
    margin-block-start: 24px;
  }
}

.shopify-section {
  color: rgb(var(--text-color));
  scroll-margin-top: calc(var(--header-height, 0px) * var(--enable-sticky-header)  + var(--announcement-bar-height, 0px) * var(--enable-sticky-announcement-bar));
}

.js .no-focus-outline :focus {
  outline: none;
}

.lock-all {
  touch-action: none;
  overflow: hidden;
}

@media screen and (max-width: 740px) {
  .lock-mobile {
    touch-action: none;
    overflow: hidden;
  }
}

.container, .shopify-policy__container.shopify-policy__container {
  max-width: var(--container-max-width);
  padding-inline: var(--container-gutter);
  --container-outer-margin: 0px;
  width: 100%;
  margin-inline-start: auto;
  margin-inline-end: auto;
}

.container--small {
  max-width: 930px;
}

@media screen and (max-width: 999px) {
  .container--flush {
    padding-inline-start: 0;
    padding-inline-end: 0;
  }
}

@media screen and (min-width: 1400px) {
  .container--medium {
    padding-inline: calc(var(--container-gutter)  + var(--grid-column-width)  + var(--grid-gap));
  }
}

.js .no-js {
  display: none !important;
}

.js .js\:hidden, .no-js .no-js\:hidden {
  display: none;
}

[reveal] {
  opacity: 0;
}

[reveal-visibility] {
  visibility: hidden;
}

.no-js [reveal] {
  opacity: 1;
}

.no-js [reveal-visibility] {
  visibility: visible;
}

.skip-to-content:focus {
  clip: auto;
  color: rgb(var(--text-color));
  background-color: rgb(var(--background));
  opacity: 1;
  z-index: 10000;
  width: auto;
  height: auto;
  margin: 0;
  padding: 10px;
  transition: none;
}


.vertical-breather {
  padding-block: var(--vertical-breather);
}


.vertical-breather--tight {
  padding-block: var(--vertical-breather-tight);
}

.vertical-breather--margin {
  margin-block: var(--vertical-breather);
  padding-block-start: 0 !important;
  padding-block-end: 0 !important;
}

.vertical-breather--margin.vertical-breather--tight {
  margin-block: var(--vertical-breather-tight);
}

@media screen and (min-width: 741px) {
  .vertical-breather--extra-tight {
    padding-block-start: 48px;
    padding-block-end: 48px;
  }

  .vertical-breather--margin.vertical-breather--extra-tight {
    margin-block-start: 48px;
    margin-block-end: 48px;
  }
}

.anchor {
  scroll-margin-top: calc(var(--header-height, 0px) * var(--enable-sticky-header)  + var(--announcement-bar-height, 0px) * var(--enable-sticky-announcement-bar)  + var(--anchor-offset, 20px));
}

.anchor.vertical-breather:not(.vertical-breather--margin) {
  --anchor-offset: 0px;
}

.anchor.vertical-breather--margin {
  --anchor-offset: var(--vertical-breather);
}

.anchor.vertical-breather--tight.vertical-breather--margin {
  --anchor-offset: var(--vertical-breather-tight);
}

.icon {
  vertical-align: middle;
  pointer-events: none;
  background: none;
  display: block;
  overflow: visible;
}

.icon--inline {
  display: inline-block;
}

.icon-text {
  align-items: center;
  display: flex;
}

@media screen and (max-width:741px) {
  .icon--picto-lock, .icon--picto-address, .icon--picto-credit-card { 
    width: 20px
  }
}

.iconmax {
    display: flex;
    justify-content: center;
    align-items: center;
}

.iconmax img {
    margin-inline-end: 0px!important;
}

.icon-text svg, .icon-text img {
  margin-inline-end: 12px;
}
  
.icon--picto-address {
   margin-inline-end: 8px!important
 }

@supports (scale: 1) {
  [dir="rtl"] .icon--direction-aware {
    scale: -1 1;
  }
}

@supports not (scale: 1) {
  [dir="rtl"] .icon--direction-aware {
    transform: scale(-1, 1);
  }
}

.list--unstyled {
  margin: 0;
  padding: 0;
  list-style: none;
}

.loading-bar {
  opacity: 0;
  background: rgb(var(--loading-bar-background));
  transform-origin: 0;
  z-index: 50;
  pointer-events: none;
  width: 100%;
  height: 3px;
  transition: transform .25s ease-in-out;
  position: fixed;
  top: 0;
  left: 0;
  transform: scaleX(0);
}

.loading-bar.is-visible {
  opacity: 1;
}

.section {
  margin: var(--vertical-breather) 0;
  display: block;
}

.section--tight {
  margin-block: var(--vertical-breather-tight);
}

.section:empty {
  display: none;
}

.section--flush {
  margin-block-start: 0;
  margin-block-end: 0;
}

.section__color-wrapper {
  background: rgb(var(--section-background, var(--background)));
  display: flow-root;
}

.section__color-wrapper--boxed {
  border-radius: var(--block-border-radius);
}

.section__header {
  text-align: center;
  max-width: 1000px;
  margin-block-end: min(32px, var(--vertical-breather));
  margin-inline-start: auto;
  margin-inline-end: auto;
}

.section__header:only-child {
  margin-block-end: 0;
}

.section__header--tight {
  max-width: 800px;
}

.section__header--left {
  text-align: start;
  margin-left: 0;
}

.section__header--right {
  text-align: end;
  margin-right: 0;
}

.section__footer {
  text-align: center;
  margin-block-start: 32px;
}

@media screen and (min-width: 741px) {
  .section__header {
    margin-block-end: min(40px, var(--vertical-breather));
  }

  .section__footer {
    margin-block-start: min(40px, var(--vertical-breather));
  }

}

@media screen and (min-width: 1000px) {
  .section__header {
    margin-block-end: min(48px, var(--vertical-breather));
  }

  .section__footer {
    margin-block-start: min(48px, var(--vertical-breather));
  }

}

.page-header {
  text-align: center;
  position: relative;
}

.page-header--secondary {
  background: rgb(var(--secondary-background));
}

.page-header--clear:after, .page-header:before {
  content: "";
  clear: left;
  display: table;
}

.page-header__text-wrapper {
  margin: 60px 0 37px 0;
}

.page-header--small .page-header__text-wrapper {
  margin-block-start: 24px;
  margin-block-end: 24px;
}

.page-header--alone .page-header__text-wrapper {
  margin-block-end: 72px;
}

.page-content, .shopify-policy__body {
  max-width: 1200px;
  margin-block-end: min(var(--vertical-breather), 80px);
  margin-inline-start: auto;
  margin-inline-end: auto;
}

.page-content--medium, .shopify-policy__body {
  max-width: 670px;
}

.page-content--small {
  max-width: 460px;
}

.page-content--fluid {
  max-width: none;
}

@media screen and (min-width: 741px) {
  .page-header__text-wrapper {
    margin-block-start: 68px;
    margin-block-end: 68px;
  }

  .page-header--small .page-header__text-wrapper {
    margin-block-start: 48px;
    margin-block-end: 40px;
  }

  .page-header--alone .page-header__text-wrapper {
    margin-block-end: 120px;
  }

  .breadcrumb--floating + .page-header__text-wrapper {
    margin-block-start: 65px;
    text-align:center
  }
}

.breadcrumb {
  z-index: 1;
}

.breadcrumb--floating {
  position: absolute;
  top: 0;
}

.breadcrumb--floating:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 0;
}

.breadcrumb--floating:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 0;
}

.breadcrumb__list {
  margin: 0;
  padding: 26px 0;
  list-style: none;
  display: inline-flex;
}

.breadcrumb__item + .breadcrumb__item:before {
  content: "/";
  opacity: .7;
  float: left;
  margin: 0 4px;
}

.breadcrumb__link {
  transition: opacity .2s ease-in-out;
}

.breadcrumb__link:not([aria-current="page"]):not(:hover) {
  opacity: .7;
}

[dir="rtl"] .breadcrumb__item + .breadcrumb__item:before {
  float: right;
}



.pagination {
  justify-content: center;
  margin-block-start: 40px;
  display: flex;
}

.pagination__nav {
  border-collapse: separate;
  table-layout: fixed;
  display: table;
}

.pagination__nav-item {
  box-shadow: 1px 0 0 0 rgb(var(--border-color)), 0 1px 0 0 rgb(var(--border-color)), 1px 1px 0 0 rgb(var(--border-color)), 1px 0 0 0 rgb(var(--border-color)) inset, 0 1px 0 0 rgb(var(--border-color)) inset;
  vertical-align: middle;
  text-align: center;
  width: 47px;
  height: 47px;
  display: table-cell;
  position: relative;
}

.pagination__nav-item:first-child:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-left-radius: var(--button-border-radius);
  border-bottom-left-radius: var(--button-border-radius);
}

.pagination__nav-item:first-child:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  border-top-left-radius: var(--button-border-radius);
  border-bottom-left-radius: var(--button-border-radius);
}

.pagination__nav-item:first-child:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-right-radius: var(--button-border-radius);
  border-bottom-right-radius: var(--button-border-radius);
}

.pagination__nav-item:first-child:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  border-top-right-radius: var(--button-border-radius);
  border-bottom-right-radius: var(--button-border-radius);
}

.pagination__nav-item:last-child:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-right-radius: var(--button-border-radius);
  border-bottom-right-radius: var(--button-border-radius);
}

.pagination__nav-item:last-child:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  border-top-right-radius: var(--button-border-radius);
  border-bottom-right-radius: var(--button-border-radius);
}

.pagination__nav-item:last-child:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-left-radius: var(--button-border-radius);
  border-bottom-left-radius: var(--button-border-radius);
}

.pagination__nav-item:last-child:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  border-top-left-radius: var(--button-border-radius);
  border-bottom-left-radius: var(--button-border-radius);
}

.pagination__nav-item svg {
  margin: 0 auto;
}

.pagination__nav-item[aria-current]:before {
  content: "";
  pointer-events: none;
  z-index: 1;
  max-width: calc(100% - 3px);
  max-height: calc(100% - 3px);
  position: absolute;
  top: 2px;
  bottom: 0;
  left: 2px;
  right: 0;
  box-shadow: 0 0 0 2px;
}

@media screen and (min-width: 741px) {
  .pagination {
    margin-block-start: 48px;
  }

  .pagination__nav-item {
    width: 56px;
    height: 56px;
  }
}

.linklist__item:not(:first-child) {
  padding-block-start: 12px;
}

.linklist__item a {
  word-break: break-word;
  display: inline-block;
}

@media screen and (min-width: 1000px) {
  .linklist__item:not(:first-child) {
    padding-block-start: 6px;
  }
}

.animated-plus {
  display: inline-block;
  width: 10px;
  height: 10px;
  position: relative;
  padding-top: 13px; 
  transition: transform 0.3s ease; 
}

.animated-plus:before {
  content: "";
  position: absolute;
  width: 8px; 
  height: 8px; 
  border-right: 2px solid currentColor; 
  border-bottom: 2px solid currentColor; 
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(45deg); 
  transition: transform 0.3s ease; 
}

[aria-expanded="true"] > .animated-plus:before {
  transform: translate(-50%, -50%) rotate(-135deg); 
}



.aspect-ratio {
  margin-inline-start: auto;
  margin-inline-end: auto;
  display: block;
  position: relative;
}

.aspect-ratio img, .aspect-ratio video, .aspect-ratio svg {
  top: 0;
  object-fit: cover;
  object-position: center;
  width: 100%;
  max-width: 100%;
  height: 100%;
  max-height: 100%;
  position: absolute;
  left: 0;
}

.aspect-ratio--square img, .aspect-ratio--short img, .aspect-ratio--tall img, .aspect-ratio--rectangular img {
  object-fit: contain;
  top: 50%;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 50%;
  transform: translate(-50%, -50%) !important;
}

.aspect-ratio--square {
  padding-block-end: 100% !important;
}

.aspect-ratio--short {
  padding-block-end: 75% !important;
}

.aspect-ratio--tall {
  padding-block-end: 150% !important;
}

@supports (aspect-ratio: 1 / 1) {
  .aspect-ratio {
    aspect-ratio: var(--aspect-ratio);
    padding-bottom: 0 !important;
  }

  .aspect-ratio--natural img, .aspect-ratio--natural video, .aspect-ratio--natural svg {
    width: auto;
    position: relative;
  }

  .aspect-ratio--square {
    aspect-ratio: 1;
  }

  .aspect-ratio--short {
    aspect-ratio: 4 / 3;
  }

  .aspect-ratio--tall {
    aspect-ratio: 2 / 3;
  }

}


.placeholder-image {
  background-color: rgb(var(--secondary-background));
  padding-block-end: 75%;
  position: relative;
}

.placeholder-background {
  background-color: rgb(var(--secondary-background));
}

.placeholder-image svg {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
}

.placeholder-image svg:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 0;
}

.placeholder-image svg:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 0;
}

@media screen and (min-width: 1000px) {
  .placeholder-image {
    padding-block-end: 45%;
  }
}

.progress-bar {
  background: rgba(var(--text-color), .15);
  height: 2px;
  display: block;
  position: relative;
}

.progress-bar:before {
  content: "";
  width: calc(100% / var(--divider));
  transform: translateX(calc(var(--transform-logical-flip) * var(--transform, 0%) * (var(--divider)  - 1)));
  transform-origin: var(--transform-origin-start);
  background: rgb(var(--text-color));
  height: 100%;
  position: absolute;
  top: 0;
}

.progress-bar:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  left: 0;
}

.progress-bar:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  right: 0;
}

[draggable].is-scrollable {
  cursor: none;
}

.custom-drag-cursor {
  pointer-events: none;
  visibility: visible;
  width: 60px;
  height: 60px;
  transition: visibility .15s linear;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
}

.custom-drag-cursor svg {
  opacity: 1;
  transition: transform .15s ease-in-out, opacity .15s ease-in-out;
  transform: scale(1);
}

.custom-drag-cursor[hidden] svg {
  opacity: 0;
  transform: scale(.5);
}

@media screen and (max-width: 999px), screen and not (pointer: fine) {
  .custom-drag-cursor {
    display: none;
  }
}

.tap-area {
  position: relative;
}

.tap-area:before {
  content: "";
  position: absolute;
  top: -6px;
  bottom: -6px;
  left: -6px;
  right: -6px;
}

.tap-area--large:before {
  top: -10px;
  bottom: -10px;
  left: -10px;
  right: -10px;
}

@media screen and (max-width: 999px) {
  .scroller {
    scroll-snap-type: x mandatory;
    margin-inline: calc(-1 * var(--container-gutter));
    scrollbar-width: none;
    overflow-x: auto;
    overflow-y: hidden;
  }

  .scroller::-webkit-scrollbar {
    display: none;
  }

  .scroller__inner {
    padding-inline: var(--container-gutter);
    min-width: min-content;
    margin-inline-start: auto;
    margin-inline-end: auto;
  }
}

.hide-scrollbar {
  scrollbar-width: none;
  overflow-x: auto;
  overflow-y: hidden;
}

.hide-scrollbar::-webkit-scrollbar {
  display: none;
}

.js .animated-element {
  visibility: hidden;
}

.square-separator {
  vertical-align: middle;
  background: currentColor;
  flex-shrink: 0;
  width: 4px;
  height: 4px;
  margin: 0 8px;
  display: inline-block;
  position: relative;
}

.square-separator--block {
  margin-inline-start: 12px;
  margin-inline-end: 12px;
  top: 1px;
}

.square-separator--subdued {
  opacity: .5;
}

@keyframes prevNextButtonKeyframe {
  0% {
    transform: translateX(0%);
  }

  50% {
    transform: translateX(calc(50% + 10px));
  }

  51% {
    transform: translateX(calc(-50% - 10px));
  }

  100% {
    transform: translateX(0%);
  }
}

.prev-next-buttons {
  pointer-events: none;
  display: inline-grid;
}

.prev-next-buttons--row {
  grid-auto-flow: column;
}

.prev-next-button {
  background: #3a9d5f;
  color: white;
  border: 1px solid rgba(var(--prev-next-button-color, var(--root-text-color)), .15);
  border-radius: var(--button-border-radius);
  pointer-events: auto;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  transition: color .2s ease-in-out;
  display: flex;
  overflow: hidden;
}

.prev-next-button[disabled] {
  color: rgba(var(--prev-next-button-color), .3);
}

.prev-next-button svg {
  width: 100%;
}

.prev-next-buttons:not(.prev-next-buttons--row) .prev-next-button:first-child:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)), .prev-next-buttons:not(.prev-next-buttons--row) .prev-next-button:first-child:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.prev-next-buttons:not(.prev-next-buttons--row) .prev-next-button:last-child:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)), .prev-next-buttons:not(.prev-next-buttons--row) .prev-next-button:last-child:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.prev-next-buttons--row .prev-next-button:first-child:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.prev-next-buttons--row .prev-next-button:first-child:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.prev-next-buttons--row .prev-next-button:last-child:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.prev-next-buttons--row .prev-next-button:last-child:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

@media screen and (min-width: 741px) {
  .prev-next-button:not(.prev-next-button--small) {
    width: 56px;
    height: 56px;
  }

  .prev-next-buttons:not(.prev-next-buttons--row) .prev-next-button:last-child {
    border-top: none;
  }

  .prev-next-buttons--row .prev-next-button:last-child {
    border-left: none;
  }
}

@media screen and (pointer: fine) {
  .prev-next-button--prev:hover svg {
    animation: .3s ease-in-out reverse forwards prevNextButtonKeyframe;
  }

  .prev-next-button--next:hover svg {
    animation: .3s ease-in-out forwards prevNextButtonKeyframe;
  }
}

.dots-nav {
  flex-wrap: wrap;
  justify-content: flex-start;
  margin: -6px;
  display: flex;
}

.dots-nav--centered {
  justify-content: center;
}

.dots-nav__item {
  background: rgb(var(--text-color));
  border-radius: min(var(--button-border-radius), 6px);
  opacity: .3;
  width: 6px;
  height: 6px;
  margin: 6px;
  transition: opacity .2s ease-in-out;
  position: relative;
}

.dots-nav__item[aria-current="true"] {
  opacity: 1;
}

.price-list {
  flex-wrap: wrap;
  align-items: baseline;
  display: inline-flex;
}

.price-list--centered {
  justify-content: center;
}

.price-list--stack {
  display: inline-grid;
}

.price-list:not(.price-list--stack) > .price:not(:last-child) {
  margin-inline-end: 10px;
}

.price-list > .price--block {
  flex-basis: 100%;
  margin-inline-start: 0 !important;
}

.price-list + .link {
  margin-inline-start: 16px;
}

.price--highlight {
  color: rgb(var(--product-on-sale-accent));
  font-size: 1.1em;
  font-weight:500
}

@media screen and (max-width: 741px) {
  .price--highlight {
    font-size: 1em;
  }
}

.price--compare {
    text-decoration: line-through;
    color: #282828a3;
    font-weight: 500;
    text-decoration-thickness: 1px;
}

.price--large {
  font-size: calc(var(--base-font-size)  + 3px);
}

.unit-price-measurement {
  display: inline-flex;
}

@media screen and (min-width: 1000px) {
  .price--large:not(.price--compare) {
    font-size: calc(var(--base-font-size)  + 7px);
  }
}

.iconlabel {
  width: 19px;
  margin-left: 1px;
}

@media screen and (max-width: 741px) {
  .iconlabel {
    width: 13px;
  }
}


.label {
  vertical-align: top;
  font-family: var(--text-font-family);
  font-style: var(--text-font-style);
  font-weight: 500;
  letter-spacing: .5px;
  border-radius: min(var(--block-border-radius), 2px);
  padding: 0 5px;
  font-size: 10px;
  display: inline-block;
}

.label--highlight {
  background: rgb(var(--product-on-sale-accent));
  color: #fff;
  padding: 3px 5px;
}

.label--subdued {
  background: rgb(var(--product-sold-out-accent));
  color: #fff;
}

.label--new {
    background: #282828;
    color: #fff;
    border-radius: 50px;
    padding: 2px 5px;
}



.labelmax {
  vertical-align: top;
  font-family: var(--text-font-family);
  font-style: var(--text-font-style);
  font-weight: var(--text-font-bold-weight);
  text-transform: uppercase;
  letter-spacing: .5px;
  border-radius: min(var(--block-border-radius), 2px);
  padding: 0 5px;
  font-size: 10px;
  display: inline-block;
}


.label--subdueddefault {
  background: #ffa447;
  color: #fff;
  font-size: 11px!important;
}

.label--subduedsolar {
  background: #ffa447;
  color: #fff;
  font-size: 11px!important;
}

.label--solarcolumn {
  background: #ffa447;
  color: #fff;
  font-size: 20px!important;
  padding: 5px 15px;
  font-weight: 700;
}

.label--subdued230 {
  background: #b35656;
  color: #fff;
  font-size: 11px!important;
}

.label--230column {
  background: #b35656;
  color: #fff;
  font-size: 20px!important;
  padding: 5px 15px;
  font-weight: 700;
}

.label--subdued12 {
  background: #3ca0d1;
  color: #fff;
  font-size: 11px!important;
}

.label--12column {
  background: #3ca0d1;
  color: #fff;
  font-size: 20px!important;
  padding: 5px 15px;
  font-weight: 700;
}

.label--label2image {
    background: #f4f4f4;
    color: #000;
    font-weight: 500;
}

@media screen and (max-width: 741px) {
  .label--label2image {
    font-size: 9px!important;
    font-weight: 500
  }
  .label--subdueddefault {
    background: #ffa447;
    color: #fff;
    font-size: 10px!important;
}

  .label--subduedsolar {
    background: #ffa447;
    color: #fff;
    font-size: 10px!important;
}

  .label--subdued230 {
    background: #b35656;
    color: #fff;
    font-size: 10px!important;
}

  .label--subdued12 {
    background: #628cb9;
    color: #fff;
    font-size: 10px!important;
  }
}

.label--custom {
  background: rgb(var(--product-custom-label-background));
  color: rgb(var(--product-custom-label-text-color));
}

.label--custom2 {
  background: rgb(var(--product-custom-label-2-background));
  color: rgb(var(--product-custom-label-2-text-color));
}

.label-list {
  pointer-events: none;
  flex-direction: column;
  align-items: flex-start;
  display: flex;
}

.label-list:not(.label-list--horizontal) .label:not(:last-child) {
  margin-block-end: 4px;
}

.label-list--horizontal {
  flex-direction: row;
}

.label-list--horizontal .label:not(:last-child) {
  margin-inline-end: 4px;
}

@media screen and (min-width: 741px) {
  .label {
    font-size: 11px;
  }
}

.tag-list {
  flex-wrap: wrap;
  align-items: center;
  margin: -6px;
  display: flex;
}

.tag {
  background: rgba(var(--text-color), .05);
  align-items: center;
  margin: 6px;
  padding-block-start: 7px;
  padding-block-end: 8px;
  padding-inline-start: 14px;
  padding-inline-end: 13px;
  display: flex;
}

.tag__icon {
  cursor: pointer;
  margin-block-start: 1px;
  margin-block-end: 0;
  margin-inline-start: 0;
  margin-inline-end: 9px;
  position: relative;
}

.tag-link {
  padding-inline-start: 6px;
}

.social-media {
  flex-wrap: wrap;
  display: flex;
}

.social-media__item {
  box-shadow: 1px 0 0 0 rgb(var(--border-color)), 0 1px 0 0 rgb(var(--border-color)), 1px 1px 0 0 rgb(var(--border-color)), 1px 0 0 0 rgb(var(--border-color)) inset, 0 1px 0 0 rgb(var(--border-color)) inset;
  position: relative;
  transform: translateZ(0);
}

.no-focus-outline .social-media__item {
  overflow: hidden;
}

.social-media__item:before {
  content: "";
  clip-path: polygon(0 25%, 100% 0, 100% 100%, 0% 100%);
  transform-origin: bottom;
  pointer-events: none;
  z-index: 1;
  background: currentColor;
  width: calc(100% + 1px);
  height: calc(100% + 1px);
  transition: transform .3s cubic-bezier(.215, .61, .355, 1), clip-path .3s cubic-bezier(.215, .61, .355, 1);
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  transform: scaleY(0);
}

.social-media:not(.social-media--no-radius) .social-media__item:first-child:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-left-radius: var(--button-border-radius);
  border-bottom-left-radius: var(--button-border-radius);
}

.social-media:not(.social-media--no-radius) .social-media__item:first-child:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-right-radius: var(--button-border-radius);
  border-bottom-right-radius: var(--button-border-radius);
}

.social-media:not(.social-media--no-radius) .social-media__item:last-child:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-right-radius: var(--button-border-radius);
  border-bottom-right-radius: var(--button-border-radius);
}

.social-media:not(.social-media--no-radius) .social-media__item:last-child:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-left-radius: var(--button-border-radius);
  border-bottom-left-radius: var(--button-border-radius);
}

.social-media__link {
  color: currentColor;
  z-index: 1;
  justify-content: center;
  align-items: center;
  width: 45px;
  height: 45px;
  transition: color .3s cubic-bezier(.215, .61, .355, 1);
  display: flex;
  position: relative;
}

@media screen and (min-width: 741px) {
  .social-media__link {
    width: 55px;
    height: 55px;
  }
}

@media screen and (pointer: fine) {
  .social-media__item:hover .social-media__link {
    color: rgb(var(--background));
  }

  .social-media__item:hover:before {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
    transform: scaleY(1);
  }
}

.banner {
  text-align: start;
  justify-content: flex-start;
  align-items: flex-start;
  padding: 12px 16px;
  display: flex;
}

.banner--centered {
  justify-content: center;
}

.banner--margin {
  margin-block-start: 24px;
}

.banner__ribbon {
  margin-inline-end: 10px;
}

.banner__content {
  margin: 0;
}

.banner--success {
  --text-color: rgb(var(--success-color));
  background: rgb(var(--success-background));
  color: rgb(var(--success-color));
}

.banner--error {
  --text-color: rgb(var(--error-color));
  background: rgb(var(--error-background));
  color: rgb(var(--error-color));
}

.banner__content ul {
  padding-inline-start: 10px;
  list-style-position: inside;
}

@media screen and (min-width: 741px) {
  .banner {
    padding: 13px 18px;
  }
}

.tabs-nav {
  margin-block-end: 32px;
  display: block;
  position: relative;
}

.tabs-nav:not(:first-child) {
  margin-block-start: 24px;
}

.tabs-nav__scroller {
  display: block;
}

.tabs-nav__scroller-inner {
  line-height: 1;
  position: relative;
}

.tabs-nav__item-list {
  vertical-align: top;
  box-shadow: 0 -1px rgb(var(--border-color)) inset;
  grid-auto-columns: max-content;
  grid-auto-flow: column;
  justify-content: flex-start;
  gap: 32px;
  display: inline-grid;
}

.tabs-nav__item {
  opacity: .7;
  padding-block-end: 18px;
  transition: opacity .25s ease-in-out;
}

.tabs-nav__item[aria-expanded="true"] {
  opacity: 1;
}

.tabs-nav__position {
  transform: scaleX(var(--scale, 0)) translateX(var(--translate, 0));
  transform-origin: 0;
  background: #3A9D5F;
  width: 100%;
  height: 2px;
  position: absolute;
  bottom: 0;
}

.tabs-nav__position:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 0;
}

.tabs-nav__position:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 0;
}

.tabs-nav__position.is-initialized {
  transition: transform .4s ease-in-out;
}

@supports (scale: 0) {
  .tabs-nav__position {
    scale: var(--scale, 0) 1;
    translate: calc(var(--translate, 0) * var(--scale, 0));
    transform: none;
  }

  .tabs-nav__position.is-initialized {
    transition: scale .2s ease-in-out, translate .4s ease-in-out;
  }
}

.tabs-nav--center .tabs-nav__scroller-inner {
  max-width: max-content;
  margin-inline-start: auto;
  margin-inline-end: auto;
}

.tabs-nav__arrows {
  z-index: 1;
  display: none;
  position: absolute;
  top: -5px;
}

.tabs-nav__arrows:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 0;
}

.tabs-nav__arrows:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 0;
}

.tabs-nav__scroller.is-scrollable + .tabs-nav__arrows {
  display: flex;
}

.tabs-nav__arrow-item {
  background: rgb(var(--background));
  border: 1px solid rgb(var(--border-color));
  justify-content: center;
  align-items: center;
  width: 24px;
  height: 24px;
  display: flex;
}

.tabs-nav__arrow-item + .tabs-nav__arrow-item {
  border-inline-start: none;
}

.tabs-nav[arrows] .tabs-nav__scroller {
  overflow: hidden;
}

.tabs-nav[arrows] .tabs-nav__scroller.is-scrollable:before {
  content: "";
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(to var(--transform-origin-start), rgb(var(--section-background, var(--background))), rgba(var(--section-background, var(--background)), 0));
  width: 48px;
  height: 100%;
  position: absolute;
  top: -2px;
}

.tabs-nav[arrows] .tabs-nav__scroller.is-scrollable:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  right: 48px;
}

.tabs-nav[arrows] .tabs-nav__scroller.is-scrollable:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  left: 48px;
}

.tabs-nav[arrows] .tabs-nav__item-list {
  width: 100%;
  min-width: max-content;
  margin-inline-end: 0;
}

.tabs-nav[arrows] .tabs-nav__item-list:after {
  content: "";
  width: 35px;
  display: block;
}

.tabs-nav--no-border.tabs-nav--narrow {
  margin-block-end: 24px;
}

.tabs-nav--no-border .tabs-nav__item-list {
  box-shadow: none;
}

.tabs-nav--no-border.tabs-nav--narrow .tabs-nav__item {
  padding-block-end: 5px;
}

@media screen and (max-width: 999px) {
  .tabs-nav--edge2edge {
    margin-inline: calc(-1 * var(--container-gutter));
  }

  .tabs-nav--edge2edge .tabs-nav__scroller-inner {
    padding-inline: var(--container-gutter);
    min-width: max-content;
  }
}

@media screen and (min-width: 741px) {
  .tabs-nav:not(:first-child) {
    margin-block-start: 32px;
  }

  .tabs-nav--no-border.tabs-nav--narrow {
    margin-block-end: 32px;
  }

  .tabs-nav__item-list {
    gap: 54px;
  }

  .tabs-nav--loose .tabs-nav__item-list {
    gap: 72px;
  }

  .tabs-nav--narrow .tabs-nav__item-list {
    gap: 40px;
  }
}

.empty-state {
  text-align: center;
  margin: 100px 0;
  position: relative;
}

.empty-state--bottom-only {
  margin-block-start: 24px;
}

.empty-state__background-text {
  text-align: center;
  opacity: .05;
  width: 100%;
  margin-block-start: -20px;
  font-size: 120px;
  font-weight: bold;
  line-height: 0;
  position: absolute;
}

.empty-state__background-text:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 0;
}

.empty-state__background-text:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 0;
}

@media screen and (min-width: 741px) {
  .empty-state {
    margin-block-start: 150px;
    margin-block-end: 150px;
  }

  .empty-state--bottom-only {
    margin-block-start: 50px;
  }

  .empty-state__background-text {
    margin-block-start: -35px;
    font-size: 200px;
    position: absolute;
  }
}

@media screen and (min-width: 1200px) {
  .empty-state {
    margin-block-start: 225px;
    margin-block-end: 225px;
  }

  .empty-state--bottom-only {
    margin-block-start: 50px;
  }
}

.bubble-count {
  color: rgb(var(--background));
  background: rgb(var(--heading-color));
  font-weight: var(--text-font-bold-weight);
  font-family: var(--text-font-family);
  font-style: var(--text-font-style);
  letter-spacing: 0;
  border-radius: 21px;
  justify-content: center;
  align-items: center;
  min-width: 21px;
  height: 21px;
  font-size: 9px;
  line-height: 1;
  transition: background .2s ease-in-out, color .2s ease-in-out;
  display: inline-flex;
  position: relative;
}

.bubble-count--top {
  vertical-align: top;
}

.quantity-selector {
  --quantity-selector-height: 46px;
  border: 1px solid rgb(var(--border-color));
  border-radius: var(--button-border-radius);
  vertical-align: middle;
  justify-content: flex-start;
  align-items: center;
  display: inline-flex;
}

.quantity-selector__button {
  height: var(--quantity-selector-height);
  width: var(--quantity-selector-height);
  justify-content: center;
  align-items: center;
  display: flex;
}

.quantity-selector__input {
  height: var(--quantity-selector-height);
  line-height: var(--quantity-selector-height);
  text-align: center;
  -webkit-appearance: none;
  appearance: none;
  background: none;
  border: none;
  padding: 0 10px;
}

.quantity-selector--small {
  --quantity-selector-height: 28px;
}

.quantity-selector--small .quantity-selector__input {
  padding: 0 2px;
}

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

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

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

  100% {
    stroke-dasharray: 89 200;
    stroke-dashoffset: -124px;
  }
}

@keyframes spinnerColor {
  0% {
    stroke: currentColor;
  }

  40% {
    stroke: currentColor;
  }

  66% {
    stroke: currentColor;
  }

  80%, 90% {
    stroke: currentColor;
  }
}

.spinner svg {
  transform-origin: center;
  margin: auto;
  animation: 2s linear infinite spinnerRotate;
}

.spinner circle {
  animation: 1.5s ease-in-out infinite spinnerDash, 6s ease-in-out infinite spinnerColor;
}

[data-tooltip] {
  position: relative;
}

[data-tooltip]:before {
  content: attr(data-tooltip);
  white-space: nowrap;
  background: rgb(var(--heading-color));
  color: rgb(var(--background));
  font-size: calc(var(--base-font-size)  - 2px);
  pointer-events: none;
  visibility: hidden;
  opacity: 0;
  z-index: 1;
  padding: 5px 10px;
  transition: visibility .2s ease-in-out, opacity .2s ease-in-out;
  position: absolute;
  bottom: calc(100% + 6px);
  left: 50%;
  transform: translateX(-50%);
}

[data-tooltip]:after {
  content: "";
  border-style: solid;
  border-width: 6px;
  border-color: transparent transparent rgb(var(--heading-color)) rgb(var(--heading-color));
  visibility: hidden;
  z-index: 1;
  opacity: 0;
  width: 0;
  height: 0;
  transition: visibility .2s ease-in-out, opacity .2s ease-in-out;
  position: absolute;
  bottom: calc(100% + 1px);
  left: calc(50% - 7px);
  transform: rotate(-45deg);
  box-shadow: -1px 1px 1px #0000001a;
}

[data-tooltip]:hover:before, [data-tooltip]:hover:after {
  opacity: 1;
  visibility: visible;
}

[data-tooltip-position="bottom-left"]:before {
  top: calc(100% + 4px);
  bottom: auto;
  left: auto;
  right: -6px;
  transform: none;
}

[data-tooltip-position="bottom-left"]:after {
  top: calc(100% - 1px);
  left: calc(50% - 6px);
  transform: rotate(135deg);
}

.cart-notification {
  --heading-color: 255, 255, 255;
  --text-color: 255, 255, 255;
  --cart-notification-background: rgb(var(--success-color));
  transform: translateY(var(--cart-notification-offset, 0px));
  color: rgb(var(--text-color));
  visibility: visible;
  width: 100%;
  transition: visibility .25s ease-in-out, transform .25s ease-in-out;
  display: block;
  position: absolute;
  top: 100%;
  overflow: hidden;
}

.cart-notification--error {
  --cart-notification-background: rgb(var(--error-color));
}

.cart-notification--drawer {
  --cart-notification-offset: 0;
  top: var(--header-height-without-bottom-nav);
  z-index: 1;
}

.cart-notification--fixed {
  position: fixed;
  top: 0;
}

.cart-notification[hidden] {
  visibility: hidden;
}

.cart-notification__overflow {
  background: var(--cart-notification-background);
  transition: opacity .25s ease-in-out, transform .25s ease-in-out;
  transform: translateY(0);
}

.cart-notification[hidden] .cart-notification__overflow {
  opacity: 0;
  transform: translateY(-100%);
}

.cart-notification__wrapper {
  justify-content: center;
  align-items: flex-start;
  padding-block-start: 14px;
  padding-block-end: 14px;
  display: flex;
  position: relative;
}

.cart-notification .icon--cart-notification {
  position: relative;
  top: 2px;
}

.cart-notification__text-wrapper {
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  margin-inline-start: 12px;
  display: flex;
}

.cart-notification__heading {
  margin-inline-end: 12px;
  font-size: 14px;
}

.cart-notification__close {
  margin-block-start: -1px;
  position: absolute;
}

.cart-notification__close:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 0;
}

.cart-notification__close:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 0;
}

.cart-notification--drawer .cart-notification__text-wrapper {
  flex-grow: 1;
  justify-content: space-between;
}

@media screen and (max-width: 740px) {
  .cart-notification__text-wrapper {
    flex-grow: 1;
    justify-content: space-between;
  }
}

@media screen and (max-width: 999px) {
  .cart-notification {
    transform: none !important;
  }
}

@media screen and (min-width: 741px) {
  .cart-notification__wrapper {
    padding-block-start: 19px;
    padding-block-end: 19px;
  }

  .cart-notification .icon--cart-notification {
    top: 4px;
  }

  .cart-notification__heading {
    margin-inline-end: 16px;
    font-size: 16px;
  }

  .cart-notification__close svg {
    width: 15px;
    height: 15px;
  }
}

.payment-methods-list {
  grid-template-columns: repeat(auto-fit, 38px);
  gap: 8px;
  display: grid;
}

.payment-methods-list--center {
  justify-content: center;
}

@media screen and (min-width: 741px) {
  .payment-methods-list--auto {
    grid-auto-flow: column;
  }
}

.link-bar {
  text-align: center;
  display: block;
  position: relative;
}

.link-bar__wrapper {
  align-items: center;
  max-width: 100%;
  display: inline-flex;
  position: relative;
  padding: 10px;
  border-radius: 4px;
  overflow: hidden;
}

.link-bar__scroller {
  scroll-snap-type: x proximity;
}

.link-bar__title {
  z-index: 1;
  background: rgb(var(--background));
  flex-shrink: 0;
  position: sticky;
  left: 0;
}

.link-bar__title:after {
  content: "";
  background-image: linear-gradient(to var(--transform-origin-end), rgb(var(--background)) 35%, rgba(var(--background), 0));
  width: 28px;
  height: 100%;
  position: absolute;
  top: 0;
}

.link-bar__title + .link-bar__scroller {
  padding-inline-start: 28px;
}

.link-bar__linklist {
  grid-auto-flow: column;
  align-items: center;
  gap: 14px;
  min-width: max-content;
  display: grid;
}

.link-bar__link-item, .link-bar__title {
  padding-block-start: 14px;
  padding-block-end: 14px;
  padding: 15px;
  background: #EFFAF0 !important;
  border-radius: 30px;
  transition: transform .2s;
  font-size: 0.9em;
  font-weight: 600;
}

.link-bar__link-item--selected {
  scroll-snap-align: center;
}

.link-bar__link-item:hover {
  background-color: #e9e9e9 !important;
  transform: scale(0.95);
}

.activ-lien {
  background: #3a9d5f!important;
  color: white;
}

.activ-lien:hover {
  background: #4b8b3bc7!important;
  color: white;
}

@media screen and (max-width: 999px) {
  .link-bar__wrapper:after {
    content: "";
    width: var(--container-gutter);
    background-image: linear-gradient(to var(--transform-origin-start), rgb(var(--background)), rgba(var(--background), 0));
    height: 100%;
    position: absolute;
    top: 0;
  }

  .link-bar__wrapper:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):after {
    left: 100%;
  }

  .link-bar__wrapper:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):after {
    right: 100%;
  }

  .link-bar__scroller {
    margin-inline-end: calc(-1 * var(--container-gutter));
  }

  .link-bar__linklist {
    padding-inline-end: var(--container-gutter);
  }
}

@media screen and (min-width: 741px) {
  .link-bar__title + .link-bar__scroller {
    padding-inline-start: 48px;
  }

  .link-bar__linklist {
    gap: 25px;
  }

  .link-bar__link-item, .link-bar__title {
    padding-block-start: 20px;
    padding-block-end: 20px;
    padding: 10px 15px;
    background: white;
    font-size:1em;
  }
}

@media screen and (min-width: 1200px) {
  .link-bar__link-item, .link-bar__title {
    padding-block-start: 27px;
    padding-block-end: 27px;
    padding: 10px 15px;
    background: #f4f4f4;
    border-radius: 30px;
    font-size:1em;
  }
}

.mobile-share-buttons__item {
  align-items: center;
  margin-inline-start: 24px;
  margin-inline-end: 24px;
  padding-block-start: 20px;
  padding-block-end: 20px;
  display: flex;
}

@supports (padding: max(0px)) {
  .mobile-share-buttons {
    padding-block-end: max(20px, env(safe-area-inset-bottom)  + 20px);
  }
}

.mobile-share-buttons__item:not(:last-child) {
  border-block-end: 1px solid rgb(var(--border-color));
}

.mobile-share-buttons__item svg {
  margin-inline-end: 16px;
}

.mobile-toolbar {
  visibility: visible;
  z-index: 3;
  align-items: center;
  transition: margin-top .2s ease-in-out, visibility .2s ease-in-out;
  display: flex;
  position: sticky;
  top: calc(var(--enable-sticky-header) * var(--header-height, 0px)  + var(--announcement-bar-height, 0px) * var(--enable-sticky-announcement-bar));
}

.mobile-toolbar.is-collapsed {
  visibility: hidden;
  margin-top: -48px;
}

.mobile-toolbar--fixed {
  position: relative;
  top: 0;
}

.mobile-toolbar__item {
  border-top: 1px solid rgb(var(--border-color));
  border-bottom: 1px solid rgb(var(--border-color));
  background: rgb(var(--background));
  flex: 1 0 0;
  justify-content: center;
  align-items: center;
  padding: 11px;
  display: flex;
}

.mobile-toolbar__item + .mobile-toolbar__item {
  border-inline-start: 1px solid rgb(var(--border-color));
}

.mobile-toolbar__item .icon--chevron {
  margin-inline-start: 10px;
}

/*! minireset.css v0.0.6 | MIT License | github.com/jgthms/minireset.css */
/*! PhotoSwipe main CSS by Dmitry Semenov | photoswipe.com | MIT license */


@media screen and (min-width: 741px) and (max-width: 999px) {
  .hidden-tablet {
    display: none !important;
  }
}

@media screen and (min-width: 741px) {
  .hidden-tablet-and-up {
    display: none !important;
  }
}

@media screen and (max-width: 999px) {
  .hidden-pocket {
    display: none !important;
  }
}

@media screen and (min-width: 1000px) and (max-width: 1199px) {
  .hidden-lap {
    display: none !important;
  }
}

@media screen and (min-width: 1000px) {
  .hidden-lap-and-up {
    display: none !important;
  }
}

@media screen and (min-width: 1200px) {
  .hidden-desk {
    display: none !important;
  }
}

@media screen and (min-width: 1400px) {
  .hidden-wide {
    display: none !important;
  }
}

@media screen and (pointer: fine) {
  .hidden-no-touch {
    display: none !important;
  }
}

@media screen and (pointer: fine) {
  .hidden-touch {
    display: none !important;
  }
}

@media print {
  .hidden-print {
    display: none !important;
  }
}

*, :before, :after {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  box-sizing: border-box !important;
}

html {
  -ms-overflow-style: -ms-autohiding-scrollbar;
  -moz-text-size-adjust: 100%;
  text-size-adjust: 100%;
  font-family: sans-serif;
}

body {
  margin: 0;
}

[hidden] {
  display: none;
}

blockquote:first-child, ul:first-child, ol:first-child, p:first-child, h1:first-child, h2:first-child, h3:first-child, h4:first-child, h5:first-child, h6:first-child {
  margin-block-start: 0 !important;
}

blockquote:last-child, ul:last-child, ol:last-child, p:last-child, h1:last-child, h2:last-child, h3:last-child, h4:last-child, h5:last-child, h6:last-child {
  margin-block-end: 0 !important;
}

a {
  color: inherit;
  text-decoration: none;
}

button, input, select, textarea {
  color: inherit;
  font: inherit;
  text-align: inherit;
  margin: 0;
}

button, [type="submit"] {
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
  touch-action: manipulation;
  background: none;
  border: none;
  border-radius: 0;
  padding: 0;
  overflow: visible;
}

button[disabled], html input[disabled] {
  cursor: default;
}

img, video {
  vertical-align: top;
  border-style: none;
  max-width: 100%;
  height: auto;
}

img:-moz-loading {
  visibility: hidden;
}

iframe {
  border: 0;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

td, th {
  padding: 0;
}

.pswp {
  touch-action: none;
  z-index: 1500;
  -webkit-backface-visibility: hidden;
  outline: none;
  width: 100%;
  height: 100%;
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
}

.pswp img {
  max-width: none;
}

.pswp--animate_opacity {
  opacity: .001;
  will-change: opacity;
  transition: opacity .333s cubic-bezier(.4, 0, .22, 1);
}

.pswp--open {
  display: block;
}

.pswp--zoom-allowed .pswp__img {
  cursor: var(--zoom-cursor-svg-url) 26 26, zoom-in;
}

.pswp--zoomed-in .pswp__img {
  cursor: grab;
}

.pswp--dragging .pswp__img {
  cursor: grabbing;
}

.pswp__bg {
  background: rgb(var(--background));
  opacity: 0;
  -webkit-backface-visibility: hidden;
  will-change: opacity;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  transform: translateZ(0);
}

.pswp__scroll-wrap {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
}

.pswp__container, .pswp__zoom-wrap {
  touch-action: none;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}

.pswp__container, .pswp__img {
  -webkit-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
}

.pswp__zoom-wrap {
  transform-origin: 0 0;
  width: 100%;
  transition: transform .333s cubic-bezier(.4, 0, .22, 1);
  position: absolute;
}

.pswp__bg {
  will-change: opacity;
  transition: opacity .333s cubic-bezier(.4, 0, .22, 1);
}

.pswp--animated-in .pswp__bg, .pswp--animated-in .pswp__zoom-wrap {
  transition: none;
}

.pswp__container, .pswp__zoom-wrap {
  -webkit-backface-visibility: hidden;
}

.pswp__item {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  overflow: hidden;
}

.pswp__img {
  width: auto;
  height: auto;
  position: absolute;
  top: 0;
  left: 0;
}

.pswp__top-bar {
  position: absolute;
  top: var(--container-gutter);
}

.pswp__top-bar:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: var(--container-gutter);
}

.pswp__top-bar:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: var(--container-gutter);
}

.pswp__prev-next-buttons {
  margin-inline: var(--container-gutter);
  pointer-events: none;
  justify-content: space-between;
  display: flex;
  position: absolute;
  top: calc(50% - 28px);
  left: 0;
  right: 0;
}

.pswp__dots-nav-wrapper {
  padding-inline: var(--container-gutter);
  background: rgb(var(--background));
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding-block-start: 20px;
  padding-block-end: 20px;
  transition: opacity .25s ease-in-out .2s, transform .25s ease-in-out .2s;
  display: flex;
  position: absolute;
  bottom: 0;
}

.pswp__dots-nav-wrapper .dots-nav {
  padding-inline-start: 20px;
  padding-inline-end: 20px;
}

.pswp__ui--hidden .pswp__dots-nav-wrapper {
  opacity: 0;
  transform: translateY(10px);
}

.pswp__button svg {
  transition: transform .25s ease-in-out;
}

@supports (padding: max(0px)) {
  .pswp__dots-nav-wrapper {
    padding-block-end: max(20px, env(safe-area-inset-bottom, 0px)  + 20px);
  }
}

@media screen and (pointer: fine) {
  .pswp__button:hover svg {
    transform: rotateZ(90deg);
  }
}

.flickity-enabled {
  position: relative;
  overflow: visible !important;
}

.flickity-enabled:focus {
  outline-offset: 2px;
}

.flickity-viewport {
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
}

.flickity-slider {
  width: 100%;
  height: 100%;
  position: absolute;
}

.flickity-enabled.is-draggable {
  -webkit-tap-highlight-color: transparent;
  -webkit-user-select: none;
  user-select: none;
}

.flickity-enabled.is-draggable:not(.is-hovering-right):not(.is-hovering-left) .flickity-viewport {
  cursor: grab;
}

.flickity-enabled.is-draggable:not(.is-hovering-right):not(.is-hovering-left) .flickity-viewport.is-pointer-down {
  cursor: grabbing;
}

.flickity-enabled.is-hovering-right .flickity-viewport {
  cursor: var(--arrow-right-svg-url) 17 14, e-resize;
}

.flickity-enabled.is-hovering-left .flickity-viewport {
  cursor: var(--arrow-left-svg-url) 17 14, w-resize;
}

.flickity-rtl .flickity-page-dots {
  direction: rtl;
}

.flickity-enabled.is-fade .flickity-slider > * {
  pointer-events: none;
  z-index: 0;
  transition: visibility .2s linear;
}

.flickity-enabled.is-fade .flickity-slider > .is-selected {
  pointer-events: auto;
  z-index: 1;
}

.flickity-enabled.is-fade .flickity-slider > :not(.is-selected) {
  visibility: hidden;
}

html {
  font-family: var(--text-font-family);
  font-weight: var(--text-font-weight);
  font-style: var(--text-font-style);
  font-size: calc(var(--base-font-size)  - 1px);
  color: rgb(var(--text-color));
  background: rgb(var(--background));
  line-height: 1.71429;
}

:lang(ar) * {
  letter-spacing: normal !important;
}

p strong, p b {
  font-weight: var(--text-font-bold-weight);
}

.heading, .blockquote, .rte h1, .rte h2, .rte h3, .rte h4, .rte h5, .rte h6, .rte blockquote {
  font-family: var(--heading-font-family);
  font-weight: var(--heading-font-weight);
  font-style: var(--heading-font-style);
  color: rgb(var(--heading-color));
  text-transform: var(--heading-text-transform);
  display: block;
}

.text--small {
  font-size: calc(var(--base-font-size)  - 2px);
  line-height: 1.69231;
}

.text--xsmall {
  font-size: calc(var(--base-font-size)  - 3px);
  line-height: 1.5;
}

.text--xxsmall {
  font-size: calc(var(--base-font-size)  - 5px);
  line-height: 1.5;
}

.text--large {
  font-size: calc(var(--base-font-size)  + 1px);
}

.text--subdued {
  color: rgba(var(--text-color), .7);
}

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

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

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

.text--strong {
  font-weight: var(--text-font-bold-weight);
}

.text--underlined {
  text-underline-offset: 3px;
  text-decoration: underline;
}

p a:not(.button), .rte a:not(.button), .link {
  text-underline-offset: 2px;
  text-decoration: underline;
  -webkit-text-decoration-color: rgba(var(--text-color), .35);
  text-decoration-color: rgba(var(--text-color), .35);
  transition: text-decoration-color .2s ease-in-out, color .2s ease-in-out;
}

.heading--small.link {
  line-height: 1.8;
}

@media screen and (pointer: fine) {
  p a:not(.button):hover, .rte a:not(.button):hover, .link:hover {
    color: rgb(var(--text-color));
    -webkit-text-decoration-color: rgb(var(--text-color));
    text-decoration-color: rgb(var(--text-color));
  }
}

.link--animated {
  width: max-content;
  display: block;
  position: relative;
}

.link--animated:after {
  content: "";
  transform-origin: var(--transform-origin-end);
  background: currentColor;
  width: 100%;
  height: 0px;
  transition: transform .3s;
  position: absolute;
  bottom: 2px;
  left: 0;
  transform: scaleX(0);
}

.text--underlined.link--animated {
  text-decoration: none;
  color:white;
}

.text--underlined.link--animated:after {
  transform: scaleX(1);
}

@media screen and (pointer: fine) {
  .link--animated[aria-expanded="true"]:after, .link--animated:hover:after {
    transform-origin: var(--transform-origin-start);
    transform: scaleX(1);
  }

  @keyframes textUnderlinedAnimatedKeyframes {
    0% {
      transform-origin: var(--transform-origin-end);
      transform: scaleX(1);
    }

    50% {
      transform-origin: var(--transform-origin-end);
      transform: scaleX(0);
    }

    51% {
      transform-origin: var(--transform-origin-start);
    }

    100% {
      transform: scaleX(1);
    }
  }

  .text--underlined.link--animated:hover:after {
    animation: .6s textUnderlinedAnimatedKeyframes;
  }
}

.link--faded {
  transition: opacity .25s ease-in-out;
}

.link--faded:hover {
  transform: scale(1.02);
  color:#3A9D5F;
}

.visually-hidden {
  clip: rect(0 0 0 0);
  border: 0;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  position: absolute !important;
}

@media screen and (min-width: 741px) {
  html {
    font-size: var(--base-font-size);
    line-height: 1.73333;
  }

  .text--small {
    font-size: calc(var(--base-font-size)  - 1px);
    line-height: 1.71429;
  }

  .text--xsmall {
    font-size: calc(var(--base-font-size)  - 2px);
    line-height: 1.53846;
  }

  .text--xxsmall {
    font-size: calc(var(--base-font-size)  - 4px);
    line-height: 1.53846;
  }

  .text--large {
    font-size: calc(var(--base-font-size)  + 5px);
  }
}

.heading:first-child {
  margin-block-start: 0;
}

.heading:last-child {
  margin-block-end: 0;
}

.heading--small, .heading--xsmall, .heading--xxsmall {
  font-family: var(--text-font-family);
  font-style: var(--text-font-style);
  text-transform: uppercase;
  font-weight: var(--text-font-bold-weight);
  letter-spacing: 1px;
  line-height: 1.46636;
}

.heading--xxsmall {
  font-size: var(--heading-xxsmall-font-size);
}

.heading--xsmall {
  font-size: var(--heading-xsmall-font-size);
}

.heading--small {
  font-size: var(--heading-small-font-size);
  line-height: 1.5;
}

.heading--large, .rte .heading--large {
  font-size: var(--heading-large-font-size);
  letter-spacing: -.9px;
  line-height: 1.11111;
}

.h1, .rte h1 {
  font-size: var(--heading-h1-font-size);
  letter-spacing: -.9px;
  line-height: 1.11111;
}

@media screen and (min-width: 1000px) {
  .h1, .rte h1 {
    font-size: 38px
  }
}

.h2, .rte h2 {
  font-size: var(--heading-h2-font-size);
  letter-spacing: 0px;
  line-height: 1.13333;
}

@media screen and (min-width: 1000px) {
  .h2, .rte h2 {
    font-size: 32px
  }
}

.h3, .rte h3 {
  font-size: var(--heading-h3-font-size);
  letter-spacing: 0px;
  line-height: 1.15385;
}

@media screen and (min-width: 1000px) {
  .h3, .rte h3 {
    font-size: 30px
  }
}

.h4, .rte h4 {
  font-size: var(--heading-h4-font-size);
  letter-spacing: 0px;
  line-height: 1.16667;
}

.h5, .rte h5 {
  font-size: var(--heading-h5-font-size);
  letter-spacing: 0px;
  line-height: 1.2;
}

.h6, .rte h6 {
  font-size: var(--heading-h6-font-size);
  line-height: 1.25;
}

.blockquote, .rte blockquote {
  font-size: var(--heading-h4-font-size);
  letter-spacing: -.3px;
  padding-block-start: 24px;
  padding-block-end: 0;
  padding-inline-start: 24px;
  padding-inline-end: 24px;
  line-height: 1.16667;
  position: relative;
}

.blockquote:before, .rte blockquote:before {
  content: "";
  background: rgb(var(--text-color));
  opacity: .15;
  width: 71px;
  height: 56px;
  position: absolute;
  top: -10px;
  -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMDEgODAiPiAgICA8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTAgNDEuNzdWMGg0MS42MDR2NDEuNzdMMjAuMDI2IDgwSC45ODdMMjEuNzIgNDEuNzdIMHptNTkuMzk2IDBWMEgxMDF2NDEuNzdMNzkuNDIyIDgwSDYwLjM4M2wyMC43MzItMzguMjNINTkuMzk2eiIgZmlsbD0iY3VycmVudENvbG9yIiAvPjwvc3ZnPg==");
  mask-image: url("data:image/svg+xml;base64,PHN2ZyBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMDEgODAiPiAgICA8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTAgNDEuNzdWMGg0MS42MDR2NDEuNzdMMjAuMDI2IDgwSC45ODdMMjEuNzIgNDEuNzdIMHptNTkuMzk2IDBWMEgxMDF2NDEuNzdMNzkuNDIyIDgwSDYwLjM4M2wyMC43MzItMzguMjNINTkuMzk2eiIgZmlsbD0iY3VycmVudENvbG9yIiAvPjwvc3ZnPg==");
  -webkit-mask-size: 71px 56px;
  mask-size: 71px 56px;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}

.blockquote:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  left: calc(50% - 35.5px);
}

.rte blockquote:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  left: calc(50% - 35.5px);
}

.blockquote:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  right: calc(50% - 35.5px);
}

.rte blockquote:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  right: calc(50% - 35.5px);
}

.unordered-list, .text-container ul, .rte ul {
  margin-inline-start: 1.25em;
  margin-inline-end: 0;
  padding: 0;
  list-style-type: inherit;
}

.ordered-list, .text-container ol, .rte ol {
  margin-inline-start: 1em;
  margin-inline-end: 0;
  padding: 0;
}

.unordered-list li, .text-container ul li, .rte ul li {
  padding-block-start: 2px;
  padding-block-end: 2px;
  padding-inline-start: 0;
  padding-inline-end: 5px;
}

.ordered-list li, .text-container ol li, .rte ol li {
  padding-block-start: 3px;
  padding-block-end: 3px;
  padding-inline-start: 0;
  padding-inline-end: 9px;
}

.unordered-list li::marker, .text-container ul li::marker, .rte ul li::marker {
  color: inherit;
  font-size: 16px;
}

.ordered-list li::marker, .text-container ol li::marker, .rte ol li::marker {
  color: inherit;
  font-size: 11px;
}

.table-wrapper {
  overflow-x: auto;
}

.table, .rte table {
  --table-spacing: 16px;
  width: 100%;
}

.table--loose {
  --table-spacing: 24px;
}

.table th:not([class*="text--"]), .rte table th:not([class*="text--"]) {
  text-align: start;
}

.table th, .rte table th {
  border-bottom: 1px solid rgb(var(--border-color));
  padding-block-end: 15px;
  padding-inline: var(--table-spacing);
}

.table td.half-spaced, .rte table td.half-spaced {
  padding: calc(var(--table-spacing) / 2);
}

.table td, .rte table td {
  padding: var(--table-spacing);
  padding-block-end: 0;
}

.table tr[onclick] {
  cursor: pointer;
}

.table th:first-child, .rte table th:first-child, .table td:first-child, .rte table td:first-child {
  padding-inline-start: 0;
}

.table th:last-child, .rte table th:last-child, .table td:last-child, .rte table td:last-child {
  padding-inline-end: 0;
}

.table tfoot tr:first-child td, .rte table tfoot tr:first-child td {
  border-top: 1px solid rgb(var(--border-color));
}

.table tfoot tr:not(:first-child) td, .rte table tfoot tr:not(:first-child) td {
  padding-block-start: 8px;
}

.table--bordered td {
  border-top: 1px solid rgb(var(--border-color));
  padding-block-end: var(--table-spacing);
}

.table--footered tbody tr:last-child td {
  padding-block-end: var(--table-spacing);
}

@media screen and (max-width: 740px) {
  .table tfoot td, .rte table tfoot td {
    padding-block-start: 16px;
  }
}

@media screen and (min-width: 741px) {
  .ordered-list li::marker, .text-container ol li::marker, .rte ol li::marker {
    font-size: 12px;
  }

  .heading--xsmall {
    line-height: 1.46667;
  }

  .heading--small {
    line-height: 1.23077;
  }

  .heading--large {
    line-height: 1;
  }

  .h1, .rte h1 {
    letter-spacing: -1px;
    line-height: 1.04167;
  }

  .h2, .rte h2 {
    letter-spacing: 0px;
    line-height: 1.10526;
  }

  .h3, .rte h3 {
    letter-spacing: 0px;
    line-height: 1.0625;
  }

  .h4, .rte h4 {
    letter-spacing: 0px;
    line-height: 1.16667;
  }

  .h5, .rte h5 {
    letter-spacing: 0px;
    line-height: 1.2;
  }

  .h6, .rte h6 {
    line-height: 1.22222;
  }

  .blockquote, .rte blockquote {
    letter-spacing: -.6px;
    min-height: 63px;
    padding-inline-start: 49px;
    padding-inline-end: 0;
    line-height: 1.16667;
  }

  .blockquote--center {
    padding-inline-start: 0;
  }

  .blockquote:not(.blockquote--center):before, .rte blockquote:not(.blockquote--center):before {
    width: 80px;
    height: 63px;
    top: 0;
    -webkit-mask-size: 80px 63px;
    mask-size: 80px 63px;
  }

  .blockquote:not(.blockquote--center):not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
    left: 0;
  }

  .rte blockquote:not(.blockquote--center):not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
    left: 0;
  }

  .blockquote:not(.blockquote--center):is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
    right: 0;
  }

  .rte blockquote:not(.blockquote--center):is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
    right: 0;
  }

  .unordered-list li, .text-container ul li, .rte ul li {
    padding-block-start: 4px;
    padding-block-end: 4px;
    padding-inline-start: 0;
    padding-inline-end: 5px;
  }

  .ordered-list li, .text-container ol li, .rte ol li {
    padding-block-start: 4px;
    padding-block-end: 4px;
    padding-inline-start: 0;
    padding-inline-end: 9px;
  }
}

@media screen and (min-width: 1000px) {
  .table {
    --table-spacing: 24px;
  }

  .table--loose {
    --table-spacing: 32px;
  }
}

@media screen and (min-width: 1200px) {
  .heading--large, .rte .heading--large {
    line-height: 1;
  }

  .h1, .rte h1 {
    letter-spacing: -1px;
    line-height: 1.07143;
  }

  .h2, .rte h2 {
    letter-spacing: 0px;
    line-height: 1.08333;
  }

  .h3, .rte h3 {
    letter-spacing: 0px;
    line-height: 1.11111;
  }

  .h4, .rte h4 {
    letter-spacing: 0px;
    line-height: 1.13333;
  }

  .h5, .rte h5 {
    letter-spacing: 0px;
    line-height: 1.16667;
  }

  .h6, .rte h6 {
    line-height: 1.22222;
  }

  .blockquote, .rte blockquote {
    letter-spacing: -.7px;
    min-height: 80px;
    padding-inline-start: 69px;
    line-height: 1.13333;
  }

  .blockquote--center, .rte .blockquote--center {
    padding-inline-start: 0;
  }

  .blockquote:not(.blockquote--center):before, .rte blockquote:not(.blockquote--center):before {
    width: 101px;
    height: 81px;
    -webkit-mask-size: 101px 81px;
    mask-size: 101px 81px;
  }
}

.text-container p:not(.heading) + p, .rte p:not(.heading) + p, .text-container p + form, .rte p + form {
  margin-block-start: 24px;
}

.text-container .heading--large, .rte .heading--large {
  margin-block-start: 48px;
  margin-block-end: 40px;
  margin-inline-start: 0;
  margin-inline-end: 0;
}

.text-container .h1, .rte h1 {
  margin-block-start: 48px;
  margin-block-end: 24px;
  margin-inline-start: 0;
  margin-inline-end: 0;
}

.text-container .h2, .rte h2, .text-container .h3, .rte h3, .text-container .h4, .rte h4, .text-container .h5, .rte h5, .text-container .h6, .rte h6 {
  margin-block-start: 40px;
  margin-block-end: 16px;
  margin-inline-start: 0;
  margin-inline-end: 0;
  font-size: 1.5em;
}

.text-container .heading--small, .rte .heading--small {
  margin: 16px 0;
}

.text-container .heading--xsmall, .rte .heading--xsmall {
  margin: 12px 0;
}

.blockquote, .rte blockquote {
  margin-block-start: 48px;
  margin-block-end: 64px;
  margin-inline-start: 0;
  margin-inline-end: 0;
}

.text-container img:not([style*="float"]), .rte img:not([style*="float"]) {
  margin: 34px 0;
  display: block;
}

.text-container ul, .rte ul, .text-container ol, .rte ol {
  margin-block-start: 1em;
  margin-block-end: 1em;
}

@media screen and (min-width: 1000px) {
  .text-container p + form, .rte p + form {
    margin-block-start: 32px;
  }

  .text-container .h1, .rte h1 {
    margin-block-start: 48px;
    margin-block-end: 32px;
    margin-inline-start: 0;
    margin-inline-end: 0;
  }

  .text-container .h2, .rte h2, .text-container .h3, .rte h3, .text-container .h4, .rte h4 {
    margin-block-start: 48px;
    margin-block-end: 24px;
    margin-inline-start: 0;
    margin-inline-end: 0;
  }

  .text-container .h5, .rte h5, .text-container .h6, .rte h6 {
    margin-block-start: 40px;
    margin-block-end: 16px;
    margin-inline-start: 0;
    margin-inline-end: 0;
  }

  .blockquote, .rte blockquote {
    margin-block-start: 80px;
    margin-block-end: 96px;
    margin-inline-start: 0;
    margin-inline-end: 0;
  }
}

.rte > :first-child, .text-container > :first-child {
  margin-block-start: 0;
}

.rte > :last-child, .text-container > :last-child {
  margin-block-end: 0;
}

.heading--small + .heading--large {
  margin-block-start: 32px;
}

.heading--small + p, .heading--xsmall + p, .heading--small + p, .heading--small + .h1, .heading--small + h1, .heading--small + .h2, .heading--small + h2, .heading--small + .h3, .heading--small + h3, .heading--small + .h4, .heading--small + h4, .heading--small + .h5, .heading--small + h5, .heading--small + .h6, .heading--small + h6, .heading--xsmall + p, .heading--xsmall + .h1, .heading--xsmall + h1, .heading--xsmall + .h2, .heading--xsmall + h2, .heading--xsmall + .h3, .heading--xsmall + h3 {
  margin-block-start: 16px;
}

.heading--xsmall + .h4, .heading--xsmall + h4, .heading--xsmall + .h5, .heading--xsmall + h5, .heading--xsmall + .h6, .heading--xsmall + h6 {
  margin-block-start: 12px;
}

.heading + .button-wrapper, .heading + .button-group, p + .button-wrapper, p + .button-group, .button-wrapper + p, .button-group + p {
  margin-block-start: 32px;
}

@media screen and (min-width: 741px) {
  .heading--small + p, .heading--small + .h1, .heading--small + h1, .heading--small + .h2, .heading--small + h2, .heading--small + .h3, .heading--small + h3, .heading--small + .h4, .heading--small + h4 {
    margin-block-start: 24px;
  }

  .heading--small + .h5, .heading--small + h5, .heading--small + .h6, .heading--small + h6 {
    margin-block-start: 16px;
  }

  .heading--xsmall + .h1, .heading--xsmall + h1, .heading--xsmall + .h2, .heading--xsmall + h2 {
    margin-block-start: 24px;
  }
}

.shopify-section {
  color: rgb(var(--text-color));
  scroll-margin-top: calc(var(--header-height, 0px) * var(--enable-sticky-header)  + var(--announcement-bar-height, 0px) * var(--enable-sticky-announcement-bar));
}

.js .no-focus-outline :focus {
  outline: none;
}

.lock-all {
  touch-action: none;
  overflow: hidden;
}

@media screen and (max-width: 740px) {
  .lock-mobile {
    touch-action: none;
    overflow: hidden;
  }
}

.container, .shopify-policy__container.shopify-policy__container {
  max-width: var(--container-max-width);
  padding-inline: var(--container-gutter);
  --container-outer-margin: 0px;
  width: 100%;
  margin-inline-start: auto;
  margin-inline-end: auto;
}

.container--small {
  max-width: 930px;
}

@media screen and (max-width: 999px) {
  .container--flush {
    padding-inline-start: 0;
    padding-inline-end: 0;
  }
}

@media screen and (min-width: 1400px) {
  .container--medium {
    padding-inline: calc(var(--container-gutter)  + var(--grid-column-width)  + var(--grid-gap));
  }
}

.js .no-js {
  display: none !important;
}

.js .js\:hidden, .no-js .no-js\:hidden {
  display: none;
}

[reveal] {
  opacity: 0;
}

[reveal-visibility] {
  visibility: hidden;
}

.no-js [reveal] {
  opacity: 1;
}

.no-js [reveal-visibility] {
  visibility: visible;
}

.skip-to-content:focus {
  clip: auto;
  color: rgb(var(--text-color));
  background-color: rgb(var(--background));
  opacity: 1;
  z-index: 10000;
  width: auto;
  height: auto;
  margin: 0;
  padding: 10px;
  transition: none;
}


.vertical-breather {
  padding-block: var(--vertical-breather);
}


.vertical-breather--tight {
  padding-block: var(--vertical-breather-tight);
}

.vertical-breather--margin {
  margin-block: var(--vertical-breather);
  padding-block-start: 0 !important;
  padding-block-end: 0 !important;
}

.vertical-breather--margin.vertical-breather--tight {
  margin-block: var(--vertical-breather-tight);
}

@media screen and (min-width: 741px) {
  .vertical-breather--extra-tight {
    padding-block-start: 48px;
    padding-block-end: 48px;
  }

  .vertical-breather--margin.vertical-breather--extra-tight {
    margin-block-start: 48px;
    margin-block-end: 48px;
  }
}

.anchor {
  scroll-margin-top: calc(var(--header-height, 0px) * var(--enable-sticky-header)  + var(--announcement-bar-height, 0px) * var(--enable-sticky-announcement-bar)  + var(--anchor-offset, 20px));
}

.anchor.vertical-breather:not(.vertical-breather--margin) {
  --anchor-offset: 0px;
}

.anchor.vertical-breather--margin {
  --anchor-offset: var(--vertical-breather);
}

.anchor.vertical-breather--tight.vertical-breather--margin {
  --anchor-offset: var(--vertical-breather-tight);
}

.icon {
  vertical-align: middle;
  pointer-events: none;
  background: none;
  display: block;
  overflow: visible;
}

.icon--inline {
  display: inline-block;
}

.icon-text {
  align-items: center;
  display: flex;
}

@media screen and (max-width:741px) {
  .icon--picto-lock, .icon--picto-address, .icon--picto-credit-card { 
    width: 20px
  }
}

.iconmax {
    display: flex;
    justify-content: center;
    align-items: center;
}

.iconmax img {
    margin-inline-end: 0px!important;
}

.icon-text svg, .icon-text img {
  margin-inline-end: 12px;
}
  
.icon--picto-address {
   margin-inline-end: 8px!important
 }

@supports (scale: 1) {
  [dir="rtl"] .icon--direction-aware {
    scale: -1 1;
  }
}

@supports not (scale: 1) {
  [dir="rtl"] .icon--direction-aware {
    transform: scale(-1, 1);
  }
}

.list--unstyled {
  margin: 0;
  padding: 0;
  list-style: none;
}

.loading-bar {
  opacity: 0;
  background: rgb(var(--loading-bar-background));
  transform-origin: 0;
  z-index: 50;
  pointer-events: none;
  width: 100%;
  height: 3px;
  transition: transform .25s ease-in-out;
  position: fixed;
  top: 0;
  left: 0;
  transform: scaleX(0);
}

.loading-bar.is-visible {
  opacity: 1;
}

.section {
  margin: var(--vertical-breather) 0;
  display: block;
}

.section--tight {
  margin-block: var(--vertical-breather-tight);
}

.section:empty {
  display: none;
}

.section--flush {
  margin-block-start: 0;
  margin-block-end: 0;
}

.section__color-wrapper {
  background: rgb(var(--section-background, var(--background)));
  display: flow-root;
}

.section__color-wrapper--boxed {
  border-radius: var(--block-border-radius);
}

.section__header {
  text-align: center;
  max-width: 1000px;
  margin-block-end: min(32px, var(--vertical-breather));
  margin-inline-start: auto;
  margin-inline-end: auto;
}

.section__header:only-child {
  margin-block-end: 0;
}

.section__header--tight {
  max-width: 800px;
}

.section__header--left {
  text-align: start;
  margin-left: 0;
}

.section__header--right {
  text-align: end;
  margin-right: 0;
}

.section__footer {
  text-align: center;
  margin-block-start: 32px;
}

@media screen and (min-width: 741px) {
  .section__header {
    margin-block-end: min(40px, var(--vertical-breather));
  }

  .section__footer {
    margin-block-start: min(40px, var(--vertical-breather));
  }

}

@media screen and (min-width: 1000px) {
  .section__header {
    margin-block-end: min(48px, var(--vertical-breather));
  }

  .section__footer {
    margin-block-start: min(48px, var(--vertical-breather));
  }

}

.page-header {
  text-align: center;
  position: relative;
}

.page-header--secondary {
  background: rgb(var(--secondary-background));
}

.page-header--clear:after, .page-header:before {
  content: "";
  clear: left;
  display: table;
}

.page-header__text-wrapper {
  margin: 60px 0 37px 0;
}

.page-header--small .page-header__text-wrapper {
  margin-block-start: 24px;
  margin-block-end: 24px;
}

.page-header--alone .page-header__text-wrapper {
  margin-block-end: 72px;
}

.page-content, .shopify-policy__body {
  max-width: 1200px;
  margin-block-end: min(var(--vertical-breather), 80px);
  margin-inline-start: auto;
  margin-inline-end: auto;
}

.page-content--medium, .shopify-policy__body {
  max-width: 670px;
}

.page-content--small {
  max-width: 460px;
}

.page-content--fluid {
  max-width: none;
}

@media screen and (min-width: 741px) {
  .page-header__text-wrapper {
    margin-block-start: 68px;
    margin-block-end: 68px;
  }

  .page-header--small .page-header__text-wrapper {
    margin-block-start: 48px;
    margin-block-end: 40px;
  }

  .page-header--alone .page-header__text-wrapper {
    margin-block-end: 120px;
  }

  .breadcrumb--floating + .page-header__text-wrapper {
    margin-block-start: 65px;
    text-align:center
  }
}

.breadcrumb {
  z-index: 1;
}

.breadcrumb--floating {
  position: absolute;
  top: 0;
}

.breadcrumb--floating:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 0;
}

.breadcrumb--floating:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 0;
}

.breadcrumb__list {
  margin: 0;
  padding: 26px 0;
  list-style: none;
  display: inline-flex;
}

.breadcrumb__item + .breadcrumb__item:before {
  content: "/";
  opacity: .7;
  float: left;
  margin: 0 4px;
}

.breadcrumb__link {
  transition: opacity .2s ease-in-out;
}

.breadcrumb__link:not([aria-current="page"]):not(:hover) {
  opacity: .7;
}

[dir="rtl"] .breadcrumb__item + .breadcrumb__item:before {
  float: right;
}



.pagination {
  justify-content: center;
  margin-block-start: 40px;
  display: flex;
}

.pagination__nav {
  border-collapse: separate;
  table-layout: fixed;
  display: table;
}

.pagination__nav-item {
  box-shadow: 1px 0 0 0 rgb(var(--border-color)), 0 1px 0 0 rgb(var(--border-color)), 1px 1px 0 0 rgb(var(--border-color)), 1px 0 0 0 rgb(var(--border-color)) inset, 0 1px 0 0 rgb(var(--border-color)) inset;
  vertical-align: middle;
  text-align: center;
  width: 47px;
  height: 47px;
  display: table-cell;
  position: relative;
}

.pagination__nav-item:first-child:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-left-radius: var(--button-border-radius);
  border-bottom-left-radius: var(--button-border-radius);
}

.pagination__nav-item:first-child:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  border-top-left-radius: var(--button-border-radius);
  border-bottom-left-radius: var(--button-border-radius);
}

.pagination__nav-item:first-child:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-right-radius: var(--button-border-radius);
  border-bottom-right-radius: var(--button-border-radius);
}

.pagination__nav-item:first-child:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  border-top-right-radius: var(--button-border-radius);
  border-bottom-right-radius: var(--button-border-radius);
}

.pagination__nav-item:last-child:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-right-radius: var(--button-border-radius);
  border-bottom-right-radius: var(--button-border-radius);
}

.pagination__nav-item:last-child:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  border-top-right-radius: var(--button-border-radius);
  border-bottom-right-radius: var(--button-border-radius);
}

.pagination__nav-item:last-child:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-left-radius: var(--button-border-radius);
  border-bottom-left-radius: var(--button-border-radius);
}

.pagination__nav-item:last-child:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  border-top-left-radius: var(--button-border-radius);
  border-bottom-left-radius: var(--button-border-radius);
}

.pagination__nav-item svg {
  margin: 0 auto;
}

.pagination__nav-item[aria-current]:before {
  content: "";
  pointer-events: none;
  z-index: 1;
  max-width: calc(100% - 3px);
  max-height: calc(100% - 3px);
  position: absolute;
  top: 2px;
  bottom: 0;
  left: 2px;
  right: 0;
  box-shadow: 0 0 0 2px;
}

@media screen and (min-width: 741px) {
  .pagination {
    margin-block-start: 48px;
  }

  .pagination__nav-item {
    width: 56px;
    height: 56px;
  }
}

.linklist__item:not(:first-child) {
  padding-block-start: 12px;
}

.linklist__item a {
  word-break: break-word;
  display: inline-block;
}

@media screen and (min-width: 1000px) {
  .linklist__item:not(:first-child) {
    padding-block-start: 6px;
  }
}

.animated-plus {
  display: inline-block;
  width: 10px;
  height: 10px;
  position: relative;
  padding-top: 13px; 
  transition: transform 0.3s ease; 
}

.animated-plus:before {
  content: "";
  position: absolute;
  width: 8px; 
  height: 8px; 
  border-right: 2px solid currentColor; 
  border-bottom: 2px solid currentColor; 
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(45deg); 
  transition: transform 0.3s ease; 
}

[aria-expanded="true"] > .animated-plus:before {
  transform: translate(-50%, -50%) rotate(-135deg); 
}



.aspect-ratio {
  margin-inline-start: auto;
  margin-inline-end: auto;
  display: block;
  position: relative;
}

.aspect-ratio img, .aspect-ratio video, .aspect-ratio svg {
  top: 0;
  object-fit: cover;
  object-position: center;
  width: 100%;
  max-width: 100%;
  height: 100%;
  max-height: 100%;
  position: absolute;
  left: 0;
}

.aspect-ratio--square img, .aspect-ratio--short img, .aspect-ratio--tall img, .aspect-ratio--rectangular img {
  object-fit: contain;
  top: 50%;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 50%;
  transform: translate(-50%, -50%) !important;
}

.aspect-ratio--square {
  padding-block-end: 100% !important;
}

.aspect-ratio--short {
  padding-block-end: 75% !important;
}

.aspect-ratio--tall {
  padding-block-end: 150% !important;
}

@supports (aspect-ratio: 1 / 1) {
  .aspect-ratio {
    aspect-ratio: var(--aspect-ratio);
    padding-bottom: 0 !important;
  }

  .aspect-ratio--natural img, .aspect-ratio--natural video, .aspect-ratio--natural svg {
    width: auto;
    position: relative;
  }

  .aspect-ratio--square {
    aspect-ratio: 1;
  }

  .aspect-ratio--short {
    aspect-ratio: 4 / 3;
  }

  .aspect-ratio--tall {
    aspect-ratio: 2 / 3;
  }

}


.placeholder-image {
  background-color: rgb(var(--secondary-background));
  padding-block-end: 75%;
  position: relative;
}

.placeholder-background {
  background-color: rgb(var(--secondary-background));
}

.placeholder-image svg {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
}

.placeholder-image svg:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 0;
}

.placeholder-image svg:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 0;
}

@media screen and (min-width: 1000px) {
  .placeholder-image {
    padding-block-end: 45%;
  }
}

.progress-bar {
  background: rgba(var(--text-color), .15);
  height: 2px;
  display: block;
  position: relative;
}

.progress-bar:before {
  content: "";
  width: calc(100% / var(--divider));
  transform: translateX(calc(var(--transform-logical-flip) * var(--transform, 0%) * (var(--divider)  - 1)));
  transform-origin: var(--transform-origin-start);
  background: rgb(var(--text-color));
  height: 100%;
  position: absolute;
  top: 0;
}

.progress-bar:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  left: 0;
}

.progress-bar:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  right: 0;
}

[draggable].is-scrollable {
  cursor: none;
}

.custom-drag-cursor {
  pointer-events: none;
  visibility: visible;
  width: 60px;
  height: 60px;
  transition: visibility .15s linear;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
}

.custom-drag-cursor svg {
  opacity: 1;
  transition: transform .15s ease-in-out, opacity .15s ease-in-out;
  transform: scale(1);
}

.custom-drag-cursor[hidden] svg {
  opacity: 0;
  transform: scale(.5);
}

@media screen and (max-width: 999px), screen and not (pointer: fine) {
  .custom-drag-cursor {
    display: none;
  }
}

.tap-area {
  position: relative;
}

.tap-area:before {
  content: "";
  position: absolute;
  top: -6px;
  bottom: -6px;
  left: -6px;
  right: -6px;
}

.tap-area--large:before {
  top: -10px;
  bottom: -10px;
  left: -10px;
  right: -10px;
}

@media screen and (max-width: 999px) {
  .scroller {
    scroll-snap-type: x mandatory;
    margin-inline: calc(-1 * var(--container-gutter));
    scrollbar-width: none;
    overflow-x: auto;
    overflow-y: hidden;
  }

  .scroller::-webkit-scrollbar {
    display: none;
  }

  .scroller__inner {
    padding-inline: var(--container-gutter);
    min-width: min-content;
    margin-inline-start: auto;
    margin-inline-end: auto;
  }
}

.hide-scrollbar {
  scrollbar-width: none;
  overflow-x: auto;
  overflow-y: hidden;
}

.hide-scrollbar::-webkit-scrollbar {
  display: none;
}

.js .animated-element {
  visibility: hidden;
}

.square-separator {
  vertical-align: middle;
  background: currentColor;
  flex-shrink: 0;
  width: 4px;
  height: 4px;
  margin: 0 8px;
  display: inline-block;
  position: relative;
}

.square-separator--block {
  margin-inline-start: 12px;
  margin-inline-end: 12px;
  top: 1px;
}

.square-separator--subdued {
  opacity: .5;
}

@keyframes prevNextButtonKeyframe {
  0% {
    transform: translateX(0%);
  }

  50% {
    transform: translateX(calc(50% + 10px));
  }

  51% {
    transform: translateX(calc(-50% - 10px));
  }

  100% {
    transform: translateX(0%);
  }
}

.prev-next-buttons {
  pointer-events: none;
  display: inline-grid;
}

.prev-next-buttons--row {
  grid-auto-flow: column;
}

.prev-next-button {
  background: #3a9d5f;
  color: white;
  border: 1px solid rgba(var(--prev-next-button-color, var(--root-text-color)), .15);
  border-radius: var(--button-border-radius);
  pointer-events: auto;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  transition: color .2s ease-in-out;
  display: flex;
  overflow: hidden;
}

.prev-next-button[disabled] {
  color: rgba(var(--prev-next-button-color), .3);
}

.prev-next-button svg {
  width: 100%;
}

.prev-next-buttons:not(.prev-next-buttons--row) .prev-next-button:first-child:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)), .prev-next-buttons:not(.prev-next-buttons--row) .prev-next-button:first-child:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.prev-next-buttons:not(.prev-next-buttons--row) .prev-next-button:last-child:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)), .prev-next-buttons:not(.prev-next-buttons--row) .prev-next-button:last-child:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.prev-next-buttons--row .prev-next-button:first-child:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.prev-next-buttons--row .prev-next-button:first-child:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.prev-next-buttons--row .prev-next-button:last-child:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.prev-next-buttons--row .prev-next-button:last-child:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

@media screen and (min-width: 741px) {
  .prev-next-button:not(.prev-next-button--small) {
    width: 56px;
    height: 56px;
  }

  .prev-next-buttons:not(.prev-next-buttons--row) .prev-next-button:last-child {
    border-top: none;
  }

  .prev-next-buttons--row .prev-next-button:last-child {
    border-left: none;
  }
}

@media screen and (pointer: fine) {
  .prev-next-button--prev:hover svg {
    animation: .3s ease-in-out reverse forwards prevNextButtonKeyframe;
  }

  .prev-next-button--next:hover svg {
    animation: .3s ease-in-out forwards prevNextButtonKeyframe;
  }
}

.dots-nav {
  flex-wrap: wrap;
  justify-content: flex-start;
  margin: -6px;
  display: flex;
}

.dots-nav--centered {
  justify-content: center;
}

.dots-nav__item {
  background: rgb(var(--text-color));
  border-radius: min(var(--button-border-radius), 6px);
  opacity: .3;
  width: 6px;
  height: 6px;
  margin: 6px;
  transition: opacity .2s ease-in-out;
  position: relative;
}

.dots-nav__item[aria-current="true"] {
  opacity: 1;
}

.price-list {
  flex-wrap: wrap;
  align-items: baseline;
  display: inline-flex;
}

.price-list--centered {
  justify-content: center;
}

.price-list--stack {
  display: inline-grid;
}

.price-list:not(.price-list--stack) > .price:not(:last-child) {
  margin-inline-end: 10px;
}

.price-list > .price--block {
  flex-basis: 100%;
  margin-inline-start: 0 !important;
}

.price-list + .link {
  margin-inline-start: 16px;
}

.price--highlight {
  color: rgb(var(--product-on-sale-accent));
  font-size: 1.1em;
  font-weight:500
}

@media screen and (max-width: 741px) {
  .price--highlight {
    font-size: 1em;
  }
}

.price--compare {
    text-decoration: line-through;
    color: #282828a3;
    font-weight: 500;
    text-decoration-thickness: 1px;
}

.price--large {
  font-size: calc(var(--base-font-size)  + 3px);
}

.unit-price-measurement {
  display: inline-flex;
}

@media screen and (min-width: 1000px) {
  .price--large:not(.price--compare) {
    font-size: calc(var(--base-font-size)  + 7px);
  }
}

.iconlabel {
  width: 19px;
  margin-left: 1px;
}

@media screen and (max-width: 741px) {
  .iconlabel {
    width: 13px;
  }
}


.label {
  vertical-align: top;
  font-family: var(--text-font-family);
  font-style: var(--text-font-style);
  font-weight: 500;
  letter-spacing: .5px;
  border-radius: min(var(--block-border-radius), 2px);
  padding: 0 5px;
  font-size: 10px;
  display: inline-block;
}

.label--highlight {
  background: rgb(var(--product-on-sale-accent));
  color: #fff;
  padding: 3px 5px;
}

.label--subdued {
  background: rgb(var(--product-sold-out-accent));
  color: #fff;
}

.label--new {
    background: #282828;
    color: #fff;
    border-radius: 50px;
    padding: 2px 5px;
}



.labelmax {
  vertical-align: top;
  font-family: var(--text-font-family);
  font-style: var(--text-font-style);
  font-weight: var(--text-font-bold-weight);
  text-transform: uppercase;
  letter-spacing: .5px;
  border-radius: min(var(--block-border-radius), 2px);
  padding: 0 5px;
  font-size: 10px;
  display: inline-block;
}


.label--subdueddefault {
  background: #ffa447;
  color: #fff;
  font-size: 11px!important;
}

.label--subduedsolar {
  background: #ffa447;
  color: #fff;
  font-size: 11px!important;
}

.label--solarcolumn {
  background: #ffa447;
  color: #fff;
  font-size: 20px!important;
  padding: 5px 15px;
  font-weight: 700;
}

.label--subdued230 {
  background: #b35656;
  color: #fff;
  font-size: 11px!important;
}

.label--230column {
  background: #b35656;
  color: #fff;
  font-size: 20px!important;
  padding: 5px 15px;
  font-weight: 700;
}

.label--subdued12 {
  background: #3ca0d1;
  color: #fff;
  font-size: 11px!important;
}

.label--12column {
  background: #3ca0d1;
  color: #fff;
  font-size: 20px!important;
  padding: 5px 15px;
  font-weight: 700;
}

.label--label2image {
    background: #f4f4f4;
    color: #000;
    font-weight: 500;
}

@media screen and (max-width: 741px) {
  .label--label2image {
    font-size: 9px!important;
    font-weight: 500
  }
  .label--subdueddefault {
    background: #ffa447;
    color: #fff;
    font-size: 10px!important;
}

  .label--subduedsolar {
    background: #ffa447;
    color: #fff;
    font-size: 10px!important;
}

  .label--subdued230 {
    background: #b35656;
    color: #fff;
    font-size: 10px!important;
}

  .label--subdued12 {
    background: #628cb9;
    color: #fff;
    font-size: 10px!important;
  }
}

.label--custom {
  background: rgb(var(--product-custom-label-background));
  color: rgb(var(--product-custom-label-text-color));
}

.label--custom2 {
  background: rgb(var(--product-custom-label-2-background));
  color: rgb(var(--product-custom-label-2-text-color));
}

.label-list {
  pointer-events: none;
  flex-direction: column;
  align-items: flex-start;
  display: flex;
}

.label-list:not(.label-list--horizontal) .label:not(:last-child) {
  margin-block-end: 4px;
}

.label-list--horizontal {
  flex-direction: row;
}

.label-list--horizontal .label:not(:last-child) {
  margin-inline-end: 4px;
}

@media screen and (min-width: 741px) {
  .label {
    font-size: 11px;
  }
}

.tag-list {
  flex-wrap: wrap;
  align-items: center;
  margin: -6px;
  display: flex;
}

.tag {
  background: rgba(var(--text-color), .05);
  align-items: center;
  margin: 6px;
  padding-block-start: 7px;
  padding-block-end: 8px;
  padding-inline-start: 14px;
  padding-inline-end: 13px;
  display: flex;
}

.tag__icon {
  cursor: pointer;
  margin-block-start: 1px;
  margin-block-end: 0;
  margin-inline-start: 0;
  margin-inline-end: 9px;
  position: relative;
}

.tag-link {
  padding-inline-start: 6px;
}

.social-media {
  flex-wrap: wrap;
  display: flex;
}

.social-media__item {
  box-shadow: 1px 0 0 0 rgb(var(--border-color)), 0 1px 0 0 rgb(var(--border-color)), 1px 1px 0 0 rgb(var(--border-color)), 1px 0 0 0 rgb(var(--border-color)) inset, 0 1px 0 0 rgb(var(--border-color)) inset;
  position: relative;
  transform: translateZ(0);
}

.no-focus-outline .social-media__item {
  overflow: hidden;
}

.social-media__item:before {
  content: "";
  clip-path: polygon(0 25%, 100% 0, 100% 100%, 0% 100%);
  transform-origin: bottom;
  pointer-events: none;
  z-index: 1;
  background: currentColor;
  width: calc(100% + 1px);
  height: calc(100% + 1px);
  transition: transform .3s cubic-bezier(.215, .61, .355, 1), clip-path .3s cubic-bezier(.215, .61, .355, 1);
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  transform: scaleY(0);
}

.social-media:not(.social-media--no-radius) .social-media__item:first-child:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-left-radius: var(--button-border-radius);
  border-bottom-left-radius: var(--button-border-radius);
}

.social-media:not(.social-media--no-radius) .social-media__item:first-child:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-right-radius: var(--button-border-radius);
  border-bottom-right-radius: var(--button-border-radius);
}

.social-media:not(.social-media--no-radius) .social-media__item:last-child:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-right-radius: var(--button-border-radius);
  border-bottom-right-radius: var(--button-border-radius);
}

.social-media:not(.social-media--no-radius) .social-media__item:last-child:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-left-radius: var(--button-border-radius);
  border-bottom-left-radius: var(--button-border-radius);
}

.social-media__link {
  color: currentColor;
  z-index: 1;
  justify-content: center;
  align-items: center;
  width: 45px;
  height: 45px;
  transition: color .3s cubic-bezier(.215, .61, .355, 1);
  display: flex;
  position: relative;
}

@media screen and (min-width: 741px) {
  .social-media__link {
    width: 55px;
    height: 55px;
  }
}

@media screen and (pointer: fine) {
  .social-media__item:hover .social-media__link {
    color: rgb(var(--background));
  }

  .social-media__item:hover:before {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
    transform: scaleY(1);
  }
}

.banner {
  text-align: start;
  justify-content: flex-start;
  align-items: flex-start;
  padding: 12px 16px;
  display: flex;
}

.banner--centered {
  justify-content: center;
}

.banner--margin {
  margin-block-start: 24px;
}

.banner__ribbon {
  margin-inline-end: 10px;
}

.banner__content {
  margin: 0;
}

.banner--success {
  --text-color: rgb(var(--success-color));
  background: rgb(var(--success-background));
  color: rgb(var(--success-color));
}

.banner--error {
  --text-color: rgb(var(--error-color));
  background: rgb(var(--error-background));
  color: rgb(var(--error-color));
}

.banner__content ul {
  padding-inline-start: 10px;
  list-style-position: inside;
}

@media screen and (min-width: 741px) {
  .banner {
    padding: 13px 18px;
  }
}

.tabs-nav {
  margin-block-end: 32px;
  display: block;
  position: relative;
}

.tabs-nav:not(:first-child) {
  margin-block-start: 24px;
}

.tabs-nav__scroller {
  display: block;
}

.tabs-nav__scroller-inner {
  line-height: 1;
  position: relative;
}

.tabs-nav__item-list {
  vertical-align: top;
  box-shadow: 0 -1px rgb(var(--border-color)) inset;
  grid-auto-columns: max-content;
  grid-auto-flow: column;
  justify-content: flex-start;
  gap: 32px;
  display: inline-grid;
}

.tabs-nav__item {
  opacity: .7;
  padding-block-end: 18px;
  transition: opacity .25s ease-in-out;
}

.tabs-nav__item[aria-expanded="true"] {
  opacity: 1;
}

.tabs-nav__position {
  transform: scaleX(var(--scale, 0)) translateX(var(--translate, 0));
  transform-origin: 0;
  background: #3A9D5F;
  width: 100%;
  height: 2px;
  position: absolute;
  bottom: 0;
}

.tabs-nav__position:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 0;
}

.tabs-nav__position:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 0;
}

.tabs-nav__position.is-initialized {
  transition: transform .4s ease-in-out;
}

@supports (scale: 0) {
  .tabs-nav__position {
    scale: var(--scale, 0) 1;
    translate: calc(var(--translate, 0) * var(--scale, 0));
    transform: none;
  }

  .tabs-nav__position.is-initialized {
    transition: scale .2s ease-in-out, translate .4s ease-in-out;
  }
}

.tabs-nav--center .tabs-nav__scroller-inner {
  max-width: max-content;
  margin-inline-start: auto;
  margin-inline-end: auto;
}

.tabs-nav__arrows {
  z-index: 1;
  display: none;
  position: absolute;
  top: -5px;
}

.tabs-nav__arrows:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 0;
}

.tabs-nav__arrows:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 0;
}

.tabs-nav__scroller.is-scrollable + .tabs-nav__arrows {
  display: flex;
}

.tabs-nav__arrow-item {
  background: rgb(var(--background));
  border: 1px solid rgb(var(--border-color));
  justify-content: center;
  align-items: center;
  width: 24px;
  height: 24px;
  display: flex;
}

.tabs-nav__arrow-item + .tabs-nav__arrow-item {
  border-inline-start: none;
}

.tabs-nav[arrows] .tabs-nav__scroller {
  overflow: hidden;
}

.tabs-nav[arrows] .tabs-nav__scroller.is-scrollable:before {
  content: "";
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(to var(--transform-origin-start), rgb(var(--section-background, var(--background))), rgba(var(--section-background, var(--background)), 0));
  width: 48px;
  height: 100%;
  position: absolute;
  top: -2px;
}

.tabs-nav[arrows] .tabs-nav__scroller.is-scrollable:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  right: 48px;
}

.tabs-nav[arrows] .tabs-nav__scroller.is-scrollable:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  left: 48px;
}

.tabs-nav[arrows] .tabs-nav__item-list {
  width: 100%;
  min-width: max-content;
  margin-inline-end: 0;
}

.tabs-nav[arrows] .tabs-nav__item-list:after {
  content: "";
  width: 35px;
  display: block;
}

.tabs-nav--no-border.tabs-nav--narrow {
  margin-block-end: 24px;
}

.tabs-nav--no-border .tabs-nav__item-list {
  box-shadow: none;
}

.tabs-nav--no-border.tabs-nav--narrow .tabs-nav__item {
  padding-block-end: 5px;
}

@media screen and (max-width: 999px) {
  .tabs-nav--edge2edge {
    margin-inline: calc(-1 * var(--container-gutter));
  }

  .tabs-nav--edge2edge .tabs-nav__scroller-inner {
    padding-inline: var(--container-gutter);
    min-width: max-content;
  }
}

@media screen and (min-width: 741px) {
  .tabs-nav:not(:first-child) {
    margin-block-start: 32px;
  }

  .tabs-nav--no-border.tabs-nav--narrow {
    margin-block-end: 32px;
  }

  .tabs-nav__item-list {
    gap: 54px;
  }

  .tabs-nav--loose .tabs-nav__item-list {
    gap: 72px;
  }

  .tabs-nav--narrow .tabs-nav__item-list {
    gap: 40px;
  }
}

.empty-state {
  text-align: center;
  margin: 100px 0;
  position: relative;
}

.empty-state--bottom-only {
  margin-block-start: 24px;
}

.empty-state__background-text {
  text-align: center;
  opacity: .05;
  width: 100%;
  margin-block-start: -20px;
  font-size: 120px;
  font-weight: bold;
  line-height: 0;
  position: absolute;
}

.empty-state__background-text:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 0;
}

.empty-state__background-text:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 0;
}

@media screen and (min-width: 741px) {
  .empty-state {
    margin-block-start: 150px;
    margin-block-end: 150px;
  }

  .empty-state--bottom-only {
    margin-block-start: 50px;
  }

  .empty-state__background-text {
    margin-block-start: -35px;
    font-size: 200px;
    position: absolute;
  }
}

@media screen and (min-width: 1200px) {
  .empty-state {
    margin-block-start: 225px;
    margin-block-end: 225px;
  }

  .empty-state--bottom-only {
    margin-block-start: 50px;
  }
}

.bubble-count {
  color: rgb(var(--background));
  background: rgb(var(--heading-color));
  font-weight: var(--text-font-bold-weight);
  font-family: var(--text-font-family);
  font-style: var(--text-font-style);
  letter-spacing: 0;
  border-radius: 21px;
  justify-content: center;
  align-items: center;
  min-width: 21px;
  height: 21px;
  font-size: 9px;
  line-height: 1;
  transition: background .2s ease-in-out, color .2s ease-in-out;
  display: inline-flex;
  position: relative;
}

.bubble-count--top {
  vertical-align: top;
}

.quantity-selector {
  --quantity-selector-height: 46px;
  border: 1px solid rgb(var(--border-color));
  border-radius: var(--button-border-radius);
  vertical-align: middle;
  justify-content: flex-start;
  align-items: center;
  display: inline-flex;
}

.quantity-selector__button {
  height: var(--quantity-selector-height);
  width: var(--quantity-selector-height);
  justify-content: center;
  align-items: center;
  display: flex;
}

.quantity-selector__input {
  height: var(--quantity-selector-height);
  line-height: var(--quantity-selector-height);
  text-align: center;
  -webkit-appearance: none;
  appearance: none;
  background: none;
  border: none;
  padding: 0 10px;
}

.quantity-selector--small {
  --quantity-selector-height: 28px;
}

.quantity-selector--small .quantity-selector__input {
  padding: 0 2px;
}

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

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

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

  100% {
    stroke-dasharray: 89 200;
    stroke-dashoffset: -124px;
  }
}

@keyframes spinnerColor {
  0% {
    stroke: currentColor;
  }

  40% {
    stroke: currentColor;
  }

  66% {
    stroke: currentColor;
  }

  80%, 90% {
    stroke: currentColor;
  }
}

.spinner svg {
  transform-origin: center;
  margin: auto;
  animation: 2s linear infinite spinnerRotate;
}

.spinner circle {
  animation: 1.5s ease-in-out infinite spinnerDash, 6s ease-in-out infinite spinnerColor;
}

[data-tooltip] {
  position: relative;
}

[data-tooltip]:before {
  content: attr(data-tooltip);
  white-space: nowrap;
  background: rgb(var(--heading-color));
  color: rgb(var(--background));
  font-size: calc(var(--base-font-size)  - 2px);
  pointer-events: none;
  visibility: hidden;
  opacity: 0;
  z-index: 1;
  padding: 5px 10px;
  transition: visibility .2s ease-in-out, opacity .2s ease-in-out;
  position: absolute;
  bottom: calc(100% + 6px);
  left: 50%;
  transform: translateX(-50%);
}

[data-tooltip]:after {
  content: "";
  border-style: solid;
  border-width: 6px;
  border-color: transparent transparent rgb(var(--heading-color)) rgb(var(--heading-color));
  visibility: hidden;
  z-index: 1;
  opacity: 0;
  width: 0;
  height: 0;
  transition: visibility .2s ease-in-out, opacity .2s ease-in-out;
  position: absolute;
  bottom: calc(100% + 1px);
  left: calc(50% - 7px);
  transform: rotate(-45deg);
  box-shadow: -1px 1px 1px #0000001a;
}

[data-tooltip]:hover:before, [data-tooltip]:hover:after {
  opacity: 1;
  visibility: visible;
}

[data-tooltip-position="bottom-left"]:before {
  top: calc(100% + 4px);
  bottom: auto;
  left: auto;
  right: -6px;
  transform: none;
}

[data-tooltip-position="bottom-left"]:after {
  top: calc(100% - 1px);
  left: calc(50% - 6px);
  transform: rotate(135deg);
}

.cart-notification {
  --heading-color: 255, 255, 255;
  --text-color: 255, 255, 255;
  --cart-notification-background: rgb(var(--success-color));
  transform: translateY(var(--cart-notification-offset, 0px));
  color: rgb(var(--text-color));
  visibility: visible;
  width: 100%;
  transition: visibility .25s ease-in-out, transform .25s ease-in-out;
  display: block;
  position: absolute;
  top: 100%;
  overflow: hidden;
}

.cart-notification--error {
  --cart-notification-background: rgb(var(--error-color));
}

.cart-notification--drawer {
  --cart-notification-offset: 0;
  top: var(--header-height-without-bottom-nav);
  z-index: 1;
}

.cart-notification--fixed {
  position: fixed;
  top: 0;
}

.cart-notification[hidden] {
  visibility: hidden;
}

.cart-notification__overflow {
  background: var(--cart-notification-background);
  transition: opacity .25s ease-in-out, transform .25s ease-in-out;
  transform: translateY(0);
}

.cart-notification[hidden] .cart-notification__overflow {
  opacity: 0;
  transform: translateY(-100%);
}

.cart-notification__wrapper {
  justify-content: center;
  align-items: flex-start;
  padding-block-start: 14px;
  padding-block-end: 14px;
  display: flex;
  position: relative;
}

.cart-notification .icon--cart-notification {
  position: relative;
  top: 2px;
}

.cart-notification__text-wrapper {
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  margin-inline-start: 12px;
  display: flex;
}

.cart-notification__heading {
  margin-inline-end: 12px;
  font-size: 14px;
}

.cart-notification__close {
  margin-block-start: -1px;
  position: absolute;
}

.cart-notification__close:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 0;
}

.cart-notification__close:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 0;
}

.cart-notification--drawer .cart-notification__text-wrapper {
  flex-grow: 1;
  justify-content: space-between;
}

@media screen and (max-width: 740px) {
  .cart-notification__text-wrapper {
    flex-grow: 1;
    justify-content: space-between;
  }
}

@media screen and (max-width: 999px) {
  .cart-notification {
    transform: none !important;
  }
}

@media screen and (min-width: 741px) {
  .cart-notification__wrapper {
    padding-block-start: 19px;
    padding-block-end: 19px;
  }

  .cart-notification .icon--cart-notification {
    top: 4px;
  }

  .cart-notification__heading {
    margin-inline-end: 16px;
    font-size: 16px;
  }

  .cart-notification__close svg {
    width: 15px;
    height: 15px;
  }
}

.payment-methods-list {
  grid-template-columns: repeat(auto-fit, 38px);
  gap: 8px;
  display: grid;
}

.payment-methods-list--center {
  justify-content: center;
}

@media screen and (min-width: 741px) {
  .payment-methods-list--auto {
    grid-auto-flow: column;
  }
}

.link-bar {
  text-align: center;
  display: block;
  position: relative;
}

.link-bar__wrapper {
  align-items: center;
  max-width: 100%;
  display: inline-flex;
  position: relative;
  padding: 10px;
  border-radius: 4px;
  overflow: hidden;
}

.link-bar__scroller {
  scroll-snap-type: x proximity;
}

.link-bar__title {
  z-index: 1;
  background: rgb(var(--background));
  flex-shrink: 0;
  position: sticky;
  left: 0;
}

.link-bar__title:after {
  content: "";
  background-image: linear-gradient(to var(--transform-origin-end), rgb(var(--background)) 35%, rgba(var(--background), 0));
  width: 28px;
  height: 100%;
  position: absolute;
  top: 0;
}

.link-bar__title + .link-bar__scroller {
  padding-inline-start: 28px;
}

.link-bar__linklist {
  grid-auto-flow: column;
  align-items: center;
  gap: 14px;
  min-width: max-content;
  display: grid;
}

.link-bar__link-item, .link-bar__title {
  padding-block-start: 14px;
  padding-block-end: 14px;
  padding: 15px;
  background: #EFFAF0 !important;
  border-radius: 30px;
  transition: transform .2s;
  font-size: 0.9em;
  font-weight: 600;
  border: solid 1px #3a9d5f;
}

.link-bar__link-item--selected {
  scroll-snap-align: center;
}

.link-bar__link-item:hover {
  background-color: #e9e9e9 !important;
  transform: scale(0.95);
}

.activ-lien {
  background: #3a9d5f!important;
  color: white;
}

.activ-lien:hover {
  background: #4b8b3bc7!important;
  color: white;
}

@media screen and (max-width: 999px) {
  .link-bar__wrapper:after {
    content: "";
    width: var(--container-gutter);
    background-image: linear-gradient(to var(--transform-origin-start), rgb(var(--background)), rgba(var(--background), 0));
    height: 100%;
    position: absolute;
    top: 0;
  }

  .link-bar__wrapper:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):after {
    left: 100%;
  }

  .link-bar__wrapper:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):after {
    right: 100%;
  }

  .link-bar__scroller {
    margin-inline-end: calc(-1 * var(--container-gutter));
  }

  .link-bar__linklist {
    padding-inline-end: var(--container-gutter);
  }
}

@media screen and (min-width: 741px) {
  .link-bar__title + .link-bar__scroller {
    padding-inline-start: 48px;
  }

  .link-bar__linklist {
    gap: 25px;
  }

  .link-bar__link-item, .link-bar__title {
    padding-block-start: 20px;
    padding-block-end: 20px;
    padding: 10px 15px;
    background: white;
    font-size:1em;
  }
}

@media screen and (min-width: 1200px) {
  .link-bar__link-item, .link-bar__title {
    padding-block-start: 27px;
    padding-block-end: 27px;
    padding: 10px 15px;
    background: #f4f4f4;
    border-radius: 30px;
    font-size:1em;
  }
}

.mobile-share-buttons__item {
  align-items: center;
  margin-inline-start: 24px;
  margin-inline-end: 24px;
  padding-block-start: 20px;
  padding-block-end: 20px;
  display: flex;
}

@supports (padding: max(0px)) {
  .mobile-share-buttons {
    padding-block-end: max(20px, env(safe-area-inset-bottom)  + 20px);
  }
}

.mobile-share-buttons__item:not(:last-child) {
  border-block-end: 1px solid rgb(var(--border-color));
}

.mobile-share-buttons__item svg {
  margin-inline-end: 16px;
}

.mobile-toolbar {
  visibility: visible;
  z-index: 3;
  align-items: center;
  transition: margin-top .2s ease-in-out, visibility .2s ease-in-out;
  display: flex;
  position: sticky;
  top: calc(var(--enable-sticky-header) * var(--header-height, 0px)  + var(--announcement-bar-height, 0px) * var(--enable-sticky-announcement-bar));
}

.mobile-toolbar.is-collapsed {
  visibility: hidden;
  margin-top: -48px;
}

.mobile-toolbar--fixed {
  position: relative;
  top: 0;
}

.mobile-toolbar__item {
  border-top: 1px solid rgb(var(--border-color));
  border-bottom: 1px solid rgb(var(--border-color));
  background: rgb(var(--background));
  flex: 1 0 0;
  justify-content: center;
  align-items: center;
  padding: 11px;
  display: flex;
}

.mobile-toolbar__item + .mobile-toolbar__item {
  border-inline-start: 1px solid rgb(var(--border-color));
}

.mobile-toolbar__item .icon--chevron {
  margin-inline-start: 10px;
}

@media screen and (max-width: 740px) {
  .combo-box {
    --heading-color: var(--root-heading-color);
    --text-color: var(--root-text-color);
    --background: var(--root-background);
    z-index: 10;
    color: rgb(var(--text-color));
    background: rgb(var(--background));
    visibility: hidden;
    border-radius: 10px 10px 0 0;
    flex-direction: column;
    width: 100vw;
    max-height: 75vh;
    transition: transform .7s cubic-bezier(.75, 0, .175, 1), visibility .7s cubic-bezier(.75, 0, .175, 1);
    display: flex;
    position: fixed;
    bottom: 0;
    transform: translateY(100%);
  }

  .combo-box:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    left: 0;
  }

  .combo-box:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    right: 0;
  }

  .combo-box[open] {
    visibility: visible;
    transform: translateY(0);
  }

  .combo-box__overlay {
    content: "";
    opacity: 0;
    visibility: hidden;
    background: #000;
    width: 100%;
    height: 100vh;
    transition: opacity .5s ease-in-out, visibility .5s ease-in-out;
    position: absolute;
    bottom: calc(100% - 10px);
  }

  .combo-box__overlay:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    left: 0;
  }

  .combo-box__overlay:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    right: 0;
  }

  .combo-box__header {
    text-align: center;
    box-shadow: 0 1px rgb(var(--border-color));
    border-radius: 10px 10px 0 0;
    justify-content: center;
    align-items: center;
    min-height: 64px;
    padding: 18px 32px;
    display: flex;
    position: relative;
  }

  .combo-box__header, .combo-box__content {
    background: inherit;
  }

  .combo-box__title {
    margin-block-end: 0;
  }

  .combo-box__close-button {
    z-index: 1;
    position: absolute;
    top: 24px;
  }

  .combo-box__close-button:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    right: 24px;
  }

  .combo-box__close-button:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    left: 24px;
  }

  .combo-box[open] > .combo-box__overlay {
    visibility: visible;
    opacity: .3;
  }

  .combo-box__option-list {
    padding-block-end: max(16px, env(safe-area-inset-bottom, 0px)  + 16px);
    padding-inline-start: 24px;
    padding-inline-end: 24px;
    overflow-x: hidden;
    overflow-y: auto;
  }

  .combo-box__option-item {
    border-bottom: 1px solid rgb(var(--border-color));
    width: 100%;
    padding-block-start: 20px;
    padding-block-end: 20px;
    position: relative;
  }

  .combo-box__option-item:not([hidden]) {
    display: block;
  }

  .combo-box__option-item:last-child {
    border-bottom: none;
  }

  .combo-box__option-item[aria-selected="true"]:after {
    content: "";
    background-color: currentColor;
    width: 12px;
    height: 9px;
    margin-inline-start: 12px;
    display: inline-block;
    -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iOSIgdmlld0JveD0iMCAwIDEyIDkiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEgMy40TDQuNzQ5MzEgN0wxMSAxIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIi8+PC9zdmc+");
    mask-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iOSIgdmlld0JveD0iMCAwIDEyIDkiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEgMy40TDQuNzQ5MzEgN0wxMSAxIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIi8+PC9zdmc+");
    -webkit-mask-size: 12px 9px;
    mask-size: 12px 9px;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
  }

  .combo-box__option-item.is-disabled {
    color: rgba(var(--text-color), .5);
    text-decoration: line-through;
  }
}

@media screen and (min-width: 741px) {
  .combo-box {
    overscroll-behavior: contain;
    background: rgb(var(--background));
    z-index: 2;
    border: 1px solid rgb(var(--border-color));
    border-radius: 0 0 var(--button-border-radius) var(--button-border-radius);
    border-top: none;
    max-height: 245px;
    padding: 8px 0;
    transition: opacity .2s ease-in-out, visibility .2s ease-in-out;
    display: block;
    position: absolute;
    top: 100%;
    overflow: auto;
    width: 100%
  }

  .combo-box:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    left: 0;
  }

  .combo-box:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    right: 0;
  }

  .combo-box--top {
    border-top: 1px solid rgb(var(--border-color));
    border-radius: var(--button-border-radius) var(--button-border-radius) 0 0;
    border-bottom: none;
    top: auto;
    bottom: 100%;
  }

  .combo-box:not([open]) {
    visibility: hidden;
    opacity: 0;
  }

  .combo-box__header {
    display: none;
  }

  .combo-box__option-list {
    min-width: max-content;
  }

  .combo-box__option-item:not([hidden]) {
    text-align: left;
    align-items: center;
    width: 100%;
    padding: 8px 26px;
    transition: background .2s ease-in-out;
    display: flex;
  }

  .combo-box__option-item.is-disabled {
    color: rgba(var(--text-color), .5);
    text-decoration: line-through;
  }

  .combo-box__option-item:hover, .combo-box__option-item:focus {
    background: rgb(var(--secondary-background));
  }

  .combo-box__color-swatch {
    border-radius: var(--color-swatch-border-radius);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    width: 16px;
    height: 16px;
    margin-inline-end: 10px;
  }

  .combo-box + .select {
    transition: border-radius .2s ease-in-out;
  }

  .combo-box[open] + .select:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)), .combo-box[open] + .select:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
  }

  .combo-box--top[open] + .select:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)), .combo-box--top[open] + .select:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
  }
}

.price-range {
  padding-block-start: 5px;
  display: block;
}

.price-range__input-group {
  align-items: center;
  display: flex;
}

.price-range__input {
  flex: 1 0 0;
  min-width: 0;
}

.price-range__delimiter {
  margin-inline-start: 20px;
  margin-inline-end: 20px;
}

.price-range__range-group {
  margin-block-end: 15px;
  position: relative;
}

.no-js .price-range__range-group {
  display: none !important;
}

@media screen and not (pointer: fine) {
  .price-range {
    padding-block-start: 7px;
  }

  .price-range__range-group {
    margin-block-end: 18px;
  }
}

.scroll-spy {
  box-shadow: 1px 0 rgba(var(--text-color), .25) inset;
  display: block;
  position: sticky;
  top: calc(24px + var(--header-height, 0px) * var(--enable-sticky-header)  + var(--announcement-bar-height, 0px) * var(--enable-sticky-announcement-bar));
}

.scroll-spy__list {
  padding-left: 6px;
}

.scroll-spy__item {
  opacity: .7;
  transition: opacity .25s ease-in-out;
}

.scroll-spy__item.is-visible {
  opacity: 1;
}

.scroll-spy__anchor {
  padding: 10px 24px;
  display: block;
}

.scroll-spy svg {
  z-index: -1;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
}

.scroll-spy svg:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 0;
}

.scroll-spy svg:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 0;
}

.scroll-spy path {
  fill: #0000;
  stroke: currentColor;
  stroke-width: 2px;
  stroke-dasharray: 0 0 0 1000;
  stroke-linecap: square;
  transition: all .3s;
}

split-lines {
  display: block;
}

@media screen and (pointer: fine) {
  .features--image-zoom .image-zoom img {
    transition: transform .5s;
    transform: translateZ(0);
  }

  .features--image-zoom .image-zoom:hover img {
    transform: scale(1.03);
  }
}

.rating {
  vertical-align: bottom;
  align-items: center;
  display: inline-flex;
}

.rating__stars {
  grid-auto-flow: column;
  column-gap: 1px;
  display: grid;
}

.rating__star {
  color: rgb(var(--product-star-rating));
}

.rating__star--empty {
  color: rgba(var(--product-star-rating), .4);
}

.rating__caption {
  margin-inline-start: 8px;
  font-size: 0.9em;
  font-weight:500
}

@media screen and (max-width: 741px) {
  .rating__caption {
    font-size: 0.9em
  }
}


.openable__overlay {
  content: "";
  bottom: 100%;
  opacity: 0;
  visibility: hidden;
  background: #000;
  width: 100%;
  height: 100vh;
  transition: opacity .6s ease-in-out, visibility .6s ease-in-out;
  position: absolute;
  left: 0;
}

[open] > .openable__overlay {
  visibility: visible;
  opacity: .2;
}

::-webkit-date-and-time-value {
  text-align: start;
}

.form__banner:not(:last-child), .form__info {
  margin-block-end: 24px;
}

.form__info {
  margin-block-start: 0;
}

.form__submit {
  margin-block-start: var(--form-submit-margin);
}

.form__submit--closer {
  margin-block-start: 16px;
}

.form__secondary-action {
  text-align: center;
  width: 100%;
  margin-block-start: 18px;
  display: block;
}

.form__secondary-action .link {
  padding-left: 8px;
}

@media screen and (min-width: 1000px) {
  .form__banner:not(:last-child), .form__info {
    margin-block-end: 32px;
  }
}

.input {
  position: relative;
}

.input + .input, .input + .input-row, .input-row + .input-row, .input-row + .input {
  margin-block-start: var(--form-input-gap);
}

.input__field, #shopify-product-reviews .spr-form-input-text, #shopify-product-reviews .spr-form-input-email, #shopify-product-reviews .spr-form-input-textarea {
  -webkit-appearance: none;
  appearance: none;
  height: var(--form-input-field-height);
  line-height: var(--form-input-field-height);
  border-radius: var(--button-border-radius);
  border: 1px solid rgba(var(--text-color), .15);
  box-shadow: none;
  color: var(--form-input-color);
  text-align: start;
  background: none;
  width: 100%;
  padding: 0 18px;
  transition: border .2s ease-in-out, box-shadow .2s ease-in-out;
}

.input__field:focus, select:focus, #shopify-product-reviews .spr-form-input-text:focus, #shopify-product-reviews .spr-form-input-email:focus, #shopify-product-reviews .spr-form-input-textarea:focus {
  border-color: rgb(var(--text-color));
  box-shadow: 0 0 0 1px rgb(var(--text-color)) inset;
  outline: none;
}

.input__field::placeholder {
  color: rgba(var(--text-color), .7);
}

.input__field--transparent {
  background: none;
}

.input__field--textarea, #shopify-product-reviews .spr-form-input-textarea {
  resize: vertical;
  vertical-align: top;
  line-height: inherit;
  height: auto;
  padding-block-start: 12px;
  padding-block-end: 12px;
}

.input__label {
  pointer-events: none;
  transform-origin: var(--transform-origin-start) top;
  background: rgb(var(--section-block-background, var(--section-background, var(--background))));
  color: rgba(var(--text-color), .7);
  white-space: nowrap;
  padding: 0 5px;
  line-height: 1;
  transition: transform .2s ease-in-out;
  position: absolute;
  top: calc((var(--form-input-field-height) / 2)  - .5em);
  transform: translateY(0);
}

.input__label:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 12px;
}

.input__label:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 12px;
}

:focus-within ~ .input__label, .is-filled ~ .input__label {
  transform: scale(.733)translateY(calc(-24px - .5em))translateX(3.665px);
}

.input__block-label {
  margin-block-end: 8px;
  display: inline-block;
}

.input__field-link {
  position: absolute;
  top: 1.1em;
}

.input__field-link:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 18px;
}

.input__field-link:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 18px;
}

.input__submit-icon {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.input__submit-icon:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 20px;
}

.input__submit-icon:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 20px;
}

.input-row .button {
  width: 100%;
}

@media screen and (min-width: 741px) {
  .input-row {
    gap: var(--form-input-gap);
    grid-template-columns: repeat(auto-fit, minmax(10px, 1fr));
    display: grid;
  }

  .input-row .input {
    margin-block-start: 0;
  }

  .input + .input--checkbox, .input-row + .input--checkbox {
    margin-block-start: 30px;
  }

  .input__field-link:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    right: 18px;
  }

  .input__field-link:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    left: 18px;
  }
}

.input-prefix {
  border: 1px solid rgb(var(--border-color));
  justify-content: space-between;
  align-items: center;
  padding: 8px 10px;
  display: flex;
}

.input-prefix__field {
  -webkit-appearance: none;
  appearance: none;
  -moz-appearance: textfield;
  text-align: end;
  background: none;
  border: none;
  width: 100%;
  min-width: 0;
  padding: 0;
}

.input-prefix__field::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.input-prefix__field::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.checkbox-container {
  align-items: baseline;
  display: flex;
}

.checkbox-container + .checkbox-container {
  margin-block-start: 10px;
}

.checkbox {
  -webkit-appearance: none;
  border: 1px solid rgb(var(--border-color-darker));
  background-color: rgb(var(--background));
  cursor: pointer;
  border-radius: 0;
  flex: none;
  width: 14px;
  height: 14px;
  transition: background-color .2s ease-in-out, border .2s ease-in-out;
  position: relative;
  top: 2px;
}

.checkbox:checked {
  border-color: rgb(var(--heading-color));
  background-color: rgb(var(--heading-color));
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTAiIGhlaWdodD0iOCIgdmlld0JveD0iMCAwIDEwIDgiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEgM0w0IDZMOS4wMDE0NiAxIiBzdHJva2U9IndoaXRlIiBzdHJva2Utd2lkdGg9IjEuNSIvPjwvc3ZnPg==");
  background-position: center;
  background-repeat: no-repeat;
}

.checkbox:disabled + label {
  opacity: .7;
  cursor: default;
}

.checkbox + label {
  cursor: pointer;
  padding-inline-start: 12px;
}

@media screen and (min-width: 1000px) {
  .checkbox-container + .checkbox-container {
    margin-block-start: 2px;
  }
}

.select-wrapper {
  position: relative;
  margin-top: -4px;
}

.select {
  -webkit-appearance: none;
  appearance: none;
  height: 40px;
  border: 1px solid rgb(var(--border-color));
  border-radius: var(--button-border-radius);
  cursor: pointer;
  background: none;
  justify-content: space-between;
  align-items: center;
  padding: 0 18px;
  display: flex;
}

.select--collapse-start:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.select--collapse-start:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.select--collapse-end:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.select--collapse-end:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.select svg {
  margin-inline-start: 20px;
  transition: transform .25s ease-in-out;
}

.select ~ svg {
  position: absolute;
  top: calc(50% - 4px);
}

.select ~ svg:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 18px;
}

.select ~ svg:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 18px;
}

.select__selected-value {
  white-space: nowrap;
  text-overflow: ellipsis;
  align-items: center;
  max-width: 100%;
  display: flex;
  position: relative;
  top: -1px;
  overflow: hidden;
}

.select__color-swatch {
  border-radius: var(--color-swatch-border-radius);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  width: 16px;
  height: 16px;
  margin-inline-end: 10px;
  position: relative;
}

.select__color-swatch--white {
  box-shadow: 0 0 0 1px rgba(var(--text-color), .3) inset;
}

.select--small {
  height: auto;
  padding: 6px 12px;
}

.select--small svg {
  margin-inline-start: 10px;
}

.select[aria-expanded="true"] svg {
  transform: rotateZ(180deg);
}

@media screen and (min-width: 741px) {
  .select__selected-value {
    pointer-events: none;
  }
}

@media screen and (max-width: 741px) {
  .select__selected-value {
    font-size: 0.9em
  }
}

.range {
  -webkit-appearance: none;
  appearance: none;
  background: none;
  width: 100%;
}

.range::-webkit-slider-thumb {
  -webkit-appearance: none;
}

.range::-webkit-slider-thumb {
  background: rgb(var(--background));
  cursor: pointer;
  z-index: 1;
  box-shadow: 0 0 0 5px rgb(var(--text-color)) inset;
  border: none;
  border-radius: 100%;
  width: 14px;
  height: 14px;
  margin-top: -5px;
  position: relative;
}

.range::-webkit-slider-runnable-track {
  cursor: pointer;
  background: rgb(var(--border-color));
  border: none;
  border-radius: 4px;
  width: 100%;
  height: 6px;
}

.range::-moz-range-thumb {
  background: rgb(var(--background));
  cursor: pointer;
  box-shadow: 0 0 0 5px rgb(var(--text-color)) inset;
  border: none;
  border-radius: 100%;
  width: 14px;
  height: 14px;
}

.range::-moz-range-progress {
  cursor: pointer;
  border: none;
  border-radius: 4px;
  width: 100%;
  height: 6px;
}

.range::-moz-range-track {
  cursor: pointer;
  border: none;
  border-radius: 4px;
  width: 100%;
  height: 6px;
}

.range::-moz-range-progress {
  background-color: rgba(var(--text-color), .7);
}

.range::-moz-range-track {
  background-color: rgb(var(--border-color));
}

@media screen and (pointer: fine) {
  .range::-webkit-slider-thumb {
    box-shadow: 0 0 0 7px rgb(var(--text-color)) inset;
    width: 20px;
    height: 20px;
    margin-top: -7px;
  }

  .range::-moz-range-thumb {
    box-shadow: 0 0 0 7px rgb(var(--text-color)) inset;
    width: 20px;
    height: 20px;
  }
}

.range-group {
  background: linear-gradient(to var(--transform-origin-end), rgb(var(--border-color)) var(--range-min), rgba(var(--text-color), .7) var(--range-min), rgba(var(--text-color), .7) var(--range-max), rgb(var(--border-color)) var(--range-max));
  border-radius: 4px;
  height: 6px;
}

.range-group .range {
  pointer-events: none;
  vertical-align: top;
  height: 6px;
}

.range-group .range::-webkit-slider-runnable-track {
  background: none;
}

.range-group .range::-webkit-slider-thumb {
  pointer-events: auto;
}

.range-group .range::-moz-range-progress {
  background: none;
}

.range-group .range::-moz-range-track {
  background: none;
}

.range-group .range::-moz-range-thumb {
  pointer-events: auto;
}

.range-group .range:last-child {
  position: absolute;
  top: 0;
}

.range-group .range:last-child:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 0;
}

.range-group .range:last-child:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 0;
}

.switch-checkbox {
  background: rgb(var(--border-color));
  -webkit-appearance: none;
  appearance: none;
  cursor: pointer;
  border-radius: 20px;
  width: 40px;
  height: 20px;
  transition: background .1s ease-in;
  position: relative;
}

.switch-checkbox:before {
  content: "";
  background: rgb(var(--background));
  border-radius: 100%;
  width: 14px;
  height: 14px;
  transition: transform .1s ease-in;
  display: block;
  position: absolute;
  top: 3px;
  box-shadow: 0 1px 1px #0003;
}

.switch-checkbox:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  left: 3px;
}

.switch-checkbox:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  right: 3px;
}

.switch-checkbox:checked {
  background: rgb(var(--text-color));
}

.switch-checkbox:checked:before {
  transform: translateX(calc(100% + 6px));
}

.button, .shopify-challenge__button, #shopify-product-reviews .spr-summary-actions-newreview, #shopify-product-reviews .spr-button {
  -webkit-appearance: none;
  appearance: none;
  line-height: var(--button-height);
  text-align: center;
  border-radius: var(--button-border-radius);
  background: rgb(var(--button-background));
  color: rgb(var(--button-text-color));
  padding: 0 20px;
  text-decoration: none;
  display: inline-block;
  position: relative;
}

.button:not(.button--text), .shopify-challenge__button, #shopify-product-reviews .spr-summary-actions-newreview, #shopify-product-reviews .spr-button {
  font-size: calc(var(--base-font-size)  - 3px);
  font-family: var(--text-font-family);
  font-weight: var(--text-font-bold-weight);
  text-transform: uppercase;
  letter-spacing: 1.5px;
}

.button--small, #shopify-product-reviews .spr-summary-actions-newreview {
  line-height: var(--button-small-height);
  padding: 0 20px;
}

.button--primary, .shopify-challenge__button, #shopify-product-reviews .spr-summary-actions-newreview, #shopify-product-reviews .spr-button {
  --button-background: var(--primary-button-background);
  --button-text-color: var(--primary-button-text-color);
}

.button--secondary {
  --button-background: var(--secondary-button-background);
  --button-text-color: var(--secondary-button-text-color);
}

.button--ternary {
  --button-background: var(--secondary-background);
  --button-text-color: var(--root-text-color);
}

.button--outline {
  --button-background: var(--background);
  --button-text-color: var(--root-text-color);
  border: 1px solid rgb(var(--border-color));
}

.button--full {
  width: 100%;
}

.shopify-payment-button {
  min-height: var(--button-height);
}

.shopify-payment-button__button--branded {
  border-radius: var(--button-border-radius) !important;
  min-height: var(--button-height) !important;
  overflow: hidden !important;
}

.shopify-payment-button__button--unbranded {
  --button-background: var(--primary-button-background);
  --button-text-color: var(--primary-button-text-color);
  -webkit-appearance: none !important;
  appearance: none !important;
  line-height: var(--button-height) !important;
  text-align: center !important;
  border-radius: var(--button-border-radius) !important;
  font-size: calc(var(--base-font-size)  - 3px) !important;
  font-family: var(--text-font-family) !important;
  font-weight: var(--text-font-bold-weight) !important;
  text-transform: uppercase !important;
  letter-spacing: 1.5px !important;
  background-color: rgb(var(--button-background)) !important;
  color: rgb(var(--button-text-color)) !important;
  padding: 0 30px !important;
  text-decoration: none !important;
  display: inline-block !important;
  position: relative !important;
}

.shopify-payment-button__more-options[aria-hidden="true"] {
  display: none;
}

@media screen and (min-width: 741px) {
  .button:not(.button--text), .shopify-challenge__button, #shopify-product-reviews .spr-summary-actions-newreview, #shopify-product-reviews .spr-button {
    font-size: calc(var(--base-font-size)  - 2px);
    letter-spacing: 2px;
    padding-inline-start: 35px;
    padding-inline-end: 35px;
  }

  .button--small:not(.button--text), #shopify-product-reviews .spr-summary-actions-newreview {
    font-size: calc(var(--base-font-size)  - 3px);
    padding-inline-start: 28px;
    padding-inline-end: 28px;
  }

  .shopify-payment-button__button--unbranded {
    font-size: calc(var(--base-font-size)  - 2px) !important;
    letter-spacing: 2px !important;
    padding-inline-start: 35px !important;
    padding-inline-end: 35px !important;
  }
}

@media screen and (pointer: fine) {
  .button, .shopify-challenge__button, #shopify-product-reviews .spr-summary-actions-newreview, #shopify-product-reviews .spr-button, .shopify-payment-button__button {
    background-image: linear-gradient(178deg, rgb(var(--button-background)), rgb(var(--button-background)) 10%, #00000012 10%, #00000012 100%), linear-gradient(rgb(var(--button-background)), rgb(var(--button-background)));
    background-position: 100% -100%, 100% 100%;
    background-repeat: no-repeat;
    background-size: 100% 200%, 100% 100%;
    transition: background-position .3s cubic-bezier(.215, .61, .355, 1);
    transform: translateZ(0);
  }

  .button:hover, .shopify-challenge__button:hover, #shopify-product-reviews .spr-summary-actions-newreview:hover, #shopify-product-reviews .spr-button:hover, .shopify-payment-button__button:hover {
    background-position: 100% 25%, 100% 100%;
  }

  @supports (color: color-contrast(wheat vs black, white)) and (color: rgb(from wheat r g b / 0.07)) {
    .button, .shopify-challenge__button, #shopify-product-reviews .spr-summary-actions-newreview, #shopify-product-reviews .spr-button, .shopify-payment-button__button {
      --button-overlay-color: rgb(from color-contrast(rgb(var(--button-background)) vs white, black) r g b / 7%);
      background-image: linear-gradient(178deg, rgb(var(--button-background)), rgb(var(--button-background)) 10%, var(--button-overlay-color) 10%, var(--button-overlay-color) 100%), linear-gradient(rgb(var(--button-background)), rgb(var(--button-background)));
    }
  }
}

.loader-button__text {
    justify-content: center;
    align-items: center;
    display: flex;
    letter-spacing: 2px;
}

.loader-button__loader {
  top: 50%;
  opacity: 0;
  position: absolute;
  left: 50%;
}

.button-group {
  font-size: 0;
}

@media screen and (max-width: 740px) {
  .button-group .button {
    margin: 12px;
    padding: 0 18px;
  }

  .button-group__wrapper {
    margin: -12px;
  }

  .loader-button__text {
    font-size: 1em;
  }
}

@media screen and (min-width: 741px) {
  .button-group__wrapper {
    grid-template-columns: 1fr 1fr;
    gap: 24px;
    display: inline-grid;
  }
}

.collapsible {
  visibility: hidden;
  height: 0;
  display: block;
  overflow: hidden;
}

.no-js .collapsible, .collapsible[open] {
  visibility: visible;
  height: auto;
  overflow: visible;
}

.collapsible-toggle {
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding: 18px 0;
  display: flex;
}

.collapsible-toggle__selected-value {
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 45%;
  margin-inline-start: auto;
  margin-inline-end: 12px;
  font-weight: normal;
  overflow: hidden;
}

.collapsible-toggle svg {
  transition: transform .2s ease-in-out;
}

.collapsible-toggle[aria-expanded="true"] svg {
  transform: rotateZ(180deg);
}

@media screen and (min-width: 741px) {
  .collapsible-toggle {
    padding: 21px 0;
  }
}

.content-box {
  z-index: 1;
  position: relative;
}

.content-box-glass {
  z-index: 1;
  position: relative;
  /* From https://css.glass */
  background: #ffffff94;
  border-radius: 16px;
  box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
  backdrop-filter: blur(3.5px);
  -webkit-backdrop-filter: blur(3.5px);
  border: 1px solid rgba(255, 255, 255, 0.21);
  padding: 1em;
}


.content-box--text-center {
  text-align: center;
}

.content-box--text-right {
  text-align: end;
}

@media screen and (max-width: 740px) {
  .content-box--small, .content-box--medium, .container--flush .content-box--large {
    margin-inline-start: 24px;
    margin-inline-end: 24px;
  }

  .content-box--left {
    margin-inline-end: auto;
  }

  .content-box--right {
    margin-inline-start: auto;
  }
}

@media screen and (min-width: 741px) {
  .content-box {
    width: calc(var(--grid-column-width) * 16 + var(--grid-gap) * 15);
    margin-inline-start: auto;
    margin-inline-end: auto;
  }

  .content-box--medium {
    width: calc(var(--grid-column-width) * 14 + var(--grid-gap) * 13);
  }

  .content-box--small {
    width: 100%;
  }

  .content-box--fill {
    width: 100% !important;
  }

  .content-box--left {
    margin-inline-start: calc(var(--grid-column-width)  + var(--grid-gap));
  }

  .content-box--right {
    margin-inline-end: calc(var(--grid-column-width)  + var(--grid-gap));
  }
}

@media screen and (min-width: 1000px) {
  .content-box {
    width: calc(var(--grid-column-width) * 14 + var(--grid-gap) * 13);
  }

  .content-box--medium {
    width: calc(var(--grid-column-width) * 10 + var(--grid-gap) * 7);
  }

  .content-box--small {
    width: 100%;
  }
}

@media screen and (min-width: 1400px) {
  .content-box--small {
    width: 100%;
  }
}

.drawer {
  --heading-color: var(--root-heading-color);
  --text-color: var(--root-text-color);
  --background: var(--root-background);
  --primary-button-background: var(--root-primary-button-background);
  --primary-button-text-color: var(--root-primary-button-text-color);
  --section-background: initial;
  background: rgb(var(--background));
  color: rgb(var(--text-color));
  z-index: 10;
  transform: translateX(calc(var(--transform-logical-flip) * 100%));
  visibility: hidden;
  text-align: start;
  flex-direction: column;
  max-width: 400px;
  height: 100%;
  width: 95vw;
  max-height: 100vh;
  font-size: 1rem;
  transition: transform .6s cubic-bezier(.75, 0, .175, 1), visibility .6s cubic-bezier(.75, 0, .175, 1);
  display: flex;
  position: fixed;
  top: 0;
}

.drawer:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 0;
}

.drawer:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 0;
}

.drawer--from-left {
  transform: translateX(calc(var(--transform-logical-flip) * -100%));
}

.drawer--from-left:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 0;
  right: auto;
}

.drawer--from-left:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: auto;
  right: 0;
}

.drawer[open] {
  visibility: visible;
  transform: translateX(0);
}

.drawer--from-left .drawer__overlay:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 100%;
  right: auto;
}

.drawer--from-left .drawer__overlay:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: auto;
  right: 100%;
}

.drawer--large {
  max-width: 550px;
}

.drawer__overlay {
  content: "";
  opacity: 0;
  visibility: hidden;
  background: #000;
  width: 100vw;
  height: 100vh;
  transition: visibility .6s ease-in-out, opacity .6s ease-in-out;
  position: fixed;
  top: 0;
}

.drawer__overlay:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 100%;
}

.drawer__overlay:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 100%;
}

.drawer[open] > .drawer__overlay {
  visibility: visible;
  opacity: .3;
}

.drawer__header {
  height: var(--header-height-without-bottom-nav);
  background: rgb(var(--root-background));
  z-index: 1;
  flex-shrink: 0;
  align-items: center;
  max-height: 80px;
  padding-block-start: 6px;
  padding-block-end: 6px;
  display: flex;
  position: relative;
}

.mobpad {
  background: #ffffff;
}

.drawer__header--shadowed {
  border-bottom: none;
  height: auto;
  background: #ffffff;
  display:flex;
  justify-content:space-between;
  padding: 10px 0px
}

.drawer__header--shadowed:after {
  content: "";
  background: linear-gradient(var(--root-background), rgba(var(--root-background), 0));
  z-index: 1;
  pointer-events: none;
  width: 100%;
  height: 24px;
  position: absolute;
  top: 100%;
}

.drawer__header--shadowed:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):after {
  left: 0;
}

.drawer__header--shadowed:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):after {
  right: 0;
}

.drawer__title {
  justify-content: flex-start;
  align-items: center;
  max-width: 100%;
  margin: 0;
  display: flex;
}

.drawer__title--stack {
  flex-direction: column;
  flex-grow: 1;
  align-items: flex-start;
}

.drawer__title .icon {
  margin-inline-end: 12px;
}

.drawer__header-action {
  margin-inline-start: 16px;
}

.drawer__close-button {
  position: absolute;
  top: var(--container-gutter);
}

.drawer__close-button:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: var(--container-gutter);
}

.drawer__close-button:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: var(--container-gutter);
}

.drawer__header .drawer__close-button {
  top: calc(50% - 7px);
}

.drawer__close-button--block {
  position: relative;
  top: auto !important;
  bottom: auto !important;
  left: auto !important;
  right: auto !important;
}

.drawer__header, .drawer__content, .drawer__footer {
  padding-inline: var(--container-gutter);
}

.breadcump-drawer {
  position:absolute;
  top:73%
}

.list-drawer-breadcump {
    display: flex;
    padding: 0;
    font-size: 0.7em;
    list-style-type: none;
    gap: 10px;
    color:#0b0b0b
}

.color-li {
  color:#0b0b0ba3
}

.color-li-active {
  font-weight:500
}

.drawer-custom {
  padding:10px 0px 0px 0px!important
}

@media screen and (max-width:771px) {
  .drawer-custom {
  padding:15px 0px 0px 0px!important
 }
  
  .breadcump-drawer {
    top:80%
  }

}



.drawer__content {
  flex-grow: 1;
  padding-block-end: 24px;
  overflow-x: hidden;
  overflow-y: auto;
  padding: 0px;
}

.drawer__content--padded-start {
  padding-block-start: 24px;
}

.drawer__content--center {
  text-align: center;
  flex-grow: 0;
  margin-block-start: auto;
  margin-block-end: auto;
  padding-block-end: 0;
}

.drawer__footer {
  z-index: 1;
  margin-block-start: auto;
  padding-block-start: 20px;
  padding-block-end: 20px;
}

.drawermenu {
  background: #f4f4f4;
  color: #000000
}

@supports (padding: max(0px)) {
  .drawer__footer {
    padding-block-end: max(20px, env(safe-area-inset-bottom, 0px)  + 20px);
  }
}

.drawer__footer--bordered {
  box-shadow: 0 1px rgb(var(--root-border-color)) inset;
}

.drawer__footer--no-top-padding {
  padding-block-start: 0 !important;
}

.drawer__footer:before {
  content: "";
  background: linear-gradient(rgba(var(--root-background), 0), rgb(var(--root-background)));
  z-index: 1;
  pointer-events: none;
  width: 100%;
  height: 24px;
  position: absolute;
  bottom: 100%;
}

.drawer__footer:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  left: 0;
}

.drawer__footer:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  right: 0;
}

@media screen and (min-width: 741px) {
  .drawer__header {
    max-height: 90px;
    padding-block-start: 24px;
    padding-block-end: 24px;
  }

  .drawer__header-action {
    margin-inline-start: 24px;
  }

  .drawer__content--padded-start {
    padding-block-start: 30px;
  }

  .drawer__footer:not(.drawer__footer--tight) {
    padding-block: var(--container-gutter);
  }
}

.popover-button {
  width: max-content;
}

.popover-button svg {
  margin-inline-start: 10px;
  transition: transform .2s ease-in-out;
  position: relative;
  top: -1px;
}

.popover-button[aria-expanded="true"] svg {
  transform: rotateZ(180deg);
}

.popover {
  --heading-color: var(--root-heading-color);
  --text-color: var(--root-text-color);
  --background: var(--root-background);
  --primary-button-background: var(--root-primary-button-background);
  --primary-button-text-color: var(--root-primary-button-text-color);
  --section-background: var(--root-background);
  z-index: 10;
  color: rgb(var(--text-color));
  background: rgb(var(--background));
  visibility: hidden;
  text-align: start;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  font-size: 1rem;
  transition: visibility .25s ease-in-out;
  display: block;
  position: fixed;
}

.popover[open] {
  visibility: visible;
}

.popover__overlay {
  content: "";
  bottom: calc(100% - 10px);
  opacity: 0;
  visibility: hidden;
  background: #000;
  width: 100%;
  height: 100vh;
  transition: opacity .6s ease-in-out, visibility .6s ease-in-out;
  position: absolute;
  left: 0;
}

.popover[open] > .popover__overlay {
  visibility: visible;
  opacity: .3;
}

.popover__header {
  border-bottom: 1px solid rgb(var(--root-border-color));
  border-radius: 10px 10px 0 0;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  min-height: 64px;
  padding: 10px 24px;
  display: flex;
  position: relative;
}

.popover__header--no-border {
  border-bottom: none;
}

.popover__title {
  justify-content: center;
  align-items: center;
  margin: 0;
  display: flex;
}

.popover__title svg {
  margin-inline-end: 12px;
}

.popover__close-button {
  z-index: 1;
  position: absolute;
  top: 24px;
}

.popover__close-button:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 24px;
}

.popover__close-button:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 24px;
}

.popover__content {
  padding: 24px;
  overflow: auto;
}

.popover__content--no-padding {
  padding: 0 !important;
}

@supports (padding: max(0px)) {
  .popover__content {
    padding-block-end: max(24px, env(safe-area-inset-bottom, 0px)  + 24px);
  }
}

@media screen and (max-width: 999px) {
  .popover {
    bottom: 0;
    touch-action: manipulation;
    border-radius: 10px 10px 0 0;
    flex-direction: column;
    width: 100vw;
    max-height: 75vh;
    transition: transform .6s cubic-bezier(.75, 0, .175, 1), visibility .6s cubic-bezier(.75, 0, .175, 1);
    display: flex;
    left: 0;
    transform: translateY(100%);
  }

  .popover[open] {
    transform: translateY(0);
  }

  .popover__header, .popover__content {
    background: inherit;
  }

  .drawer:not(.drawer--from-left) .popover:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    left: -11vw;
  }

  .drawer:not(.drawer--from-left) .popover:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    right: -11vw;
  }
}

@media screen and (min-width: 1000px) {
  .popover-container {
    position: relative;
  }

  .popover {
    border: 1px solid rgb(var(--root-border-color));
    z-index: 2;
    opacity: 0;
    border-radius: min(var(--block-border-radius), 4px);
    transition: opacity .25s ease-in-out, visibility .25s ease-in-out;
    position: absolute;
    top: calc(100% + 18px);
  }

  .popover[open] {
    opacity: 1;
  }

  .popover:after, .popover:before {
    content: "";
    border-style: solid;
    border-color: transparent transparent rgb(var(--root-background)) transparent;
    border-width: 8px;
    width: 0;
    height: 0;
    position: absolute;
    bottom: 100%;
  }

  .popover:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):after {
    right: 24px;
  }

  .popover:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
    right: 24px;
  }

  .popover:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):after {
    left: 24px;
  }

  .popover:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
    left: 24px;
  }

  .popover:before {
    border-color: transparent transparent rgb(var(--root-border-color)) transparent;
    border-width: 9px;
  }

  .popover:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
    right: 23px;
  }

  .popover:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
    left: 23px;
  }

  .popover__overlay, .popover__header {
    display: none;
  }

  .popover__content {
    padding-inline-start: 32px;
    padding-inline-end: 32px;
  }

  .popover__content--restrict {
    max-height: 400px;
  }

  .popover--small {
    font-size: calc(var(--base-font-size)  - 3px);
    line-height: 1.5;
  }

  .popover--top {
    top: auto;
    bottom: calc(100% + 18px);
  }

  .popover--top:before, .popover--top:after {
    border-color: rgb(var(--root-background)) transparent transparent transparent;
    top: 100%;
    bottom: auto;
  }

  .popover--top:before {
    border-color: rgb(var(--root-border-color)) transparent transparent transparent;
  }

  .popover--left:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    left: 0;
    right: auto;
  }

  .popover--left:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    left: auto;
    right: 0;
  }

  .popover--left:before, .popover--left:after {
    display: none;
  }

  .popover-button + .popover:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    right: -28px;
  }

  .popover-button + .popover:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    left: -28px;
  }

  .select + .popover:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    right: -15px;
  }

  .select + .popover:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    left: -15px;
  }
}

.popover__choice-list {
  white-space: nowrap;
}

.popover__choice-item {
  text-align: center;
  width: 100%;
  display: block;
}

.popover__choice-item:not(:first-child) {
  margin-block-start: 7px;
}

.popover__choice-label {
  cursor: pointer;
  position: relative;
}

input:checked + .popover__choice-label:after, .popover__choice-label[aria-current]:after {
  content: "";
  background-color: currentColor;
  width: 12px;
  height: 9px;
  position: absolute;
  top: calc(50% - 4.5px);
  -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iOSIgdmlld0JveD0iMCAwIDEyIDkiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEgMy40TDQuNzQ5MzEgN0wxMSAxIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIi8+PC9zdmc+");
  mask-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iOSIgdmlld0JveD0iMCAwIDEyIDkiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEgMy40TDQuNzQ5MzEgN0wxMSAxIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIi8+PC9zdmc+");
  -webkit-mask-size: 12px 9px;
  mask-size: 12px 9px;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}

input:checked + .popover__choice-label:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):after {
  right: -26px;
}

.popover__choice-label[aria-current]:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):after {
  right: -26px;
}

input:checked + .popover__choice-label:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):after {
  left: -26px;
}

.popover__choice-label[aria-current]:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):after {
  left: -26px;
}

@media screen and (max-width: 999px) {
  .popover__choice-item:not(:first-child) {
    margin-block-start: 16px;
  }
}

@media screen and (min-width: 1000px) {
  input:checked + .popover__choice-label:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):after {
    right: -22px;
  }

  .popover__choice-label[aria-current]:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):after {
    right: -22px;
  }

  input:checked + .popover__choice-label:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):after {
    left: -22px;
  }

  .popover__choice-label[aria-current]:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):after {
    left: -22px;
  }

  .popover__choice-label {
    margin-inline-end: 22px;
  }

  .popover__choice-item {
    text-align: left;
  }

  .popover--small .popover__content {
    padding: 14px 20px;
  }
}

.modal {
  --heading-color: var(--root-heading-color);
  --text-color: var(--root-text-color);
  --background: var(--root-background);
  z-index: 10;
  visibility: hidden;
  font-size: 1rem;
  transition: visibility .25s ease-in-out;
  position: fixed;
}

.modal:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 0;
}

.modal:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 0;
}

.modal[open] {
  visibility: visible;
}

.modal__overlay {
  content: "";
  opacity: 0;
  visibility: hidden;
  background: #000;
  width: 100vw;
  height: 100vh;
  transition: opacity .5s ease-in-out, visibility .5s ease-in-out;
  position: absolute;
  bottom: calc(100% - 10px);
}

.modal__overlay:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 0;
}

.modal__overlay:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 0;
}

.modal[open] > .modal__overlay {
  visibility: visible;
  opacity: .3;
}

.modal__close-button {
  z-index: 1;
  position: absolute;
  top: 24px;
}

.modal__close-button:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 24px;
}

.modal__close-button:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 24px;
}

.modal__content {
  background: rgb(var(--background));
  color: rgb(var(--text-color));
  border-radius: var(--block-border-radius);
  display: flow-root;
  position: relative;
}

@media screen and (max-width: 740px) {
  .modal {
    touch-action: manipulation;
    width: 100vw;
    transition: transform .7s cubic-bezier(.75, 0, .175, 1), visibility .7s cubic-bezier(.75, 0, .175, 1);
    bottom: 0;
    transform: translateY(100%);
  }

  .modal[open] {
    transform: translateY(0);
  }

  .modal__content {
    border-radius: 10px 10px 0 0;
    max-height: 81vh;
    overflow: hidden;
  }
}

@media screen and (min-width: 741px) {
  .modal {
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    display: flex;
    top: 0;
  }

  .modal__overlay {
    position: fixed;
    top: 0;
    bottom: auto;
  }

  .modal__content {
    opacity: 0;
    will-change: transform;
    max-height: calc(100vh - 160px);
    margin: 80px;
    transition: transform .3s cubic-bezier(.75, 0, .175, 1), opacity .3s cubic-bezier(.75, 0, .175, 1);
    overflow: auto;
    transform: scale(.8);
  }

  .modal[open] .modal__content {
    opacity: 1;
    transform: scale(1);
  }
}

.color-swatch-list {
  grid-template-columns: repeat(auto-fit, 40px);
  justify-content: flex-start;
  gap: 8px;
  display: grid;
}

.color-swatch__item {
  cursor: pointer;
  border: 3px solid rgb(var(--section-background, var(--background)));
  border-radius: var(--color-swatch-border-radius);
  -webkit-tap-highlight-color: transparent;
  background-position: center;
  background-size: cover;
  width: 40px;
  height: 40px;
  display: block;
  position: relative;
}

.color-swatch__item:before, .color-swatch__item:after {
  content: "";
  border: 2px solid rgb(var(--section-background, var(--background)));
  pointer-events: none;
  border-radius: inherit;
  position: absolute;
}

.color-swatch__item:before {
  width: calc(100% + 2px);
  height: calc(100% + 2px);
  top: -1px;
  left: -1px;
}

.color-swatch__item:after {
  border-color: rgb(var(--text-color));
  opacity: 0;
  width: calc(100% + 6px);
  height: calc(100% + 6px);
  transition: opacity .2s, transform .2s;
  top: -3px;
  left: -3px;
  transform: scale(.8);
}

.color-swatch--white .color-swatch__item:before {
  box-shadow: 0 0 0 1px rgba(var(--text-color), .3) inset;
}

.color-swatch__radio:checked + .color-swatch__item:after {
  opacity: 1;
  transform: scale(1);
}

.color-swatch-list--mini {
  grid-template-columns: repeat(auto-fit, 14px);
}

.color-swatch-list--mini .color-swatch__item  {
  width: 23px;
  height: 23px;
}

@media screen and (max-width: 741px) {
  .color-swatch-list--mini .color-swatch__item  {
    width: 20px;
    height: 20px;
  }
}

.color-swatch-list--mini .color-swatch__item:before, .color-swatch-list--mini .color-swatch__item:after {
  border-width: 1px;
}

.color-swatch.is-disabled .color-swatch__item:before {
  background: linear-gradient(to bottom right, transparent calc(50% - 1px), rgb(0 0 0) calc(50% - 1px), rgb(var(--background)) calc(50% + 1px), transparent calc(50% + 1px)) no-repeat;
}

@media screen and not (pointer: fine) {
  .color-swatch[data-tooltip]:before, .color-swatch[data-tooltip]:after {
    display: none;
  }
}

.block-swatch-list {
  flex-wrap: wrap;
  justify-content: flex-start;
  margin: -4px;
  display: flex;
}

.block-swatch__item {
  border: 1px solid rgb(var(--border-color));
  border-radius: var(--button-border-radius);
  background: rgb(var(--background));
  color: rgb(var(--text-color));
  text-align: center;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  min-width: 56px;
  margin: 4px;
  padding: 11px 18px 13px;
  transition: background .2s;
  display: block;
  position: relative;
}

.block-swatch__item:after {
  content: "";
  box-shadow: 0 0 0 1px rgb(var(--text-color)) inset, 0 0 0 1px rgb(var(--text-color));
  border-radius: var(--button-border-radius);
  opacity: 0;
  width: 100%;
  height: 100%;
  transition: opacity .2s, transform .2s;
  position: absolute;
  top: 0;
  transform: scale(.9);
}

.block-swatch__item:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):after {
  left: 0;
}

.block-swatch__item:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):after {
  right: 0;
}

.block-swatch-list--small .block-swatch__item {
  min-width: 44px;
  margin: 4px;
  padding: 4px 12px;
}

.block-swatch__radio:checked + .block-swatch__item {
  background: rgb(var(--secondary-background));
}

.block-swatch__radio:checked + .block-swatch__item:after {
  opacity: 1;
  transform: scale(1);
}

.block-swatch.is-disabled .block-swatch__item {
  color: rgba(var(--text-color), .5);
  background: linear-gradient(to bottom right, transparent calc(50% - 1px), rgb(var(--border-color)) 50%, transparent calc(50% + 1px)) no-repeat;
}

.variant-swatch-list {
  flex-wrap: wrap;
  justify-content: flex-start;
  margin: -6px;
  margin-top: 8px;
  display: flex;
}

.variant-swatch__item {
  border: 1px solid rgb(var(--border-color));
  text-align: center;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  margin: 6px;
  display: block;
  position: relative;
}

.variant-swatch__image {
  width: 50px;
}

.variant-swatch__item, .variant-swatch__image {
  border-radius: min(var(--block-border-radius), 4px);
}

.variant-swatch__item:after {
  content: "";
  box-shadow: 0 0 0 1px rgb(var(--text-color)) inset, 0 0 0 1px rgb(var(--text-color));
  border-radius: min(var(--block-border-radius), 3px);
  opacity: 0;
  width: 100%;
  height: 100%;
  transition: opacity .2s, transform .2s;
  position: absolute;
  top: 0;
  transform: scale(.9);
}

.variant-swatch__item:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):after {
  left: 0;
}

.variant-swatch__item:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):after {
  right: 0;
}

.variant-swatch__radio:checked + .variant-swatch__item:after {
  opacity: 1;
  transform: scale(1);
}

.variant-swatch.is-disabled .variant-swatch__image {
  opacity: .4;
}

.variant-swatch.is-disabled .variant-swatch__item:before {
  content: "";
  background: linear-gradient(to bottom right, transparent calc(50% - 1px), rgb(var(--border-color)) 50%, transparent calc(50% + 1px)) no-repeat;
  z-index: 1;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
}

.variant-swatch.is-disabled .variant-swatch__item:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  left: 0;
}

.variant-swatch.is-disabled .variant-swatch__item:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  right: 0;
}

@media screen and (min-width: 741px) {
  .variant-swatch-list {
    margin: -6px;
  }

  .variant-swatch__item {
    margin: 6px;
  }

  .variant-swatch__image {
    width: 72px;
  }
}

:is(.color-swatch__radio:focus-visible + label, .block-swatch__radio:focus-visible + label, .variant-swatch__radio:focus-visible + label) {
  outline: auto 5px -webkit-focus-ring-color;
}

.shopify-model-viewer-ui.shopify-model-viewer-ui .shopify-model-viewer-ui__controls-area {
  background: rgb(var(--background));
  border-color: rgba(var(--text-color), .25);
}

.shopify-model-viewer-ui.shopify-model-viewer-ui .shopify-model-viewer-ui__button {
  color: rgb(var(--text-color));
}

.shopify-model-viewer-ui.shopify-model-viewer-ui .shopify-model-viewer-ui__button--control:hover {
  color: rgba(var(--text-color), .55);
}

.shopify-model-viewer-ui.shopify-model-viewer-ui .shopify-model-viewer-ui__button--control:active, .shopify-model-viewer-ui.shopify-model-viewer-ui .shopify-model-viewer-ui__button--control.focus-visible:focus {
  color: rgba(var(--text-color), .55);
  background: rgba(var(--text-color), .25);
}

.shopify-model-viewer-ui.shopify-model-viewer-ui .shopify-model-viewer-ui__button--control:not(:last-child):after {
  border-color: rgba(var(--text-color), .25);
}

.shopify-model-viewer-ui.shopify-model-viewer-ui .shopify-model-viewer-ui__button--poster {
  background: rgb(var(--background));
  border-color: rgba(var(--text-color), .25);
}

.shopify-model-viewer-ui.shopify-model-viewer-ui .shopify-model-viewer-ui__button--poster:hover, .shopify-model-viewer-ui.shopify-model-viewer-ui .shopify-model-viewer-ui__button--poster:focus {
  color: rgba(var(--text-color), .55);
}

.model-wrapper {
  padding-block-end: 100%;
  display: block;
  position: relative;
}

.model-wrapper .shopify-model-viewer-ui, .model-wrapper model-viewer {
  opacity: 1;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
}

.model-wrapper .shopify-model-viewer-ui:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):after {
  left: 0;
}

.model-wrapper model-viewer:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):after {
  left: 0;
}

.model-wrapper .shopify-model-viewer-ui:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):after {
  right: 0;
}

.model-wrapper model-viewer:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):after {
  right: 0;
}

.video-wrapper {
  display: block;
  position: relative;
}

.video-wrapper:after {
  content: "";
  pointer-events: none;
  padding-block-end: 56.25%;
  display: block;
}

.video-wrapper iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
}

.video-wrapper iframe:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):after {
  left: 0;
}

.video-wrapper iframe:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):after {
  right: 0;
}

.video-wrapper--cover {
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.video-wrapper--cover:after {
  display: none;
}

.video-wrapper--cover iframe {
  width: var(--video-width, 100%);
  height: var(--video-height, 100%);
  position: absolute;
  transform: translate(-50%, -50%);
  top: 50% !important;
  left: 50% !important;
  right: auto !important;
}

@media (min-aspect-ratio: 16 / 9) {
  .video-wrapper--cover iframe {
    --video-height: 56.25vw;
  }
}

@media (max-aspect-ratio: 16 / 9) {
  .video-wrapper--cover iframe {
    --video-width: 177.78vh;
    height: calc(var(--video-height)  + 200px);
  }
}

.video-wrapper--inert iframe {
  pointer-events: none;
}

.video-wrapper--native {
  aspect-ratio: var(--aspect-ratio);
}

.video-wrapper--native video {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.video-wrapper--native:after {
  display: none;
}

@supports not (aspect-ratio: 1) {
  .video-wrapper--native video {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
  }

  .video-wrapper--native:after {
    padding-bottom: calc(100% / var(--aspect-ratio));
    display: block;
  }
}

.video-wrapper__poster {
  cursor: pointer;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  display: flex;
  position: absolute;
  top: 0;
  left: 0;
}

.video-wrapper[autoplay] .video-wrapper__poster {
  cursor: default;
}

.video-wrapper__poster, .video-wrapper iframe {
  opacity: 1;
  visibility: visible;
  transition: opacity .25s ease-in-out, visibility .25s ease-in-out;
}

.video-wrapper__poster-content {
  position: absolute;
}

.video-wrapper__poster-image {
  object-fit: cover;
  object-position: center;
  width: 100%;
  height: 100%;
}

@keyframes playButtonRipple {
  0% {
    box-shadow: 0 0 0 0 rgb(var(--play-button-background)), 0 0 0 0 rgb(var(--play-button-background));
  }

  100% {
    box-shadow: 0 0 0 9px rgba(var(--play-button-background), 0), 0 0 0 18px rgba(var(--play-button-background), 0);
  }
}

.video-wrapper__play-button {
  border-radius: 100%;
}

.video-wrapper__play-button--ripple {
  animation: 1.4s ease-in-out infinite playButtonRipple;
}

.video-wrapper__play-button:not(:only-child) {
  margin-block-end: 32px;
}

@media screen and (min-width: 1000px) {
  @keyframes playButtonRipple {
    0% {
      box-shadow: 0 0 0 0 rgb(var(--play-button-background)), 0 0 0 0 rgb(var(--play-button-background));
    }

    100% {
      box-shadow: 0 0 0 17px rgba(var(--play-button-background), 0), 0 0 0 32px rgba(var(--play-button-background), 0);
    }
  }

  .video-wrapper__play-button:not(:only-child) {
    margin-block-end: 40px;
  }

  .video-wrapper__play-button--large svg {
    width: 104px;
    height: 104px;
  }
}

.product-facet {
  margin-block-start: 24px;
  margin-block-end: 48px;
  display: block;
}

.product-facet__filters-header {
  border-bottom: 1px solid rgb(var(--border-color));
  padding-block-end: 24px;
}

.product-facet__filters:not(.drawer) {
  padding-block-end: 24px;
  display: block;
}

.product-facet__active-list {
  margin-block-start: -6px;
  margin-block-end: 18px;
}

.product-facet__filter-item + .product-facet__filter-item {
  border-top: 1px solid rgb(var(--border-color));
}

.product-facet__filter-item .collapsible__content {
  padding-inline-start: 8px;
}

.product-facet__filter-item:not(:last-child) .collapsible__content {
  margin-block-end: 25px;
}

.product-facet__submit {
  margin-block-start: 40px;
}

.product-facet__active-count {
  margin-inline-start: 8px;
}

.product-facet__sort-by-title {
  padding-inline-end: 7px;
}

.product-facet__product-list {
  margin-block-start: calc(var(--container-gutter) / 2);
}

.product-facet__meta-bar {
  justify-content: center;
  align-items: flex-start;
  margin-block-end: 16px;
  display: flex;
}

.product-facet__meta-bar-item {
  align-items: center;
  display: flex;
}

.product-facet__meta-bar-item .icon--filters, .mobile-toolbar__item .icon--filters {
  margin-inline-end: 13px;
}

@media screen and (max-width: 740px) {
  .product-facet__active-list {
    margin-inline-start: -18px;
    margin-inline-end: -18px;
  }

  .mobile-toolbar__item--filters.has-filters .mobile-toolbar__item-label:after {
    content: "";
    background: currentColor;
    border-radius: 6px;
    width: 6px;
    height: 6px;
    position: absolute;
  }
}

@media screen and (max-width: 999px) {
  .product-facet__filters:not(.drawer) {
    display: none;
  }
}

@media screen and (min-width: 741px) {
  .product-facet {
    margin-block-start: 40px;
    margin-block-end: 80px;
  }

  .product-facet__active-list {
    margin-block-start: 18px;
    margin-block-end: 0;
  }

  .drawer .product-facet__active-list {
    margin-block-start: 26px;
  }

  .product-facet__meta-bar {
    margin-block-end: 24px;
  }

  .product-facet__meta-bar-item--filter {
    margin-inline-end: 44px;
  }
}

@media screen and (min-width: 1000px) {
  .product-facet {
    justify-content: flex-start;
    display: flex;
  }

  .product-facet__aside {
    flex: none;
    width: 230px;
    margin-inline-end: 40px;
  }

  .product-facet__aside-inner {
    top: calc(var(--header-height, 0px) * var(--enable-sticky-header)  + var(--announcement-bar-height, 0px) * var(--enable-sticky-announcement-bar)  + 24px);
    display: block;
    position: sticky;
  }

  .product-facet__main {
    flex: 1 0 0;
  }

  .product-facet__filters:not(.drawer) .drawer__content {
    padding: 0;
    overflow: visible;
  }

  .product-facet__meta-bar {
    justify-content: flex-start;
  }

  .product-facet__meta-bar-item:last-child {
    margin-inline-start: auto;
  }
}

@media screen and (min-width: 1200px) {
  .product-facet__aside {
    width: 265px;
  }
}

.account__block-list {
  row-gap: 24px;
  display: grid;
}

.account__block-item:empty {
  display: none;
}

.account__back-button {
  z-index: 1;
  justify-content: center;
  align-items: center;
  margin-block-start: 30px;
  display: inline-flex;
}

.account__back-button svg {
  margin-inline-end: 14px;
}

@media screen and (min-width: 741px) {
  .account__block-list {
    row-gap: 32px;
  }
}

@media screen and (min-width: 1000px) {
  .account__back-button {
    margin-block-start: 48px;
    position: absolute;
  }

  .account__back-button:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    left: var(--container-outer-width);
  }

  .account__back-button:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    right: var(--container-outer-width);
  }
}

.account__order-table-item:hover .link--animated:after {
  transform-origin: var(--transform-origin-start);
  transform: scale(1);
}

.account__order-list-item + .account__order-list-item {
  border-top: 1px solid rgb(var(--border-color));
  margin-block-start: 24px;
  padding-block-start: 24px;
}

.account__order-item-info {
  grid-template-columns: 1fr 1fr;
  gap: 24px 64px;
  margin-block-start: 16px;
  margin-block-end: 16px;
  display: grid;
}

.account__order-item-block .heading {
  margin-block-end: 8px;
}

.account__order-date {
  margin-block-start: -6px;
  display: block;
}

@media screen and (max-width: 740px) {
  .account--order .page-header {
    text-align: start;
  }
}

@media screen and (min-width: 741px) {
  .account__order-date {
    margin-block-start: -18px;
  }

  .account__order-addresses .account__addresses-list {
    margin-block-start: 24px;
  }
}

.account__addresses-list {
  border: 1px solid rgb(var(--border-color));
  display: grid;
}

.account__address {
  flex-direction: column;
  min-height: 200px;
  padding: 24px;
  display: flex;
}

.account__address--auto {
  min-height: 0 !important;
}

.account__address:not(:first-child) {
  border-block-start: 1px solid rgb(var(--border-color));
}

.account__address--empty {
  justify-content: center;
  align-items: center;
}

.account__address--empty svg {
  margin-block-end: 16px;
}

.account__address-details {
  margin-block-start: 10px;
}

.account__address--empty {
  background: rgb(var(--secondary-background));
}

.account__address-actions {
  grid-auto-flow: column;
  justify-content: flex-start;
  gap: 20px;
  margin-block-start: auto;
  padding-block-start: 10px;
  display: grid;
}

@media screen and (min-width: 741px) {
  .account__addresses-list {
    border: none;
    grid-template-columns: repeat(auto-fit, 50%);
    justify-content: center;
  }

  .account__address {
    border-block: 1px solid rgb(var(--border-color));
    border-inline-end: 1px solid rgb(var(--border-color));
  }
}

@media screen and (min-width: 741px) and (max-width: 999px) {
  .account__address:nth-child(2n) ~ .account__address {
    border-block-start: none;
  }

  .account__address:nth-child(odd) {
    border-inline-start: 1px solid rgb(var(--border-color));
  }
}

@media screen and (min-width: 1000px) {
  .account__addresses-list:not(.account__addresses-list--wide) {
    grid-template-columns: repeat(auto-fit, 33.3333%);
  }

  .account__address:nth-child(3n) ~ .account__address {
    border-block-start: none;
  }

  .account__address:nth-child(3n+1) {
    border-inline-start: 1px solid rgb(var(--border-color));
  }
}

.shopify-section--header ~ .shopify-section--announcement-bar {
  top: calc(var(--enable-sticky-announcement-bar) * var(--enable-sticky-header, 0) * var(--header-height, 0px)) !important;
}

.announcement-bar {
  background: rgb(var(--section-background));
  justify-content: center;
  align-items: center;
  padding-inline-start: 20px;
  padding-inline-end: 20px;
  display: flex;
}

.announcement-bar--multiple {
  justify-content: space-between;
}

.announcement-bar__list {
  padding-inline-start: 10px;
  padding-inline-end: 10px;
}

.announcement-bar__item {
  display: block;
}

.announcement-bar__item[hidden] {
  visibility: hidden;
  height: 0;
}

.announcement-bar__message {
  text-align: center;
  padding-block-start: 12px;
  padding-block-end: 12px;
}

.announcement-bar__message .link {
  margin-inline-start: 4px;
}

.announcement-bar__message p {
  font-weight: 500;
  font-size: 13px;
  letter-spacing: 0.3px
}

@media screen and (max-width:1100px) {
  .announcement-bar__message p {
  font-size: 11px;
}
}

.announcement-bar__close-button {
  position: absolute;
  top: var(--container-gutter);
}

.announcement-bar__close-button:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: var(--container-gutter);
}

.announcement-bar__close-button:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: var(--container-gutter);
}

.announcement-bar__content {
  z-index: 5;
  display: block;
}

.announcement-bar__content[hidden] {
  visibility: hidden;
}

.announcement-bar__content-inner {
  background: rgb(var(--section-background));
}

.announcement-bar__content-overlay {
  content: "";
  opacity: .3;
  z-index: -1;
  background: #000;
  width: 100%;
  height: 100vh;
  transition: opacity .5s ease-in-out;
  position: absolute;
  bottom: calc(100% - 10px);
}

.announcement-bar__content-overlay:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 0;
}

.announcement-bar__content-overlay:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 0;
}

.announcement-bar__content[hidden] .announcement-bar__content-overlay {
  opacity: 0;
}

@media screen and (max-width: 740px) {
  .announcement-bar__content {
    width: 100%;
    transition: visibility .6s linear, opacity .6s cubic-bezier(.75, 0, .175, 1), transform .6s cubic-bezier(.75, 0, .175, 1);
    position: fixed;
    bottom: 0;
  }

  .announcement-bar__content:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    left: 0;
  }

  .announcement-bar__content:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    right: 0;
  }

  .announcement-bar__content[hidden] {
    transform: translateY(100%);
  }

  .announcement-bar__content-inner {
    border-radius: 10px 10px 0 0;
    flex-direction: column;
    max-height: 81vh;
    display: flex;
    overflow: hidden;
  }

  .announcement-bar__content-image {
    flex: none;
  }

  .announcement-bar__content-text-wrapper {
    text-align: center;
    padding: 32px 48px;
    overflow: auto;
  }

  .announcement-bar__content.has-image .announcement-bar__close-button {
    color: #fff;
  }

  @supports (padding: max(0px)) {
    .announcement-bar__content-text-wrapper {
      padding-block-end: max(32px, env(safe-area-inset-bottom, 0px)  + 32px);
    }
  }
}

@media screen and (min-width: 741px) {
  .announcement-bar {
    padding-inline: var(--container-gutter);
    justify-content: center;
    position: relative;
  }

  .announcement-bar__list {
    max-width: var(--container-max-width);
    padding-inline-start: 40px;
    padding-inline-end: 40px;
  }

  .announcement-bar__content {
    box-shadow: 0 -1px rgba(var(--text-color), .2);
    width: 100%;
    transition: visibility .5s linear, box-shadow .5s ease-in-out;
    position: absolute;
    top: 100%;
  }

  .announcement-bar__content:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    left: 0;
  }

  .announcement-bar__content:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    right: 0;
  }

  .announcement-bar__content[hidden] {
    box-shadow: none;
  }

  .announcement-bar__content-overflow {
    height: calc(100vh - var(--announcement-bar-height));
    overflow: hidden;
  }

  .announcement-bar__content-inner {
    background: rgb(var(--section-background));
    opacity: 1;
    grid-auto-columns: 1fr;
    align-items: center;
    max-height: 80vh;
    transition: opacity .5s cubic-bezier(.75, 0, .175, 1), transform .5s cubic-bezier(.75, 0, .175, 1);
    display: grid;
    overflow: hidden;
    transform: translateY(0);
  }

  .announcement-bar__content[hidden] .announcement-bar__content-inner {
    opacity: 0;
    transform: translateY(-100%);
  }

  .announcement-bar__content-overlay {
    top: 0;
    bottom: auto;
  }

  .announcement-bar__content-image, .announcement-bar__content-text-wrapper {
    max-height: inherit;
    grid-row: 1;
  }

  .announcement-bar__content-image {
    object-fit: cover;
    object-position: center;
    height: 100%;
    max-height: max-content;
  }

  .announcement-bar__content-text-wrapper {
    padding: 80px var(--container-gutter);
    overscroll-behavior: contain;
    overflow: auto;
  }

  .announcement-bar__content-text {
    text-align: center;
    max-width: 420px;
    margin-inline-start: auto;
    margin-inline-end: auto;
  }

  .announcement-bar__message {
    min-width: 495px;
    max-width: 1000px;
  }
}

.article__header {
  background: rgb(var(--section-header-background));
  display: block;
  position: relative;
}

.article__header-content {
  padding: 40px var(--container-gutter);
  color: rgb(var(--text-color));
  margin-inline-start: auto;
  margin-inline-end: auto;
}

.article__image-wrapper {
  overflow: hidden;
}

@media screen and (min-width: 1000px) {
  .article__header {
    flex-direction: row-reverse;
    align-items: center;
    display: flex;
  }

  .article__header-content {
    padding-block-start: 72px;
    padding-block-end: 72px;
  }

  .article__header .breadcrumb:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    left: var(--container-outer-margin);
  }

  .article__header .breadcrumb:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    right: var(--container-outer-margin);
  }

  .article__image-wrapper {
    flex: none;
    align-self: stretch;
  }

  .article__image-wrapper--tall {
    width: 37.5%;
  }

  .article__image-wrapper--square {
    width: 50%;
  }

  .article__image {
    object-fit: cover;
    object-position: center;
    width: 100%;
    height: 100%;
  }

  .article__image-wrapper--tall + .article__header-content {
    padding-inline-end: 100px;
  }

  .article__header-content:only-child {
    text-align: center;
    max-width: 668px;
    padding-inline-start: 0;
    padding-inline-end: 0;
  }
}

@media screen and (min-width: 1400px) {
  .article__header-content {
    padding-inline-start: calc(var(--container-outer-margin)  + var(--grid-column-width)  + var(--grid-gap));
    padding-inline-end: 70px;
  }

  .article__image-wrapper--tall + .article__header-content {
    padding-inline-end: 160px;
  }
}

.article__nav {
  border-bottom: 1px solid rgb(var(--border-color));
  background: rgb(var(--background));
  z-index: 1;
  opacity: 0;
  visibility: hidden;
  width: 100%;
  transition: transform .3s, opacity .3s, visibility .3s;
  display: block;
  position: fixed;
  top: calc(var(--enable-sticky-header) * var(--header-height, 0px)  + var(--announcement-bar-height, 0px) * var(--enable-sticky-announcement-bar, 0));
  transform: translateY(-100%);
}

.article__nav.is-visible {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.article__nav:after {
  content: "";
  transform-origin: var(--transform-origin-start);
  transform: scaleX(var(--transform));
  background: currentColor;
  width: 100%;
  height: 2px;
  position: absolute;
  bottom: 0;
  box-shadow: 0 1px;
}

.article__nav:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):after {
  left: 0;
}

.article__nav:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):after {
  right: 0;
}

.article__nav-wrapper {
  align-items: center;
  padding: 18px 0;
  display: flex;
  position: relative;
}

.article__nav-item {
  align-items: center;
  display: flex;
}

.article__nav-item-title {
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
  max-width: 200px;
  overflow: hidden;
}

.article__nav-item-label {
  margin-inline-end: 10px;
}

.article__nav-item--next .article__nav-arrow {
  margin-inline-start: 20px;
}

.article__nav-item--prev .article__nav-arrow {
  margin-inline-end: 20px;
}

.article__reading-time {
  flex-shrink: 0;
}

@media screen and (max-width: 740px) {
  .article__nav-item {
    will-change: transform;
    justify-content: center;
    width: 100%;
    transition: transform .2s ease-in-out, opacity .2s ease-in-out, visibility .2s ease-in-out;
  }

  .article__nav-item--next {
    opacity: 0;
    visibility: hidden;
    align-items: baseline;
    transition-delay: 0s;
    position: absolute;
    transform: translateY(-6px);
  }

  .article__nav-item--next:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    left: 0;
  }

  .article__nav-item--next:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    right: 0;
  }

  .article__nav-item--current {
    transition-delay: .15s;
  }

  .article__nav-arrow {
    align-self: center;
    margin-inline-start: auto;
  }

  .article__nav--show-next .article__nav-item--current {
    opacity: 0;
    transition-delay: 0s;
    transform: translateY(6px);
  }

  .article__nav--show-next .article__nav-item--next {
    opacity: 1;
    visibility: visible;
    transition-delay: .15s;
    transform: translateX(0);
  }
}

@media screen and (min-width: 741px) {
  .article__nav-wrapper {
    justify-content: center;
  }

  .article__nav-item--prev, .article__nav-item--next {
    position: absolute;
  }

  .article__nav-item--prev:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    left: 0;
  }

  .article__nav-item--prev:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    right: 0;
  }

  .article__nav-item--next:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    right: 0;
  }

  .article__nav-item--next:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    left: 0;
  }

  .article__nav-item-title {
    max-width: 225px;
  }

  .article__nav-item--prev .article__nav-item-title, .article__nav-item--next .article__nav-item-title {
    opacity: 0;
    will-change: transform;
    transition: transform .2s ease-in-out, opacity .2s ease-in-out;
    transform: translateY(-6px);
  }

  .article__nav-item:hover .article__nav-item-title, .article__nav-item:focus .article__nav-item-title {
    opacity: 1;
    transform: translateY(0);
  }
}

@media screen and (min-width: 1000px) {
  .article__nav-wrapper {
    padding: 27px 0;
  }
}

@media screen and (min-width: 1200px) {
  .article__nav-item-title {
    max-width: 300px;
  }
}

.article {
  margin: 40px 0;
}

.article__inner {
  flex-direction: column-reverse;
  justify-content: center;
  display: flex;
  position: relative;
}

.article__info {
  border-top: 1px solid rgb(var(--border-color));
  gap: 14px;
  width: 100%;
  margin-block-start: 40px;
  padding-block-start: 24px;
  display: grid;
}

.article__meta-item + .article__meta-item:before {
  content: "";
  vertical-align: 2px;
  background: rgb(var(--text-color));
  width: 4px;
  height: 4px;
  margin-inline-start: 12px;
  margin-inline-end: 12px;
  display: inline-block;
}

.article__tags {
  align-items: center;
  display: flex;
}

.article__tags-item {
  margin-inline-end: 12px;
  display: inline-block;
}

.article__tags-label {
  margin-inline-end: 15px;
}

.article__share {
  align-items: center;
  width: max-content;
  display: flex;
}

.article__info {
  max-width: max-content;
}

.article__share-button-list {
  grid-auto-flow: column;
  justify-content: flex-start;
  align-items: center;
  gap: 26px;
  margin-inline-start: 15px;
  padding: 0;
  list-style: none;
  display: grid;
}

.article__comments-count {
  vertical-align: top;
  display: inline-flex;
}

.article__comments-count svg {
  margin-inline-end: 8px;
  position: relative;
  top: 1px;
}

@media screen and (min-width: 1000px) {
  .article {
    margin-block-start: 80px;
    margin-block-end: 80px;
  }

  .article__inner {
    align-items: center;
  }

  .article__content, .article__info {
    flex-grow: 1;
    max-width: 668px;
  }
}

@media screen and (min-width: 1200px) {
  .article__inner {
    flex-direction: column;
    min-height: 200px;
  }

  .article__info {
    gap: 28px;
    width: 170px;
    margin-block-start: 0;
    padding-block-start: 30px;
    position: absolute;
    top: 0;
  }

  .article__info:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    left: 0;
  }

  .article__info:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    right: 0;
  }

  .article__meta {
    justify-content: flex-start;
    gap: 8px;
    display: grid;
  }

  .article__meta-item:before {
    display: none !important;
  }

  .article__tags-label {
    margin-block-end: 10px;
  }

  .article__share, .article__tags {
    display: block;
  }

  .article__share-label {
    margin-block-end: 16px;
    display: block;
  }

  .article__share-button-list {
    margin-inline-start: 6px;
  }
}

@media screen and (min-width: 1400px) {
  .article__inner {
    margin-inline: calc(var(--grid-column-width)  + var(--grid-gap));
  }

  .article__info {
    width: 185px;
  }
}

.article__prev-next {
  background: rgb(var(--secondary-background));
}

@media screen and (min-width: 741px) {
  .article__prev-next .article-list {
    grid-template-columns: none;
    grid-auto-columns: 310px;
    justify-content: center;
  }

  .article__prev-next .article-item {
    width: auto !important;
  }
}

.article__comment-list-heading {
  margin-block-end: 30px;
}

.article-comment {
  background: rgb(var(--secondary-background));
  border-radius: var(--block-border-radius-reduced);
  padding: 24px;
}

.article-comment + .article-comment {
  margin-block-start: 16px;
}

.article-comment__meta {
  align-items: center;
  display: flex;
}

.article-comment__gravatar {
  border-radius: 100%;
  width: 40px;
  margin-inline-end: 16px;
}

.article-comment__author {
  margin-block-end: 0;
}

.article-comment__date {
  margin-block-start: 2px;
  margin-block-end: 4px;
  display: block;
}

.article-comment__content {
  margin-block-start: 15px;
}

.article__comment-list + .article__comment-form {
  margin-block-start: 48px;
}

.article__comment-form-title {
  margin-block-start: 0;
}

@media screen and (min-width: 741px) {
  .article-comment {
    padding: 32px;
  }

  .article-comment__gravatar {
    align-self: flex-start;
    width: 48px;
    margin-inline-end: 21px;
  }

  .article__comment-list-heading {
    margin-block-end: 34px;
  }

  .article__comment-list + .article__comment-form {
    margin-block-start: 64px;
  }
}

@media screen and (min-width: 1000px) {
  .article__comment-box {
    max-width: 748px;
    margin-inline-start: auto;
    margin-inline-end: auto;
  }
}

.article-list {
  --article-list-row-gap: 40px;
  --article-list-column-gap: var(--container-gutter);
  gap: var(--article-list-row-gap) var(--article-list-column-gap);
  display: grid;
}

.article-list--scrollable {
  grid-auto-flow: column;
}

.article-item {
  width: 100%;
}

.article-item__image-container {
  border-radius: var(--block-border-radius-reduced);
  z-index: 0;
  margin-block-end: 20px;
  display: block;
  position: relative;
  overflow: hidden;
}

.article-item__arrow {
  opacity: 0;
  visibility: hidden;
  border: none;
  transition: opacity .15s ease-in-out, visibility .15s ease-in-out, transform .15s ease-in-out;
  position: absolute;
  bottom: 20px;
  transform: scale(.5);
}

.article-item__arrow:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 20px;
}

.article-item__arrow:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 20px;
}

.article-item--horizontal {
  align-items: center;
  display: flex;
}

.article-item--horizontal .article-item__image-container {
  border-radius: calc(var(--block-border-radius-reduced) / 2);
  z-index: 0;
}

.article-item--horizontal .article-item__arrow {
  bottom: 12px;
}

.article-item--horizontal .article-item__arrow:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 12px;
}

.article-item--horizontal .article-item__arrow:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 12px;
}

.article-item--featured .article-item__arrow {
  bottom: 32px;
}

.article-item--featured .article-item__arrow:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 32px;
}

.article-item--featured .article-item__arrow:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 32px;
}

.article-item__category {
  color: rgba(var(--text-color), .7);
  width: max-content;
}

.article-item__excerpt {
  margin-block-start: -4px;
}

.article-list--section .article-item:only-child {
  max-width: 668px;
}

@media screen and (max-width: 999px) {
  .article-list--scrollable .article-item:not(:only-child) {
    scroll-snap-align: center;
    scroll-snap-stop: always;
    width: 81vw;
  }
}

@media screen and (min-width: 741px) and (max-width: 999px) {
  .article-list--has-four {
    grid-template-columns: repeat(2, 1fr);
  }

  .article-list--scrollable .article-item:not(:only-child) {
    width: 52vw;
  }
}

@media screen and (min-width: 741px) {
  .article-list--stacked {
    grid-template-columns: repeat(auto-fit, calc(100% / 3 - var(--article-list-column-gap) * (2 / 3)));
    justify-content: safe center;
  }
}

@media screen and (min-width: 1000px) {
  .article-list {
    --article-list-row-gap: 48px;
    --article-list-column-gap: 48px;
  }

  .article-list + .pagination {
    margin-block-start: 64px;
  }

  .article-list--section {
    grid-template-columns: repeat(auto-fit, calc(100% / 3 - var(--article-list-column-gap) * (2 / 3)));
    justify-content: safe center;
  }

  .article-item__image-container {
    margin-block-end: 24px;
  }

  .article-item__excerpt {
    margin-block-start: -8px;
  }

  .article-list--collage {
    grid-template-columns: 1.37731fr 1fr;
    column-gap: 48px;
  }

  .article-item--featured .article-item__image-container {
    margin-block-end: 32px;
  }

  .article-list__secondary-list {
    grid-auto-rows: max-content;
    row-gap: 48px;
    display: grid;
  }

  .article-list__secondary-list .article-item__image-container {
    flex: none;
    width: 42%;
    margin-block-end: 0;
    margin-inline-end: 32px;
  }
}

@media screen and (min-width: 1200px) {
  .article-list {
    margin-inline: calc(var(--grid-column-width)  + var(--grid-gap));
  }

  .article-list--collage {
    column-gap: 70px;
  }
}

@media screen and (pointer: fine) {
  .article-item:hover .article-item__arrow {
    visibility: visible;
    opacity: 1;
    transform: scale(1);
  }
}

.checkout-button {
  justify-content: center;
  align-items: center;
  display: flex;
  position: relative;
}

.checkout-button__lock {
  position: absolute;
}

.checkout-button__lock:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 10px;
}

.checkout-button__lock:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 18px;
}

.checkout-button .square-separator {
  margin-inline-start: 11px;
  margin-inline-end: 12px;
}

@media screen and (min-width: 741px) {
  .checkout-button__lock:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    left: 20px;
  }

  .checkout-button__lock:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    right: 20px;
  }
}

.discount-badge {
  font-family: var(--text-font-family);
  font-style: var(--text-font-style);
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.3px;
  background: #3a9d5f;
  color: #ffffff;
  align-items: center;
  padding: 4px 8px;
  font-size: 9px;
  display: inline-flex;
  border-radius: 15px;
  white-space: nowrap;
}

.discount-badge svg {
  margin-inline-end: 8px;
  position: relative;
}

.shipping-bar {
  text-align: center;
  width: 100%;
  margin-block-end: 4px;
  margin-inline-start: auto;
  margin-inline-end: auto;
  display: block;
  background: #F7F9F7;
  padding: 10px 0px;
}

@media screen and (max-width: 1000px) {
  .shipping-bar__text {
    font-size: 0.8em
  }
}

.shipping-bar__text {
  display: block;
  font-weight:500;
  padding: 0px 3px;
  font-size:0.9em
}

.shipping-bar__progress {
  border: 1px solid #9d9d9d;
  border-radius: 4px;
  height: 6px;
  margin-block-start: 6px;
  display: block;
  position: relative;
  margin: 8px 20px;
}

.shipping-bar__progress:after {
  content: "";
  transform: scaleX(var(--progress));
  transform-origin: var(--transform-origin-start);
  background: #3a9d5f;
  transition: transform .2s;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}

.shipping-bar--large {
  max-width: 392px;
}

@media screen and (min-width: 741px) {
  .shipping-bar {
    margin-block-end: 8px;
  }

  .shipping-bar__progress {
    height: 7px;
    margin-block-start: 8px;
  }

  .shipping-bar--large .shipping-bar__progress {
    margin-block-start: 16px;
  }
}

.line-item {
  display: flow-root;
  padding: 0px 30px;
}

@media screen and (max-width: 741px) {
  .line-item {
    padding: 0px 20px;
  }
}

.line-item__content-wrapper {
  margin-block-start: 20px;
  display: flex;
  position: relative;
}

.line-item--centered .line-item__content-wrapper {
  align-items: center;
}

.line-item__image-wrapper {
  flex: none;
  align-self: flex-start;
  width: 80px;
  margin-inline-end: 13px;
  display: block;
  position: relative;
  padding-top: 5px;
}

.line-item__image {
  border-radius: min(var(--block-border-radius), 4px);
}

.line-item__loader {
  background: rgb(var(--root-background));
  color: rgb(var(--root-text-color));
  border-radius: 32px;
  justify-content: center;
  align-items: center;
  width: 32px;
  height: 32px;
  transition: opacity .2s ease-in-out, transform .2s ease-in-out, visibility .2s ease-in-out;
  display: flex;
  position: absolute;
  top: calc(50% - 16px);
}

.line-item__loader:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: calc(50% - 16px);
}

.line-item__loader:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: calc(50% - 16px);
}

.line-item__loader[hidden] {
  opacity: 0;
  visibility: hidden;
  transform: scale(.4);
}

.line-item__quantity {
  margin-block-start: 8px;
  display: block;
}

.line-item__discount-list + .line-item__quantity {
  margin-block-start: 12px;
}

.line-item__remove-button {
  margin-inline-start: 12px;
}

.line-item__discount-list {
  flex-direction: column;
  align-items: flex-start;
  margin-block-start: 8px;
  display: flex;
}

.line-item__discount-badge:not(:last-child) {
  margin-block-end: 4px;
}

@media screen and (min-width: 741px) {
  .line-item__content-wrapper {
    margin-block-start: 24px;
  }

  .line-item__image-wrapper {
    width: 100px;
  }

  .line-item__quantity {
    vertical-align: top;
    margin-block-start: 14px;
  }

  .line-item__price-list-container {
    text-align: right;
    vertical-align: top;
    flex-shrink: 0;
    margin-inline-start: auto;
    padding-inline-start: 30px;
    line-height: 1.5;
    padding-top: 14px;
  }

  .line-item__quantity--block .line-item__remove-button {
    margin-block-start: 10px;
    margin-inline-start: 0;
    display: block;
  }

  .line-item__discount-list {
    margin-block-start: 14px;
  }
}

@media screen and (min-width: 741px) {
  .line-item__fulfillment {
    margin-inline-start: 116px;
  }
}

.line-item-table {
  margin-block-end: 40px;
}

.line-item-table .line-item {
  display: table-row;
}

.line-item-table .line-item__content-wrapper {
  margin-block-start: 0;
}

@media screen and (max-width: 740px) {
  .line-item-table {
    table-layout: fixed;
  }

  .line-item-table__list .line-item:first-child .line-item__product {
    padding-block-start: 0;
  }

  .line-item-table__list .line-item__product {
    width: 100%;
    padding-inline-end: 0;
  }

  .line-item-table__footer {
    display: table-row;
  }

  .line-item-table__footer td:nth-child(2) {
    width: 100%;
    padding-inline-start: 0;
  }
}

@media screen and (min-width: 741px) {
  .line-item-table__list .line-item__quantity {
    margin-block-start: 0;
  }
}

.mini-cart__discount-list {
  gap: 10px;
  margin-block-end: 8px;
  display: grid;
}

.mini-cart__discount {
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.mini-cart__discount-badge {
  margin-inline-end: 14px;
}

.mini-cart__actions {
  flex-wrap: wrap;
  justify-content: space-between;
  margin-block-end: 14px;
  display: flex;
}

.mini-cart__order-note {
  background: rgb(var(--background));
  padding: var(--container-gutter);
  z-index: 1;
  visibility: hidden;
  opacity: 0;
  width: 100%;
  transition: visibility .25s ease-in-out, opacity .25s ease-in-out, transform .25s ease-in-out;
  display: block;
  position: absolute;
  bottom: 0;
  transform: translateY(100%);
}

.mini-cart__order-note:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 0;
}

.mini-cart__order-note:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 0;
}

.mini-cart__order-note[open] {
  visibility: visible;
  opacity: 1;
  transform: translateY(0);
}

.mini-cart__order-note-title {
  margin-block-end: 24px;
}

@media screen and (max-width: 740px) {
  .mini-cart__actions {
    flex-direction: column;
    align-items: flex-start;
  }

  .mini-cart__actions > :first-child:not(:only-child) {
    margin-block-end: 7px;
  }

  .mini-cart__order-note {
    width: 100vw;
  }

  .mini-cart__order-note:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    left: -11vw;
  }

  .mini-cart__order-note:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    right: -11vw;
  }

  @supports (padding: max(0px)) {
    .mini-cart__order-note {
      padding-block-end: max(24px, env(safe-area-inset-bottom, 0px)  + 24px);
    }
  }
}

@media screen and (min-width: 741px) {

  .mini-cart__discount {
    justify-content: flex-end;
  }

  .mini-cart__actions {
    margin-block-end: 26px;
  }
}

.mini-cart__recommendations:not([hidden]) {
  display: block;
}

.mini-cart__recommendations-inner {
  margin-block-start: 24px;
  padding: 16px var(--container-gutter);
  background: rgb(var(--secondary-background));
}

.mini-cart__recommendations-heading {
  margin-block-start: 0 !important;
}

.mini-cart__recommendations .product-item-meta__title {
  white-space: nowrap;
  text-overflow: ellipsis;
  max-width: 100%;
  overflow: hidden;
}

@media screen and (max-width: 999px) {
  .mini-cart__recommendations-list {
    grid-gap: var(--grid-gap);
    grid-auto-columns: minmax(64vw, 1fr);
    grid-auto-flow: column;
    display: grid;
  }

  .mini-cart__recommendations .product-item {
    scroll-snap-align: start;
    scroll-snap-stop: always;
    scroll-margin: var(--container-gutter);
    flex-direction: row;
    align-items: center;
    display: flex;
  }

  .mini-cart__recommendations .product-item__image-wrapper {
    flex: none;
    width: 65px;
    margin-block-start: 0;
    margin-block-end: 0;
    margin-inline-start: 0;
    margin-inline-end: 24px;
  }

  .mini-cart__recommendations .product-item__info {
    text-align: start;
    min-width: 0;
  }

  .mini-cart__recommendations .price-list {
    justify-content: start;
  }
}

@media screen and (min-width: 1000px) {
  .mini-cart__recommendations {
    text-align: center;
    width: 240px;
    height: 100%;
    position: absolute;
    top: 0;
    overflow: hidden;
  }

  .mini-cart__recommendations:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    right: 100%;
  }

  .mini-cart__recommendations:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    left: 100%;
  }

  .mini-cart__recommendations-inner {
    scrollbar-width: thin;
    box-shadow: -10px 0 24px 4px rgb(var(--text-color), .05) inset;
    height: 100%;
    margin: 0;
    padding-block-start: 35px;
    padding-block-end: 35px;
    transition: transform .25s ease-in;
    overflow-x: hidden;
    overflow-y: auto;
  }

  .mini-cart:not([open]) .mini-cart__recommendations-inner {
    transform: translateX(100%);
  }

  .mini-cart__recommendations .product-item {
    margin-block-start: 40px;
  }

  .mini-cart__recommendations .product-item__image-wrapper {
    flex: none;
    width: 92px;
    margin-block-start: 0;
    margin-block-end: 24px;
    margin-inline-start: auto;
    margin-inline-end: auto;
  }

  .mini-cart__recommendations .spinner {
    height: 100%;
    display: flex;
  }
}

.cart__recap {
  padding: var(--container-gutter);
  background: rgb(var(--secondary-background));
  border-radius: var(--block-border-radius-reduced);
}

.cart__recap-block {
  gap: 10px;
  margin-block-end: 10px;
  display: grid;
}

.cart__recap-block > * {
  margin-block-start: 0;
  margin-block-end: 0;
}

.cart__recap-note {
  margin-block-end: 24px;
}

.cart__total-container, .cart__discount {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  display: flex;
}

.cart__discount-list {
  gap: 10px;
  display: grid;
}

.cart__discount-badge {
  align-self: stretch;
}

.cart__order-note {
  padding-block-start: 14px;
}

.cart__checkout-button:not(:only-child) {
  margin-block-start: 24px;
}

.cart__payment-methods {
  text-align: center;
  margin-block-start: 24px;
}

.cart__payment-methods-label {
  margin-block-end: 16px;
  display: block;
}

@media screen and (max-width: 999px) {
  .cart__aside {
    margin-block-start: 24px;
  }
}

@media screen and (min-width: 1000px) {
  .cart {
    grid-template-columns: 1fr 300px;
    gap: 40px;
    display: grid;
  }

  .cart__aside-inner {
    top: calc(var(--header-height, 0px) * var(--enable-sticky-header)  + var(--announcement-bar-height, 0px) * var(--enable-sticky-announcement-bar)  + 24px);
    display: block;
    position: sticky;
  }
}

@media screen and (min-width: 1200px) {
  .cart {
    grid-template-columns: 1fr 390px;
    gap: 70px;
  }
}


.cart-drawer-total {
  display:flex;
  justify-content:space-between;
  margin-bottom:10px
}

.cart-drawer-totaltitle {
  display:flex;
  align-items:center;
  gap:5px
}

.line-title-article {
  font-size:0.8em
}

@media screen and (max-width:711px) {
  .line-title-article {
    margin-top:2px
  }
}


.shipping-estimator {
  border: 1px solid rgb(var(--border-color));
  border-radius: var(--block-border-radius-reduced);
}

.shipping-estimator__toggle-button, .shipping-estimator__form {
  padding: 24px;
}

.shipping-estimator__form {
  display: block;
  padding-block-start: 0 !important;
}

.shipping-estimator__results {
  margin-block-start: 24px;
}

@media screen and (min-width: 741px) {
  .shipping-estimator__form .input-row .input:first-child, .shipping-estimator__form .input-row .input:nth-child(2) {
    grid-column: span 2;
  }

  .shipping-estimator__toggle-button, .shipping-estimator__form {
    padding: 32px;
  }
}

.product-facet__main .promotion-block-list {
  --promotion-block-gutter: 24px;
}

.product-facet__main .promotion-block-list--top {
  margin-block-end: 20px;
}

.product-facet__main .promotion-block-list--bottom {
  margin-block-start: 36px;
}

@media screen and (max-width: 740px) {
  .product-facet__main .promotion-block-list {
    --promotion-block-gutter: 12px;
    margin-inline: calc(-1 * (var(--container-gutter)  - var(--promotion-block-gutter) / 2));
  }
}

@media screen and (min-width: 741px) {
  .product-facet__main .promotion-block-list--bottom {
    margin-block-start: 60px;
  }
}

.section__header + .contact__form {
  margin-block-start: 24px;
}

.contact__text-list {
  border: 1px solid rgba(var(--text-color), .15);
  padding: 32px;
}

.contact__text-item + .contact__text-item {
  margin-block-start: 32px;
}

@media screen and (max-width: 999px) {
  .contact__form, .contact__aside {
    max-width: 460px;
    margin-inline-start: auto;
    margin-inline-end: auto;
  }

  .contact__aside {
    margin-block-start: 40px;
  }
}

@media screen and (min-width: 741px) {
  .contact__text-list {
    grid-template-columns: repeat(auto-fit, minmax(10px, 1fr));
    gap: 32px;
    display: flex;
  }

  .contact__text-item {
    margin-block-start: 0 !important;
  }
}

@media screen and (min-width: 1000px) {
  .contact {
    flex-direction: row-reverse;
    justify-content: center;
    display: flex;
  }

  .contact__main {
    flex: 1 0 auto;
    max-width: 460px;
  }

  .contact__main:only-child {
    flex-grow: 1;
    max-width: none;
  }

  .contact__main:not(:only-child) .section__header {
    text-align: start;
    margin-block-end: 32px;
  }

  .contact__form {
    max-width: 460px;
    margin-inline-start: auto;
    margin-inline-end: auto;
  }

  .contact__aside {
    max-width: 530px;
    margin-inline-end: 40px;
  }
}

@media screen and (min-width: 1200px) {
  .contact__aside {
    margin-inline-end: 90px;
  }
}

.cookie-bar {
  width: calc(100% - var(--container-gutter) * 2);
  border: 1px solid rgb(var(--root-border-color));
  background: rgb(var(--root-background));
  z-index: 2;
  max-width: 400px;
  padding: 20px;
  transition: visibility .2s ease-in-out, opacity .2s ease-in-out;
  display: block;
  position: fixed;
  bottom: var(--container-gutter);
}

.cookie-bar:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: var(--container-gutter);
}

.cookie-bar:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: var(--container-gutter);
}

.cookie-bar[hidden] {
  visibility: hidden;
  opacity: 0;
}

.cookie-bar__actions {
  margin-top: 18px;
}

.cookie-bar__actions .button:last-child {
  margin-inline-start: 4px;
}

@media screen and (max-width: 740px) {
  @supports (padding: max(0px)) {
    .cookie-bar {
      bottom: max(24px, env(safe-area-inset-bottom, 0px)  + 24px);
    }
  }
}

@media screen and (min-width: 741px) {
  .cookie-bar {
    padding: 30px;
  }
}

.faq {
  position: relative;
}

.faq__category {
  --anchor-offset: 20px;
  background: rgb(var(--secondary-background));
  margin-block-end: 0;
  padding: 20px 24px;
}

.faq__item + .faq__item {
  border-top: 1px solid rgba(var(--text-color), .15);
}

.faq__item .collapsible__content {
  padding-block-end: 26px;
  padding-inline-end: 40px;
}

@media screen and (max-width: 740px) {
  .faq {
    margin-inline: calc(-1 * var(--container-gutter));
  }

  .faq__item {
    padding-inline: var(--container-gutter);
  }

  .faq__item ~ .faq__category {
    margin-block-start: 30px;
  }
}

@media screen and (min-width: 741px) {
  .faq__item .collapsible-toggle, .faq__item .collapsible__content {
    padding-inline-start: 24px;
    padding-inline-end: 24px;
  }
}

@media screen and (min-width: 1000px) {
  .faq__wrapper {
    width: calc(var(--grid-column-width) * 10 + var(--grid-gap) * 9);
    max-width: 668px;
    margin-inline-start: auto;
    margin-inline-end: auto;
  }

  .faq-navigation {
    max-width: calc(var(--grid-column-width) * 4 + var(--grid-gap) * 3);
    height: 100%;
    display: block;
    position: absolute;
    top: 0;
  }

  .faq-navigation:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    left: 0;
  }

  .faq-navigation:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    right: 0;
  }
}

@media screen and (min-width: 1400px) {
  .faq-navigation {
    max-width: calc(var(--grid-column-width) * 3 + var(--grid-gap) * 2);
  }

  .faq-navigation:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    left: calc(var(--grid-column-width)  + var(--grid-gap));
  }

  .faq-navigation:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    right: calc(var(--grid-column-width)  + var(--grid-gap));
  }
}

.footer {
  background: rgb(var(--background));
  color: rgb(var(--text-color));
  padding: 48px 0;
}

.footer--bordered {
  border-top: 1px solid rgb(var(--border-color));
}

.footer__item-list {
    justify-content: space-between;
    gap: 40px;
    display: flex;
    flex-wrap: wrap;
}

.footer__item {
  word-break: break-word;
  max-width: 325px;
}

.footer__item-title {
  margin-block-end: 12px;
}

.footer__image {
  display: block;
}

.footer__item--social-media .footer__item-content {
  margin-block-start: 20px;
}

.footer__aside {
  margin-block-start: 42px;
}

.footer__cross-border {
  display: flex;
}

.footer__cross-border .popover-container + .popover-container {
  margin-inline-start: -1px;
}

.footer__newsletter-form {
  margin-block-start: 16px;
}

.footer__copyright, .footer__payment-methods {
  color: rgba(var(--footer-text-color), .7);
  margin-block-start: 32px;
  display: block;
}

.footer__copyright {
  align-items: center;
  display: flex;
}

.footer__follow-and-payment {
  gap: 16px;
  margin-inline-start: auto;
  display: grid;
}

.footer__payment-methods-label {
  margin-block-end: 8px;
  display: inline-block;
}

@media screen and (max-width: 740px) {
  .footer__item--image, .footer__item--newsletter, .footer__item--newsletter + .footer__item--social-media:last-child {
    grid-column: span 2;
  }
}

@media screen and (min-width: 741px) and (max-width: 999px) {
  .footer__item-list {
    grid-template-columns: 1fr 1fr 1fr;
  }

  .footer__item--image.is-first {
    grid-column: span 3;
  }

  .footer__item--newsletter {
    grid-column: span 2;
  }
}

@media screen and (min-width: 741px) {
  .footer__payment-methods {
    align-items: center;
    display: flex;
  }

  .footer__payment-methods-label {
    margin-block-end: 0;
    margin-inline-end: 14px;
  }
}

@media screen and (min-width: 1000px) {
  .footer {
    padding-block-start: 72px;
    padding-block-end: 50px;
  }

  .footer__item-list {
    grid-template-columns: none;
    grid-auto-flow: column;
  }

  .footer__item-title {
    margin-block-end: 20px;
  }

  .footer__aside {
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: center;
    row-gap: 24px;
    margin-block-start: 50px;
    display: flex;
  }

  .footer__cross-border {
    margin-inline-end: 32px;
  }

  .footer__payment-methods, .footer__copyright {
    margin-block-start: 0;
  }

  .footer__payment-methods {
    margin-inline-start: auto;
  }
}

@media screen and (min-width: 1200px) {
  .footer__cross-border {
    margin-inline-end: 50px;
  }
}

.gallery {
  --gallery-image-height: 220px;
  display: block;
  position: relative;
}

.gallery__list-wrapper:not(.is-scrollable) ~ .custom-drag-cursor {
  visibility: hidden;
}

.gallery__list-wrapper:not(.is-scrollable) ~ .gallery__prev-next-buttons, .gallery__list-wrapper:not(.is-scrollable) ~ .gallery__progress-bar-wrapper {
  display: none;
}

.gallery__list-wrapper {
  display: block;
}

.gallery__list {
  flex-wrap: nowrap;
  display: flex;
}

.gallery__list-wrapper.is-scrollable .gallery__list:after {
  content: "";
  flex: 0 0 var(--container-outer-width);
}

.gallery__item {
  flex-shrink: 0;
  width: max-content;
}

.gallery__item:not(:first-child) {
  margin-inline-start: var(--container-gutter);
}

.gallery__figure {
  margin: 0;
  display: table;
}

.gallery__image {
  height: var(--gallery-image-height);
  border-radius: var(--block-border-radius-reduced);
  -webkit-user-select: none;
  user-select: none;
  width: auto;
  display: block;
  overflow: hidden;
}

.gallery__caption {
  caption-side: bottom;
  margin-block-start: 16px;
  display: table-caption;
}

.gallery__progress-bar {
  margin-block-start: 32px;
  display: block;
}

.gallery__prev-next-buttons {
  z-index: 1;
  position: absolute;
  top: calc(var(--gallery-image-height) / 2 - 56px);
}

.gallery__prev-next-buttons:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: calc(var(--container-outer-width)  - 28px);
}

.gallery__prev-next-buttons:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: calc(var(--container-outer-width)  - 28px);
}

@media screen and not (pointer: fine) {
  .gallery__prev-next-buttons {
    display: none !important;
  }
}

@media screen and (min-width: 1000px) {
  .gallery {
    --gallery-image-height: 30vw;
  }
}

@media screen and (min-width: 1200px) {
  .gallery {
    --gallery-image-height: 25vw;
  }
}

@media screen and (min-width: 1400px) {
  .gallery {
    --gallery-image-height: 22vw;
  }
}

.gift-card {
  color-adjust: exact;
  background: rgb(var(--background));
  min-height: var(--window-height, 100vh);
  text-align: center;
}

.gift-card__wrapper {
  max-width: 530px;
  margin-inline-start: auto;
  margin-inline-end: auto;
}

.gift-card__logo {
  margin-block-end: 32px;
}

.gift-card__logo-image {
  margin-inline-start: auto;
  margin-inline-end: auto;
  display: block;
}

.gift-card__image-wrapper {
  max-width: 280px;
  margin-block-end: -65px;
  margin-inline-start: auto;
  margin-inline-end: auto;
}

.gift-card__image {
  border-radius: 18px;
}

.gift-card__card {
  background: rgb(var(--section-card-background));
  color: rgb(var(--text-color));
  padding: 32px;
}

.gift-card__card + .gift-card__card {
  margin-block-start: 16px;
}

.gift-card__main {
  padding-block-start: 97px;
}

.gift-card__amount {
  color: rgb(var(--product-on-sale-accent));
}

.gift-card__code-container {
  gap: 8px;
  display: grid;
}

.gift-card__code {
  -webkit-appearance: none;
  appearance: none;
  height: var(--button-height);
  line-height: var(--button-height);
  border: 1px solid rgb(var(--border-color));
  background: none;
  border-radius: 0;
  padding-inline-start: 12px;
  padding-inline-end: 12px;
}

.gift-card__expires-on {
  margin-block-start: 16px;
}

.gift-card__aside {
  gap: 24px;
  display: grid;
}

.gift-card__qr {
  display: block;
}

.gift-card__qr img, .gift-card__wallet {
  width: 132px;
  margin-inline-start: auto;
  margin-inline-end: auto;
}

.gift-card__button-wrapper {
  margin-block-start: 24px;
}

@media screen and (min-width: 741px) {
  .gift-card__logo {
    margin-block-end: 56px;
  }

  .gift-card__card {
    padding: 40px;
  }

  .gift-card__image-wrapper {
    margin-block-end: -95px;
  }

  .gift-card__main {
    padding-block-start: 135px;
  }

  .gift-card__image-wrapper {
    max-width: 360px;
  }

  .gift-card__code-container {
    grid-template-columns: 1fr auto;
    gap: 16px;
  }

  .gift-card__aside {
    grid-auto-flow: column;
    align-items: center;
    gap: 32px;
  }

  .gift-card__aside .heading {
    text-align: start;
  }

  .gift-card__qr img {
    width: 68px;
  }

  .gift-card__wallet {
    width: 145px;
  }

  .gift-card__button-wrapper {
    margin-block-start: 40px;
  }
}

.header {
  background: rgb(var(--header-background));
  color: rgb(var(--header-text-color));
  transition: background .2s ease-in-out, color .2s ease-in-out, box-shadow .2s ease-in-out;
  display: block;
}

.header--bordered {
  box-shadow: 0 1px #0000;
}

.header--bordered:not(.header--transparent) {
  box-shadow: 0 1px rgb(var(--border-color));
}

.header__logo {
  margin: 0;
  display: block;
  position: relative;
}

.header__logo-link, .header__logo-image {
  width: max-content;
  display: block;
}

.header__logo-text {
  color: currentColor;
  max-width: min(350px, 60vw);
}

.header__logo-image {
  transition: opacity .2s ease-in-out;
}

.header__logo-image--transparent {
  opacity: 0;
  object-fit: contain;
  object-position: center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
}

.header__logo-image--transparent:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 0;
}

.header__logo-image--transparent:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 0;
}

.js .header--transparent .header__logo-image:not(:last-child) {
  opacity: 0;
}

.js .header--transparent .header__logo-image--transparent {
  opacity: 1;
}

.header__wrapper {
  align-items: center;
  padding: 10px 0;
  display: flex;
}

.header__inline-navigation {
  align-items: center;
  display: flex;
}

.header__inline-navigation, .header__secondary-links {
  flex: 1 1 0;
}

.header__icon-wrapper {
  display: block;
}

@media screen and (max-width: 740px) {
  .header__logo-text {
    text-align: center;
  }
}

@media screen and (min-width: 741px) {
  .header__wrapper {
    padding: calc(25px - var(--reduce-header-padding) * 9px) 0;
  }
}

@media screen and (min-width: 1000px) and (max-width: 1199px) {
  .header__search-bar {
    margin-inline-start: 24px;
  }
}

.header__secondary-links {
  justify-content: flex-end;
  align-items: center;
  display: flex;
}

.header__secondary-links .header__linklist {
  flex-wrap: nowrap;
}

.header__icon-list {
  grid-auto-flow: column;
  justify-content: flex-start;
  align-items: center;
  gap: 20px;
  display: grid;
}

@media screen and (max-width: 740px) {
  .header__icon-list .hidden-phone {
    display: none;
  }
}

.header__cart-count {
  margin-inline-start: 8px;
  top: -1px;
}

.header__cart-count--floating {
  margin-inline-start: 0;
  position: absolute;
  top: -8px;
}

.header__cart-count--floating:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: -14px;
}

.header__cart-count--floating:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: -14px;
}

.header__cart-count {
  background: #3a9d5f;
  color: rgb(var(--header-background));
}

.js .header--transparent .header__cart-count {
  color: rgb(var(--header-transparent-bubble-text-color));
}

@media screen and (min-width: 741px) {
  .header__icon-list {
    gap: 24px;
  }
}

.header__cross-border {
  grid-auto-flow: column;
  gap: 18px;
  display: grid;
}

.header__secondary-links .header__cross-border {
  margin-inline-end: 24px;
}

@media screen and (min-width: 1200px) {
  .header__secondary-links .header__cross-border {
    margin-inline-end: 30px;
  }
}

.header__bottom-navigation {
  padding-block: calc(17px - var(--reduce-header-padding) * 8px) calc(19px - var(--reduce-header-padding) * 8px);
  border-top: 1px solid rgb(var(--header-border-color));
  transition: border-top .2s ease-in-out;
}

.header__linklist {
  flex-wrap: wrap;
  row-gap: 12px;
  display: flex;
}

.header__linklist-item {
  flex-shrink: 0;
}

.header__linklist-item:not(:last-child) {
  margin-inline-end: 45px;
}

.header__linklist-item.has-dropdown:hover:before {
  content: attr(data-item-title);
  opacity: 0;
  height: 100%;
  margin-inline-start: -32px;
  padding-inline-start: 32px;
  padding-inline-end: 32px;
  position: absolute;
  top: 0;
}

.header__bottom-navigation .header__linklist-item:hover:before {
  height: calc(100% - var(--header-height-without-bottom-nav));
  top: auto;
  bottom: 0;
}

.header__linklist-link {
  display: block;
  font-weight: 600
}

.header__bottom-navigation .header__linklist {
  justify-content: center;
}

.nav-dropdown {
  background: rgb(var(--background));
  color: rgb(var(--text-color));
  border: 1px solid rgba(var(--text-color), .15);
  white-space: nowrap;
  visibility: hidden;
  opacity: 0;
  margin-inline-start: -32px;
  padding-block-start: 20px;
  padding-block-end: 20px;
  padding-left: 5px;
  padding-right: 5px;
  transition: opacity .25s ease-in-out, visibility .25s ease-in-out;
  display: block;
  position: absolute;
  top: 100%;
}

.nav-dropdown:not([hidden]), .focus-outline :focus-within > .nav-dropdown, .no-js :focus-within > .nav-dropdown, .no-js :hover > .nav-dropdown {
  visibility: visible;
  opacity: 1;
}

.nav-dropdown--restrict {
  max-height: calc(100vh - var(--header-height)  - 20px);
  overflow: auto;
}

.nav-dropdown .nav-dropdown {
  margin-inline-start: 0;
  top: -20px;
}

.nav-dropdown .nav-dropdown:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 100%;
}

.nav-dropdown .nav-dropdown:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 100%;
}

.nav-dropdown__item {
  position: relative;
}

.nav-dropdown__link {
  justify-content: space-between;
  align-items: center;
  padding: 3px 30px;
  display: flex;
}

.nav-dropdown__link > svg {
  margin-inline-start: 16px;
  transition: transform .25s ease-in-out;
  position: relative;
  top: 2px;
}

.nav-dropdown__link[aria-expanded="true"] > svg {
  transform: translateX(calc(var(--transform-logical-flip) * 8px));
}

.mega-menu {
  --mega-menu-column-gap: 48px;
  --mega-menu-image-gap: 24px;
  visibility: hidden;
  opacity: 0;
  background: rgb(var(--background));
  color: rgb(var(--text-color));
  width: 100%;
  transition: opacity .25s ease-in-out, visibility .25s ease-in-out;
  display: block;
  position: absolute;
  top: 100%;
  left: 0;
}

.mega-menu.is-closing, .mega-menu[hidden] {
  z-index: -1;
}

.mega-menu:after {
  content: "";
  height: calc(100vh - 100% - var(--header-height, 0px));
  opacity: 0;
  pointer-events: none;
  background: #000;
  width: 100%;
  transition: opacity .25s ease-in-out;
  position: absolute;
  top: 100%;
  left: 0;
}

.mega-menu:not([hidden]), .focus-outline :focus-within > .mega-menu, .no-js :focus-within > .mega-menu, .no-js :hover > .mega-menu {
  visibility: visible;
  opacity: 1;
}

.mega-menu:not([hidden]):after, .focus-outline :focus-within > .mega-menu:after, .no-js :focus-within > .mega-menu:after, .no-js :hover > .mega-menu:after {
  opacity: .3;
}

.mega-menu.is-closing:after {
  opacity: 0;
  transition-delay: .15s;
}

.header--bordered .mega-menu {
  margin-top: 1px;
}

.mega-menu__inner {
  justify-content: center;
  column-gap: var(--mega-menu-column-gap);
  max-height: calc(100vh - var(--header-height, 0px)  - var(--announcement-bar-height, 0px)  - 50px);
  z-index: 1;
  grid-auto-flow: column;
  padding-block-start: 48px;
  padding-block-end: 48px;
  display: grid;
  position: relative;
  overflow: auto;
}

.mega-menu__columns-wrapper {
  margin: calc(-1 * var(--mega-menu-column-gap) / 2);
  flex-wrap: wrap;
  display: flex;
}

.mega-menu__column {
  margin: calc(var(--mega-menu-column-gap) / 2);
}

.mega-menu__images-wrapper {
  align-items: flex-start;
  gap: var(--mega-menu-image-gap);
  grid-auto-flow: column;
  display: grid;
}

.mega-menu__images-wrapper--tight {
  gap: 20px;
}

.mega-menu__image-push {
  text-align: center;
  width: 180px;
}

.mega-menu__image-push:only-child {
  width: 200px;
}

.mega-menu__image-wrapper {
  border-radius: var(--block-border-radius-reduced);
  z-index: 0;
  margin-block-end: 18px;
  overflow: hidden;
}

.mega-menu__image {
  border-radius: inherit;
}

.mega-menu__heading {
  margin-block-end: 7px;
}

.mega-menu__title {
  margin-block-end: 16px;
}

@media screen and (min-width: 1200px) {
  .mega-menu {
    --mega-menu-column-gap: 64px;
  }
}

@media screen and (min-width: 1400px) {
  .mega-menu {
    --mega-menu-column-gap: 80px;
    --mega-menu-image-gap: 40px;
  }

  .mega-menu__image-push {
    width: 240px;
  }

  .mega-menu__image-push:only-child {
    width: 280px;
  }
}


.block-item-nav-encard {
  display: flex;
  gap: 10px;
}

.block-item-encardlevel2 {
  display:flex;
  gap: 6px;
  margin-right: 15px;
}

.block-item-encardlevel3 {
  display:flex;
  gap: 6px;
}

.annoucementmenumob {
  background: #282828;
  text-align: center; 
  color:white;
  padding-block-start: 15px;
  padding-block-end: 15px;
  
}

.mobile-nav__item {
  display: flow-root;
}

.mobile-nav__item--active {
    background-color: #F5F5F5;
    transition: background-color 0.3s ease; 
}



.mobile-nav__item:first-child,
.mobile-nav__item:nth-child(2),
.mobile-nav__item:nth-child(3),
.mobile-nav__item:nth-child(4),
.mobile-nav__item:nth-child(5),
.mobile-nav__item:nth-child(6)
{
  border-bottom: 1px solid #0000002b;
}



.mobile-nav-link-image-content {
  display: flex;
  align-items: center;
  padding: 9px !important;
  background-color: #ffffff;
  border-radius: 12px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.mobile-nav-link-image-content a {
  font-weight: 500  
}

.mobile-nav__link {
  justify-content: space-between;
  align-items: baseline;
  width: 100%;
  margin: 0;
  padding: 20px 20px;
  display: flex;
}



.mobile-nav-link-image {
  display: flex;
    gap: 18px;
    align-items: center;
    border-radius: 12px;
}

.imgmobmenu {
    background: #f4f4f4;
    border-radius: 12px;
}

.contentmenumob {
  display:flex;
  flex-direction: column;
  gap:3px
}

.soustitremenumob {
  font-weight:400;
  font-size:0.8em
}

.block-itemlevel1 {
  display:flex;
  flex-direction: column;
  gap: 5px;
}

.block-itemlevel2 {
  background: #ffffff;
  border-radius: 12px;
  padding: 15px 15px 15px 10px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.block-itemlevel2 p {
  font-size: 14px;
  font-weight:500;
  margin:0
}

.block-itemlevel1 p {
  font-size: 15px;
  margin:0;
  letter-spacing: 0px
}

.block-itemlevel3 {
  background:#ffffff;
  padding: 9px;
  border-radius:12px
}

.mobile-nav__image-heading {
  margin-block-end: 7px;
}

.mobile-nav__image-text {
  display: block;
}

.mobile-nav .collapsible {
  margin-inline: calc(-1 * var(--container-gutter));
  padding: 0px 20px;
}

.mobile-nav .mobile-nav {
  margin-inline: var(--container-gutter);
  margin-block-end: 24px !important;
}

.mobile-nav .mobile-nav .mobile-nav__item {
  border: none;
  margin-block-end: 15px;
}

.mobile-nav .mobile-nav .mobile-nav__link {
  padding: 0;
}

.mobile-nav .mobile-nav .mobile-nav {
  border-inline-start: 1px solid rgba(var(--text-color), .15);
  padding-inline-start: 20px;
  margin-block-start: 16px !important;
  margin-block-end: 10px !important;
  margin: 0px 10px;
}

.mobile-nav .mobile-nav .mobile-nav .mobile-nav__item {
  margin-block-end: 14px;
}

.mobile-nav .mobile-nav .mobile-nav .mobile-nav__item:last-child {
  margin-block-end: 0;
}

.mobile-nav + .mobile-nav__images-wrapper {
  padding-inline-start: 8px;
}

.mobile-nav__images-scroller {
  padding-inline: var(--container-gutter);
  grid-auto-flow: column;
  gap: 12px;
  width: -moz-fit-content;
  width: fit-content;
  margin-block-end: 32px;
  display: grid;
}

.mobile-nav__image-push {
  text-align: center;
  min-width: 120px;
  max-width: 134px;
}

.mobile-nav__image {
  border-radius: min(var(--block-border-radius), 4px);
  margin-block-end: 14px;
  display: block;
}

.mobile-nav__footer {
  flex-wrap: wrap;
  justify-content: space-around;
  display: flex;
}

.image-with-text {
  --image-height: min(var(--image-max-height), (100vw - var(--container-gutter) * 4) * (1 / var(--image-aspect-ratio)));
  text-align: center;
  display: block;
  position: relative;
}

.image-with-text:before {
  content: "";
  background: rgb(var(--section-accent-background));
  z-index: -1;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
}

.image-with-text:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  left: 0;
}

.image-with-text:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  right: 0;
}

.image-with-text--overlap-image:before {
  height: var(--image-height);
}

.image-with-text--overlap-text:before {
  --image-height-difference: calc(100% - var(--image-height));
  --image-height-difference-abs: max(var(--image-height-difference), -1 * var(--image-height-difference));
  height: var(--image-height-difference-abs);
  top: auto;
  bottom: 0;
}

.image-with-text__image-wrapper {
  border-radius: var(--block-border-radius-reduced);
  z-index: 0;
  margin-block-end: 32px;
  position: relative;
  overflow: hidden;
}

.image-with-text__image {
  width: 100%;
  display: block;
  position: relative;
}

.image-with-text__image:not([hidden]) {
  z-index: 1;
}

.image-with-text__image:not(:first-child) {
  object-fit: cover;
  object-position: center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
}

.image-with-text__image:not(:first-child):not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 0;
}

.image-with-text__image:not(:first-child):is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 0;
}

.image-with-text__image[hidden] {
  visibility: hidden;
  z-index: -1;
  transition: visibility .6s linear;
}

.image-with-text__wrapper {
  overflow: hidden;
}

.image-with-text__content-list {
  flex-wrap: nowrap;
  display: flex;
}

.image-with-text__content {
  flex-shrink: 0;
  order: 0;
  width: 100%;
  display: block;
}

.image-with-text__content[hidden] {
  visibility: hidden;
  order: 1;
}

.image-with-text__navigation {
  grid-template-columns: 1fr 1fr;
  align-items: flex-start;
  column-gap: 24px;
  margin-block-start: 40px;
  display: inline-grid;
}

@keyframes navigationItemAnimation {
  from {
    transform: scaleX(0);
  }

  to {
    transform: scaleX(1);
  }
}

.image-with-text__navigation-item {
  position: relative;
}

.image-with-text__navigation-item:before, .image-with-text__navigation-item:after {
  content: "";
  background: rgba(var(--text-color), .15);
  width: 100%;
  height: 2px;
  margin-block-end: 16px;
  display: block;
}

.image-with-text__navigation-item:after {
  background: rgb(var(--text-color));
  transform-origin: var(--transform-origin-start);
  position: absolute;
  top: 0;
  transform: scaleX(0);
}

.image-with-text__navigation-item:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):after {
  left: 0;
}

.image-with-text__navigation-item:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):after {
  right: 0;
}

.image-with-text__navigation-item[aria-current="true"]:after {
  animation: navigationItemAnimation var(--section-autoplay-duration) linear;
  animation-play-state: var(--section-animation-play-state, running);
}

@media screen and (max-width: 999px) {
  .image-with-text {
    padding: var(--vertical-breather) var(--container-gutter);
  }

  .image-with-text--boxed {
    padding: var(--container-gutter);
  }
}

@media screen and (min-width: 741px) and (max-width: 999px) {
  .image-with-text {
    padding: var(--vertical-breather) calc((var(--grid-column-width)  + var(--grid-gap)) * 2);
  }

  .image-with-text--boxed {
    padding: var(--vertical-breather) calc((var(--grid-column-width)  + var(--grid-gap)) * 2 + var(--container-gutter));
  }

  .image-with-text__image-wrapper {
    margin-block-end: 48px;
  }
}

@media screen and (min-width: 1000px) {
  .image-with-text:before {
    width: calc(var(--grid-column-width) * 13 + (var(--grid-gap) * 12)  + var(--container-outer-margin));
    height: 100%;
    top: 0;
  }

  .image-with-text:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
    left: auto;
    right: 0;
  }

  .image-with-text:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
    left: 0;
    right: auto;
  }

  .image-with-text--reverse:not(.image-with-text--overlap-image):not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
    left: 0;
    right: auto;
  }

  .image-with-text--overlap-image:not(.image-with-text--reverse):not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
    left: 0;
    right: auto;
  }

  .image-with-text--reverse:not(.image-with-text--overlap-image):is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
    left: auto;
    right: 0;
  }

  .image-with-text--overlap-image:not(.image-with-text--reverse):is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
    left: auto;
    right: 0;
  }

  .image-with-text--overlap-image:before {
    width: calc(var(--grid-column-width) * 7 + (var(--grid-gap) * 6)  + var(--container-outer-margin));
  }

  .image-with-text--overlap-both:before {
    width: 100% !important;
  }

  .image-with-text__wrapper {
    padding: 45px 0px;
    align-items: center;
    display: flex;
  }

  .image-with-text--reverse .image-with-text__wrapper {
    flex-direction: row-reverse;
  }

  .image-with-text__image-wrapper {
    width: calc(var(--grid-column-width) * 8 + (var(--grid-gap) * 7));
    margin-block-end: 0;
    margin-inline-start: calc(var(--grid-column-width)  + var(--grid-gap));
  }

  .image-with-text--reverse .image-with-text__image-wrapper {
    margin-inline: 0 calc(var(--grid-column-width)  + var(--grid-gap));
  }

  .image-with-text__content-wrapper {
    width: calc(var(--grid-column-width) * 9 + (var(--grid-gap) * 8));
    margin-inline-start: auto;
    margin-inline-end: auto;
  }
}

@media screen and (min-width: 1200px) {
  .image-with-text__navigation {
    column-gap: 40px;
    margin-block-start: 48px;
  }
}

@media screen and (min-width: 1400px) {
  .image-with-text__content-wrapper {
    width: calc(var(--grid-column-width) * 7 + (var(--grid-gap) * 6));
    margin-inline-end: calc((var(--grid-column-width)  + var(--grid-gap)) * 2);
  }
}

.image-with-text-block {
  display: block;
}

.image-with-text-block__image-wrapper {
  background: rgb(var(--secondary-background));
  overflow: hidden;
}

.image-with-text-block__content {
  background-color: rgb(var(--section-block-background));
  border-radius: var(--block-border-radius);
  padding: 48px 24px;
}

.image-with-text-block__text-container {
  margin-block-start: 24px;
}

@media screen and (max-width: 999px) {
  .image-with-text-block__content {
    width: auto;
  }

  .image-with-text-block--overlap-left .image-with-text-block__content, .image-with-text-block--overlap-right .image-with-text-block__content {
    margin-block: calc(-1 * var(--container-gutter)) 0;
    margin-inline: var(--container-gutter);
    padding: 40px;
  }

  .image-with-text-block:not(.image-with-text-block--overlap-left):not(.image-with-text-block--overlap-right) .image-with-text-block__content {
    border-radius: 0;
  }

  .image-with-text-block--cover {
    align-items: center;
    display: flex;
    position: relative;
  }

  .image-with-text-block--cover .image-with-text-block__image-wrapper {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
  }

  .image-with-text-block--cover .image-with-text-block__image-wrapper:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    left: 0;
  }

  .image-with-text-block--cover .image-with-text-block__image-wrapper:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    right: 0;
  }

  .image-with-text-block--cover .image-with-text-block__image {
    object-fit: cover;
    object-position: center;
    height: 100%;
  }

  .image-with-text-block--cover .image-with-text-block__content {
    padding: var(--container-gutter);
    margin: var(--vertical-breather) var(--container-gutter);
  }
}

@media screen and (min-width: 741px) and (max-width: 999px) {
  .image-with-text-block--cover .image-with-text-block__content {
    max-width: 100%;
    margin-inline-start: auto;
    margin-inline-end: auto;
  }
}

@media screen and (min-width: 741px) {
  .image-with-text-block__content {
    padding-inline-start: 48px;
    padding-inline-end: 48px;
  }
}

@media screen and (min-width: 1000px) {
  .image-with-text-block {
    align-items: center;
    min-height: 500px;
    display: flex;
    position: relative;
  }

  .image-with-text-block__image-wrapper {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
  }

  .image-with-text-block__image-wrapper:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    left: 0;
  }

  .image-with-text-block__image-wrapper:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    right: 0;
  }

  .image-with-text-block__image {
    object-fit: cover;
    object-position: center;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
  }

  .image-with-text-block__image:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    left: 0;
  }

  .image-with-text-block__image:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    right: 0;
  }

  .image-with-text-block__content {
    margin-block: var(--vertical-breather);
  }

  .image-with-text-block--overlap-right .image-with-text-block__image-wrapper, .image-with-text-block--overlap-left .image-with-text-block__image-wrapper {
    width: calc(var(--grid-column-width) * 14 + (var(--grid-gap) * 13)  + var(--container-outer-margin));
  }

  .image-with-text-block--overlap-left .image-with-text-block__image-wrapper:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    left: auto;
    right: 0;
  }

  .image-with-text-block--overlap-left .image-with-text-block__image-wrapper:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    left: 0;
    right: auto;
  }
}

@media screen and (min-width: 1200px) {
  .image-with-text-block {
    min-height: 700px;
  }

  .image-with-text-block--small {
    min-height: 400px;
  }

  .image-with-text-block__content:not(.image-with-text-block__content--tight) {
    padding: 64px;
  }
}

.image-overlay {
  --image-height: auto;
  min-height: var(--image-height);
  color: rgb(var(--text-color));
  background: rgb(var(--section-overlay-color));
  display: flex;
  position: relative;
}

.image-overlay--small {
  --image-height: 375px;
}

.image-overlay--medium {
  --image-height: 500px;
}

.image-overlay--large {
  --image-height: 600px;
}

.image-overlay:before {
  content: "";
  width: 0;
  padding-block-end: calc(100% / var(--image-aspect-ratio));
  display: block;
}

.image-overlay__image-wrapper:after {
  content: "";
  background: rgba(var(--section-overlay-color), var(--section-overlay-opacity));
  pointer-events: none;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
}

.image-overlay__image-wrapper:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):after {
  left: 0;
}

.image-overlay__image-wrapper:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):after {
  right: 0;
}

.image-overlay__image-wrapper, .image-overlay__image {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  overflow: hidden;
}

:is(.image-overlay__image-wrapper:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)), .image-overlay__image:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi))) {
  left: 0;
}

:is(.image-overlay__image-wrapper:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)), .image-overlay__image:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi))) {
  right: 0;
}

.image-overlay__image {
  object-fit: cover;
  object-position: center;
}

.image-overlay__image--placeholder {
  background: rgb(var(--background));
}

.image-overlay__content-wrapper {
  min-height: var(--image-height);
  align-items: var(--section-items-alignment);
  padding: var(--vertical-breather) 0;
  justify-content: center;
  width: 100%;
  height: 100%;
  display: flex;
  position: relative;
}

.image-overlay__text-container {
  margin-block-start: 24px;
}

.image-overlay__text-container .button-wrapper:only-child {
  margin-block-start: 32px;
}

@media screen and (min-width: 741px) {
  .image-overlay--small {
    --image-height: 400px;
  }

  .image-overlay--medium {
    --image-height: 550px;
  }

  .image-overlay--large {
    --image-height: 700px;
  }
}

.list-collections {
  display: block;
  position: relative;
}

.list-collections__item-list {
  align-items: center;
  gap: 24px;
  display: grid;
}

.list-collections__item {
  --heading-color: 255, 255, 255;
  --text-color: 255, 255, 255;
  text-align: center;
  background: rgb(var(--secondary-background));
  border-radius: var(--block-border-radius-reduced);
  z-index: 0;
  display: block;
  position: relative;
  overflow: hidden;
}

.list-collections__item.image-zoom {
  will-change: transform;
}

.list-collections__item:hover .link {
  -webkit-text-decoration-color: rgb(var(--text-color));
  text-decoration-color: rgb(var(--text-color));
}

.list-collections__item-image-wrapper {
  height: 100%;
  position: relative;
}

.list-collections__item.has-overlay .list-collections__item-image-wrapper:before {
  content: "";
  background: rgba(var(--section-block-overlay, 0, 0, 0), var(--section-block-overlay-opacity, .2));
  z-index: 1;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.list-collections__item-image {
  object-fit: cover;
  object-position: center;
  width: 100%;
  height: 100%;
  min-height: 120px;
}

.list-collections__item-info {
  z-index: 1;
  width: 100%;
  padding-inline-start: 24px;
  padding-inline-end: 24px;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}

@media screen and (min-width: 741px) {
  .list-collections__item-list {
    grid-template-columns: repeat(4, calc(100% / 4 - 60px * 2 / 4));
    grid-gap: var(--container-gutter);
    justify-content: safe center;
  }
}

@media screen and (min-width: 1000px) {
  .list-collections__item-info {
    padding-inline: var(--container-gutter);
  }
}

@media screen and (min-width: 741px) {
  .list-collections--collage {
    --list-collections-collage-rows-height: 220px;
  }

  .list-collections--collage .list-collections__item-list {
    grid-template-columns: repeat(var(--section-collage-column), 1fr);
    grid-auto-rows: var(--list-collections-collage-rows-height);
    grid-auto-flow: dense;
  }

  .list-collections--collage .list-collections__item:only-child {
    width: 590px;
    margin-inline-start: auto;
    margin-inline-end: auto;
  }

  .list-collections--collage .list-collections__item {
    height: 100%;
  }

  .list-collections--collage .list-collections__item--highlight {
    grid-row: auto / span 2;
  }

  .list-collections--collage .list-collections__item--shift {
    grid-column: 2;
  }
}

@media screen and (min-width: 1000px) {
  .list-collections--collage {
    --list-collections-collage-rows-height: 250px;
  }

  .list-collections--collage .list-collections__item-list {
    margin-inline: calc(var(--grid-column-width)  + var(--grid-gap));
  }
}

@media screen and (min-width: 1200px) {
  .list-collections--collage {
    --list-collections-collage-rows-height: 300px;
  }
}

@media screen and (min-width: 1400px) {
  .list-collections--collage {
    --list-collections-collage-rows-height: 350px;
  }
}

.list-collections__scroller {
  scroll-snap-type: x mandatory;
  display: block;
  overflow: auto;
}

.list-collections--carousel .list-collections__item-list {
  padding: 0 var(--container-gutter);
  grid-template-columns: none;
  grid-auto-columns: 55vw;
  grid-auto-flow: column;
  width: min-content;
  min-width: 100%;
}

.list-collections--carousel .list-collections__item {
  scroll-snap-align: center;
  scroll-snap-stop: always;
}

@media screen and (min-width: 741px) {
  .list-collections--carousel .list-collections__item-list {
    grid-auto-columns: 60vw;
  }
}

@media screen and (min-width: 741px) and (max-width: 999px) {
  .list-collections--grid .container {
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    padding-inline-start: 0;
    padding-inline-end: 0;
    display: block;
    overflow: auto;
  }

  .list-collections--grid .container::-webkit-scrollbar {
    display: none;
  }

  .list-collections--grid .list-collections__item-list {
    padding: 0 var(--container-gutter);
    grid-template-columns: none;
    grid-auto-columns: 60vw;
    grid-auto-flow: column;
    width: min-content;
    min-width: 100%;
  }

  .list-collections--grid .list-collections__item {
    scroll-snap-align: center;
    scroll-snap-stop: always;
  }
}

@media screen and (min-width: 1000px) {
  .list-collections__scroller {
    scroll-snap-type: none;
  }

  .list-collections--carousel .list-collections__item-list {
    padding-inline: var(--container-outer-margin);
    grid-auto-columns: 20vw;
  }

  .list-collections__scroller.is-scrollable .list-collections__item-list {
    padding-inline-end: calc(var(--container-outer-margin)  + 28px);
  }

  .list-collections__prev-next {
    z-index: 1;
    display: none;
    position: absolute;
    top: calc(50% - 56px);
  }

  .list-collections__prev-next:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    right: var(--container-outer-width);
  }

  .list-collections__prev-next:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    left: var(--container-outer-width);
  }

  .list-collections__scroller.is-scrollable + .list-collections__prev-next {
    display: block;
  }

  .list-collections__arrow:last-child {
    border-top: none;
  }
}

.logo-list {
  display: block;
  position: relative;
}

.logo-list__list {
  --logos-per-row: 2;
  --logos-gap: 8px;
  grid-template-columns: repeat(min(var(--logos-per-row), var(--section-logo-count)), minmax(140px, 200px));
  gap: var(--logos-gap);
  justify-content: center;
  display: grid;
}

.logo-list__item {
  background: rgb(var(--section-logo-background));
  border-radius: var(--block-border-radius-reduced);
  justify-content: center;
  align-items: center;
  padding: 16px;
  display: flex;
}

.logo-list__image--placeholder {
  height: 100px;
}

@media screen and (max-width: 999px) {
  .logo-list--carousel .logo-list__list {
    grid-template-columns: none;
    grid-auto-columns: 140px;
    grid-auto-flow: column;
  }

  .logo-list--grid {
    padding-inline: var(--container-gutter);
  }
}

@media screen and (min-width: 741px) {
  .logo-list__list {
    --logos-per-row: 3;
    --logos-gap: 16px;
  }

  .logo-list--carousel .logo-list__list {
    grid-auto-columns: 185px;
  }
}

@media screen and (min-width: 1000px) {
  .logo-list__list {
    --logos-per-row: 6;
    --logos-gap: 24px;
  }

  .logo-list__prev-next {
    pointer-events: none;
    justify-content: space-between;
    width: 100%;
    display: flex;
    position: absolute;
    top: calc(50% - 28px);
  }

  .logo-list--carousel .logo-list__prev-next + .logo-list__list {
    grid-template-columns: none;
    grid-auto-flow: column;
    grid-auto-columns: calc(100% / var(--logos-per-row)  - (var(--logos-gap) / var(--logos-per-row) * (var(--logos-per-row)  - 1)));
    justify-content: flex-start;
    margin-inline-start: 88px;
    margin-inline-end: 88px;
    overflow: hidden;
  }

  .logo-list__arrow {
    opacity: 0;
    visibility: hidden;
    transition: opacity .15s ease-in-out, visibility .15s ease-in-out, transform .15s ease-in-out;
    transform: scale(.5);
  }

  .logo-list__arrow:not([disabled]) {
    opacity: 1;
    visibility: visible;
    transform: scale(1);
  }
}

@media screen and (min-width: 1200px) {
  .logo-list--grid {
    margin-inline: calc(var(--grid-column-width)  + var(--grid-gap));
  }
}

.multi-column {
  --multi-column-row-gap: 32px;
  --multi-column-column-gap: 24px;
  --section-items-per-row: 2;
  --item-width: calc(var(--container-inner-width) / var(--section-items-per-row)  - (var(--multi-column-column-gap) / var(--section-items-per-row) * (var(--section-items-per-row)  - 1)));
  display: block;
  position: relative;
}

.multi-column--spacing-tight {
  --multi-column-column-gap: 12px;
}

.multi-column--spacing-loose {
  --multi-column-column-gap: 32px;
}

.multi-column--pocket-medium, .multi-column--pocket-large {
  --section-items-per-row: 1;
}

.multi-column__inner {
  grid-template-columns: repeat(auto-fit, var(--item-width));
  gap: var(--multi-column-row-gap) var(--multi-column-column-gap);
  justify-content: safe center;
  padding-block-end: 2px;
  display: grid;
}


/* Bordures entre colonnes pour affichage bureau */
.multi-column__inner.avec-bordure > * {
  position: relative;
  padding-right: 30px;
}

.multi-column__inner.avec-bordure > *::before {
  content: "";
  position: absolute;
  top: 0;
  right: -0.5px;
  bottom: 0;
  width: 1px;
  background-color: #ccc;
}

.multi-column__inner.avec-bordure > *:last-child::before {
  display: none;
}

/* Bordures au milieu pour affichage mobile (en dessous de 750px) */
@media (max-width: 750px) {
  .multi-column__inner.avec-bordure > * {
    padding: 20px 0 0 0;
    position: relative;
  }

/* Ajouter un padding-bottom de 20px au 3ème élément */
    .multi-column__inner.avec-bordure > *:nth-child(3) {
      padding-bottom: 32px;
    }


  /* Bordures horizontales pour chaque élément sur mobile */
  .multi-column__inner.avec-bordure > *::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: -0.5px; /* Ajout de la bordure en bas de chaque élément */
    width: 100%;
    height: 1px;
    background-color: #ccc;
  }

  /* Supprime la première bordure */
  .multi-column__inner.avec-bordure > *:first-child::before {
    display: none;
  }

    .multi-column__inner.avec-bordure > *:nth-last-child(2)::after {
      content: "";
      position: absolute;
      left: 0;
      bottom: -0.5px; /* Place une bordure en bas de l'avant-dernier élément */
      width: 100%;
      height: 1px;
      background-color: #ccc;
    }

  /* Supprime la bordure et le padding sous le dernier élément */
  .multi-column__inner.avec-bordure > *:last-child {
    padding-top: 0; /* Retire le padding en bas du dernier élément */
  }
  .multi-column__inner.avec-bordure > *:last-child::before {
    display: none; /* Supprime la bordure du dernier élément */
  }
}







.multi-column__inner--left {
  justify-content: safe start;
}

.multi-column__inner--right {
  justify-content: safe end;
}

.multi-column__inner--scroller {
  grid-auto-flow: column;
  grid-template-columns: none !important;
}

.multi-column__item--align-center {
  align-self: center;
}

.multi-column__item--align-end {
  align-self: end;
}

.multi-column__image-wrapper {
  border-radius: min(4px, var(--block-border-radius));
  z-index: 0;
  margin-block-end: 15px;
  margin-inline-start: auto;
  margin-inline-end: auto;
  display: block;
  overflow: hidden;
}

.multi-column__image-wrapper:only-child {
  margin-block-end: 0;
}

.multi-column__image {
  width: 100%;
}

@media screen and (max-width: 999px) {
  .multi-column__inner--scroller {
    padding-left: var(--container-gutter);
    padding-right: var(--container-gutter);
    min-width: min-content;
  }
}

@media screen and (max-width: 740px) {
  .multi-column__inner--scroller {
    grid-auto-columns: 25vw;
  }

  .multi-column--pocket-medium .multi-column__inner--scroller {
    grid-auto-columns: 35vw;
  }

  .multi-column--pocket-large .multi-column__inner--scroller {
    grid-auto-columns: 56vw;
  }
}

@media screen and (min-width: 741px) and (max-width: 999px) {
  .multi-column--pocket-small {
    --section-items-per-row: 5;
  }

  .multi-column--pocket-medium {
    --section-items-per-row: 4;
  }

  .multi-column--pocket-large {
    --section-items-per-row: 3;
  }

  .multi-column__inner--scroller {
    grid-auto-columns: 20vw;
  }

  .multi-column--pocket-medium .multi-column__inner--scroller {
    grid-auto-columns: 26vw;
  }

  .multi-column--pocket-large .multi-column__inner--scroller {
    grid-auto-columns: 36vw;
  }
}

@media screen and (min-width: 741px) {
  .multi-column--spacing-normal {
    --multi-column-row-gap: 40px;
  }

  .multi-column--spacing-loose {
    --multi-column-row-gap: 48px;
    --multi-column-column-gap: 32px;
  }
}

@media screen and (min-width: 1000px) {
  .multi-column--spacing-normal {
    --multi-column-column-gap: 40px;
  }

  .multi-column--spacing-tight {
    --multi-column-column-gap: 24px;
  }

  .multi-column--spacing-loose {
    --multi-column-column-gap: 60px;
  }

  .multi-column--pico {
    --section-items-per-row: 6;
  }

  .multi-column--small {
    --section-items-per-row: 5;
  }

  .multi-column--medium {
    --section-items-per-row: 4;
  }

  .multi-column--large {
    --section-items-per-row: 3;
  }

  .multi-column__inner--scroller {
    grid-auto-columns: var(--item-width);
    overflow: hidden;
  }

  .multi-column__inner:not(.is-scrollable) + .multi-column__prev-next {
    display: none;
  }

  .multi-column__image-wrapper {
    margin-block-end: 15px;
  }

  .multi-column__prev-next {
    pointer-events: none;
    top: calc(var(--item-width) / var(--smallest-image-aspect-ratio) / 2 - 28px);
    justify-content: space-between;
    width: calc(100% - 56px);
    display: flex;
    position: absolute;
    left: 28px;
  }

  .multi-column__prev-next--no-image {
    top: calc(50% - 28px);
  }

  .multi-column__arrow {
    z-index: 1;
    opacity: 0;
    visibility: hidden;
    transition: opacity .15s ease-in-out, visibility .15s ease-in-out, transform .15s ease-in-out;
    transform: scale(.5);
  }

  .multi-column:hover .multi-column__arrow:not([disabled]) {
    opacity: 1;
    visibility: visible;
    transform: scale(1);
  }
}

@media screen and (min-width: 1200px) {
  .multi-column--pico {
    --section-items-per-row: 8;
  }

  .multi-column--small {
    --section-items-per-row: 7;
  }

  .multi-column--medium {
    --section-items-per-row: 5;
  }
}

@media screen and (pointer: fine) {
  .multi-column__item:hover .multi-column__link {
    -webkit-text-decoration-color: rgb(var(--text-color));
    text-decoration-color: rgb(var(--text-color));
  }
}

@media screen and not (pointer: fine) {
  .multi-column__arrow:not([disabled]) {
    opacity: 1;
    visibility: visible;
    transform: scale(1);
  }
}

.newsletter__form {
  margin-top: 32px;
}

.newsletter__form .input-row {
  grid-template-columns: none;
}

@media screen and (min-width: 1200px) {
  .newsletter__form .input-row {
    grid-template-columns: 1fr auto;
  }
}

[aria-controls="newsletter-popup"] {
  display: none;
}

.newsletter-modal {
  flex-direction: column;
  align-items: center;
  display: flex;
}

.newsletter-modal__image {
  object-fit: cover;
  object-position: center;
}

.newsletter-modal__content {
  width: 100%;
  padding-block-start: 32px;
  padding-block-end: 40px;
  padding-inline-start: 24px;
  padding-inline-end: 24px;
}

.newsletter-modal__content--extra {
  padding-block-start: 40px;
}

@media screen and (max-width: 740px) {
  .newsletter-modal {
    max-height: inherit;
  }

  .newsletter-modal__image {
    max-height: 200px;
  }

  .newsletter-modal__content {
    overflow: auto;
  }
}

@media screen and (min-width: 741px) and (max-width: 999px) {
  .newsletter-modal__image {
    max-height: 350px;
  }
}

@media screen and (min-width: 741px) {
  .newsletter-modal__content {
    padding: 60px;
  }
}

@media screen and (min-width: 1000px) {
  .newsletter-modal {
    flex-direction: row;
  }

  .newsletter-modal--reverse {
    flex-direction: row-reverse;
  }

  .newsletter-modal__image, .newsletter-modal__content {
    flex: 1 0 0;
    min-width: 500px;
    max-width: 500px;
  }

  .newsletter-modal__content {
    padding: 80px;
  }
}

.password {
  background: rgb(var(--section-background));
  color: rgb(var(--text-color));
}

.password__logo {
  margin-block-end: 0;
}

.password__logo-image {
  display: block;
}

.password__main {
  text-align: center;
  z-index: 1;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  min-height: 100vh;
  padding-inline-start: 48px;
  padding-inline-end: 48px;
  display: flex;
  position: relative;
}

@supports (--css: variables) {
  .password__main {
    min-height: var(--window-height, 100vh);
  }
}

.password__content {
  width: 100%;
  max-width: 390px;
  padding-block-start: 24px;
  padding-block-end: 24px;
}

.password__storefront-login {
  margin-block-start: 20px;
  display: block;
}

.password__storefront-login svg {
  vertical-align: sub;
  margin-inline-end: 12px;
}

.password__storefront-form {
  max-width: 340px;
  margin-inline-start: auto;
  margin-inline-end: auto;
}

.password__newsletter {
  margin-block-start: 24px;
}

.password__shopify-logo svg {
  margin-inline-start: 12px;
}

.password__copyright {
  flex-direction: column;
  align-items: center;
  display: flex;
}

.password__powered-by {
  align-items: center;
  display: flex;
}

@media screen and (max-width: 999px) {
  .password__image {
    object-fit: cover;
    object-position: center;
    opacity: .1;
    filter: grayscale();
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
  }

  .password__newsletter-form .input__label {
    background: none;
  }

  .password__newsletter-form :focus-within ~ .input__label, .password__newsletter-form .is-filled ~ .input__label {
    background: rgb(var(--section-background));
  }

  .password__admin-link {
    padding-block-start: 8px;
  }

  .password__storefront-form {
    background: inherit;
    border-radius: 10px 10px 0 0;
    max-width: none;
    margin-inline-start: 0;
    margin-inline-end: 0;
    padding: 62px 48px 48px;
    position: relative;
  }
}

@media screen and (min-width: 741px) {
  .password__copyright {
    flex-direction: row;
  }

  .password__newsletter {
    margin-block-start: 32px;
  }

  .password__storefront-login {
    margin-block-start: 28px;
  }

  .password__shopify-logo svg {
    width: 98px;
    height: 28px;
  }

  .password__admin-link {
    padding-inline-start: 18px;
  }
}

@media screen and (min-width: 1000px) {
  .password {
    grid-auto-columns: 50%;
    grid-auto-flow: column;
    justify-content: center;
    display: grid;
  }

  .password__image {
    object-fit: cover;
    object-position: center;
    height: 100%;
    max-height: 100vh;
  }
}

.predictive-search__form {
  align-items: center;
  display: flex;
}

.predictive-search__input {
  box-shadow: none;
  -webkit-appearance: none;
  appearance: none;
  background: none;
  border: none;
  min-width: 300px;
  margin-inline-start: 8px;
  padding: 0;
}

.predictive-search__input::placeholder {
  color: rgba(var(--text-color), .7);
  transition: color .2s ease-in-out;
}

.header__search-bar .predictive-search__input::placeholder {
  color: rgba(var(--header-text-color), .8);
}

.predictive-search .tabs-nav, .predictive-search__menu-list {
  padding-block-start: 24px;
  padding-left: 25px;
}

.predictive-search__menu + .predictive-search__menu {
  padding-block-start: 40px;
}

.predictive-search__menu-title {
  margin-block-end: 16px;
}

.predictive-search__product-item:first-child .line-item__content-wrapper {
  margin-block-start: 0;
}

.predictive-search__product-item {
  position: relative;
}

.predictive-search__product-item svg {
  opacity: 0;
  transform: translateX(calc(var(--transform-logical-flip) * min(var(--container-gutter), 30px)));
  transition: opacity .2s ease-in-out, transform .2s ease-in-out;
  position: absolute;
  top: calc(50% - 7px);
  right: 0;
}

@media screen and (pointer: fine) {
  .predictive-search__product-item:hover svg {
    opacity: 1;
    transform: translateX(0);
  }
}

.predictive-search__linklist {
  max-width: 450px;
  margin-inline-start: auto;
  margin-inline-end: auto;
}

.predictive-search__linklist--narrow {
  max-width: 390px;
}

.predictive-search__linklist--bordered {
  border-block: 1px solid rgb(var(--border-color));
}

.predictive-search__linklist-item {
  border-top: 1px solid rgb(var(--border-color));
}

.predictive-search__linklist-item:first-child {
  border-top: none;
}

.predictive-search__linklist-link {
  justify-content: space-between;
  align-items: center;
  padding-block-start: 15px;
  padding-block-end: 15px;
  padding: 0px 30px;
  display: flex;
}

.predictive-search__linklist-link mark {
  background: none;
  font-weight: bold;
}

.predictive-search__linklist-link svg {
  opacity: 0;
  transform: translateX(calc(var(--transform-logical-flip) * min(var(--container-gutter), 30px)));
  transition: opacity .2s ease-in-out, transform .2s ease-in-out;
}

@media screen and (pointer: fine) {
  .predictive-search__linklist-link:hover svg {
    opacity: 1;
    transform: translateX(0);
  }
}

.predictive-search__article-item + .predictive-search__article-item {
  margin-block-start: 24px;
}

.predictive-search__article-image-wrapper {
  flex: none;
  width: 100px;
  margin-inline-end: 18px;
  display: block;
  position: relative;
}

.predictive-search__article-category {
  margin-block-end: 8px;
}

@supports (-webkit-touch-callout: none) {
  @media screen and (max-width: 740px) {
    .predictive-search .drawer__content--center {
      margin-top: 150px;
    }
  }
}

@media screen and (min-width: 741px) {
  .predictive-search__input {
    margin-inline-start: 12px;
  }

  .predictive-search .tabs-nav, .predictive-search__menu-list {
    padding-block-start: 32px;
    padding-left: 30px
  }

  .predictive-search__article-image-wrapper {
    width: 140px;
  }
}

.press-list {
  text-align: center;
  display: block;
}

.press-list__wrapper {
  flex-wrap: nowrap;
  max-width: 800px;
  margin-inline-start: auto;
  margin-inline-end: auto;
  padding-block-start: 10px;
  display: flex;
  overflow: hidden;
}

.press-list__item {
  flex-shrink: 0;
  order: 0;
  width: 100%;
  display: block;
}

.press-list__item[hidden] {
  visibility: hidden;
  order: 1;
}

.press-list__logo-list {
  grid-auto-flow: column;
  align-items: center;
  gap: 48px;
  margin-block-start: 40px;
  display: inline-grid;
}

.press-list__logo-item {
  opacity: .3;
  transition: opacity .2s ease-in-out;
}

.press-list__logo-item[aria-current="true"] {
  opacity: 1;
}

.press-list__logo-image {
  vertical-align: middle;
}

@media screen and (max-width: 999px) {
  .press-list__logo-list-wrapper {
    margin-inline: calc(-1 * var(--container-gutter));
    overflow-x: auto;
    overflow-y: hidden;
  }

  .press-list__logo-list {
    margin-inline: var(--container-gutter);
  }
}

@media screen and (min-width: 741px) {
  .press-list__logo-list {
    gap: 80px;
    margin-block-start: 48px;
  }
}

@media screen and (max-width: 740px) {
  .product:not(.product--featured) {
    margin-block: 0px;
  }
}

@media screen and (min-width: 1000px) {
  .product {
    justify-content: space-between;
    align-items: flex-start;
    display: flex;
  }

  .product:not(.product--featured) {
    margin-block-end: 30px;
  }

  .product__media {
    --product-media-width: calc(var(--grid-column-width) * 10 + var(--grid-gap) * 10);
    width: var(--product-media-width);
  }

  .product__info {
    --product-info-width: calc(var(--grid-column-width) * 9 + var(--grid-gap) * 8);
    width: var(--product-info-width);
    flex: none;
  }

  .product__info:only-child {
    margin-inline-start: auto;
    margin-inline-end: auto;
  }
}

@media screen and (min-width: 1200px) {
  .product {
    margin-inline: calc(var(--grid-column-width)  + var(--grid-gap));
  }

  .product__media {
    --product-media-width: calc(var(--grid-column-width) * 9 + var(--grid-gap) * 9);
  }

  .product__info {
    --product-info-width: calc(var(--grid-column-width) * 8 + var(--grid-gap) * 7);
  }
}

@media screen and (min-width: 1400px) {
  .product__media {
    --product-media-width: calc(var(--grid-column-width) * 10 + var(--grid-gap) * 10);
  }

  .product__info {
    --product-info-width: calc(var(--grid-column-width) * 7 + var(--grid-gap) * 6);
  }

  .product--thumbnails-bottom .product__media {
    --product-media-width: calc(var(--grid-column-width) * 9 + var(--grid-gap) * 8);
  }

  .product--thumbnails-bottom .product__info {
    --product-info-width: calc(var(--grid-column-width) * 8 + var(--grid-gap) * 7);
    position:sticky;
    top:140px;
      align-self: start;
  }
}

.product__media {
  display: block;
}

.product__media-list-wrapper {
  margin-inline-start: auto;
  margin-inline-end: auto;
  position: relative;
}

.product__media-list, .product__media-item {
  text-align: center;
  min-width: 100%;
  display: block;
}

.product__media-item {
  width: 100%;
}

.product__media-list:not(.flickity-enabled) .product__media-item:not(.is-selected), .product__media .is-filtered {
  display: none;
}

.product__media-image-wrapper {
  background: rgb(var(--secondary-background));
  border-radius: 10px;
  z-index: 0;
  overflow: hidden;
}

.product__media-nav {
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: center;
  margin-block-start: 18px;
  display: flex;
  position: relative;
}

.product__thumbnail-scroll-shadow {
  max-width: 100%;
}

.product__thumbnail-list {
  position: relative;
}

.product__thumbnail-list-inner {
}

.product__thumbnail-item {
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  padding: 2px;
  display: inline-block;
  position: relative;
}

.product__thumbnail {
  width: 76px;
  min-width: 76px;
  padding: 2px;
  position: relative;
}

.product__thumbnail, .product__thumbnail > img {
  border-radius: min(var(--block-border-radius), 15px);
}

.product__thumbnail .placeholder-background {
  display: block;
}

.product__thumbnail:after {
  content: "";
  box-shadow: 0 0 0 2px rgb(var(--text-color));
  border-radius: inherit;
  opacity: 0;
  width: 100%;
  height: 100%;
  transition: opacity .2s, transform .2s;
  position: absolute;
  top: 0;
  transform: scale(.9);
}

.product__thumbnail:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):after {
  left: 0;
}

.product__thumbnail:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):after {
  right: 0;
}

.product__thumbnail-item[aria-current] .product__thumbnail:after {
  opacity: 1;
  transform: scale(1);
}

.product__thumbnail-badge {
  position: absolute;
  top: 4px;
}

.product__thumbnail-badge:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 4px;
}

.product__thumbnail-badge:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 4px;
}

.product__view-in-space {
  justify-content: center;
  align-items: center;
  margin-block-start: 8px;
  margin-block-end: 8px;
  display: flex;
}

.product__view-in-space svg {
  margin-inline-end: 14px;
}

.product__view-in-space[data-shopify-xr-hidden] {
  visibility: hidden;
}

.product__zoom-button {
  border: 1px solid rgb(var(--border-color));
  border-radius: var(--button-border-radius);
  background: rgb(var(--root-background));
  color: rgb(var(--root-text-color));
  z-index: 1;
  justify-content: center;
  align-items: center;
  width: 36px;
  height: 36px;
  transition: opacity .25s ease-in-out, visibility .25s ease-in-out, transform .25s ease-in-out, color .25s ease-in-out;
  display: flex;
  position: absolute;
  bottom: 16px;
}

.product__zoom-button:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 16px;
}

.product__zoom-button:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 16px;
}

.product__zoom-button[hidden] {
  opacity: 0;
  visibility: hidden;
  transform: scale(.4);
}

@media screen and (max-width: 999px) {
  .product__media-list {
    margin-inline: calc(-1 * var(--container-gutter));
  }

  .product__media-item {
    padding-inline: var(--container-gutter);
  }

  .product__media-nav .dots-nav {
    padding-inline-start: 20px;
    padding-inline-end: 20px;
  }

  .product__thumbnail-list {
    margin-inline: calc(-1 * var(--container-gutter));
  }

  .product__thumbnail-list-inner {
    padding-inline: var(--container-gutter);
    width: max-content;
  }
}

@media screen and (min-width: 1000px) {
  .product__view-in-space {
    display: none;
  }

  .product__media-nav {
    margin-block-start: 16px;
    margin-block-end: 16px;
  }

  .product__thumbnail-scroll-shadow {
    --scroll-shadow-size: 65px;
    --scroll-shadow-right: linear-gradient(to left, rgb(var(--background)), rgba(var(--background), 0));
    --scroll-shadow-left: linear-gradient(to right, rgb(var(--background)), rgba(var(--background), 0));
    --scroll-shadow-bottom: linear-gradient(to top, rgb(var(--background)), rgba(var(--background), 0));
    --scroll-shadow-top: linear-gradient(to bottom, rgb(var(--background)), rgba(var(--background), 0));
  }

  .product__thumbnail-list {
    overflow: hidden;
  }

  .product__thumbnail-list-inner {
    gap: 8px;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
  }

  .product__thumbnail {
    width: auto;
  }

  .product--thumbnails-left .product__media {
    flex-direction: row-reverse;
    align-items: flex-start;
    display: flex;
  }

  .product--thumbnails-left .product__media-nav {
    align-items: flex-start;
    margin-block-start: 0;
  }

  .product--thumbnails-left .product__media-list-wrapper {
    flex-grow: 1;
  }

  .product--thumbnails-left .product__media-prev-next {
    transform: rotate(90deg) scale(var(--scale-factor));
  }

  .product--thumbnails-left .product__thumbnail-list {
    max-height: calc((var(--product-media-width)  - 136px) / var(--largest-image-aspect-ratio));
    margin-inline-end: 36px;
  }

  .product--thumbnails-left .product__thumbnail-list-inner {
    grid-auto-flow: row;
  }

  .product--thumbnails-left .product__thumbnail {
    width: 60px;
    min-width: 60px;
  }
}

@media screen and (min-width: 1400px) {
  .product__media {
    padding-inline-start: 36px;
  }
}

@media screen and (pointer: fine) {
  .product__zoom-button:hover {
    color: rgba(var(--text-color), .7);
  }
}

.product-meta {
  border-bottom: 1px solid rgb(var(--border-color));
  margin: 24px 0px 10px 0px;
  padding-block-end: 16px;
  display: block;
}

.product-meta__price-list-container {
  align-items: center;
  margin-block-start: -8px;
  display: flex;
  gap: 15px
}

.product-meta__label-list:not(:empty) {
  margin-inline-start: 16px;
  display: none;
}

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

.product-meta__sku {
  letter-spacing: .45px;
  position: relative;
  top: 1px;
  font-weight: 500;
  color: #0000009c!important;
  margin-top: 8px;
}

.product-meta__taxes-included {
  margin-block-start: 0;
}

.product-meta__aside {
  justify-content: space-between;
  margin-block-start: 18px;
  display: flex;
}

.product-meta__share {
  align-items: center;
  display: flex;
}

.product-meta__share-label {
  margin-inline-end: 20px;
}

.product-meta__share-button-list {
  grid-auto-flow: column;
  justify-content: flex-start;
  align-items: center;
  gap: 18px;
  display: inline-grid;
}

.product-meta__reviews-badge .rating__caption {
  position: relative;
  margin-top:2px
}

.product-meta__reviews-badge .rating__caption:after {
  content: "";
  transform-origin: var(--transform-origin-end);
  background: currentColor;
  width: 100%;
  height: 1px;
  transition: transform .3s;
  position: absolute;
  bottom: 2px;
  left: 0;
  transform: scaleX(0);
}

@media screen and (min-width: 1000px) {
  .product-meta {
    margin-block-start: 0;
  }

  .product-meta__title {
    margin-block-end: 5px;
    margin-top:5px;
    font-size: 1.7em;
    font-weight: 600;
  }
}

@media screen and (pointer: fine) {
  .product-meta__reviews-badge:hover .spr-badge-caption:after, .product-meta__reviews-badge:hover .rating__caption:after {
    transform-origin: var(--transform-origin-start);
    transform: scaleX(1);
  }
}

.product-form {
  row-gap: 16px;
  display: grid;
}

.product-form__variants {
    display: block;
}

.product-form__option-info, .product-form__quantity-label {
  margin-block-end: 8px;
  display: flex;
  font-size: 0.9em;
  font-weight: 500;
}

.product-form__option-value {
  margin-inline-start: 8px;
}

.product-form__option-link {
  margin-inline-start: auto;
}

.no-js .product-form__option-selector {
  display: none;
}

.product-form__option-selector + .product-form__option-selector {
  margin-block-start: 16px;
}

.product-form__option-selector[data-selector-type="dropdown"] {
  display: flex;
  align-items: center;
  gap: 10px;
}

.product-form__payment-container {
  gap: 10px;
  margin-block-start: 8px;
  display: grid;
}

.product-form__description {
  margin-block-start: 8px;
  margin-block-end: 8px;
}

.product-form__image--center {
  text-align: center;
}

.product-form__image--right {
  text-align: end;
}

.product-form__image img {
  width: 100%;
}

shopify-payment-terms {
  display: block;
}

.product-form__view-details {
  text-align: center;
  margin-block-start: 24px;
}

.product-form__store-availability-container {
  display: block;
}

.product-form__store-availability-container:empty {
  display: none;
}

@media screen and (min-width: 741px) {
  .product-form__payment-container {
    margin-block-start: 16px;
  }
}

.inventory {
  font-weight: 500;
  font-size: 0.9em
}

.inventory--low {
  font-weight: 500;
  font-size: 0.9em
}

.inventory-icon {
  display:flex;
  gap:5px;
  align-items: center;
}

.inventory--precommande {
  color:#458f39
}

.product-content {
  margin-block-start: 36px;
  margin-block-end: 36px;
  display: flex;
}

@media screen and (max-width: 999px) {
  .product-content {
    flex-direction: column;
  }

  .product-content__tabs + .product-content__featured-products {
    margin-block-start: 25px;
  }
}

@media screen and (min-width: 741px) and (max-width: 999px) {
  .product-content {
    margin-block-start: 48px;
    margin-block-end: 48px;
  }
}

@media screen and (min-width: 1000px) {
  .product-content {
    justify-content: space-between;
    margin-block-start: 80px;
    margin-block-end: 80px;
  }
}

@media screen and (min-width: 1200px) {
  .product-content {
    margin-inline: calc(var(--grid-column-width)  + var(--grid-gap));
  }
}

.product-tabs__trust-list {
  display:flex;
  flex-wrap:wrap;
  gap: 20px;
  
}

.product-tabs__trust-list:not(:first-child) {
  margin-block-start: 32px;
}

.product-tabs__tab-item-wrapper:not([hidden]) {
  display: block;
}

@media screen and (max-width: 740px) {
  .product-content__tabs {
    margin: 0 calc(-1 * var(--container-gutter));
  }

  .product-tabs__tab-item-wrapper {
    --anchor-offset: 0px;
    padding: 0 var(--container-gutter);
  }

  .product-tabs__trust-title:not(:last-child) {
    margin-block-end: 0px;
  }
}

@media screen and (max-width: 999px) {
  .product-tabs__tab-item-wrapper {
    border-top: 1px solid rgb(var(--border-color));
    display: block;
  }

  .product-tabs__tab-item-wrapper:last-child {
    border-bottom: 1px solid rgb(var(--border-color));
  }

  .product-tabs__tab-item-content {
    margin-block-start: -2px;
    margin-block-end: 25px;
  }
}

@media screen and (min-width: 741px) {
  .product-tabs__trust-list:not(:first-child) {
    margin-block-start: 15px;
    padding-inline-start: 0;
  }

  .product-tabs__trust-list:first-child {
    text-align: center;
  }

  .product-tabs__trust-title {
    margin-block-start: 25px;
    display: inline-flex;
  }

  .product-tabs__trust-title:not(:last-child) {
    margin-inline-end: 35px;
  }
}

@media screen and (min-width: 1000px) {
  .product-content__tabs {
    width: calc(var(--grid-column-width) * 10 + var(--grid-gap) * 10);
    flex: none;
  }

  .product-content__tabs:only-child {
    width: calc(var(--grid-column-width) * 12 + var(--grid-gap) * 12);
    margin-inline-end: auto;
  }

  .product-tabs__tab-item-wrapper .collapsible {
    visibility: visible;
    height: auto;
    overflow: auto;
  }
}

.product-content__featured-products-title {
  margin-block-end: 0;
}

.product-content__featured-products-list {
  grid-gap: var(--grid-gap);
  grid-template-columns: 1fr 1fr;
  margin-block-start: 20px;
  display: grid;
}

@media screen and (max-width: 740px) {
  .product-content__featured-products .product-item {
    scroll-snap-align: center;
    scroll-snap-stop: always;
    scroll-snap-margin: var(--container-gutter);
    scroll-margin: var(--container-gutter);
    flex-direction: column;
    align-items: center;
    background: rgba(var(--background), 1);
    border-radius: 12px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05);
    padding: 15px;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
  }
  
  .product-content__featured-products .product-item:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 15px rgba(0, 0, 0, 0.1);
  }

  .product-content__featured-products-list {
    grid-template-columns: 1fr;
    grid-gap: 16px;
    margin-top: 16px;
  }

  .product-content__featured-products .product-item__image-wrapper {
    width: 100%;
    max-width: 140px;
    margin: 0 auto 16px;
  }

  .product-content__featured-products .product-item__info {
    text-align: center;
    width: 100%;
  }

  .product-content__featured-products .price-list {
    justify-content: center;
    margin-top: 8px;
  }

  .product-content__featured-products .product-item__link {
    margin: 10px auto 0;
    display: inline-block;
  }
  
  .product-content__featured-products-title {
    font-weight: 600;
    font-size: 1.1rem;
    text-align: center;
    margin-bottom: 10px;
    position: relative;
    padding-bottom: 12px;
  }
  
  .product-content__featured-products-title::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 50px;
    height: 2px;
    background: currentColor;
    opacity: 0.3;
  }
}

@media screen and (min-width: 741px) and (max-width: 999px) {
  .product-content__featured-products-list {
    grid-template-columns: 214px 214px;
  }
}

@media screen and (min-width: 1000px) {
  .product-content__featured-products {
    width: calc(var(--grid-column-width) * 9 + var(--grid-gap) * 8);
    flex: none;
  }

  .product-content__featured-products-list {
    margin-block-start: 32px;
  }
}

@media screen and (min-width: 1200px) {
  .product-content__featured-products {
    width: calc(var(--grid-column-width) * 7 + var(--grid-gap) * 6);
  }
}

.quick-buy-product {
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  display: flex;
}

.quick-buy-product__image {
  flex: none;
  align-self: flex-start;
  width: 65px;
  margin-inline-end: 20px;
}

@media screen and (max-width: 740px) {
  .quick-buy-product {
    padding-block-start: 14px;
    padding-block-end: 14px;
    padding-inline-end: 32px;
  }

  .popover--quick-buy .product-form {
    padding-inline-start: 24px;
    padding-inline-end: 24px;
  }

  .popover--quick-buy .product-form > :first-child:not(.product-form__buy-buttons) {
    padding-block-start: 16px;
  }

  .popover--quick-buy .product-form__buy-buttons {
    margin-inline: calc(-1 * var(--container-gutter));
    padding: 16px;
    padding-block-end: max(16px, env(safe-area-inset-bottom, 0px)  + 16px);
  }

  .popover--quick-buy .product-form__buy-buttons:not(:only-child) {
    border-top: 1px solid rgb(var(--border-color));
    background: rgb(var(--root-background));
    margin-block-start: 8px;
    position: sticky;
    bottom: 0;
  }

  .popover--quick-buy .product-form__payment-container {
    margin-block-start: 0;
  }
}

@media screen and (min-width: 741px) {
  .quick-buy-product {
    margin-block-start: 32px;
    margin-block-end: 24px;
    margin-inline-start: 0;
    margin-inline-end: 0;
  }

  .quick-buy-product__image {
    width: 114px;
    margin-inline-end: 32px;
  }
}

.product-sticky-form {
  z-index: 4;
  width: 100%;
  padding: 15px 0px;
  transition: opacity .25s ease-in-out, transform .25s ease-in-out, visibility .25s ease-in-out;
  display: block;
  position: fixed;
  bottom: 0;
  background: #ffffff;
  box-shadow: 0 -2px 10px #a1a1a1;
}

.product-sticky-form:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 0;
}

.product-sticky-form:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 0;
}

.product-sticky-form[hidden] {
  opacity: 0;
  visibility: hidden;
  transform: translateY(100%);
}

@media screen and (max-width: 999px) {
  .product-sticky-form .product-form__add-button {
    width: 100%;
  }
}

@media screen and (min-width: 1000px) {
  .product-sticky-form {
    background: rgb(var(--background));
    border-bottom: 1px solid rgb(var(--border-color));
    inset-block: calc(var(--header-height, 0px) * var(--enable-sticky-header)  + var(--announcement-bar-height, 0px) * var(--enable-sticky-announcement-bar)) auto;
    box-shadow: 0 6px 5px -5px rgba(var(--border-color), .4), 0 1px rgb(var(--border-color)) inset;
    padding-block-start: 16px;
    padding-block-end: 16px;
    transition: opacity .25s ease-in-out, transform .25s ease-in-out, visibility .25s ease-in-out;
  }

  .product-sticky-form[hidden] {
    transform: translateY(-100%);
  }

  .product-sticky-form:hover {
    z-index: 4;
  }

  .product-sticky-form__form, .product-sticky-form__variants {
    margin-inline-start: auto;
    display: flex;
  }

  .product-sticky-form__content-wrapper, .product-sticky-form__inner {
    align-items: center;
    display: flex;
  }

  .product-sticky-form__image-wrapper {
    flex: none;
    width: 55px;
    margin-inline-end: 18px;
  }

  .product-sticky-form__variants .select-wrapper + .select-wrapper {
    margin-inline-start: -1px;
  }

  .product-sticky-form__variants .select-wrapper:not(:first-child):not(:last-child) .select {
    border-radius: 0;
  }

  .product-sticky-form__variants .select-wrapper:first-child:not(:only-child) .select:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
  }

  .product-sticky-form__variants .select-wrapper:first-child:not(:only-child) .select:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
  }

  .product-sticky-form__variants .select-wrapper:last-child:not(:only-child) .select:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
  }

  .product-sticky-form__variants .select-wrapper:last-child:not(:only-child) .select:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
  }

  .product-sticky-form__variants .select {
    min-width: 150px;
    max-width: 300px;
  }

  @supports (height: min(1px, 2px)) {
    .product-sticky-form__variants .select {
      min-width: min(max(var(--largest-option-width), 150px), 300px);
    }
  }

  .product-sticky-form .button, .product-sticky-form .select {
    height: 48px;
    line-height: 48px;
  }

  .product-sticky-form__payment-container {
    margin-inline-start: 10px;
  }
}

.gift-card-recipient__fields {
  margin-block-start: 10px;
}

.product-item-meta {
  display: block;
}

.product-item-meta__vendor {
  margin-block-end: 6px;
  display: none;
}

.product-item-meta__title {
  line-height: 1.6;
  display: block;
  font-size: 0.9em;
  font-weight: 500;
  color:#0e0e0e;
}

.product-item-meta__reviews-badge {
  display: block;
  margin-bottom: 5px;
}

.product-item-meta__color-count, .product-item-meta__reviews-badge + .product-item-meta__color-count {
  margin-block-start: 4px;
}

.product-item-meta__reviews-badge .spr-icon {
  width: 12px;
  height: 12px;
}

.product-item-meta__swatch-list {
  overflow-wrap: anywhere;
  justify-content: flex-start;
  gap: 12px;
  margin-block-start: 8px;
  margin-block-end: 5px;
  margin-left: 2px;
}

.product-item-meta__property-list {
  grid-auto-flow: row;
  margin-block-start: 2px;
  margin-block-end: 4px;
  display: grid;
}

@media screen and (min-width: 741px) {
  .product-item-meta__property-list {
    margin-block-start: 2px;
    margin-block-end: 6px;
  }

  .product-item-meta__color-count {
    margin-block-start: 8px;
  }

  .product-item-meta__title {
    line-height: 1.5;
    font-size: 1em;
    font-weight: 500;
  }
}

.product-item {
  flex-direction: column;
  display: flex;
  position: relative;
}

.product-item__image-wrapper {
  margin-block-end: 10px;
  display: block;
  position: relative;
  overflow: hidden;
}

.product-item__image-wrapper--placeholder {
  fill: currentColor;
}

.product-item__label-list {
  z-index: 1;
  position: absolute;
  top: 10px;
}

.product-item__label-list2 {
  z-index: 1;
  position: absolute;
  top: 10px;
}

.product-item__label-list3 {
  z-index: 1;
  position: absolute;
  bottom: 10px;
}

.product-item__label-list:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 10px;
}

.product-item__label-list:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 10px;
}

.product-item__label-list2:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 10px;
}

.product-item__label-list2:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 10px;
}

.product-item__label-list3:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 10px;
}

.product-item__label-list3:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 10px;
}

.product-item__image-wrapper--multiple .product-item__primary-image, .product-item__image-wrapper--multiple .product-item__secondary-image {
  transition: opacity .3s ease-in-out, visibility .3s ease-in-out;
}

.product-item__aspect-ratio {
  isolation: isolate;
}

.product-item__primary-image, .product-item__secondary-image {
  border-radius: var(--block-border-radius-reduced);
}


.product-item__secondary-image {
  visibility: hidden;
  opacity: 0;
  object-fit: contain;
  object-position: center;
  display: none;
  position: absolute;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
}

.product-item__info {
  text-align: left;
  flex-direction: column;
  flex-grow: 1;
  justify-content: flex-start;
  display: flex;
  gap: 3px
}

.product-item__info--with-button {
  justify-content: space-between;
}

.product-item__cta {
  margin-block-start: 16px;
}

.product-item__quick-form {
  visibility: hidden;
  opacity: 0;
  width: 100%;
  padding: 10px;
  transition: visibility .2s ease-in-out, opacity .2s ease-in-out;
  position: absolute;
  bottom: 0;
}

.product-item__quick-form:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 0;
}

.product-item__quick-form:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 0;
}

.product-item__quick-buy-button {
  background: rgb(var(--root-background));
  color: rgb(var(--root-text-color));
  border: 1px solid rgb(var(--root-border-color));
  padding: 5px;
  position: absolute;
  bottom: 12px;
}

.product-item__quick-buy-button:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 12px;
}

.product-item__quick-buy-button:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 12px;
}

.product-item__link {
  margin-block-start: 6px;
  margin-block-end: 0;
  margin-inline-start: auto;
  margin-inline-end: auto;
  display: inline-block;
}

@media screen and (pointer: fine) {
  .product-item__secondary-image {
    display: block;
  }

  .product-item__image-wrapper--multiple:hover .product-item__primary-image {
    visibility: hidden;
    opacity: 0;
  }

  .product-item__image-wrapper--multiple:hover .product-item__secondary-image, .product-item__image-wrapper:hover .product-item__quick-form {
    visibility: visible;
    opacity: 1;
  }
}

@media screen and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .product-item__quick-form {
    transition: visibility .2s ease-in-out, opacity .2s ease-in-out, transform .2s ease-in-out;
    transform: translateY(16px);
  }

  .product-item__image-wrapper:hover .product-item__quick-form {
    visibility: visible;
    opacity: 1;
    transform: translateY(0);
  }
}

@media screen and not (pointer: fine) {
  .product-item__quick-form {
    visibility: visible;
    opacity: 1;
  }
}

@media screen and (min-width: 1000px) {
  .product-item__image-wrapper {
    margin-block-end: 15px;
  }
}

.product-list {
  --product-list-column-gap: var(--grid-gap);
}

.product-list:not([hidden]) {
  display: block;
  position: relative;
}

.product-list__inner {
  grid-template-columns: repeat(auto-fit, calc(100% / var(--section-products-per-row)  - var(--product-list-column-gap) * (var(--section-products-per-row)  - 1) / var(--section-products-per-row)));
  gap: var(--product-list-block-spacing) var(--product-list-column-gap);
  display: grid;
  overflow: hidden;
}

.product-list__inner--scroller {
  overflow-x: auto;
}

.product-list--center .product-list__inner {
  justify-content: safe center;
}

@media screen and (max-width: 740px) {
  .product-list {
    --product-list-column-gap: 12px;
  }

  .product-list__inner:not(.product-list__inner--scroller) {
    margin-inline: calc(-1 * var(--container-gutter) / 2);
  }
}

@media screen and (max-width: 999px) {
  .product-list__inner--scroller {
    padding-inline: var(--container-gutter);
    grid-template-columns: none;
    grid-auto-columns: 56vw;
    grid-auto-flow: column;
    min-width: min-content;
  }
}

@media screen and (min-width: 741px) and (max-width: 999px) {
  .product-list__inner--scroller {
    grid-auto-columns: 35vw;
  }
}

@media screen and (min-width: 1000px) {
  .product-list {
    --item-width: calc((var(--container-max-width-minus-gutters)  - 56px) / var(--section-products-per-row)  - (var(--grid-gap) / var(--section-products-per-row) * (var(--section-products-per-row)  - 1)));
  }

  @supports (width: max(1px, 2px)) {
    .product-list {
      --item-width: calc((min(100vw - var(--container-gutter) * 2, var(--container-max-width-minus-gutters))  - 56px) / var(--section-products-per-row)  - (var(--grid-gap) / var(--section-products-per-row) * (var(--section-products-per-row)  - 1)));
    }
  }

  .product-list__prev-next {
    pointer-events: none;
    top: calc(var(--item-width) / var(--smallest-image-aspect-ratio) / 2 - 28px);
    justify-content: space-between;
    width: 100%;
    display: flex;
    position: absolute;
  }

  .product-list__arrow {
    z-index: 1;
    opacity: 0;
    visibility: hidden;
    transition: opacity .15s ease-in-out, visibility .15s ease-in-out, transform .15s ease-in-out;
    transform: scale(.5);
  }

  .product-list:hover .product-list__arrow:not([disabled]) {
    opacity: 1;
    visibility: visible;
    transform: scale(1);
  }

  .product-list__inner--scroller {
    grid-template-columns: none;
    grid-auto-flow: column;
    grid-auto-columns: calc(100% / var(--section-products-per-row, 4)  - (var(--grid-gap) / var(--section-products-per-row, 4) * (var(--section-products-per-row, 4)  - 1)));
    margin-inline-start: 28px;
    margin-inline-end: 28px;
    overflow: hidden;
  }

  .product-list__inner--desktop-no-scroller {
    margin-inline-start: 0;
    margin-inline-end: 0;
  }
}

@media screen and not (pointer: fine) {
  .product-list__arrow:not([disabled]) {
    opacity: 1;
    visibility: visible;
    transform: scale(1);
  }
}

.promotion-block-list {
  --promotion-block-gutter: var(--container-gutter);
  margin: calc(-1 * var(--promotion-block-gutter) / 2);
  flex-wrap: wrap;
  justify-content: center;
  display: flex;
}

.promotion-block {
  --promotion-block-padding: 32px;
  --promotion-block-min-height: 180px;
  margin: calc(var(--promotion-block-gutter) / 2);
  padding: var(--promotion-block-padding);
  background: rgb(var(--section-block-background));
  color: rgb(var(--text-color));
  min-height: var(--promotion-block-min-height);
  align-items: var(--section-blocks-alignment, flex-end);
  border-radius: var(--block-border-radius-reduced);
  width: 100%;
  min-width: 0;
  display: flex;
  position: relative;
  overflow: hidden;
}

.promotion-block--medium {
  --promotion-block-min-height: 210px;
}

.promotion-block--large {
  --promotion-block-min-height: 250px;
}

.promotion-block__content-wrapper {
  width: 65%;
  position: relative;
}

.promotion-block:hover .link {
  -webkit-text-decoration-color: rgb(var(--text-color));
  text-decoration-color: rgb(var(--text-color));
}

.promotion-block__image {
  object-fit: cover;
  object-position: center;
  border-radius: var(--block-border-radius-reduced);
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
}

.promotion-block__image:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 0;
}

.promotion-block__image:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 0;
}

.promotion-block--quote:before {
  content: "";
  background: rgb(var(--text-color));
  opacity: .3;
  pointer-events: none;
  width: 50px;
  height: 40px;
  position: absolute;
  top: var(--promotion-block-padding);
  -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMDEgODAiPiAgICA8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTAgNDEuNzdWMGg0MS42MDR2NDEuNzdMMjAuMDI2IDgwSC45ODdMMjEuNzIgNDEuNzdIMHptNTkuMzk2IDBWMEgxMDF2NDEuNzdMNzkuNDIyIDgwSDYwLjM4M2wyMC43MzItMzguMjNINTkuMzk2eiIgZmlsbD0iY3VycmVudENvbG9yIiAvPjwvc3ZnPg==");
  mask-image: url("data:image/svg+xml;base64,PHN2ZyBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMDEgODAiPiAgICA8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTAgNDEuNzdWMGg0MS42MDR2NDEuNzdMMjAuMDI2IDgwSC45ODdMMjEuNzIgNDEuNzdIMHptNTkuMzk2IDBWMEgxMDF2NDEuNzdMNzkuNDIyIDgwSDYwLjM4M2wyMC43MzItMzguMjNINTkuMzk2eiIgZmlsbD0iY3VycmVudENvbG9yIiAvPjwvc3ZnPg==");
  -webkit-mask-size: 50px 40px;
  mask-size: 50px 40px;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}

.promotion-block--quote:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  left: var(--promotion-block-padding);
}

.promotion-block--quote:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi))):before {
  right: var(--promotion-block-padding);
}

.promotion-block--quote .promotion-block__content-wrapper {
  margin-block-start: 50px;
}

.promotion-block--video {
  padding: 0 !important;
}

.promotion-block .video-wrapper {
  --video-height: calc(var(--promotion-block-min-height)  + 60px);
  min-height: var(--promotion-block-min-height);
  height: 100%;
}

.promotion-block .video-wrapper--native {
  width: 100%;
}

.promotion-block--products {
  text-align: center;
  justify-content: center;
  align-items: center;
  padding: 24px !important;
}

.promotion-block__product-list-wrapper {
  display: block;
}

.promotion-block__product-list {
  scroll-snap-type: x mandatory;
  flex-wrap: nowrap;
  align-items: center;
  margin-inline-start: -24px;
  margin-inline-end: -24px;
  display: flex;
  overflow: hidden;
}

.promotion-block__product-list-item {
  scroll-snap-align: center;
  scroll-snap-stop: always;
  min-width: 100%;
  display: block;
}

.promotion-block__product-list-item .placeholder-background {
  background: none;
}

.promotion-block__product-list-prev-next {
  pointer-events: none;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  display: flex;
  position: absolute;
  top: calc(50% - 20px);
}

.promotion-block__product-list .product-item__image-wrapper {
  width: 100%;
  max-width: 150px;
  margin-inline-start: auto;
  margin-inline-end: auto;
}

@media screen and not (pointer: fine) {
  .promotion-block__product-list {
    overflow: auto;
  }
}

@media screen and (max-width: 740px) {
  .promotion-block-list--scrollable {
    flex-wrap: nowrap;
  }

  .promotion-block-list--scrollable .promotion-block {
    scroll-snap-align: center;
    scroll-snap-stop: always;
    scroll-snap-margin: var(--promotion-block-gutter);
    scroll-margin: var(--promotion-block-gutter);
    width: 81vw;
  }
}

@media screen and (min-width: 741px) and (max-width: 999px) {
  .promotion-block {
    flex: 1 0 calc(50% - var(--container-gutter));
  }

  .promotion-block .newsletter__form .input-row {
    grid-template-columns: 1fr auto;
  }
}

@media screen and (min-width: 1000px) {
  .promotion-block {
    flex: 1 0 calc(33.3333% - var(--promotion-block-gutter));
  }

  .promotion-block:not(.promotion-block--expand):only-child {
    max-width: 50%;
  }

  .promotion-block--highlight {
    flex-basis: calc(66.6666% - var(--promotion-block-gutter));
  }

  .promotion-block--quote:before {
    width: 60px;
    height: 48px;
    -webkit-mask-size: 60px 48px;
    mask-size: 60px 48px;
  }

  .promotion-block:not(.promotion-block--highlight) .newsletter__form .input-row {
    grid-template-columns: none;
  }
}

@media screen and (min-width: 1200px) {
  .promotion-block {
    --promotion-block-min-height: 250px;
    --promotion-block-padding: 48px;
  }

  .promotion-block--compact {
    --promotion-block-padding: 40px;
  }

  .promotion-block--medium {
    --promotion-block-min-height: 320px;
  }

  .promotion-block--large {
    --promotion-block-min-height: 370px;
  }
}

@media screen and (min-width: 1400px) {
  .promotion-block .newsletter__form .input-row {
    grid-template-columns: 1fr auto;
  }
}

.main-search__form {
  --form-input-field-height: 60px;
  max-width: 390px;
  margin-inline-start: auto;
  margin-inline-end: auto;
  position: relative;
}

.main-search__input {
  padding-inline-end: 55px;
}

.main-search__submit {
  position: absolute;
  top: calc(50% - 10px);
}

.main-search__submit:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 20px;
}

.main-search__submit:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 20px;
}

.main-search__empty-text {
  margin-block-start: 40px;
}

.main-search__results {
  display: block;
}

.main-search__form + .tabs-nav {
  margin-block-start: 38px;
}

@media screen and (min-width: 741px) {
  .main-search__form {
    --form-input-field-height: 80px;
  }

  .main-search__submit:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    right: 32px;
  }

  .main-search__submit:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    left: 32px;
  }

  .main-search__input {
    padding-inline-start: 30px;
    padding-inline-end: 80px;
  }

  .main-search__form + .tabs-nav {
    margin-block-start: 68px;
  }
}

.shop-the-look, .shop-the-look__item {
  display: block;
  position: relative;
  overflow: hidden;
}

.shop-the-look__item {
  background: rgb(var(--secondary-background));
}

.shop-the-look__item[hidden] {
  visibility: hidden;
  z-index: -1;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}

.shop-the-look__item[hidden] .popover, .shop-the-look__item[hidden] .drawer {
  display: none;
}

.shop-the-look__image {
  width: 100%;
}

.shop-the-look__product-wrapper {
  position: absolute;
}

.shop-the-look__dot {
  background: var(--section-dot-inner-background);
  box-shadow: 0 0 0 8px rgb(var(--section-dot-background)) inset, 0 1px 5px #00000026;
  border-radius: 100%;
  width: 24px;
  height: 24px;
  display: block;
  position: relative;
}

@keyframes shopTheLookDotKeyframe {
  0% {
    opacity: 1;
    transform: scale(.4);
  }

  100% {
    opacity: 0;
    transform: scale(1.3);
  }
}

.shop-the-look__dot:after {
  content: "";
  border: 2px solid rgba(var(--section-dot-background), .6);
  border-radius: 100%;
  width: 32px;
  height: 32px;
  animation: 2s ease-in-out infinite shopTheLookDotKeyframe;
  position: absolute;
  top: -4px;
  left: -4px;
}

.shop-the-look__product-wrapper {
  margin-block-start: -12px;
  margin-inline-start: -12px;
}

.shop-the-look__product {
  left: calc(100% + 28px);
  background: rgb(var(--background));
  visibility: hidden;
  opacity: 0;
  will-change: transform;
  transform-origin: top var(--transform-origin-start);
  z-index: 1;
  border-radius: min(var(--block-border-radius), 4px);
  align-items: center;
  width: max-content;
  max-width: 46vw;
  padding-block-start: 15px;
  padding-block-end: 15px;
  padding-inline-start: 32px;
  padding-inline-end: 15px;
  transition: visibility .4s cubic-bezier(.75, 0, .175, 1), opacity .4s cubic-bezier(.75, 0, .175, 1), transform .4s cubic-bezier(.75, 0, .175, 1);
  display: flex;
  position: absolute;
  top: 50%;
  transform: scale(.8)translateY(-50%);
  box-shadow: 0 1px 5px #0000001a;
}

.shop-the-look__product[open] {
  visibility: visible;
  opacity: 1;
  transform: scale(1)translateY(-50%);
}

.shop-the-look__product:before {
  content: "";
  border-style: solid;
  border-color: transparent rgb(var(--background)) transparent transparent;
  border-width: 8px;
  width: 0;
  height: 0;
  position: absolute;
  right: 100%;
}

.shop-the-look__product--reverse {
  transform-origin: top var(--transform-origin-end);
  left: auto;
  right: calc(100% + 28px);
}

.shop-the-look__product--reverse:before {
  border-color: transparent transparent transparent rgb(var(--background));
  left: 100%;
  right: auto;
}

.shop-the-look__product-bottom-wrapper {
  grid-auto-flow: column;
  justify-content: flex-start;
  gap: 12px;
  display: grid;
}

.shop-the-look__product-image {
  flex: none;
  width: 72px;
  margin-inline-end: 24px;
}

.shop-the-look__product-vendor {
  max-width: max-content;
  margin-block-end: 1px;
  display: block;
}

.shop-the-look__product-title {
  margin-block-end: 2px;
  display: block;
}

.shop-the-look__nav {
  background: rgb(var(--background));
  color: rgb(var(--text-color));
  border: 1px solid rgb(var(--border-color));
  border-radius: min(var(--button-border-radius), 10px);
  z-index: 1;
  display: block;
  position: absolute;
  bottom: 24px;
  overflow: hidden;
  transform: translateZ(0);
}

.shop-the-look__prev-next-buttons {
  flex-direction: row;
  justify-content: center;
  align-items: center;
  display: flex;
}

.shop-the-look__arrow {
  border: none;
  border-radius: 0;
}

.shop-the-look__arrow:first-child {
  border-inline-end: 1px solid rgb(var(--border-color));
}

@media screen and (min-width: 741px) {
  .shop-the-look__nav {
    bottom: 40px;
  }
}

@media screen and (min-width: 1000px) {
  .shop-the-look__label {
    text-align: center;
    border-block-end: 1px solid rgb(var(--border-color));
    padding-inline-start: 20px;
    padding-inline-end: 20px;
    line-height: 56px;
  }

  .shop-the-look__arrow:last-child {
    border-inline-start: 1px solid rgb(var(--border-color));
  }

  .shop-the-look__counter {
    text-align: center;
    flex-grow: 1;
    padding-inline-start: 20px;
    padding-inline-end: 20px;
    line-height: 1.4;
    overflow: hidden;
  }

  .shop-the-look__counter-page {
    position: relative;
  }

  .shop-the-look__counter-page-base {
    opacity: 0;
  }

  .shop-the-look__counter-page-transition {
    height: 100%;
    line-height: normal;
    display: inline-block;
    position: absolute;
    top: 0;
  }

  .shop-the-look__counter-page-transition:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    left: 0;
  }

  .shop-the-look__counter-page-transition:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    right: 0;
  }

  .shop-the-look__counter-page-transition[hidden] {
    visibility: hidden;
    transform: translateY(100%);
  }
}

.shopify-challenge__container {
  margin-block: var(--vertical-breather) !important;
}

.shopify-challenge__container .shopify-challenge__button {
  margin-block-start: 30px;
}

.slideshow {
  --slideshow-min-height: 0;
  display: block;
  position: relative;
}

.slideshow--small {
  --slideshow-min-height: 120vw;
}

.slideshow--medium {
  --slideshow-min-height: 133vw;
}

.slideshow--large {
  --slideshow-min-height: 160vw;
}

.slideshow--fit {
  --slideshow-min-height: calc(var(--window-height)  - var(--header-height, 0px) * (-1 * (var(--enable-transparent-header)  - 1))  - var(--announcement-bar-height, 0px));
}

@supports (min-height: 100svh) {
  .slideshow--fit {
    --slideshow-min-height: calc(100svh - var(--header-height, 0px) * (-1 * (var(--enable-transparent-header)  - 1))  - var(--announcement-bar-height, 0px));
  }
}

.slideshow, .slideshow__slide-list, .slideshow__slide, .slideshow__slide-inner {
  min-height: var(--slideshow-min-height);
}

.slideshow__slide {
  z-index: 1;
  display: block;
  position: relative;
}

.slideshow__slide:not(:only-child) {
  cursor: grab;
  -webkit-user-select: none;
  user-select: none;
}

.slideshow__slide[hidden] {
  visibility: hidden;
  z-index: 0;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}

.slideshow__slide:not(:only-child) .slideshow__text-wrapper--bottom {
  padding-block-end: calc(var(--vertical-breather)  + 30px);
}

.slideshow__slide-inner {
  align-items: var(--section-blocks-alignment);
  width: 100%;
  height: 100%;
  display: flex;
  position: relative;
}

.slideshow__slide-inner:before {
  content: "";
  width: 0;
  padding-block-end: calc(100 / var(--mobile-image-aspect-ratio) * 1%);
  display: block;
}

.slideshow__image-wrapper {
  overflow: hidden;
}

.slideshow__image-wrapper, .slideshow__image {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
}

:is(.slideshow__image-wrapper:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)), .slideshow__image:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi))) {
  left: 0;
}

:is(.slideshow__image-wrapper:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)), .slideshow__image:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi))) {
  right: 0;
}

.slideshow__image {
  object-fit: cover;
  object-position: center;
}

.slideshow__image--placeholder {
  background: rgb(var(--secondary-background));
  width: auto;
}

.slideshow__image-wrapper:before {
  content: "";
  background: rgba(var(--section-blocks-overlay-color), var(--section-blocks-overlay-opacity));
  pointer-events: none;
  z-index: 1;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
}

.slideshow__image-wrapper:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  left: 0;
}

.slideshow__image-wrapper:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  right: 0;
}

@supports (width: max(1px, 2px)) {
  .slideshow__text-wrapper--top {
    padding-block-start: max(var(--vertical-breather), calc((var(--header-height)  + 25px) * var(--enable-transparent-header)));
  }
}

@media screen and (min-width: 1000px) {
  @supports (width: max(1px, 2px)) {
    .slideshow__text-wrapper--top {
      padding-block-start: max(var(--vertical-breather), calc((var(--header-height)  + 40px) * var(--enable-transparent-header)));
    }
  }
}

@keyframes slideshowProgressBarAnimation {
  from {
    transform: scaleX(0);
  }

  to {
    transform: scaleX(1);
  }
}

.slideshow__nav {
  z-index: 1;
  pointer-events: none;
  justify-content: center;
  display: flex;
  position: absolute;
  bottom: 15px;
  left: 0;
  right: 0;
}

.slideshow__progress-bar {
  pointer-events: auto;
  flex-basis: 48px;
  margin: 0 8px;
  padding: 18px 0;
  position: relative;
}

.slideshow__progress-bar:before, .slideshow__progress-bar:after {
  content: "";
  background: #ffffff;
  width: 100%;
  height: 2px;
  transition: background .2s ease-in-out;
  position: absolute;
  top: calc(50% - 1px);
}

.slideshow__progress-bar:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  left: 0;
}

.slideshow__progress-bar:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):after {
  left: 0;
}

.slideshow__progress-bar:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  right: 0;
}

.slideshow__progress-bar:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):after {
  right: 0;
}

.slideshow__progress-bar:after {
  transform-origin: var(--transform-origin-start);
  background: #dbb27b;
  transform: scaleX(0);
}

.slideshow__progress-bar[aria-current="true"]:after {
  animation: slideshowProgressBarAnimation var(--section-autoplay-duration) linear;
  animation-play-state: var(--section-animation-play-state, paused);
  animation-fill-mode: forwards;
}

@media screen and (min-width: 741px) {
  .slideshow--small {
    --slideshow-min-height: 70vw;
  }

  .slideshow--medium {
    --slideshow-min-height: 90vw;
  }

  .slideshow--large {
    --slideshow-min-height: 105vw;
  }
}

@media screen and (min-width: 1000px) {
  .slideshow--small {
    --slideshow-min-height: 42vw;
  }

  .slideshow--medium {
    --slideshow-min-height: 48vw;
  }

  .slideshow--large {
    --slideshow-min-height: 54vw;
  }

  .slideshow__slide--split .slideshow__image-wrapper {
    width: 50%;
  }

  .slideshow__slide--split .slideshow__image-wrapper--secondary {
    width: calc(50% + 1px);
  }

  .slideshow__slide--split .slideshow__image-wrapper--secondary:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    left: calc(50% - 1px);
  }

  .slideshow__slide--split .slideshow__image-wrapper--secondary:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    right: calc(50% - 1px);
  }

  .slideshow__slide-inner:before {
    padding-block-end: calc(100 / var(--image-aspect-ratio) * 1%);
  }

  .slideshow__nav {
    bottom: 23px;
  }

  .slideshow__progress-bar {
    flex-basis: 64px;
  }
}

@media screen and (min-width: 1200px) {
  .slideshow--small {
    --slideshow-min-height: 38vw;
  }

  .slideshow--medium {
    --slideshow-min-height: 40vw;
  }

  .slideshow--large {
    --slideshow-min-height: 48vw;
  }
}

.store-availability-container:not(:first-child) {
  margin-block-start: 8px;
}

.store-availability-information, .store-availability-list__stock {
  align-items: center;
  display: flex;
}

.store-availability-information {
  align-items: baseline;
}

.store-availability-information .icon--store-availability-out-of-stock {
  position: relative;
  top: 1px;
}

.store-availability-information-container {
  margin-inline-start: 8px;
}

.store-availability-information__title, .store-availability-information__link {
  display: block;
}

.store-availability-information__title {
  margin-block-end: -2px;
}

.store-availability-information__link {
  margin-block-start: 10px;
}

.store-availabilities-modal__product-title {
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 85%;
  margin: 0;
  overflow: hidden;
}

.store-availabilities-modal__variant-title {
  margin-block-start: 6px;
}

.store-availabilities-list {
  margin-block-start: 10px;
}

.store-availability-list__item {
  padding-block-start: 24px;
}

.store-availability-list__item + .store-availability-list__item {
  border-top: 1px solid rgb(var(--border-color));
  margin-block-start: 22px;
}

.store-availability-list__location {
  margin-block-end: 2px;
}

.store-availability-list__stock svg {
  margin-inline-end: 8px;
}

.store-availability-list__contact {
  margin-block-start: 8px;
}

.store-availability-list__contact p {
  margin-block-end: 0;
}

.testimonial-list {
  max-width: 580px;
  margin-inline-start: auto;
  margin-inline-end: auto;
  display: block;
}

.testimonial__author, .testimonial-list__nav {
  padding: 0 24px;
}

.testimonial-list__wrapper {
  flex-wrap: nowrap;
  display: flex;
  overflow: hidden;
}

.testimonial {
  will-change: transform;
  flex-shrink: 0;
  order: 0;
  width: 100%;
  display: block;
}

.testimonial[hidden] {
  visibility: hidden;
  order: 1;
}

.testimonial:not(:only-child) {
  cursor: grab;
  -webkit-user-select: none;
  user-select: none;
}

.testimonial__content {
  margin: 0;
}

.testimonial__author {
  margin-block-start: 32px;
}

.testimonial-list__nav {
  margin-block-start: 40px;
}

@media screen and (min-width: 741px) {
  .testimonial__author, .testimonial-list__nav {
    margin-block-start: 32px;
    padding-block-start: 0;
    padding-block-end: 0;
    padding-inline-start: 0;
    padding-inline-end: 48px;
  }
}

@media screen and (min-width: 1000px) {
  .testimonial-list {
    max-width: 690px;
  }
}

@media screen and (min-width: 1200px) {
  .testimonial-list {
    max-width: 875px;
  }

  .testimonial__author, .testimonial-list__nav {
    margin-block-start: 40px;
    padding-block-start: 0;
    padding-block-end: 0;
    padding-inline-start: 0;
    padding-inline-end: 70px;
  }
}

.text-with-icons {
  display: block;
}

.text-with-icons__list {
  scroll-snap-type: x mandatory;
  margin-inline: calc(-1 * var(--container-gutter));
  display: flex;
}

.text-with-icons__item {
  text-align: center;
  scroll-snap-align: center;
  scroll-snap-stop: always;
  flex: none;
  width: 100%;
  padding: 0 48px;
  display: block;
}

.text-with-icons__icon-wrapper {
  margin-block-end: 16px;
}

.text-with-icons__custom-icon {
  max-width: 24px;
  display: block;
}

.text-with-icons__icon-wrapper > * {
  margin: 0 auto;
}

.text-with-icons__dots {
  margin-block-start: 26px;
}

@media screen and (min-width: 1000px) {
  .text-with-icons__list {
    grid-auto-columns: minmax(200px, 400px);
    grid-auto-flow: column;
    justify-content: center;
    gap: 48px;
    margin-inline-start: 0;
    margin-inline-end: 0;
    display: grid;
  }

  .text-with-icons__item {
    padding: 0;
  }

  .text-with-icons__content-wrapper .heading + p {
    margin-block-start: 16px;
  }
}

.timeline__inner {
  position: relative;
}

.timeline__list-wrapper {
  display: block;
}

.timeline__list {
  grid-auto-flow: column;
  justify-content: safe center;
  align-items: center;
  min-width: min-content;
  display: grid;
  position: relative;
}

.timeline__item {
  color: rgb(var(--text-color));
}

.timeline__content {
  background: rgb(var(--section-box-background));
  padding: 40px;
}

.timeline__image.placeholder-background {
  fill: rgb(var(--section-background));
  background: rgb(var(--text-color));
}

.timeline__nav-wrapper {
  margin-block-start: 40px;
}

.timeline__nav {
  grid-template-columns: repeat(var(--section-items-count), minmax(0, 1fr));
  align-items: start;
  padding-block-start: 18px;
  display: grid;
  position: relative;
}

.timeline__nav-item {
  opacity: .7;
  padding-inline-end: 48px;
  transition: opacity .2s ease-in-out;
}

.timeline__nav-item:last-child {
  padding-inline-end: 0;
}

.timeline__nav-item[aria-current="true"] {
  opacity: 1;
}

.timeline__progress-bar {
  width: 100%;
  position: absolute;
  top: 0;
}

.timeline__progress-bar:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: 0;
}

.timeline__progress-bar:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: 0;
}

.timeline__progress-bar:before {
  transition: transform .3s ease-in-out;
}

.timeline__prev-next-buttons {
  z-index: 1;
  position: absolute;
  top: calc(50% - 56px);
}

.timeline__prev-next-buttons:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  right: calc(var(--container-outer-width)  - 28px);
}

.timeline__prev-next-buttons:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
  left: calc(var(--container-outer-width)  - 28px);
}

@media screen and (max-width: 999px) {
  .timeline {
    --timeline-image-max-width: 70vw;
    --timeline-content-max-width: 79vw;
  }

  .timeline__list-wrapper {
    scroll-snap-type: x mandatory;
  }

  .timeline__list-wrapper .container {
    padding-inline-start: 0;
    padding-inline-end: 0;
  }

  .timeline__list {
    padding-inline: calc((100vw - var(--timeline-image-max-width)) / 2);
  }

  .timeline__item {
    grid-template-columns: var(--timeline-image-max-width) var(--timeline-content-max-width);
    align-items: center;
    display: grid;
  }

  .timeline__item:not(:last-child) {
    padding-inline-end: calc((100vw - var(--timeline-image-max-width)));
  }

  .timeline__image-wrapper {
    position: sticky;
  }

  .timeline__image-wrapper:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    left: calc((100vw - var(--timeline-image-max-width)) / 2);
  }

  .timeline__image-wrapper:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)) {
    right: calc((100vw - var(--timeline-image-max-width)) / 2);
  }

  .timeline__image {
    border-radius: var(--block-border-radius);
    width: 100%;
  }

  .timeline__content-wrapper {
    max-width: var(--timeline-content-max-width);
    box-shadow: -10px 0 30px 10px rgba(var(--section-background), .2);
    border-radius: var(--block-border-radius);
    z-index: 1;
  }

  .timeline__content {
    border-radius: var(--block-border-radius);
    margin-inline-end: calc(-1 * (var(--timeline-content-max-width)  - var(--timeline-image-max-width)));
    position: relative;
  }

  .timeline__content:before {
    content: "";
    width: var(--timeline-image-max-width);
    pointer-events: none;
    height: 100%;
    position: absolute;
    top: 0;
  }

  .timeline__content:not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
    right: 100%;
  }

  .timeline__content:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
    left: 100%;
  }

  .timeline__content, .timeline__content:before {
    scroll-snap-align: center;
    scroll-snap-stop: always;
  }

  .timeline__nav-wrapper {
    margin-inline: calc(-1 * var(--container-gutter));
  }

  .timeline__nav-scroller {
    width: max-content;
    min-width: 100%;
  }

  .timeline__nav {
    margin-inline-start: 24px;
    margin-inline-end: 24px;
  }

  .timeline__nav-item {
    max-width: 190px;
  }
}

@media screen and (min-width: 741px) and (max-width: 999px) {
  .timeline {
    --timeline-image-max-width: 50vw;
    --timeline-content-max-width: 54vw;
  }
}

@media screen and (min-width: 1000px) {
  .timeline__list {
    align-items: stretch;
  }

  .timeline__list-wrapper {
    overflow: hidden;
  }

  .timeline__item {
    width: calc(var(--grid-column-width) * 13 + var(--grid-gap) * 12);
    background: rgb(var(--section-box-background));
    border-radius: var(--block-border-radius);
    z-index: 0;
    flex: none;
    transition: opacity .25s ease-in-out;
    display: flex;
    overflow: hidden;
  }

  .timeline__item[hidden] {
    opacity: .2;
    will-change: opacity;
  }

  .timeline__item:not(:last-child) {
    margin-inline-end: calc(var(--grid-column-width)  + var(--grid-gap));
  }

  .timeline__item:last-child:not(:only-child) {
    margin-right: var(--container-outer-width);
  }

  .timeline__content-wrapper {
    align-self: center;
  }

  .timeline__content-wrapper--top {
    align-self: flex-start;
  }

  .timeline__content-wrapper--bottom {
    align-self: flex-end;
  }

  .timeline__image-wrapper, .timeline__content-wrapper {
    flex: none;
    width: 50%;
  }

  .timeline__image-wrapper {
    min-height: 100%;
  }

  .timeline__image {
    object-fit: cover;
    object-position: center;
    width: 100%;
    height: 100%;
  }

  .timeline__nav-item {
    padding-inline-end: 20px;
  }
}

@media screen and (min-width: 1400px) {
  .timeline__content {
    padding: 64px;
  }
}

.video-section--boxed {
  margin-inline-start: auto;
  margin-inline-end: auto;
}

.video-section--boxed.video-section--small {
  max-width: 800px;
}

.video-section--boxed.video-section--medium {
  max-width: 1000px;
}

.video-section--boxed.video-section--large {
  max-width: 1200px;
}

.video-section .video-wrapper--native {
  width: 100%;
}

.video-section--full .video-wrapper {
  --video-width: 100vw;
  height: var(--video-height);
}

.video-section--full.video-section--small {
  --video-height: 250px;
}

.video-section--full.video-section--medium {
  --video-height: 350px;
}

.video-section--full.video-section--large {
  --video-height: 450px;
}

@media screen and (min-width: 741px) and (max-width: 999px) {
  .video-section--full.video-section--small {
    --video-height: 300px;
  }

  .video-section--full.video-section--medium {
    --video-height: 375px;
  }

  .video-section--full.video-section--large {
    --video-height: 425px;
  }
}

@media screen and (min-width: 1000px) and (max-width: 1199px) {
  .video-section--full.video-section--small {
    --video-height: 400px;
  }

  .video-section--full.video-section--medium {
    --video-height: 500px;
  }

  .video-section--full.video-section--large {
    --video-height: 570px;
  }
}

@media screen and (min-width: 1200px) {
  .video-section--full.video-section--small {
    --video-height: 600px;
  }

  .video-section--full.video-section--medium {
    --video-height: 700px;
  }

  .video-section--full.video-section--large {
    --video-height: 800px;
  }
}

@media screen and (min-width: 1000px) {
  .product-list__inner--scroller {
    scroll-snap-type: x mandatory;
    overflow-x: auto;
    overflow-y: hidden;
  }

  .product-list__inner--scroller .product-item {
    scroll-snap-align: end;
  }

  .timeline__list-wrapper {
    scroll-snap-type: x mandatory;
    overflow-x: auto;
    overflow-y: hidden;
  }

  .timeline__item {
    scroll-snap-align: center;
  }
}




/*********************/
/* Maxime Code */
/********************/


.support-block {
  background: #f4f4f4;
  padding: 1.5rem;
  margin-top: 10px;
  border: 1px solid #c7c7c7;
  border-radius: 7px;
}

.support-block p {
  text-align: left;
  margin: 0;
  font-size: 0.9em;
}

.support-texts-group {
  text-align: left;
}

.support-tel, .support-mail {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  background: white;
  padding: 6px 10px;
  border: 1px solid #000000;
  border-radius: 25px;
  font-size: 0.9em
}

@media screen and (max-width: 470px) {
  .support-tel, .support-mail {
    gap: 0.2rem;
    font-size: 0.8em;
    padding: 6px 8px;
  }

  .support-tel svg, .support-mail svg {
    width: 13px
  }

  .support-block {
    padding: 1.2rem
  }
}

@media screen and (max-width: 550px) {
  .titlesupport {
    font-size: 1.1em;
  }
  
}

.support-tel:hover , .support-mail:hover {
  border: 1px solid black;
}

.email-tel-group {
  display: flex;
  justify-content: space-between;
  margin-top: 1rem;
  flex-wrap: wrap;
  gap: 10px;
} 

.support-tel svg, .support-mail svg {
  width: 15px;
}

.aide-mob {
  padding: 5px 10px;
  margin: 10px 0px;
  background: white;
  border: 1px solid black;
  border-radius: 25px;
}

.aide svg {
  width: 15px;
  margin-right: 10px;
}

.support-text-group {
  display: flex;
  align-items: center;
  gap: 15px;
}

.support-text-group svg {
  max-width: 40px;
  width: 40px;
  display: none;
}

.support-tel a, .support-mail a {
  text-decoration: none;
  color: black;
  font-size: 15px;
}

.titlesupport {
    font-size: 1.2em;
    font-weight: 500;
}



/*****************/
/* Maxime Code */
/***************/

/* Indicateur de stock */
.stock-disp-cont {
    display: flex;
    align-items: flex-start;
    margin-bottom: 5px;
    flex-direction: column;
    border: 1px solid black;
    padding: 1.3rem;
    gap: 10px
}
.stock-indic {
  width: 8px;
  height: 8px;
  display: block !important;
  background: green;
  border-radius: 50%;
  margin-left: 7px; 
  margin-right: 6px;
  margin-top: -2px;
}
span.stock-disp {
  font-weight: 500;
}

.stock-qty {
  display:flex;
  align-items: center;
  margin-inline-start: -4px;
  gap: 2px;
  margin-bottom: -14px;
}

.textindic {
    font-weight: 500;
}

.icondelai {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    font-weight: 500;
}

.icongreen {
  width: 19px;
}

}


/* REWORK TITRE */
.titlemob {
  margin-top: 5px;
}

@media screen and (max-width: 1024px) {
  .titlemob {
    margin: 5px 0px 5px 0px;
    font-weight: 600;
  }
}

@media screen and (max-width: 750px) {
  .titlemob {
    font-size: 1.6em;
    font-weight: 600;
  }
}

.brek {
  word-break: break-word;
}



/* REWORK TITRE PAGE PRODUIT */
.product__title-details {
  display: flex;
  gap: 5px;
  flex-wrap: wrap;
  margin: 5px 0;
}
.product__title-detail-container {
  background: #e5e5e5;
  border-radius: 50px;
  padding: 5px 10px;
  font-size: 12px;
  width: fit-content;
  font-weight: 500;
}

.main-product-price-container {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}

/* Rework titre featured collection */ 

.cart-item-product__title-detail-container {
    background: #282828;
    padding: 5px 8px;
    font-size: 11px;
    width: fit-content;
    font-weight: 500;
    border-radius: 5px;
    color: white;
}

.cart-item-product__title-details{
    display: flex;
    gap: 5px;
    flex-wrap: wrap;
    margin: 5px 0px 5px 0px;
    width: 100%;
    display:none
}



/* BLOCK LIVRAISON */


.info-livraison {
  padding: 10px;
  border: 1px solid black;
  font-weight: bold;
  line-height: 35px;
}

.paiementalma {
    display: flex;
    gap: 12px;
    font-weight: 500;
    margin-top: -13px;
    font-style: italic;
    font-size: 0.9em;
    color: #000000d9;
}

.logo-alma {
  width: 45px
}


/* FIN BLOCK LIVRAISON  */ 


/* DEBUT HEADER MOBILE AIDE  */ 

.aide {
  background: #f4f4f4;
  padding: 10px 12px;
  border-radius:10px;
  box-shadow: 0px 0px 5px #ababab;
  margin-top:30px
}
/* FIN HEADER MOBILE AIDE  */ 

.livraison-cart {
  font-size: 0.9em;
  opacity: 0.7;
  margin: 10px 0px;
}

.bouton-cart-retour {
    margin: 25px 0px 0px 0px;
    background: white;
    border: 1px solid black;
    color: black;
}


.none {
  display: none
}


.collecmax {
   margin-bottom: 15px
}

@media screen and (max-width: 767px) {
  .collecmax {
    text-align: left;
    margin-bottom: 20px
  }
}

.klaviyo-bis-trigger {
  background: #282828;
  color:white;
}


.header__linklist-link {
  position: relative;
  display: inline-block;
}

.header__linklist-link::after {
  content: '';
  position: absolute;
  left: 0;
  right: 100%;
  bottom: -3px;
  background: #3A9D5F; 
  height: 1px; 
  transition-property: right;
  transition-duration: 0.4s; 
  transition-timing-function: ease-out; 
}

.header__linklist-link:hover::after {
  right: 0;
}

/* DÉBUT CSS POUR MENU PROMOS  */ 
/* DÉBUT CSS POUR MENU PROMOS  */ 

.header__linklist a[href="/collections/promos"] {
    color: white;
    background: #276B42;
    padding: 1px 10px;
    font-weight: 500;
    border-radius: 4px;
}
/* FIN CSS POUR MENU PROMOS  */ 
/* FIN CSS POUR MENU PROMOS  */ 





.infotaille {
    font-size: 0.9em;
    font-style: italic;
    color: #2e9e7b;
}


.ecotaxe {
    font-size: 0.8em;
    opacity: 0.8;
}


.hero-button {
  background: #ff000000;
  border: 1px solid;
}

.hero-button:hover {
  background-position: 100% 25%, 100% 100%;
}




.font-alternative {
    font-family: Libre Bodoni, serif;
    font-optical-sizing: auto;
    font-style: italic;
    font-size: 1.3em;
}

.pricecart {
    padding: 2px 8px;
    margin: 0px 2px;
    border-radius: 15px;
    background-color: #3a9d5f;
    line-height: 21px;
    color: white;
}

.infocart {
  display:flex;
  justify-content:center;
  align-items:center;
  margin-top: 10px;
}

.infocart span {
  font-size: 0.6em;
  text-align:center;
}

@media screen and (min-width: 750px) {
  .infocart span {
    font-size: 0.8em;
  }
}


 

@media screen and (max-width: 741px) {
  .headcollec {
    font-size: 1.7em;
    text-align:left;
  }
}

.drawercollec {
  padding : 0px 50px 0px 50px;
}


.estimationcollec {
  margin-top: 9px;
}

.livraison-estime-container {
  display: flex;
  gap: 10px;
  align-items: center;
  fill: black;
}

.bold {
  font-weight: 600;
}

.icondelai {
  margin-right: 5px;
  font-family: "Font Awesome 5 Free";
  font-weight: 400; /* Regular weight */
}

.icon-available::before {
  content: "\f00c"; /* Font Awesome check icon */
  font-weight: 900; /* Solid weight for check icon */
  color:green;
}

.icon-replenishment::before {
  content: "\f0e7"; /* Font Awesome bolt icon */
  font-weight: 900; /* Solid weight for bolt icon */
}

.icon-clock::before {
  content: "\f017"; /* Font Awesome clock icon */
  font-weight: 400; /* Regular weight */
  color: orange; /* Change to desired color */
}

.livraison-estime-content {
  display: flex;
  align-items: center;
  margin-left: 1px;
  margin-top: -5px;
  font-size:0.9em;
}

@media screen and (max-width: 500px) {
  .estimemax {
    font-size: 0.8em
  }
}

.container-inventoryestim {
    display: flex;
    justify-content: space-between;
}


.rondvert {
  width:9px;
  height:9px;
  border-radius: 50px;
  background:#008052
}

.rondorange {
  width:9px;
  height:9px;
  border-radius: 50px;
  background:#ffa500  
}

.indic {
    display: flex;
    align-items: center;
    gap: 5px;
}

.beneficeproduct-container {
      display: flex;
      flex-direction: column;
      gap: 13px; 
      padding: 7px 0px 10px 0px;
     }

@media screen and (max-width: 700px) {
  .beneficeproduct-container {
    gap: 12px;
  }

  .beneficeproduct-icon {
    width: 19px
  }
  
}



.beneficeproduct-item {
      display: flex;
      align-items: center;
    }

.beneficeproduct-icon {
  margin-right: 7px;
  width: 21px
}


.beneficeproduct-text {
  line-height: 16px
}



.avis-textcontainer {
  padding: 0px 15px 9px;
}

.avis-textcontainer p {
  margin: 20px 0px;
}

@media screen and (max-width: 700px) {
    .avis-textcontainer p {
      font-size:0.9em
    }
}

.avis-title {
  font-weight: 600;
  margin: 0px
}

.content-avis {
  margin: 0px
}

.ratings-star {
    display: flex;
    align-items: center;
    justify-content:flex-start;
    
}

@media screen and (max-width: 1000px) {
  .ratings-star {
    justify-content:center
  }
}

.ratings-star-avis {
    display: flex;
    margin-bottom: 5px;
    align-items: center;
}


.rating-text {
  margin-left: 7px;
  margin-top: 2px;
  font-weight:600
}

.excellent {
    font-weight: 500;
    margin-top: 2px;
}

.title-heading-avis {
  margin: 8px 0px 6px 0px;
}

.linkreviews {
  text-decoration: underline;
}

.imgstars {
  margin: 0!important
}

@media screen and (max-width: 700px) {
    .imgstars {
      width:13px
    }
}


@media screen and (max-width: 700px) {
    .enzoguy {
      display:block
    }
}




.item-rea {
  display:flex;
}

  
.labelcollec {
    padding: 2px 8px; 
    border-radius: 5px;
    font-size: 0.8em;
    display: inline-block;
}





@media screen and (max-width: 741px) {
    .divlabel {
        margin-bottom: 2px;
    }

    .labelcollec {
        font-size: 0.7em;
    }

}

.divlabel {
    margin-top: -2px;
    margin-bottom: 5px; 
    display: flex; 
    gap: 4px; 
}

.none {
   display: none;
  }


.best-seller-badge {
    position: absolute;
    top: 10px;
    left: 10px;
    background-color: #ffffff;
    font-size: 12px;
    font-weight: bold;
    padding: 4px 8px;
    border-radius: 4px;
    z-index: 2;
  }

.menumob-all-solaire {
  display: flex;
  align-items: center;
  padding: 10px !important;
  border-radius: 4px;
  justify-content: center;
  background: orange;
  color: white;
  font-weight: 600;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  letter-spacing: 1px;
  font-size: 12px;
}

.menumob-all-mainpower {
  display: flex;
  align-items: center;
  padding: 10px !important;
  border-radius: 4px;
  justify-content: center;
  background: #b35656;
  color: white;
  font-weight: 600;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  letter-spacing: 1px;
  font-size: 12px;
}

.menumob-all-piscine {
  display: flex;
  align-items: center;
  padding: 10px !important;
  border-radius: 4px;
  justify-content: center;
  background: #3ca0d1;
  color: white;
  font-weight: 600;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  letter-spacing: 1px;
  font-size: 12px;
}

.menumob-all-decoratif {
  display: flex;
  align-items: center;
  padding: 10px !important;
  border-radius: 4px;
  justify-content: center;
  background: #DFB483;
  color: white;
  font-weight: 600;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  letter-spacing: 1px;
  font-size: 12px;
}

.cro-title {
    font-size: 2.6rem;
    font-weight: 600;
    margin-bottom: 0.75rem;
    line-height: 1.2;
    color: rgb(var(--text-color));
    margin:auto;
  }
/* ============================================================
   Lumihome template header hard fixes
   目的：
   1. PC 顶部配送公告保持单行，不能换行。
   2. 含 hidden 属性的桌面 mega menu 在 hover 时必须显示。
   3. PROMOS 后面的百分号保持红底白字，避免被导航通用 span 颜色覆盖。
   ============================================================ */
@media screen and (min-width: 1000px) {
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar {
    display: grid !important;
    grid-template-columns: 44px minmax(0, 1fr) 44px !important;
    align-items: center !important;
    min-height: 34px !important;
    padding: 0 40px !important;
  }

  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__list {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 0 !important;
    width: 100% !important;
    overflow: hidden !important;
  }

  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message,
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message p {
    display: block !important;
    max-width: 100% !important;
    margin: 0 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    line-height: 1 !important;
  }

  .header__linklist-item.has-dropdown > .mega-menu[hidden] {
    display: block !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transform: translateY(8px) !important;
  }

  .header__linklist-item.has-dropdown:hover > .mega-menu[hidden],
  .header__linklist-item.has-dropdown:focus-within > .mega-menu[hidden],
  .header__linklist-item.has-dropdown:hover > .mega-menu,
  .header__linklist-item.has-dropdown:focus-within > .mega-menu {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    transform: translateY(0) !important;
  }

  .header__inline-navigation .header__linklist-link .promos-pct-dot,
  .header__linklist-link .promos-pct-dot,
  .promos-pct-dot {
    display: inline-grid !important;
    place-items: center !important;
    width: 22px !important;
    height: 22px !important;
    min-width: 22px !important;
    border-radius: 50% !important;
    background: #e00023 !important;
    color: #fff !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    text-align: center !important;
  }
}

/* ============================================================
   Lumihome homepage product-card hard lock
   目的：
   1. 首页 Nos meilleures ventes 桌面端固定 4 列。
   2. 四张产品图同宽同高，产品卡片整体同高。
   3. 产品名最多两行，超出省略，不能撑高卡片。
   4. hover 不再出现放大或模糊，只允许日夜图切换。
   ============================================================ */
@media screen and (min-width: 761px) {
  body #main .hp-sec--best .hp-bv-wrap {
    width: min(calc(100vw - 80px), 1120px) !important;
    max-width: 1120px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  body #main .hp-sec--best .hp-track {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 26px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 16px 0 8px !important;
    overflow: visible !important;
    align-items: stretch !important;
    scroll-snap-type: none !important;
  }

  body #main .hp-sec--best .hp-track > article.hp-pcard {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: 516px !important;
    min-height: 516px !important;
    max-height: 516px !important;
    border-radius: 8px !important;
    overflow: visible !important;
  }

  body #main .hp-sec--best .hp-track > article.hp-pcard:nth-child(n+5) {
    display: none !important;
  }

  body #main .hp-sec--best .hp-track > article.hp-pcard > a {
    display: grid !important;
    grid-template-rows: 264px 252px !important;
    width: 100% !important;
    height: 516px !important;
    min-height: 516px !important;
    max-height: 516px !important;
    overflow: visible !important;
  }

  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    height: 264px !important;
    min-height: 264px !important;
    max-height: 264px !important;
    aspect-ratio: auto !important;
    border-radius: 8px 8px 0 0 !important;
    overflow: visible !important;
    background: #f4f5f4 !important;
  }

  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media img,
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media .day,
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media .night {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-width: 100% !important;
    min-height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: cover !important;
    object-position: center center !important;
    border-radius: 8px 8px 0 0 !important;
    transform: none !important;
    filter: none !important;
  }

  body #main .hp-sec--best .hp-track > article.hp-pcard:hover,
  body #main .hp-sec--best .hp-track > article.hp-pcard:hover img,
  body #main .hp-sec--best .hp-track > article.hp-pcard:hover .day,
  body #main .hp-sec--best .hp-track > article.hp-pcard:hover .night {
    transform: none !important;
    filter: none !important;
  }

  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-bdgs {
    left: 0 !important;
    top: -12px !important;
    right: auto !important;
  }

  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-bdgs .hp-bdg,
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-bdgs .hp-bdg.hp-bdg--remises {
    height: 24px !important;
    padding: 0 10px !important;
    border-radius: 4px 4px 4px 0 !important;
    font-size: 11px !important;
    line-height: 24px !important;
  }

  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-body {
    display: flex !important;
    flex-direction: column !important;
    height: 252px !important;
    min-height: 252px !important;
    max-height: 252px !important;
    padding: 14px 14px 16px !important;
    gap: 7px !important;
    overflow: hidden !important;
  }

  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-name {
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    height: 40px !important;
    min-height: 40px !important;
    max-height: 40px !important;
    margin: 0 !important;
    overflow: hidden !important;
    line-height: 20px !important;
  }

  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-price {
    min-height: 42px !important;
    margin: 0 !important;
  }

  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-rate {
    min-height: 20px !important;
    margin: 0 !important;
  }

  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-stock {
    margin-top: auto !important;
  }
}

/* ============================================================
   Lumihome footer text hard lock
   目的：
   1. 绿色底部区域不能再出现黑字。
   2. 顶部 trust strip 与下方 footer 一起统一为白色体系。
   3. 保留支付/物流 logo 原图颜色，只覆盖文字、链接和图标文字色。
   ============================================================ */
.v15-trust-strip,
#shopify-section-sections--25458834145659__footer .footer,
.shopify-section--footer .footer,
footer.footer {
  color: rgba(255, 255, 255, .86) !important;
}

.v15-trust-strip h1,
.v15-trust-strip h2,
.v15-trust-strip h3,
.v15-trust-strip h4,
.v15-trust-strip h5,
.v15-trust-strip h6,
.v15-trust-strip strong,
.v15-trust-strip b,
.v15-trust-strip .heading,
.v15-trust-strip .v15-trust-rating-score strong,
#shopify-section-sections--25458834145659__footer .footer .heading,
#shopify-section-sections--25458834145659__footer .footer .footer__item-title,
#shopify-section-sections--25458834145659__footer .footer strong,
#shopify-section-sections--25458834145659__footer .footer b,
.shopify-section--footer .footer .heading,
.shopify-section--footer .footer .footer__item-title,
.shopify-section--footer .footer strong,
.shopify-section--footer .footer b,
footer.footer .heading,
footer.footer .footer__item-title,
footer.footer strong,
footer.footer b {
  color: #fff !important;
}

.v15-trust-strip p,
.v15-trust-strip span:not(.v15-trust-rating-stars span),
.v15-trust-strip div:not(.v15-trust-logos):not(.v15-trust-rating-stars),
.v15-trust-strip .text--subdued,
.v15-trust-strip .v15-trust-rating-score,
.v15-trust-strip .v15-trust-rating-logo,
#shopify-section-sections--25458834145659__footer .footer p,
#shopify-section-sections--25458834145659__footer .footer span,
#shopify-section-sections--25458834145659__footer .footer div,
#shopify-section-sections--25458834145659__footer .footer .text--subdued,
#shopify-section-sections--25458834145659__footer .footer .link--faded,
.shopify-section--footer .footer p,
.shopify-section--footer .footer span,
.shopify-section--footer .footer div,
.shopify-section--footer .footer .text--subdued,
.shopify-section--footer .footer .link--faded,
footer.footer p,
footer.footer span,
footer.footer div,
footer.footer .text--subdued,
footer.footer .link--faded {
  color: rgba(255, 255, 255, .82) !important;
}

.v15-trust-strip a,
.v15-trust-strip a span,
#shopify-section-sections--25458834145659__footer .footer a,
#shopify-section-sections--25458834145659__footer .footer a span,
.shopify-section--footer .footer a,
.shopify-section--footer .footer a span,
footer.footer a,
footer.footer a span {
  color: #fff !important;
}

.v15-trust-strip svg,
#shopify-section-sections--25458834145659__footer .footer svg,
.shopify-section--footer .footer svg,
footer.footer svg {
  color: currentColor !important;
}

/* 0604 最后保险：线上 theme.css 单独生效时，footer/trust strip 仍强制白字。 */
.v15-trust-strip h3,
.v15-trust-strip .v15-trust-rating-score,
.v15-trust-strip .v15-trust-rating-score strong,
.v15-trust-strip a,
#shopify-section-sections--25458834145659__footer .footer .footer__item-title,
#shopify-section-sections--25458834145659__footer .footer .heading,
#shopify-section-sections--25458834145659__footer .footer a,
#shopify-section-sections--25458834145659__footer .footer strong,
footer.footer .footer__item-title,
footer.footer .heading,
footer.footer a,
footer.footer strong {
  color: #fff !important;
}

.v15-trust-strip > *,
.v15-trust-strip p,
.v15-trust-strip span,
.v15-trust-strip .v15-trust-col > span,
.v15-trust-strip .v15-trust-rating-logo,
#shopify-section-sections--25458834145659__footer .footer p,
#shopify-section-sections--25458834145659__footer .footer span,
#shopify-section-sections--25458834145659__footer .footer .text--subdued,
#shopify-section-sections--25458834145659__footer .footer .link--faded,
#shopify-section-sections--25458834145659__footer .footer .footer__copyright,
#shopify-section-sections--25458834145659__footer .footer .footer__payment-methods-label,
footer.footer p,
footer.footer span,
footer.footer .text--subdued,
footer.footer .link--faded,
footer.footer .footer__copyright,
footer.footer .footer__payment-methods-label {
  color: rgba(255, 255, 255, .82) !important;
}


/* ============================================================
   02. 静态模板基础层：assets/site.css

   作用：静态模板早期沉淀的基础 token、按钮、卡片、页脚和响应式规则。
   注意：这里保持通用，不承担最终验收强覆盖。
   ============================================================ */
/* ============================================================
   LUMIHOME 基础样式文件：site.css

   作用：
   1. 提供静态模板的基础设计系统：字体、颜色变量、按钮、卡片、页脚等。
   2. 作为早期页面和通用组件的底层样式，不负责最终验收细节。
   3. 具体需求修复请优先看 0603-fixes.css 和 final-fixes.css。

   注意：
   - final-fixes.css 加载在最后，是当前页面最终视觉效果的兜底文件。
   - 本文件尽量保持通用，不要在这里写强覆盖规则，避免和最终修复互相打架。
   ============================================================ */
500;600;700;800;900&display=swap');

:root{
  /* 品牌色与状态色：全站绿色、促销红、星级橙等基础 token。 */
  --green:#276B42; --green-d:#1d5132; --green-l:#3a9d5f;
  --green-soft:#eef5f0; --green-tint:#f6faf7;
  --ink:#16201a; --body:#49514a; --muted:#7c847d; --line:#e7eae7;
  --amber:#f6a429; --red:#e4322b; --star:#f6a429;
  --bg:#ffffff; --bg-soft:#f6f8f6;
  --r-sm:8px; --r:14px; --r-lg:22px; --pill:999px;
  --sh-sm:0 2px 10px rgba(20,40,28,.06);
  --sh:0 18px 44px -18px rgba(20,40,28,.24);
  --maxw:1280px;
  --font:'Poppins',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;
}

/* 基础 reset：保证不同浏览器下盒模型、图片、文本和按钮行为一致。 */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--font);color:var(--ink);background:var(--bg);
  font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
h1,h2,h3,h4{margin:0;line-height:1.18;letter-spacing:-.018em;font-weight:700}
p{margin:0}
button{font-family:inherit;cursor:pointer}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 clamp(16px,3.4vw,32px)}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* 按钮基础：统一圆角、字重、hover 动效，页面级按钮可在最终 CSS 中覆盖尺寸。 */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;
  font-weight:700;font-size:14.5px;letter-spacing:.01em;border-radius:var(--pill);
  padding:14px 28px;border:1.6px solid transparent;transition:transform .15s,box-shadow .2s,background .2s,color .2s;cursor:pointer}
.btn svg{width:17px;height:17px}
.btn--primary{background:var(--green);color:#fff}
.btn--primary:hover{background:var(--green-d);transform:translateY(-2px);box-shadow:0 12px 24px -10px rgba(39,107,66,.55)}
.btn--ghost{background:#fff;color:var(--ink);border-color:#d6ddd7}
.btn--ghost:hover{border-color:var(--green);color:var(--green)}
.btn--light{background:#fff;color:var(--green)}
.btn--light:hover{transform:translateY(-2px);box-shadow:0 12px 26px -12px rgba(0,0,0,.4)}
.btn--lg{padding:16px 34px;font-size:15.5px}

/* 通用 section 工具类：控制页面模块上下留白、浅色背景、标题组样式。 */
.section{padding:clamp(52px,7vw,96px) 0}
.section--soft{background:var(--bg-soft)}
.section--tint{background:var(--green-tint)}
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;font-weight:700;
  letter-spacing:.14em;text-transform:uppercase;color:var(--green)}
.section-head{max-width:680px;margin:0 0 38px}
.section-head--center{margin-left:auto;margin-right:auto;text-align:center}
.section-head h2{font-size:clamp(26px,3.4vw,40px);margin:14px 0 12px}
.section-head p{color:var(--body);font-size:15.5px}
.section-head--center .eyebrow{justify-content:center}

/* ============================================================
   Header 基础样式

   仅用于基础 header 布局。当前模板最终导航宽度、菜单名、Mega menu
   由 final-fixes.css 负责统一覆盖。
   ============================================================ */
.announce{background:var(--green-d);color:#eaf3ec;font-size:12.7px;font-weight:500;
  text-align:center;padding:8px 16px;letter-spacing:.01em}
.announce strong{color:#fff;font-weight:700}
.announce span{margin:0 14px;opacity:.55}

.site-header{position:sticky;top:0;z-index:200;background:#fff;border-bottom:1px solid var(--line);
  transition:box-shadow .25s}
.site-header.is-stuck{box-shadow:0 6px 22px -14px rgba(20,40,28,.3)}
.header-row{display:flex;align-items:center;gap:28px;height:78px}
.logo{flex:0 0 auto}
.logo img{height:34px;width:auto}
.nav{display:flex;align-items:center;gap:4px;margin:0 auto}
.nav-item{position:relative}
.nav-link{display:inline-flex;align-items:center;gap:6px;padding:12px 14px;font-size:14.5px;
  font-weight:600;color:var(--ink);border-radius:var(--r-sm);transition:color .15s,background .15s}
.nav-link svg{width:12px;height:12px;transition:transform .2s}
.nav-link:hover{color:var(--green);background:var(--green-soft)}
.nav-link--accent{color:var(--red)}
.nav-item:hover .nav-link svg{transform:rotate(180deg)}
.nav-panel{position:absolute;top:calc(100% + 8px);left:50%;transform:translateX(-50%) translateY(8px);
  background:#fff;border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh);
  padding:14px;min-width:260px;opacity:0;visibility:hidden;transition:.18s;display:grid;gap:2px}
.nav-item:hover .nav-panel{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}
.nav-panel a{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:var(--r-sm);
  font-size:13.7px;font-weight:500;color:var(--body);transition:.13s}
.nav-panel a:hover{background:var(--green-soft);color:var(--green)}
.nav-panel a b{font-weight:600;color:var(--ink)}
.header-tools{display:flex;align-items:center;gap:6px;flex:0 0 auto}
.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;
  border-radius:var(--pill);border:none;background:none;color:var(--ink);position:relative;transition:background .15s}
.icon-btn:hover{background:var(--green-soft);color:var(--green)}
.icon-btn svg{width:21px;height:21px}
.icon-btn .badge{position:absolute;top:5px;right:5px;background:var(--green);color:#fff;
  font-size:10px;font-weight:700;min-width:16px;height:16px;border-radius:var(--pill);
  display:flex;align-items:center;justify-content:center;padding:0 4px}
.burger{display:none}

/* ============================================================
   商品卡片基础样式

   用于列表页、首页早期商品卡片的通用结构。首页“Nos meilleures ventes”
   的最终图片比例、角标位置、文字省略和 hover 效果以后置 CSS 为准。
   ============================================================ */
.pcard{position:relative;background:#fff;border:1px solid #e9ece9;border-radius:var(--r);
  overflow:hidden;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s,border-color .2s}
.pcard:hover{transform:translateY(-4px);box-shadow:var(--sh);border-color:#dde3dd}
.pcard a{display:flex;flex-direction:column;flex:1;color:inherit}
.pcard-media{position:relative;aspect-ratio:1/1;background:#f4f5f4;overflow:hidden}
.pcard-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:opacity .35s,transform .5s}
.pcard-media .img-night{opacity:0}
.pcard:hover .img-night{opacity:1}
.pcard:hover .img-day{transform:scale(1.04)}
.badges{position:absolute;top:10px;left:10px;z-index:2;display:flex;flex-direction:column;gap:5px;align-items:flex-start}
.bdg{font-size:11px;font-weight:700;line-height:1;padding:5px 8px;border-radius:5px;white-space:nowrap}
.bdg--disc{background:var(--red);color:#fff}
.bdg--promo{background:var(--amber);color:#fff}
.bdg--solar{position:absolute;top:10px;right:10px;z-index:2;background:rgba(255,255,255,.96);
  color:var(--green);border:1px solid #cfe5d8;font-size:9.5px;font-weight:700;padding:5px 9px;
  border-radius:var(--pill);text-transform:uppercase;letter-spacing:.05em}
.pcard-body{padding:14px 14px 16px;display:flex;flex-direction:column;gap:7px;flex:1}
.pcard-name{font-size:13.7px;font-weight:600;line-height:1.4;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:38px}
.pcard-rate{display:flex;align-items:center;gap:6px;font-size:11.5px;color:var(--muted)}
.stars{color:var(--star);letter-spacing:1.5px;font-size:12px}
.pcard-price{display:flex;align-items:baseline;gap:8px;margin-top:auto;padding-top:4px}
.price-now{font-size:18px;font-weight:800}
.price-was{font-size:13px;color:#b4b8b1;text-decoration:line-through}
.pcard-stock{font-size:11.5px;font-weight:600;display:inline-flex;align-items:center;gap:6px;color:var(--green)}
.pcard-stock::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}

/* ============================================================
   Footer 基础样式

   提供默认绿底页脚结构。最终上线页脚颜色、宽度、白字规则统一在
   final-fixes.css 的“Footer / trust block”模块中兜底。
   ============================================================ */
.site-footer{background:var(--green-d);color:#cdddd2;font-size:14px}
.footer-top{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.5fr;gap:40px;
  padding:clamp(48px,6vw,72px) 0 44px}
.footer-brand .flogo{font-size:22px;font-weight:800;color:#fff;letter-spacing:.02em;margin-bottom:14px}
.footer-brand p{color:#a8c2b2;font-size:13.5px;line-height:1.7;max-width:300px}
.footer-contact{margin-top:16px;display:grid;gap:7px;font-size:13.5px}
.footer-contact a{color:#fff;font-weight:600}
.footer-col h4{color:#fff;font-size:14px;font-weight:700;margin-bottom:16px;letter-spacing:.02em}
.footer-col ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.footer-col a{color:#bcd0c3;font-size:13.5px;transition:color .14s}
.footer-col a:hover{color:#fff}
.footer-news p{color:#a8c2b2;font-size:13.5px;margin-bottom:14px}
.news-form{display:flex;gap:8px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);
  border-radius:var(--pill);padding:5px 5px 5px 18px}
.news-form input{flex:1;background:none;border:none;color:#fff;font-family:inherit;font-size:13.5px;outline:none}
.news-form input::placeholder{color:#9fb6a6}
.news-form button{background:var(--green-l);color:#fff;border:none;border-radius:var(--pill);
  padding:11px 20px;font-weight:700;font-size:13.5px}
.news-form button:hover{background:#fff;color:var(--green-d)}
.footer-social{display:flex;gap:10px;margin-top:18px}
.footer-social a{width:38px;height:38px;border-radius:var(--pill);background:rgba(255,255,255,.1);
  display:flex;align-items:center;justify-content:center;transition:background .15s}
.footer-social a:hover{background:var(--green-l)}
.footer-social svg{width:17px;height:17px;color:#fff}
.footer-bar{border-top:1px solid rgba(255,255,255,.13);padding:20px 0;
  display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}
.footer-bar small{color:#9fb6a6;font-size:12.5px}
.pay-row{display:flex;gap:7px;flex-wrap:wrap}
.pay-row span{background:#fff;border-radius:5px;padding:4px 8px;font-size:10px;font-weight:800;
  color:#1a2a4a;letter-spacing:.02em}

/* 响应式基础：早期 header 和 footer 在平板/手机下的基础堆叠规则。 */
@media(max-width:1080px){
  .footer-top{grid-template-columns:1fr 1fr;gap:32px}
}
@media(max-width:920px){
  .nav{display:none}
  .burger{display:inline-flex}
  .header-row{height:66px;gap:14px}
  .nav{position:fixed;inset:0 0 0 auto;width:min(360px,86vw);background:#fff;flex-direction:column;
    align-items:stretch;margin:0;padding:20px;gap:2px;transform:translateX(110%);transition:transform .28s;
    z-index:300;box-shadow:-20px 0 50px -20px rgba(0,0,0,.4);overflow-y:auto}
  .nav.is-open{display:flex;transform:translateX(0)}
  .nav-link{padding:14px 12px;font-size:15px;border-radius:var(--r-sm)}
  .nav-panel{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border:none;
    padding:2px 0 8px 14px;min-width:0;display:none}
  .nav-item.is-expanded .nav-panel{display:grid}
  .nav-scrim{position:fixed;inset:0;background:rgba(15,25,18,.5);opacity:0;visibility:hidden;
    transition:.25s;z-index:290}
  .nav-scrim.is-open{opacity:1;visibility:visible}
}
@media(max-width:560px){
  .footer-top{grid-template-columns:1fr;gap:28px}
  .btn{padding:13px 22px}
}


/* ============================================================
   03. 页面内联样式归档层

   作用：从各 HTML/PHP 页面原有 <style> 块抽离而来。
   规则：重复 style 块只保留一份；注释中的“来源”记录首次和重复出现的页面位置。
   ============================================================ */


/* ---- 03.001 页面内联样式块
   来源：index.html:18, index0528.html:18
   说明：由页面 <style> 抽离，保持原有选择器和声明不变。
   ---- */
/* ============================================================================
   ✅ CSS DE BASE (hérité de la page promo) - Conservé tel quel pour la cohérence
============================================================================ */
:root {
--heading-color: 27, 27, 27;
--text-color: 51, 51, 51;
--background: 255, 255, 255;
--secondary-background: 247, 249, 247;
--border-color: 224, 224, 224;
--border-color-darker: 173, 173, 173;
--success-color: 27, 27, 27;
--success-background: 209, 209, 209;
--error-color: 222, 42, 42;
--error-background: 253, 240, 240;
--primary-button-background: 58, 157, 95;
--primary-button-text-color: 255, 255, 255;
--secondary-button-background: 40, 40, 40;
--secondary-button-text-color: 255, 255, 255;
--product-star-rating: 246, 164, 41;
--product-on-sale-accent: 16, 16, 16;
--product-sold-out-accent: 111, 113, 155;
--product-custom-label-background: 64, 93, 230;
--product-custom-label-text-color: 255, 255, 255;
--product-custom-label-2-background: 243, 255, 52;
--product-custom-label-2-text-color: 0, 0, 0;
--product-low-stock-text-color: 11, 11, 13;
--product-in-stock-text-color: 11, 11, 13;
--loading-bar-background: 51, 51, 51;
--root-heading-color: 27, 27, 27;
--root-text-color: 51, 51, 51;
--root-background: 255, 255, 255;
--root-border-color: 224, 224, 224;
--root-primary-button-background: 58, 157, 95;
--root-primary-button-text-color: 255, 255, 255;
--base-font-size: 15px;
--heading-font-family: Poppins, sans-serif;
--heading-font-weight: 500;
--heading-font-style: normal;
--heading-text-transform: normal;
--text-font-family: Poppins, sans-serif;
--text-font-weight: 400;
--text-font-style: normal;
--text-font-bold-weight: 600;
--heading-xxsmall-font-size: 10px;
--heading-xsmall-font-size: 10px;
--heading-small-font-size: 11px;
--heading-large-font-size: 32px;
--heading-h1-font-size: 32px;
--heading-h2-font-size: 28px;
--heading-h3-font-size: 26px;
--heading-h4-font-size: 22px;
--heading-h5-font-size: 18px;
--heading-h6-font-size: 16px;
--button-border-radius: 30px;
--block-border-radius: 8px;
--block-border-radius-reduced: 4px;
--color-swatch-border-radius: 100%;
--button-height: 48px;
--button-small-height: 40px;
--form-input-field-height: 48px;
--form-input-gap: 16px;
--form-submit-margin: 24px;
--product-list-block-spacing: 32px;
--vertical-breather: 48px;
--vertical-breather-tight: 48px;
--container-max-width: 1600px;
--container-gutter: 24px;
--container-max-width-minus-gutters: calc(var(--container-max-width) - (var(--container-gutter)) * 2);
--container-outer-width: max(calc((100vw - var(--container-max-width-minus-gutters)) / 2), var(--container-gutter));
--container-inner-width: calc(100vw - var(--container-outer-width) * 2);
--grid-column-count: 10;
--grid-gap: 24px;
--grid-column-width: calc((100vw - var(--container-outer-width) * 2 - var(--grid-gap) * (var(--grid-column-count) - 1)) / var(--grid-column-count));
--transform-logical-flip: 1;
--transform-origin-start: left;
--transform-origin-end: right;
--zoom-cursor-svg-url: url(./catalog/zoom-cursor-cb5cdb4630e5.svg);
--arrow-right-svg-url: url(./catalog/arrow-right-2a115713352b.svg);
--arrow-left-svg-url: url(./catalog/arrow-left-6062eca54cd3.svg);
}
@media screen and (min-width: 741px) {
:root {
--container-gutter: 40px;
--grid-column-count: 20;
--vertical-breather: 64px;
--vertical-breather-tight: 64px;
--heading-xsmall-font-size: 11px;
--heading-small-font-size: 12px;
--heading-large-font-size: 48px;
--heading-h1-font-size: 48px;
--heading-h2-font-size: 36px;
--heading-h3-font-size: 30px;
--heading-h4-font-size: 22px;
--heading-h5-font-size: 18px;
--heading-h6-font-size: 16px;
--form-input-field-height: 52px;
--form-submit-margin: 32px;
--button-height: 52px;
--button-small-height: 44px;
}
}
@media screen and (min-width: 1200px) {
:root {
--vertical-breather: 80px;
--vertical-breather-tight: 64px;
--product-list-block-spacing: 48px;
--heading-large-font-size: 58px;
--heading-h1-font-size: 50px;
--heading-h2-font-size: 44px;
--heading-h3-font-size: 32px;
--heading-h4-font-size: 26px;
--heading-h5-font-size: 22px;
--heading-h6-font-size: 16px;
}
}
@media screen and (min-width: 1600px) {
:root {
--vertical-breather: 90px;
--vertical-breather-tight: 64px;
}
}
/* Typography */
@font-face {
font-family: Poppins;
font-weight: 500;
font-style: normal;
font-display: swap;
src: url("./fonts/poppins-medium.woff2") format("woff2"),
url("./fonts/poppins-medium.woff2") format("woff2");
}
@font-face {
font-family: Poppins;
font-weight: 500;
font-style: italic;
font-display: swap;
src: url("./fonts/poppins-medium.woff2") format("woff2"),
url("./fonts/poppins-medium.woff2") format("woff2");
}
@font-face {
font-family: Poppins;
font-weight: 400;
font-style: normal;
font-display: swap;
src: url("./fonts/poppins-regular.woff2") format("woff2"),
url("./fonts/poppins-regular.woff2") format("woff2");
}
@font-face {
font-family: Poppins;
font-weight: 400;
font-style: italic;
font-display: swap;
src: url("./fonts/poppins-regular.woff2") format("woff2"),
url("./fonts/poppins-regular.woff2") format("woff2");
}
@font-face {
font-family: Poppins;
font-weight: 600;
font-style: normal;
font-display: swap;
src: url("./fonts/poppins-semibold.woff2") format("woff2"),
url("./fonts/poppins-semibold.woff2") format("woff2");
}
@font-face {
font-family: Poppins;
font-weight: 600;
font-style: italic;
font-display: swap;
src: url("./fonts/poppins-semibold.woff2") format("woff2"),
url("./fonts/poppins-semibold.woff2") format("woff2");
}
html {
scroll-behavior: smooth;
}
/* Header & Navigation Styles */
.header__linklist-link {
position: relative;
display: inline-block;
}
.header__linklist-link::after {
content: '';
position: absolute;
left: 0;
right: 100%;
bottom: -3px;
background: #276b42;
height: 1px;
transition-property: right;
transition-duration: 0.4s;
transition-timing-function: ease-out;
}
.header__linklist-link:hover::after {
right: 0;
}
.header__linklist a[href="/collections/promos"] {
color: white;
background: #276B42;
padding: 1px 10px;
font-weight: 500;
border-radius: 4px;
}
/* =========================================================
 * LUMIHOME V3 — Multi-Style Mega-Menu (8 categories)
 *  - Style A · Solaire: editorial 3-col + hero card + filter pills
 *  - Style B · 230V:    split sub-cats + ambiance hero + chips
 *  - Style C · Basse tension: dual card panels w/ accent icons
 *  - Style D · Par espace: indoor/outdoor visual room mosaic
 *  - Style E · Accessoires: compact icon strip + conditional sub
 *  - Style F · PROMOS:    red attention pill (link)
 *  - Style G · BON PLAN: amber/gold attention pill (link)
 *  - Style H · Plus:      tight dropdown card
 * ========================================================= */
.mega-menu{
--mega-menu-column-gap:40px;
--mega-menu-image-gap:20px;
--mm-accent:#276B42;
--mm-accent-soft:#e8f3ec;
--mm-accent-dark:#1e5333;
--mm-amber:#d97706;
--mm-amber-soft:#fff4e0;
--mm-red:#e60023;
--mm-radius:14px;
--mm-radius-sm:10px;
visibility:hidden;opacity:0;pointer-events:none;
background:#fff;color:#1a1a1a;width:100%;
display:block;position:absolute;top:100%;left:0;z-index:10;
transition:opacity .28s ease,visibility .28s ease,transform .28s ease;
transform:translateY(8px);
box-shadow:0 18px 40px -12px rgba(20,40,30,.18),0 6px 14px -8px rgba(20,40,30,.10);
border-top:1px solid rgba(39,107,66,.10);
border-radius:0 0 var(--mm-radius) var(--mm-radius);
}
.header__linklist-item.has-dropdown:hover .mega-menu,
.header__linklist-item.has-dropdown:focus-within .mega-menu{
visibility:visible;opacity:1;pointer-events:auto;transform:translateY(0);
}
.mega-menu__inner{
justify-content:center;column-gap:var(--mega-menu-column-gap);
max-height:calc(100vh - var(--header-height,0px) - var(--announcement-bar-height,0px) - 60px);
z-index:1;grid-auto-flow:column;
padding:40px 0 44px;display:grid;position:relative;overflow:auto;
}
.mega-menu__column{margin:calc(var(--mega-menu-column-gap)/2);min-width:200px;}
.mega-menu__title{
margin:0 0 14px;font-weight:700;font-size:.92rem;letter-spacing:.02em;
color:var(--mm-accent-dark);display:inline-flex;align-items:center;gap:8px;
text-decoration:none;
}
.mega-menu__title::before{
content:"";width:18px;height:2px;background:var(--mm-accent);border-radius:2px;
}
.mega-menu__title:hover{color:var(--mm-accent);}
.mega-menu__image-wrapper{
border-radius:var(--mm-radius);z-index:0;margin-block-end:14px;overflow:hidden;
position:relative;aspect-ratio:4/3;background:#f4f7f5;
}
.mega-menu__image{
border-radius:inherit;width:100%;height:100%;display:block;object-fit:cover;
transition:transform .55s ease;
}
.mega-menu__image-push:hover .mega-menu__image{transform:scale(1.05);}
.mega-menu__heading{
font-size:.88rem;font-weight:600;color:#1a1a1a;margin:0;
display:inline-flex;align-items:center;gap:6px;
}
.mega-menu__image-push:hover .mega-menu__heading{color:var(--mm-accent);}
.linklist__item a{
word-break:break-word;display:inline-flex;align-items:center;gap:6px;
text-decoration:none;color:#4a5568;padding:5px 0;font-size:.9rem;
transition:color .2s,transform .2s;position:relative;
}
.linklist__item a::before{
content:"";width:0;height:1px;background:var(--mm-accent);
transition:width .25s ease;margin-right:0;
}
.linklist__item a:hover{color:var(--mm-accent);transform:translateX(2px);}
.linklist__item a:hover::before{width:14px;margin-right:6px;}

/* ---------- Style A · Solaire: 2-col list + hero (per Excel) ---------- */
.mm-solaire .mega-menu__inner{
grid-template-columns:1fr 1fr 1.35fr;grid-auto-flow:row;
padding:36px 0 36px;
}
.mm-solaire .mega-menu__images-wrapper{
margin:calc(var(--mega-menu-column-gap)/2);
display:flex;flex-direction:column;justify-content:flex-start;gap:14px;
position:relative;
}
.mm-solaire .mega-menu__image-push{
display:block;text-decoration:none;color:inherit;
border-radius:var(--mm-radius);overflow:hidden;
position:relative;background:linear-gradient(135deg,#1e5333,#276B42);
}
.mm-solaire .mega-menu__image-wrapper{aspect-ratio:16/10;margin:0;}
.mm-solaire .mega-menu__image-push .mega-menu__heading{
position:absolute;left:16px;bottom:14px;color:#fff;font-weight:600;
text-shadow:0 2px 8px rgba(0,0,0,.45);font-size:.95rem;
}
.mm-filter-row{
grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:10px;align-items:center;
margin:8px calc(var(--mega-menu-column-gap)/2) 0;
padding-top:18px;border-top:1px dashed #d6e3da;
}
.mm-filter-label{
font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
color:var(--mm-accent-dark);margin-right:6px;
}
.mm-chip{
display:inline-flex;align-items:center;gap:4px;font-size:.78rem;
padding:5px 11px;border-radius:999px;
background:var(--mm-accent-soft);color:var(--mm-accent-dark);
border:1px solid transparent;cursor:pointer;font-weight:500;
transition:all .2s;text-decoration:none;
}
.mm-chip:hover{background:var(--mm-accent);color:#fff;transform:translateY(-1px);}
.mm-chip--ip{background:#eef4f7;color:#2c5777;}
.mm-chip--ip:hover{background:#2c5777;color:#fff;}
/* SVG icons via CSS mask (inherit chip text color, support hover color change) */
.mm-chip--solar::before,
.mm-chip--detect::before,
.mm-chip--remote::before,
.mm-chip--usb::before,
.mm-chip--head::before,
.mm-chip--plug::before{
content:"";display:inline-block;width:12px;height:12px;
background-color:currentColor;flex-shrink:0;
-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;
-webkit-mask-position:center;mask-position:center;
-webkit-mask-size:contain;mask-size:contain;
}
.mm-chip--solar::before{
-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='4'/><path d='M12 2v2M12 20v2M4.93 4.93l1.41 1.41M17.66 17.66l1.41 1.41M2 12h2M20 12h2M4.93 19.07l1.41-1.41M17.66 6.34l1.41-1.41'/></svg>");
mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='4'/><path d='M12 2v2M12 20v2M4.93 4.93l1.41 1.41M17.66 17.66l1.41 1.41M2 12h2M20 12h2M4.93 19.07l1.41-1.41M17.66 6.34l1.41-1.41'/></svg>");
}
.mm-chip--detect::before{
-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M12 17a5 5 0 0 0 0-10'/><path d='M12 21a9 9 0 0 0 0-18'/><circle cx='12' cy='12' r='1.5' fill='black'/></svg>");
mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M12 17a5 5 0 0 0 0-10'/><path d='M12 21a9 9 0 0 0 0-18'/><circle cx='12' cy='12' r='1.5' fill='black'/></svg>");
}
.mm-chip--remote::before{
-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><rect x='6' y='2' width='12' height='20' rx='2'/><circle cx='12' cy='7' r='1.2' fill='black'/><line x1='9' y1='12' x2='15' y2='12'/><line x1='9' y1='16' x2='15' y2='16'/></svg>");
mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><rect x='6' y='2' width='12' height='20' rx='2'/><circle cx='12' cy='7' r='1.2' fill='black'/><line x1='9' y1='12' x2='15' y2='12'/><line x1='9' y1='16' x2='15' y2='16'/></svg>");
}
.mm-chip--usb::before{
-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><polygon points='13 2 4 14 11 14 10 22 20 9 13 9 13 2'/></svg>");
mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><polygon points='13 2 4 14 11 14 10 22 20 9 13 9 13 2'/></svg>");
}
.mm-chip--head::before{
-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'><line x1='6' y1='18' x2='18' y2='6'/><polyline points='9 6 18 6 18 15'/></svg>");
mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'><line x1='6' y1='18' x2='18' y2='6'/><polyline points='9 6 18 6 18 15'/></svg>");
}
.mm-chip--plug::before{
-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M9 2v6M15 2v6M6 8h12v3a6 6 0 0 1-12 0V8z'/><path d='M12 17v5'/></svg>");
mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M9 2v6M15 2v6M6 8h12v3a6 6 0 0 1-12 0V8z'/><path d='M12 17v5'/></svg>");
}

/* ---------- Style B · 230V: split panes w/ ambiance hero ---------- */
.mm-230v .mega-menu__inner{
grid-template-columns:1.05fr 1.05fr 1.5fr;grid-auto-flow:row;padding:36px 0 36px;
}
.mm-230v .mega-menu__column{
background:linear-gradient(180deg,#fbfdfc,#f4f7f5);
border:1px solid #e5ede8;border-radius:var(--mm-radius);
padding:18px 20px;margin:calc(var(--mega-menu-column-gap)/2);
}
.mm-230v .mega-menu__column .mega-menu__title{
display:flex;font-size:.95rem;color:var(--mm-accent-dark);margin-bottom:10px;
padding-bottom:10px;border-bottom:1px solid #dbe6de;
}
.mm-230v .mega-menu__images-wrapper{
margin:calc(var(--mega-menu-column-gap)/2);
display:grid;grid-template-rows:auto 1fr;gap:14px;
}
.mm-230v .mm-hero{
position:relative;border-radius:var(--mm-radius);overflow:hidden;min-height:240px;
display:flex;flex-direction:column;justify-content:flex-end;padding:24px;
background:#222;color:#fff;isolation:isolate;
}
.mm-230v .mm-hero img{
position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-1;
transition:transform .6s ease;
}
.mm-230v .mm-hero:hover img{transform:scale(1.05);}
.mm-230v .mm-hero::after{
content:"";position:absolute;inset:0;z-index:-1;
background:linear-gradient(180deg,rgba(0,0,0,.1) 30%,rgba(0,0,0,.65) 100%);
}
.mm-230v .mm-hero-eyebrow{
font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;opacity:.85;
font-weight:600;margin-bottom:4px;
}
.mm-230v .mm-hero-title{font-size:1.25rem;font-weight:700;margin:0 0 4px;}
.mm-230v .mm-hero-cta{
display:inline-flex;align-items:center;gap:6px;font-size:.85rem;font-weight:600;
margin-top:8px;color:#fff;text-decoration:underline;text-underline-offset:3px;
}

/* ---------- Style C · Basse tension: dual card panels ---------- */
.mm-bt .mega-menu__inner{
grid-template-columns:1fr 1fr;grid-auto-flow:row;padding:36px 0 36px;gap:24px;
}
.mm-bt .mm-card{
margin:calc(var(--mega-menu-column-gap)/2);
border-radius:var(--mm-radius);padding:24px 26px;
background:#fff;border:1px solid #e5ede8;
position:relative;overflow:hidden;transition:box-shadow .25s;
}
.mm-bt .mm-card:hover{box-shadow:0 8px 20px -8px rgba(39,107,66,.18);}
.mm-bt .mm-card::before{
content:"";position:absolute;top:0;left:0;right:0;height:4px;
background:linear-gradient(90deg,var(--mm-accent),#3a855a,#79c094);
}
.mm-bt .mm-card-head{display:flex;align-items:center;gap:12px;margin-bottom:14px;}
.mm-bt .mm-card-icon{
width:44px;height:44px;border-radius:12px;background:var(--mm-accent-soft);
color:var(--mm-accent-dark);display:grid;place-items:center;font-size:1.25rem;
flex-shrink:0;
}
.mm-bt .mm-card-title{font-size:1rem;font-weight:700;color:#1a1a1a;margin:0;}
.mm-bt .mm-card-sub{font-size:.78rem;color:#6b7280;margin:2px 0 0;}
.mm-bt .mm-card .linklist__item a{font-size:.91rem;padding:6px 0;}

/* ---------- Style D · Par espace: room mosaic ---------- */
.mm-espace .mega-menu__inner{
grid-template-columns:1fr;grid-auto-flow:row;padding:32px 0 36px;gap:18px;
}
.mm-espace .mm-group{margin:0 calc(var(--mega-menu-column-gap)/2);}
.mm-espace .mm-group-head{
display:flex;align-items:center;gap:10px;margin:6px 0 14px;
font-size:.8rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;
color:var(--mm-accent-dark);
}
.mm-espace .mm-group-head::before{
content:"";display:inline-block;width:24px;height:2px;background:var(--mm-accent);
border-radius:2px;
}
.mm-espace .mm-group-head .mm-group-tail{
flex:1;height:1px;background:#e2e8f0;margin-left:6px;
}
.mm-espace .mm-grid{
display:grid;grid-template-columns:repeat(5,1fr);gap:14px;
}
.mm-espace .mm-tile{
display:block;text-decoration:none;color:#1a1a1a;
border-radius:var(--mm-radius);overflow:hidden;position:relative;
background:#f4f7f5;aspect-ratio:5/4;transition:transform .25s,box-shadow .25s;
}
.mm-espace .mm-tile:hover{transform:translateY(-3px);box-shadow:0 10px 22px -10px rgba(39,107,66,.30);}
.mm-espace .mm-tile img{
position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
transition:transform .55s ease;
}
.mm-espace .mm-tile:hover img{transform:scale(1.08);}
.mm-espace .mm-tile::after{
content:"";position:absolute;inset:0;
background:linear-gradient(180deg,rgba(0,0,0,0) 40%,rgba(0,0,0,.65) 100%);
}
.mm-espace .mm-tile-label{
position:absolute;left:12px;right:12px;bottom:10px;color:#fff;font-size:.85rem;
font-weight:600;text-shadow:0 2px 6px rgba(0,0,0,.45);z-index:1;
display:flex;align-items:center;justify-content:space-between;gap:6px;
}
.mm-espace .mm-tile-label::after{content:"›";font-weight:400;font-size:1.1rem;}
.mm-espace .mm-tile--soft{
background:linear-gradient(135deg,#e8f3ec,#d6e3da);
}
.mm-espace .mm-tile--soft .mm-tile-label{color:var(--mm-accent-dark);text-shadow:none;}
.mm-espace .mm-tile--soft::after{display:none;}

/* ---------- Style E · Accessoires: compact icon strip ---------- */
.mm-acc .mega-menu__inner{
grid-template-columns:1fr;grid-auto-flow:row;padding:30px 0 30px;gap:14px;
}
.mm-acc .mm-acc-grid{
display:grid;grid-template-columns:repeat(5,1fr);gap:14px;
margin:0 calc(var(--mega-menu-column-gap)/2);
}
.mm-acc .mm-acc-tile{
display:flex;flex-direction:column;align-items:center;text-align:center;
text-decoration:none;color:#1a1a1a;padding:18px 12px 16px;border-radius:var(--mm-radius);
background:linear-gradient(180deg,#fff,#f7faf8);border:1px solid #e5ede8;
transition:all .25s;position:relative;overflow:hidden;
}
.mm-acc .mm-acc-tile:hover{
transform:translateY(-3px);border-color:var(--mm-accent);
box-shadow:0 12px 22px -12px rgba(39,107,66,.25);
}
.mm-acc .mm-acc-tile img{
width:78px;height:78px;object-fit:contain;margin-bottom:10px;
transition:transform .3s;
}
.mm-acc .mm-acc-tile:hover img{transform:scale(1.08);}
.mm-acc .mm-acc-tile-name{font-size:.92rem;font-weight:600;margin:0 0 2px;}
.mm-acc .mm-acc-tile-sub{font-size:.72rem;color:#6b7280;margin:0;}
.mm-acc .mm-acc-cond{
margin:6px calc(var(--mega-menu-column-gap)/2) 0;padding:14px 18px;
background:#fbfdfc;border:1px dashed #d6e3da;border-radius:var(--mm-radius-sm);
display:flex;flex-wrap:wrap;gap:10px;align-items:center;
font-size:.8rem;color:#4a5568;
}
.mm-acc .mm-acc-cond-label{
font-size:.7rem;font-weight:700;color:var(--mm-accent-dark);
text-transform:uppercase;letter-spacing:.08em;margin-right:6px;
}

/* ---------- v10 (5/15 client) PROMOS/BONS PLANS — 完全照官网纯文字 + 红圆点 ---------- */
.nav-text-bold {
  font-weight: 600;
  font-size: inherit;
  color: inherit;
  letter-spacing: 0;
  text-transform: none;
}
.promos-pct-dot {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  margin-left: 6px;
  border-radius: 50%;
  background: #e60023;
  color: #fff;
  font-size: 10px;
  font-weight: 700;
  line-height: 1;
  vertical-align: middle;
}
/* v10 旧 pill 残留 — 全失效 */
.mm-pill, .mm-pill--promos, .mm-pill--bonplan, .mm-pill--new { all: unset; }
.mm-pill--promos::before, .mm-pill--bonplan::before, .mm-pill--new::after { content: none !important; display: none !important; }

/* ---------- Style H · Plus: tight dropdown card (v10 修正: 去 ● 圆点 + 左对齐) ---------- */
.mm-plus .nav-dropdown{
background:#fff;border-radius:var(--mm-radius);
box-shadow:0 18px 40px -12px rgba(20,40,30,.18),0 6px 14px -8px rgba(20,40,30,.10);
padding:8px 0;min-width:200px;border:1px solid rgba(39,107,66,.10);
}
.mm-plus .nav-dropdown__item a{
display:block;
padding:7px 18px;
font-size:13.5px;
color:#1a1a1a;
text-decoration:none;
text-align:left !important;
line-height:1.5;
transition:color .15s ease, background .15s ease;
}
.mm-plus .nav-dropdown__item a::before,
.mm-plus .nav-dropdown__item a::after { content:none !important; display:none !important; }
.mm-plus .nav-dropdown__item a:hover{
background:#f7faf7;
color:#276B42;
}

/* ---------- Responsive guards ---------- */
@media (max-width:1199px){
.mm-espace .mm-grid{grid-template-columns:repeat(3,1fr);}
.mm-acc .mm-acc-grid{grid-template-columns:repeat(3,1fr);}
.mm-230v .mega-menu__inner{grid-template-columns:1fr 1fr;}
.mm-230v .mega-menu__images-wrapper{grid-column:1 / -1;}
}

/* Brand-link special look — v11 (5/16): 600 to match PROMOS/BONS PLANS */
.header__linklist-link{font-weight:600;}
.header__linklist-item .mm-pill{padding-top:3px;padding-bottom:3px;}

/* Product Grid Styles */
.product-item {
position: relative;
overflow: hidden;
transition: box-shadow 0.3s ease;
border-radius: 12px;
background-color: white;
margin-bottom: 20px;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
}
.product-item:hover {
box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08);
}
/* Footer Styles */
#shopify-section-sections--25458834145659__footer .footer {
--background: 39, 107, 66;
--heading-color: 255, 255, 255;
--text-color: 255, 255, 255;
--border-color: 71, 129, 94;
}
#shopify-section-sections--25458834145659__text-with-icons {
--heading-color: 27, 27, 27;
--text-color: 51, 51, 51;
--section-background: 247, 249, 247;
--vertical-breather: 40px;
}
/* ============================================================================
🎨 LUMIHOME - STYLES AMP PERSONNALISÉS
============================================================================ */
:root {
--brand-black: #1a1a1a;
--brand-dark: #2d3748;
--brand-medium: #4a5568;
--brand-light: #718096;
--accent-blue: #276B42;
--accent-blue-dark: #1e5333;
--accent-blue-light: #3a855a;
--accent-blue-gradient: linear-gradient(135deg, #1e5333 0%, #276B42 50%, #3a855a 100%);
--footer-bg: #276B42;
--footer-dark: #1e5333;
--footer-light: #3a855a;
--footer-gradient: linear-gradient(135deg, #1e5333 0%, #276B42 50%, #3a855a 100%);
--gold: #ffd700;
--amber: #ffb347;
--light-amber: #ffcc80;
--gold-gradient: linear-gradient(135deg, #ffd700 0%, #ffb347 50%, #ffd700 100%);
--warm-white: #f8f4e9;
--pure-white: #ffffff;
--off-white: #f7fafc;
--light-gray: #e2e8f0;
--gradient-brand: linear-gradient(135deg, #1a1a1a 0%, #2d3748 30%, #4a5568 70%, #718096 100%);
--gradient-accent: linear-gradient(135deg, #1e5333 0%, #276B42 30%, #3a855a 70%, #4ca06b 100%);
--gradient-footer: linear-gradient(135deg, #1e5333 0%, #276B42 50%, #3a855a 100%);
--gradient-gold: linear-gradient(135deg, #ffd700 0%, #ffb347 50%, #ffd700 100%);
--gradient-light: linear-gradient(135deg, #f8f4e9 0%, #ffffff 100%);
--shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.08);
--shadow-md: 0 6px 20px rgba(0, 0, 0, 0.12);
--shadow-lg: 0 12px 32px rgba(0, 0, 0, 0.15);
--shadow-xl: 0 20px 50px rgba(0, 0, 0, 0.18);
--shadow-accent: 0 4px 20px rgba(39, 107, 66, 0.3);
--shadow-footer: 0 4px 20px rgba(39, 107, 66, 0.3);
--shadow-gold: 0 4px 20px rgba(255, 215, 0, 0.4);
--border-brand: #2d3748;
--border-accent: #276B42;
--border-footer: #276B42;
--border-light: #e2e8f0;
--btn-brand: #1a1a1a;
--btn-brand-hover: #2d3748;
--btn-brand-active: #4a5568;
--btn-accent: #276B42;
--btn-accent-hover: #1e5333;
--btn-accent-active: #153d25;
--btn-footer: #276B42;
--btn-footer-hover: #1e5333;
--btn-footer-active: #153d25;
--font-primary: 'Poppins', sans-serif;
--fw-light: 300;
--fw-regular: 400;
--fw-medium: 500;
--fw-semibold: 600;
--fw-bold: 700;
--fw-extrabold: 800;
--fs-h1: 3rem;
--fs-h2: 2.25rem;
--fs-h3: 1.25rem;
--fs-h4: 1rem;
--fs-body-lg: 1.125rem;
--fs-body: 1rem;
--fs-small: 0.875rem;
--fs-caption: 0.75rem;
--lh-tight: 1.2;
--lh-normal: 1.5;
--lh-relaxed: 1.6;
--ls-tight: -0.02em;
--ls-normal: 0;
--ls-wide: 0.05em;
--ls-wider: 0.08em;
--color-heading: #1A1A1A;
--color-body: #4A5568;
--color-muted: #6B7280;
--color-white: #FFFFFF;
--color-accent-blue: #276B42;
--color-footer-green: #276B42;
--color-gold: #FFD700;
}
/* 公共区块 */
.section {
margin: 0 auto;
}
.section-title {
text-align: center;
color: var(--brand-black);
font-size: 2.2rem;
margin-bottom: 15px;
font-weight: 800;
letter-spacing: -0.3px;
position: relative;
display: inline-block;
left: 50%;
transform: translateX(-50%);
padding-bottom: 10px;
}
.section-title::after {
content: '';
display: block;
width: 80px;
height: 3px;
background: var(--accent-blue-gradient);
margin: 10px auto 0;
border-radius: 2px;
box-shadow: 0 2px 4px rgba(97,176,207,0.3);
}
.section-subtitle {
text-align: center;
color: var(--brand-medium);
font-size: 1.1rem;
margin-bottom: 50px;
max-width: 700px;
margin-left: auto;
margin-right: auto;
font-weight: 400;
}
/* 页脚 */
.footer {
background-color: var(--footer-bg);
color: var(--pure-white);
padding: 56px 20px 28px;
position: relative;
}
/* v5 docx: 删丑陋的金色横条，改为更细微的白色 hairline */
.footer::before {
content: '';
position: absolute;
top: 0; left: 0; width: 100%; height: 1px;
background: rgba(255,255,255,.14);
}
.footer-content {
max-width: 1200px;
margin: 0 auto;
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 50px;
margin-bottom: 50px;
}
.footer-section h3 {
color: var(--pure-white);
margin-bottom: 20px;
font-size: 1.2rem;
font-weight: 700;
position: relative;
padding-bottom: 10px;
}
.footer-section h3::after {
content: '';
position: absolute;
bottom: 0; left: 0;
width: 40px; height: 2px;
background: var(--gold);
}
.footer-description {
opacity: 0.9;
line-height: 1.5;
margin-bottom: 20px;
font-size: 0.9rem;
}
.footer-links {
display: flex;
flex-direction: column;
gap: 12px;
}
.footer-links a {
color: rgba(255,255,255,0.9);
text-decoration: none;
transition: all 0.3s ease;
font-size: 0.9rem;
display: flex;
align-items: center;
padding: 4px 0;
}
.footer-links a:hover {
color: var(--gold);
padding-left: 8px;
}
.footer-links a::before {
content: '→';
margin-right: 5px;
opacity: 0;
transition: all 0.3s ease;
}
.footer-links a:hover::before { opacity: 1; }
.social-icons {
display: flex;
gap: 10px;
margin-top: 20px;
flex-wrap: wrap;
}
.social-icon {
display: inline-flex;
align-items: center;
justify-content: center;
width: 40px; height: 40px;
background: rgba(255,255,255,0.1);
border-radius: 50%;
color: var(--pure-white);
text-decoration: none;
transition: all 0.3s ease;
}
.social-icon:hover {
background: var(--gold);
color: var(--footer-bg);
transform: translateY(-3px);
box-shadow: var(--shadow-gold);
}
.social-icon svg { width: 18px; height: 18px; fill: currentColor; }
.footer-bottom {
text-align: center;
padding-top: 30px;
border-top: 1px solid rgba(255,255,255,0.15);
opacity: 0.8;
font-size: 0.85rem;
max-width: 1200px;
margin: 0 auto;
}
/* 英雄区域 - 简化版用于详情页不展示 */
.hero { display: none; }
/* 设备自适应图片 */
.pc-img, .pc-only { display: block; }
.pad-img, .pad-only { display: none; }
.h5-img, .h5-only { display: none; }
@media (max-width:1200px) and (min-width:769px) {
.pc-img, .pc-only { display: none; }
.pad-img, .pad-only { display: block; }
.h5-img, .h5-only { display: none; }
}
@media (max-width:768px) {
.pc-img, .pc-only { display: none; }
.pad-img, .pad-only { display: none; }
.h5-img, .h5-only { display: block; }
}
/* 动画 */
.animate-fade-in-up { animation: fadeInUp 0.6s ease-out; }
@keyframes fadeInUp {
from { opacity:0; transform:translateY(30px); }
to { opacity:1; transform:translateY(0); }
}
/* 移动端优化 */
@media (max-width: 768px) {
.section,
.featured-products,
.testimonials,
.partners,
.media,
.faq {
padding: 30px 15px ;
}
.section-title {
font-size: 1.6rem ;
margin-bottom: 10px;
}
.section-subtitle {
font-size: 0.9rem !important;
margin-bottom: 30px;
padding: 0 10px;
}
.footer-content {
grid-template-columns: 2fr !important;
gap: 30px;
margin-bottom: 30px;
}
.footer-section h3::after {
left: 50%;
transform: translateX(-50%);
}
.social-icons {
justify-content: center;
}
}
a {
cursor: pointer;
}

/* ============================================================================
   🎨 PRODUCT PAGE SPECIFIC STYLES (optimisé et aligné)
   ============================================================================ */
:root {
    --product-text-color: #333;
    --product-bg-color: #fff;
    --accent-green: #276B42;
    --accent-green-hover: #1e5333;
    --border-light: #e5e5e5;
}

/* Layout Grid for Product Top Section */
.product-layout-container {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
    gap: clamp(24px, 4vw, 56px);
    max-width: 1320px;
    margin: 0 auto;
    padding: clamp(20px, 3vw, 40px) clamp(16px, 3vw, 28px);
    align-items: start;
    box-sizing: border-box;
}

/* --- LEFT: Sticky Gallery --- */
.product-gallery-wrapper {
    position: sticky;
    top: 120px;
    width: 100%;
    min-width: 0; /* prevent grid overflow */
}

.main-image-container {
    position: relative;
    width: 100%;
    aspect-ratio: 1 / 1;
    background: #f9f9f9;
    border-radius: 12px;
    overflow: hidden;
    margin-bottom: 20px;
    box-shadow: var(--shadow-sm);
}

.main-image-container img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: opacity 0.3s ease;
}

/* Day/Night Toggle Overlay Button */
.day-night-toggle {
    position: absolute;
    bottom: 20px;
    right: 20px;
    background: rgba(255,255,255,0.95);
    border: 1px solid var(--border-light);
    padding: 10px 18px;
    border-radius: 40px;
    cursor: pointer;
    font-weight: 600;
    font-size: 14px;
    display: flex;
    align-items: center;
    gap: 8px;
    box-shadow: var(--shadow-md);
    z-index: 10;
    transition: all 0.2s ease;
}
.day-night-toggle:hover {
    background: #fff;
    transform: translateY(-2px);
}

/* v13-2 (5/18 客户) ⑨ — 缩略图调大：从 4 列 → 2 列（同原 lumihome.com 详情页）*/
.thumbnail-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 14px;
}
.thumb-item {
    aspect-ratio: 1/1;
    border-radius: 10px;
    overflow: hidden;
    cursor: pointer;
    border: 2px solid transparent;
    transition: all 0.2s;
    background: #f7f9f7;
}
.thumb-item.active {
    border-color: var(--accent-green);
    transform: scale(0.98);
}
/* v14 (5/20 客户) — 默认只显示前 4 张缩略图，展开/收起切换 */
.thumb-hidden {
    display: none;
}
.thumbnail-grid.is-expanded .thumb-hidden {
    display: block;
}
.thumb-more-btn {
    display: block;
    margin: 14px auto 0;
    padding: 10px 22px;
    background: #fff;
    color: #276B42;
    border: 1px solid #cfd8d2;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
}
.thumb-more-btn:hover {
    border-color: #276B42;
    background: #f4f8f5;
}
.thumb-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    /* v13-2 ⑩: gallery 换色时的淡入淡出 */
    transition: opacity 0.25s ease;
}
.swatch-v2 { cursor: pointer; /* v13-2 ⑪: 强化可点击视觉 */ }

/* --- RIGHT: Product Info --- */
.product-info-wrapper {
    padding-top: 0;
    min-width: 0; /* prevent grid overflow */
    width: 100%;
}

.breadcrumb-nav {
    font-size: 13px;
    color: #666;
    margin-bottom: 20px;
}
.breadcrumb-nav a {
    color: #666;
    text-decoration: none;
}
.breadcrumb-nav a:hover {
    color: var(--accent-green);
}
.breadcrumb-nav span {
    margin: 0 5px;
}

.product-title {
    font-family: var(--heading-font-family);
    font-size: 2.2rem;
    font-weight: 700;
    color: var(--brand-black);
    margin-bottom: 12px;
    line-height: 1.2;
}

.product-rating {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 0;
    font-size: 14px;
}
.stars {
    color: #FFD700;
    letter-spacing: 2px;
}

.product-price-block {
    margin-bottom: 24px;
    padding-bottom: 24px;
    border-bottom: 1px solid var(--border-light);
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px 12px;
}
.current-price {
    font-size: clamp(1.6rem, 4vw, 2rem);
    font-weight: 700;
    color: var(--accent-green);
    line-height: 1;
}
.compare-price {
    font-size: clamp(1rem, 2.4vw, 1.2rem);
    text-decoration: line-through;
    color: #999;
}
.badge-save {
    background: #ffebee;
    color: #c62828;
    padding: 4px 10px;
    border-radius: 30px;
    font-size: 12px;
    font-weight: 700;
    vertical-align: middle;
    white-space: nowrap;
}

/* v16 (5/22 客户): 3 specs pills — alignées sur lumihome.com */
.spec-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0 0 14px;
}
.spec-pill {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    background: #fff;
    border: 1.5px solid #e2e6e2;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 600;
    color: #33392f;
}
.spec-pill svg { width: 14px; height: 14px; flex: 0 0 auto; }
.spec-pill--solaire svg { color: #f6a429; }
.spec-pill--lumens svg,
.spec-pill--remote svg { color: #276B42; }

/* v11 (5/16 客户): 紧行距 — 客户截图标红 "行距太大"，最多 5 行 */
.short-desc-list {
    list-style: none;
    padding: 0;
    margin-bottom: 20px;
}
.short-desc-list li {
    position: relative;
    padding-left: 24px;
    margin-bottom: 6px;
    font-size: 14.5px;
    line-height: 1.4;
    color: #333;
}
.short-desc-list li::before {
    content: '✓';
    position: absolute;
    left: 0;
    top: 1px;
    color: var(--accent-green);
    font-weight: bold;
    font-size: 16px;
}

/* Variant Selector */
.variant-selector {
    margin-bottom: 24px;
}
.variant-label {
    font-weight: 600;
    margin-bottom: 10px;
    display: block;
}
.color-swatches {
    display: flex;
    gap: 12px;
}
.swatch {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: 2px solid #ddd;
    cursor: pointer;
    transition: all 0.2s;
}
.swatch.active {
    border-color: var(--accent-green);
    transform: scale(1.1);
    box-shadow: 0 0 0 2px rgba(39,107,66,0.3);
}

/* v9: Actions row — quantity + add-to-cart aligned, fixed equal 52px height */
.add-to-cart-form {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    gap: 12px;
    margin-bottom: 20px;
}
.quantity-input {
    display: inline-flex;
    align-items: stretch;
    border: 1.5px solid #d8ddd8;
    border-radius: 999px;
    width: 140px;
    height: 52px;
    flex: 0 0 auto;
    background: #fff;
    overflow: hidden;
}
.qty-btn {
    background: none;
    border: none;
    width: 44px;
    height: 100%;
    cursor: pointer;
    font-size: 20px;
    font-weight: 500;
    color: #555;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    transition: background .15s, color .15s;
}
.qty-btn:hover { background: #f3f5f3; color: var(--accent-green); }
.qty-val {
    flex: 1;
    width: 100%;
    text-align: center;
    border: none;
    outline: none;
    font-size: 16px;
    font-weight: 700;
    color: #1a1a1a;
    background: transparent;
    padding: 0;
    -moz-appearance: textfield;
}
.qty-val::-webkit-outer-spin-button,
.qty-val::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.btn-add-cart {
    flex: 1 1 220px;
    height: 52px;
    background: var(--accent-green);
    color: white;
    border: none;
    border-radius: 999px;
    font-weight: 700;
    font-size: 14.5px;
    letter-spacing: 0.04em;
    cursor: pointer;
    transition: background 0.25s ease, transform 0.2s ease, box-shadow 0.2s ease;
    text-transform: uppercase;
    padding: 0 24px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}
.btn-add-cart:hover {
    background: var(--accent-green-hover);
    transform: translateY(-1px);
    box-shadow: 0 6px 16px rgba(39,107,66,.25);
}
.btn-add-cart:active { transform: translateY(0); }
/* v16 (5/22 客户) — bouton paiement express, 与 "Ajouter au panier" 等宽对齐 */
.buy-now-row {
    display: flex;
    gap: 12px;
    margin-bottom: 20px;
}
.buy-now-spacer { flex: 0 0 140px; }
.btn-buy-now {
    flex: 1 1 220px; height: 52px;
    background: #1a1a1a; color: #fff; border: none; border-radius: 999px;
    font-weight: 700; font-size: 14px; letter-spacing: .04em; text-transform: uppercase;
    cursor: pointer; display: inline-flex; align-items: center; justify-content: center; gap: 8px;
    transition: background .2s ease, transform .15s ease;
}
.btn-buy-now:hover { background: #000; transform: translateY(-1px); }
.btn-buy-now:active { transform: translateY(0); }

/* v16 (5/22 客户) ③ — 信任条紧凑：缩小内边距/间距，字号 +2px */
.trust-badges {
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
    background: #f8f9fa;
    padding: 9px 12px;
    border-radius: 12px;
    margin-top: 16px;
    gap: 4px 6px;
}
.trust-item {
    text-align: center;
    font-size: 13.5px;
    font-weight: 500;
    color: #555;
    flex: 1 1 30%;
    min-width: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
}
.trust-item svg {
    width: 19px;
    height: 19px;
    margin-bottom: 0;
    flex: 0 0 auto;
    fill: var(--accent-green);
}

/* v16 (5/22 客户) ① — 动态配送信息 */
.ship-info-v16 {
    /* v16 (5/22 客户) — 配送行移到购买按钮上方 */
    margin-top: 2px;
    margin-bottom: 14px;
    display: flex;
    flex-direction: column;
    gap: 3px;
}
.ship-line {
    font-size: 13px;
    color: #444;
    display: flex;
    align-items: center;
    gap: 7px;
    line-height: 1.4;
}
.ship-line strong { color: var(--accent-green); font-weight: 700; }
.ship-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--accent-green);
    box-shadow: 0 0 0 3px rgba(39,107,66,.15);
    flex: 0 0 auto;
}
.ship-line--prime {
    font-size: 12px;
    color: #777;
    padding-left: 15px;
}

/* --- SECTIONS BELOW FOLD --- */

/* ============================================================================
   ✨ At a Glance — Carousel horizontal (Swiper) avec titre + flèches
============================================================================ */
.at-a-glance-bar {
    background: linear-gradient(180deg, #f7faf7 0%, #ffffff 100%);
    border-top: 1px solid var(--border-light);
    border-bottom: 1px solid var(--border-light);
    padding: clamp(32px, 5vw, 56px) clamp(16px, 3vw, 24px);
    margin-top: 24px;
}
.glance-wrapper {
    max-width: 1280px;
    margin: 0 auto;
    text-align: center;
}
.glance-title {
    font-family: var(--heading-font-family);
    font-size: clamp(1.6rem, 3vw, 2.1rem);
    font-weight: 700;
    color: var(--brand-black);
    margin: 0 0 28px;
    letter-spacing: -0.01em;
}
.glance-carousel {
    position: relative;
    padding: 0 56px; /* room for arrow buttons */
}
.glance-swiper {
    overflow: hidden;
    padding: 4px 2px 8px; /* prevent shadow clipping */
}
.glance-swiper .swiper-wrapper {
    align-items: stretch;
}
.glance-item {
    text-align: center;
    background: #fff;
    border: 1px solid #eef2ef;
    border-radius: 14px;
    padding: 22px 14px 20px;
    box-sizing: border-box;
    min-width: 0;
    height: auto;
    transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}
.glance-item:hover {
    transform: translateY(-3px);
    box-shadow: var(--shadow-md);
    border-color: rgba(39, 107, 66, 0.25);
}
.glance-item .icon-box {
    width: 56px;
    height: 56px;
    margin: 0 auto 14px;
    background: #e8f2ec;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--accent-green);
}
.glance-item .icon-box svg {
    width: 26px;
    height: 26px;
    color: var(--accent-green);
}
.glance-item h4 {
    font-size: 11px;
    color: #777;
    margin: 0 0 6px;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    font-weight: 600;
    line-height: 1.3;
}
.glance-item p {
    font-weight: 700;
    font-size: 14px;
    color: var(--brand-black);
    margin: 0;
    line-height: 1.35;
    word-break: break-word;
}

/* --- Boutons flèche style lumihome --- */
.glance-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 44px;
    height: 44px;
    border-radius: 50%;
    border: none;
    background: var(--accent-green);
    color: #fff;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 12px rgba(39, 107, 66, 0.25);
    transition: background 0.2s ease, transform 0.2s ease, opacity 0.2s ease;
    z-index: 5;
}
.glance-nav:hover {
    background: var(--accent-green-hover);
    transform: translateY(-50%) scale(1.06);
}
.glance-nav:disabled,
.glance-nav.swiper-button-disabled {
    opacity: 0.35;
    cursor: not-allowed;
    transform: translateY(-50%);
}
.glance-nav-prev { left: 0; }
.glance-nav-next { right: 0; }

/* --- Pagination dots --- */
.glance-pagination {
    margin-top: 20px;
    display: flex;
    justify-content: center;
    gap: 6px;
}
.glance-pagination .swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #cdd5cf;
    opacity: 1;
    transition: background 0.2s ease, width 0.2s ease;
    cursor: pointer;
}
.glance-pagination .swiper-pagination-bullet-active {
    background: var(--accent-green);
    width: 22px;
    border-radius: 4px;
}

/* 视频模块样式 */
.video-section {
    max-width: 1280px;
    margin: 40px auto;
    padding: 0 clamp(16px, 3vw, 24px);
}
.video-container {
    position: relative;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: var(--shadow-lg);
    cursor: pointer;
    background: #000;
}
.video-cover {
    width: 100%;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    display: block;
}
.play-button {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 80px;
    height: 80px;
    background: rgba(0,0,0,0.7);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s;
}
.play-button svg {
    width: 40px;
    height: 40px;
    fill: white;
    margin-left: 5px;
}
.video-container:hover .play-button {
    background: var(--accent-green);
    transform: translate(-50%, -50%) scale(1.05);
}
.video-iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
}

/* ============================================================
   Product Accordion (style solarversand) — sections repliables
   Remplace l'ancien Tabs + standalone sections.
============================================================ */
.product-accordion-section {
    padding: clamp(36px, 5vw, 64px) 0;
    background: #fff;
}
.product-accordion-section .acc-wrap {
    /* v16 (5/22 客户) ⑫ — 宽度对齐 At a glance (.glance-wrapper = 1280px) */
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 clamp(16px, 3vw, 24px);
}
.acc-section-title {
    text-align: center;
    font-size: clamp(1.5rem, 3vw, 2rem);
    font-weight: 700;
    color: var(--brand-black, #1a1a1a);
    margin: 0 0 28px;
    letter-spacing: -0.01em;
}
/* v16 (5/22 客户) ⑦ — 白天/黑夜对比图块 */
.daynight-compare {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    margin: 0 0 32px;
}
.daynight-cell {
    position: relative;
    margin: 0;
    border-radius: 16px;
    overflow: hidden;
    aspect-ratio: 4 / 3;
    background: #f3f5f3;
}
.daynight-cell img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.daynight-tag {
    position: absolute;
    top: 12px;
    left: 12px;
    padding: 5px 14px;
    border-radius: 999px;
    font-size: 12.5px;
    font-weight: 700;
    letter-spacing: .02em;
    color: #fff;
    backdrop-filter: blur(4px);
}
.daynight-tag--day   { background: rgba(39,107,66,.92); }
.daynight-tag--night { background: rgba(26,26,26,.82); }
@media (max-width: 640px) {
    .daynight-compare { grid-template-columns: 1fr; gap: 12px; }
}
.acc-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.acc-item {
    background: #eff3fa;
    border: 1px solid transparent;
    border-radius: 10px;
    overflow: hidden;
    transition: background 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}
.acc-item.open {
    background: #ffffff;
    border-color: #e2e8f0;
    box-shadow: 0 2px 14px rgba(0,0,0,0.05);
}
.acc-head {
    width: 100%;
    padding: 16px 20px;
    background: none;
    border: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 14px;
    font-family: inherit;
    font-size: 1rem;
    font-weight: 500;
    color: #1a1a1a;
    text-align: left;
    transition: color 0.2s ease;
}
.acc-head:hover {
    color: var(--accent-green, #276B42);
}
.acc-head:focus-visible {
    outline: 2px solid var(--accent-green, #276B42);
    outline-offset: -2px;
}
.acc-icon {
    flex-shrink: 0;
    width: 24px;
    height: 24px;
    color: #4a5568;
    opacity: 0.85;
    display: flex;
    align-items: center;
    justify-content: center;
}
.acc-icon svg {
    width: 22px;
    height: 22px;
}
.acc-item.open .acc-icon {
    color: var(--accent-green, #276B42);
    opacity: 1;
}
.acc-label {
    flex: 1;
    min-width: 0;
    overflow-wrap: anywhere;
}
.acc-chevron {
    flex-shrink: 0;
    width: 22px;
    height: 22px;
    color: #6b7280;
    transition: transform 0.3s ease, color 0.2s ease;
}
.acc-chevron svg {
    width: 100%;
    height: 100%;
    display: block;
}
.acc-item.open .acc-chevron {
    transform: rotate(180deg);
    color: var(--accent-green, #276B42);
}
.acc-body {
    max-height: 0;
    overflow: hidden;
    background: #ffffff;
    transition: max-height 0.45s cubic-bezier(0.4, 0, 0.2, 1);
}
.acc-item.open .acc-body {
    max-height: 6000px;
}
.acc-inner {
    padding: 8px 24px 28px;
}
.acc-inner > h3:first-child,
.acc-inner > .install-intro > h3 {
    margin-top: 0;
}

/* Inside accordion: tweak nested grids so they look balanced in the constrained width */
.acc-inner .specs-grid {
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 18px;
}
.acc-inner .install-steps-grid {
    margin-top: 18px;
}

/* v10 (5/15 client): Avis d'expert (Christophe C. — Fondateur Lumihome) */
.expert-review { padding: clamp(24px, 4vw, 40px) clamp(16px, 3vw, 24px); background: #fff; }
.expert-review-wrap { max-width: 900px; margin: 0 auto; }
.expert-review-card {
    background: #f8faf8;
    border: 1px solid #e6ebe8;
    border-radius: 16px;
    padding: 22px 26px;
    position: relative;
}
.expert-review-head {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 14px;
}
.expert-avatar {
    width: 48px; height: 48px;
    border-radius: 50%;
    object-fit: cover;
    background: #fff;
    border: 1px solid #e6ebe8;
}
.expert-meta { flex: 1; display: flex; flex-direction: column; line-height: 1.3; }
.expert-name { font-weight: 700; color: #1a1a1a; font-size: 15px; }
.expert-role {
    color: #666;
    font-size: 11.5px;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}
.expert-badge {
    background: #276B42;
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    padding: 6px 14px;
    border-radius: 999px;
    white-space: nowrap;
}
.expert-quote {
    margin: 0;
    font-size: 14.5px;
    line-height: 1.7;
    color: #333;
    font-style: italic;
    border-left: 3px solid #276B42;
    padding-left: 14px;
}
@media (max-width: 540px) {
    .expert-review-head { flex-wrap: wrap; }
    .expert-badge { order: -1; margin-left: auto; }
}

/* v10 (5/15 client): Description = LEFT text + RIGHT video (esotec layout) */
.desc-video-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 24px;
    align-items: start;
}
@media (min-width: 860px) {
    .desc-video-grid { grid-template-columns: 1.05fr 1fr; gap: 32px; }
}
.desc-video-text {
    min-width: 0;
}
.desc-video-text h3 {
    font-size: clamp(1.05rem, 2.2vw, 1.25rem);
    color: #1a1a1a;
    margin: 0 0 10px;
    line-height: 1.3;
}
.desc-video-text h3:not(:first-child) { margin-top: 18px; }
.desc-video-text p {
    color: #555;
    font-size: 14.5px;
    line-height: 1.65;
    margin: 0 0 12px;
}
.desc-video-media { min-width: 0; }
/* Inline variant of videos-section when nested in Description */
.videos-section--inline { background: transparent !important; padding: 0 !important; }
.videos-section--inline .videos-wrap { max-width: none !important; padding: 0 !important; }
.videos-section--inline .videos-header { margin: 0 0 12px; text-align: left; }
.videos-section--inline .videos-title { font-size: 1.1rem; font-weight: 700; color: #1a1a1a; margin: 0 0 4px; text-align: left; }
.videos-section--inline .videos-subtitle { font-size: 13px; color: #666; margin: 0; text-align: left; }
/* v10 (5/15 client): tabs moved BELOW player → margin reversed */
.videos-section--inline .videos-tabs { gap: 6px; flex-wrap: wrap; margin: 12px 0 0; justify-content: flex-start; }
.videos-section--inline .videos-tab-btn { padding: 6px 12px; font-size: 12.5px; border-radius: 999px; }
.videos-section--inline .vt-duration { display: none !important; } /* v10 5/15: 不显示时长 */
.videos-section--inline .vt-label { font-size: 12.5px; } /* short label only */
.videos-section--inline .vt-player { border-radius: 12px; overflow: hidden; }
.videos-section--inline .vt-meta { padding: 10px 4px 0; }
.videos-section--inline .vt-title { font-size: 14px; font-weight: 600; margin: 0 0 4px; }
.videos-section--inline .vt-desc { font-size: 12.5px; color: #666; margin: 0; }
@media (max-width: 860px) {
    .videos-section--inline .videos-header { display: none; }
}

/* v10 (5/15 client) : Prix HT (gros) + PVC TTC + remises sur quantité */
/* v11 (5/16 客户): 评分链接全程 no underline (客户要求红箭头标记) */
.product-rating--link,
.product-rating--link:hover,
.product-rating--link:focus,
.product-rating--link:active { text-decoration: none !important; color: inherit; cursor: pointer; }
.product-rating--link span { text-decoration: none !important; }
.price-v2 {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 14px;
    padding: 0 0 12px;
    border-bottom: 1px solid #e5e7eb;
    margin: 0 0 12px;
}
.price-v2-left { min-width: 0; }
.price-v2-now {
    /* v16 (5/22 客户) — 价格字号缩小 2 号（之前偏大） */
    font-size: clamp(30px, 4.6vw, 38px);
    font-weight: 900;
    color: #1a1a1a;
    line-height: 1.05;
    letter-spacing: -0.015em;
}
.price-v2-tax {
    display: inline-block;
    margin-left: 6px;
    font-size: 14px;
    color: #666;
    font-weight: 600;
    vertical-align: middle;
}
.price-v2-pvc {
    font-size: 13.5px;
    color: #666;
    margin-top: 4px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
/* v11 (5/16) — product subtitle / rating row / SKU / eco line */
.product-subtitle {
    margin: -8px 0 12px;
    font-size: 14px;
    color: #555;
    line-height: 1.4;
    font-weight: 400;
}
.product-rating-row {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 6px;
    margin-bottom: 16px;
}
.product-sku-ref {
    font-size: 12px;
    color: #888;
    letter-spacing: .02em;
    font-family: ui-monospace, Menlo, Consolas, monospace;
}
/* v16 (5/22 客户) ⑬ — 分享 + 收藏按钮（标题同行，标题占主空间避免重叠） */
.product-title-row {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px;
}
.pdp-actions-v16 {
    display: flex;
    gap: 8px;
    flex-shrink: 0;
    margin-top: 3px;
}
.product-info-wrapper { position: relative; }
.pdp-action-btn {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    border: 1.5px solid #e2e6e2;
    background: #fff;
    color: #276B42;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: background .15s, border-color .15s, transform .1s;
}
.pdp-action-btn:hover { background: #f3f7f4; border-color: #276B42; }
.pdp-action-btn:active { transform: scale(.92); }
.pdp-action-btn svg { width: 18px; height: 18px; }
.pdp-action-btn.is-fav { color: #d83b3b; border-color: #f0c2c2; }
.pdp-action-btn.is-fav svg { fill: #d83b3b; stroke: #d83b3b; }
.price-v2-eco {
    font-size: 12px;
    color: #888;
    margin-top: 4px;
    font-style: italic;
}
/* v11 (5/16 客户) — PVC -X% 动态徽章（点 pill 后会更新） */
/* v11 (5/16 客户) — Dimensions PDF 下载行（"图纸在 PDF 里面"） */
.schemas-pdf-row {
    display: flex; align-items: center; gap: 14px;
    margin-top: 22px; padding: 14px 18px;
    background: #fff; border: 1px solid rgba(39,107,66,.18); border-radius: 10px;
    text-decoration: none; color: inherit;
    transition: border-color .15s, box-shadow .15s, transform .15s;
}
.schemas-pdf-row:hover {
    border-color: #276B42;
    box-shadow: 0 6px 18px -6px rgba(39,107,66,.2);
    transform: translateY(-1px);
}
.schemas-pdf-icon {
    display: inline-block; padding: 4px 9px;
    background: #d83b3b; color: #fff;
    font-size: 11px; font-weight: 700; letter-spacing: .04em;
    border-radius: 4px;
}
.schemas-pdf-label { flex: 1; display: flex; flex-direction: column; gap: 2px; }
.schemas-pdf-label strong { font-size: 14px; font-weight: 600; color: #1a1a1a; }
.schemas-pdf-label small { font-size: 12px; color: #888; }
.schemas-pdf-cta {
    display: inline-flex; align-items: center; gap: 6px;
    padding: 7px 14px; background: #276B42; color: #fff;
    border-radius: 999px; font-size: 13px; font-weight: 600;
}

.pvc-badge {
    display: inline-flex;
    align-items: center;
    padding: 8px 16px;
    background: #e85a2c;
    color: #fff;
    border-radius: 999px;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .02em;
    white-space: nowrap;
    box-shadow: 0 4px 10px -3px rgba(232,90,44,.4);
    transition: transform .15s ease, box-shadow .15s ease;
}
.pvc-badge.is-flash {
    animation: pvcFlash .35s ease;
}
@keyframes pvcFlash {
    0%   { transform: scale(1); }
    50%  { transform: scale(1.08); box-shadow: 0 6px 14px -3px rgba(232,90,44,.6); }
    100% { transform: scale(1); }
}
/* ════════════════════════════════════════════════════ */
/* v11 (5/16 客户) — Avant / Après slider (clip-path)    */
/*   两张图同尺寸同位置 absolute，clip-path 控制 BEFORE 可见 */
/*   保证场景角度 100% 对齐                                */
/* ════════════════════════════════════════════════════ */
.ba-section { padding: 60px 24px; background: #f7faf7; }
.ba-wrap { max-width: 1100px; margin: 0 auto; }
.ba-title { text-align: center; font-size: 26px; font-weight: 700; margin: 0 0 8px; color: #1a1a1a; }
.ba-sub { text-align: center; font-size: 15px; color: #555; margin: 0 0 32px; line-height: 1.5; }
.ba-compare {
    position: relative; max-width: 900px; margin: 0 auto;
    aspect-ratio: 16/9; border-radius: 14px; overflow: hidden;
    box-shadow: 0 16px 40px -12px rgba(20,40,30,.25);
    cursor: ew-resize; user-select: none;
    background: #000;
    --ba-pos: 50%;
}
.ba-compare .ba-img {
    position: absolute; inset: 0;
    width: 100%; height: 100%;
    object-fit: cover; object-position: center;
    display: block;
}
/* AFTER → bottom layer (always full, visible right of handle) */
.ba-compare .ba-img--after { z-index: 1; }
/* BEFORE → top layer, clipped from right via clip-path
   inset(top right bottom left) — right = 100% - pos, so left half stays visible */
.ba-compare .ba-img--before {
    z-index: 2;
    clip-path: inset(0 calc(100% - var(--ba-pos)) 0 0);
    -webkit-clip-path: inset(0 calc(100% - var(--ba-pos)) 0 0);
}
.ba-label {
    position: absolute; top: 16px; padding: 5px 12px; border-radius: 999px;
    background: rgba(255,255,255,.92); color: #1a1a1a; font-size: 12px; font-weight: 700;
    letter-spacing: .04em; text-transform: uppercase; box-shadow: 0 2px 6px rgba(0,0,0,.2);
    z-index: 4;
}
.ba-label--left  { left: 16px; }
.ba-label--right { right: 16px; }
.ba-handle {
    position: absolute; top: 50%;
    left: var(--ba-pos);
    width: 44px; height: 44px; border-radius: 50%;
    background: #fff; color: #1a1a1a;
    display: flex; align-items: center; justify-content: center;
    box-shadow: 0 4px 14px rgba(0,0,0,.3);
    transform: translate(-50%,-50%); cursor: ew-resize;
    transition: box-shadow .15s ease;
    z-index: 5;
}
.ba-handle::before, .ba-handle::after {
    content: ""; position: absolute; top: 50%; left: 50%;
    transform: translate(-50%,-50%);
    width: 2px; height: 9999px; background: #fff;
    box-shadow: 0 0 6px rgba(0,0,0,.25);
    z-index: -1;
}
.ba-handle:hover { box-shadow: 0 6px 18px rgba(0,0,0,.4); }
@media (max-width: 640px){
    .ba-section { padding: 40px 16px; }
    .ba-title { font-size: 22px; }
    .ba-compare { aspect-ratio: 4/5; }
}

/* ════════════════════════════════════════════════════ */
/* v11 (5/16 客户) — Sticky cart bottom bar              */
/* ════════════════════════════════════════════════════ */
.cw-cart-bar {
    position: fixed; bottom: 0; left: 0; right: 0;
    background: #1a1a1a; color: #fff;
    transform: translateY(100%); transition: transform .25s ease;
    z-index: 99998; box-shadow: 0 -8px 24px rgba(0,0,0,.2);
}
/* v15 (5/21): hide on desktop — the new PC sticky add-to-cart bar takes its place ≥1000px */
@media (min-width: 1000px){ .cw-cart-bar { display: none !important; } }
.cw-cart-bar.is-visible { transform: translateY(0); }
.cw-cart-bar-inner {
    max-width: 1200px; margin: 0 auto; padding: 12px 20px;
    display: flex; align-items: center; gap: 16px;
}
.cw-cart-bar-info { display: flex; align-items: center; gap: 10px; flex: 1; font-size: 14px; }
.cw-cart-icon { display: inline-flex; }
.cw-cart-count { display: inline-block; min-width: 22px; padding: 2px 7px;
    background: #d83b3b; color: #fff; border-radius: 999px; text-align: center;
    font-weight: 700; }
.cw-cart-btn {
    background: #fff; color: #1a1a1a; padding: 10px 22px; border-radius: 999px;
    text-decoration: none; font-weight: 600; font-size: 14px;
    transition: background .15s, transform .15s;
}
.cw-cart-btn:hover { background: #f3f4f6; transform: translateY(-1px); }
.cw-cart-close {
    background: none; border: 0; color: #fff; font-size: 24px; cursor: pointer;
    padding: 4px 8px; opacity: .7; transition: opacity .15s;
}
.cw-cart-close:hover { opacity: 1; }
@media (max-width: 640px){
    .cw-cart-bar-inner { padding: 10px 12px; gap: 8px; flex-wrap: wrap; }
    .cw-cart-bar-info { font-size: 12.5px; }
    .cw-cart-btn { padding: 8px 14px; font-size: 13px; }
}

/* ════════════════════════════════════════════════════ */
/* v11 (5/16 客户) — Trust strip (paiement / livraison)  */
/* ════════════════════════════════════════════════════ */
.cw-trust-strip { background: #f7faf7; padding: 40px 24px; border-top: 1px solid rgba(39,107,66,.1); }
.cw-trust-inner {
    max-width: 1200px; margin: 0 auto;
    display: grid; grid-template-columns: repeat(4,1fr); gap: 24px;
}
.cw-trust-col { display: flex; flex-direction: column; gap: 4px; }
.cw-trust-col strong { color: #276B42; font-size: 14px; font-weight: 700; }
.cw-trust-col span { color: #555; font-size: 13px; line-height: 1.4; }
.cw-trust-col em { color: #d83b3b; font-style: normal; font-weight: 600; }
@media (max-width: 900px){
    .cw-trust-inner { grid-template-columns: repeat(2,1fr); }
}
@media (max-width: 500px){
    .cw-trust-inner { grid-template-columns: 1fr; }
}

/* v11 (5/16 客户) PVC ⓘ tooltip — 小白卡 + 箭头（照客户参考），干净不出框 */
.pvc-info-icon {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    font-size: 13px;
    color: #6b7280;
    cursor: help;
    border-radius: 50%;
    transition: color .15s, background .15s;
}
.pvc-info-icon:hover,
.pvc-info-icon:focus {
    color: #1a1a1a;
    background: #f3f4f6;
    outline: none;
}
.pvc-tooltip {
    position: absolute;
    top: calc(100% + 10px);
    left: 50%;
    transform: translateX(-50%);
    width: max-content;
    max-width: 220px;
    padding: 10px 12px;
    font-size: 12px;
    font-weight: 400;
    line-height: 1.45;
    color: #1a1a1a;
    background: #fff;
    border: 1px solid rgba(0,0,0,.08);
    border-radius: 10px;
    text-align: left;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity .15s ease, visibility .15s ease, transform .15s ease;
    z-index: 1000;
    box-shadow: 0 10px 24px -6px rgba(20,40,30,.18), 0 4px 8px -4px rgba(0,0,0,.08);
}
/* 三角箭头指向 ⓘ */
.pvc-tooltip::before {
    content: "";
    position: absolute;
    bottom: 100%;
    left: 50%;
    transform: translateX(-50%);
    border: 6px solid transparent;
    border-bottom-color: #fff;
    filter: drop-shadow(0 -1px 0 rgba(0,0,0,.08));
}
.pvc-info-icon:hover .pvc-tooltip,
.pvc-info-icon:focus .pvc-tooltip {
    opacity: 1;
    visibility: visible;
    transform: translateX(-50%) translateY(0);
}
.price-v2-right {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 6px;
}
.price-v2-badge {
    background: #e85a2c;
    color: #fff;
    padding: 6px 14px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.02em;
    white-space: nowrap;
}
.price-v2-badge--alt {
    background: #d83b3b;
    font-size: 12px;
    opacity: 0.95;
}
.price-v2-pay {
    font-size: 12.5px;
    color: #555;
    margin: -4px 0 14px;
    padding: 6px 10px;
    background: #f7faf7;
    border-radius: 6px;
}
/* v16 (5/22 客户) ⑨ — Alma 小字（加购按钮下方） */
.alma-note-v16 {
    font-size: 12.5px;
    color: #555;
    text-align: center;
    margin: 10px 0 0;
}

/* Multi-buy pills */
/* v16 (5/22 客户) — 外框保留、去掉背景填充；标题放大；卡片去背景、字体放大 */
.multi-buy {
    margin: 0 0 18px;
    padding: 14px 16px;
    background: transparent;
    border: 1px solid #e8ece8;
    border-radius: 12px;
}
.multi-buy-title { font-size: 16.5px; font-weight: 700; color: #1a1a1a; margin: 0 0 12px; }
.multi-buy-pills { display: flex; flex-wrap: wrap; gap: 8px; }
.mb-pill {
    background: transparent;
    border: 1.5px solid #d8ddd8;
    border-radius: 10px;
    padding: 9px 15px;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-family: inherit;
    transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;
}
.mb-pill:hover { border-color: #276B42; }
/* v16 (5/22 客户) ⑩ — 选中卡：绿色边框 + 浅绿背景 + 绿色徽章 */
.mb-pill.is-active {
    border-color: #276B42;
    border-width: 2px;
    background: transparent;
    box-shadow: 0 0 0 3px rgba(39,107,66,.12);
}
.mb-pct {
    color: #888;
    font-weight: 800;
    font-size: 14.5px;
}
/* v16 (5/22 客户) — 选中徽章改成圆角矩形（与外框同形状），不要椭圆形 */
.mb-pill.is-active .mb-pct:not(.mb-pct--zero) {
    color: #fff;
    background: #276B42;
    padding: 3px 9px;
    border-radius: 6px;
    font-size: 13.5px;
}
.mb-pct--zero { color: #999; }
.mb-line { font-size: 15px; color: #1a1a1a; }
.mb-pill.is-active .mb-line { font-weight: 700; }

@media (max-width: 540px) {
    .price-v2 { flex-direction: column; }
    .price-v2-right { flex-direction: row; align-items: center; }
}

/* v10 (5/15 client) : swatch 小图 + 颜色形式 */
.color-swatches--v2 { display: flex; gap: 10px; flex-wrap: wrap; }
.swatch-v2 {
    background: #fff;
    border: 2px solid transparent;
    border-radius: 12px;
    padding: 4px 4px 6px;
    cursor: pointer;
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    transition: border-color .2s ease, box-shadow .2s ease;
}
.swatch-v2:hover { border-color: #d3ddd5; }
.swatch-v2.active { border-color: #276B42; box-shadow: 0 4px 12px rgba(39,107,66,.15); }
.swatch-v2-thumb {
    width: 52px; height: 52px;
    border-radius: 8px;
    overflow: hidden;
    background: #f8faf8;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.swatch-v2-thumb img { width: 100%; height: 100%; object-fit: contain; padding: 3px; }
.swatch-v2-dot {
    /* v10 修正 (5/15 client) : 色点彻底删除，只保留小图 */
    display: none !important;
}
.variant-current { font-weight: 700; color: #1a1a1a; }

/* v10 (5/15 client) : Reco cards — hover 切换白天/黑夜图 + 同系列模块 */
.reco-section { padding: clamp(28px, 4vw, 40px) clamp(16px, 3vw, 24px); background: #fff; }
.reco-section--alt { background: #f8faf8; }
.reco-wrap { max-width: 1100px; margin: 0 auto; }
.reco-title { text-align: center; font-size: clamp(1.4rem, 2.6vw, 1.8rem); font-weight: 700; color: #1a1a1a; margin: 0 0 8px; }
.reco-sub { text-align: center; color: #666; font-size: 14.5px; max-width: 540px; margin: 0 auto 24px; line-height: 1.55; }
.reco-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 16px;
}
.reco-card {
    background: #fff;
    border: 1px solid #eef0ee;
    border-radius: 14px;
    overflow: hidden;
    color: inherit;
    text-decoration: none;
    display: flex;
    flex-direction: column;
    transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
    position: relative;
}
.reco-card:hover { transform: translateY(-3px); box-shadow: 0 6px 18px rgba(0,0,0,.08); border-color: #d3ddd5; }
.reco-card.is-current { border-color: #276B42; border-width: 2px; }
.reco-badge {
    position: absolute; top: 10px; left: 10px; z-index: 2;
    background: #276B42; color: #fff;
    padding: 4px 10px; border-radius: 999px;
    font-size: 11px; font-weight: 700; letter-spacing: 0.04em;
}
.reco-badge--save { background: #d83b3b; }
.reco-media {
    position: relative;
    aspect-ratio: 1 / 1;
    background: #f8faf8;
    overflow: hidden;
}
.reco-img-day, .reco-img-night {
    position: absolute; inset: 0;
    width: 100%; height: 100%;
    object-fit: cover;
    transition: opacity .4s ease;
}
.reco-img-night { opacity: 0; }
.reco-card:hover .reco-img-day   { opacity: 0; }
.reco-card:hover .reco-img-night { opacity: 1; }
.reco-body { padding: 14px 16px 18px; }
.reco-name { font-size: 15px; font-weight: 600; color: #1a1a1a; margin: 0 0 4px; line-height: 1.3; }
.reco-tag { font-size: 12px; color: #888; margin: 0 0 8px; }
.reco-price-row { display: flex; align-items: baseline; gap: 8px; margin: 6px 0 8px; flex-wrap: wrap; }
.reco-price { font-size: 16px; font-weight: 700; color: #276B42; }
.reco-price-old { font-size: 13px; color: #aaa; }
.reco-cta { font-size: 13px; color: #276B42; font-weight: 600; }
.reco-card:hover .reco-cta { text-decoration: underline; }

/* v10 (5/15 client) : 收紧 sections 之间留白 */
.at-a-glance-bar { padding: clamp(24px, 3vw, 36px) clamp(16px, 3vw, 24px) !important; margin-top: 0 !important; }
.product-accordion-section { padding: clamp(20px, 3vw, 32px) 0 !important; }
/* v14 (5/20 客户): features 版块上下间距统一到 ~48-64px */
/* v16 (5/22 客户): 留白收紧 — padding/行间距进一步压缩 */
.features-flow { padding: clamp(24px, 3vw, 36px) 0 !important; gap: clamp(18px, 2.4vw, 28px) !important; }
.lh-section { padding: clamp(20px, 3vw, 32px) 0 !important; }
.usecases-section, .techviz-section, .compare-section, .eco-strip,
.bom-section, .reviews-section, .faq-section {
    padding-top: clamp(20px, 3vw, 32px) !important;
    padding-bottom: clamp(20px, 3vw, 32px) !important;
}
.acc-section-title { margin: 0 0 16px !important; }
.bom-title { margin: 0 0 16px !important; }
.compare-title { margin: 0 0 14px !important; }
.product-layout-container { padding-bottom: clamp(16px, 3vw, 28px) !important; }

/* v10 (5/15 client) — Mega-menu intégral cleanup */
/* 1) Cacher toutes les rangées de filtres dans le mega-menu (FONCTIONS / IP / Avec détecteur 等) */
.mm-filter-row { display: none !important; }

/* 2) Cacher icônes ☀️ / ⚡ avant les grandes catégories dans la nav top-level */
.header__linklist-item > .header__linklist-link > span > svg:first-child,
.header__linklist-item > .header__linklist-link > span.mm-toplink-icon,
.header__linklist-item > a.header__linklist-link > svg:first-child { display: none !important; }

/* 3) Top-level desktop nav: v11 (5/16 客户): 全部一级菜单 bold, 对齐 PROMOS/BONS PLANS */
.header__linklist-link {
    font-weight: 600 !important;
    font-size: 14px;
    letter-spacing: 0;
    text-transform: none;
    color: #1a1a1a;
}
.header__linklist-link > span { gap: 0 !important; }

/* 4) Mega-menu interne: pas d'images grandes bannières (5/15 client : "取消以下图片") */
.mega-menu__images-wrapper { display: none !important; }
.mega-menu__image-wrapper { display: none !important; }

/* 5) Lignes de liste compactes, alignées à gauche, sans icône / sans sous-description
      (5/15 client : "导航栏不需要图标，不需要小字描述，行距过大，需左端对齐") */
.mega-menu__column { margin: 0 32px 0 0 !important; }
.mega-menu .linklist__item { margin: 0 0 6px 0 !important; padding: 0 !important; line-height: 1.45 !important; }
.mega-menu .linklist__item a {
    color: #1a1a1a !important;
    font-size: 13.5px !important;
    text-decoration: none;
    text-align: left !important;
    padding: 0 !important;
    transition: color 0.15s ease;
}
.mega-menu .linklist__item a:hover { color: #276B42 !important; }
/* Hide inline "bientôt" / sub-description spans */
.mega-menu .linklist__item a > span[style*="background:#fef3c7"],
.mega-menu .linklist__item a > span[style*="color:#9ca3af"] { display: none !important; }

/* 6) Mega-menu column header (gras + maj + couleur) — pour bien séparer les groupes */
.mega-menu__title,
.mega-menu .heading--small {
    text-transform: uppercase !important;
    font-weight: 700 !important;
    color: #1a1a1a !important;
    font-size: 12px !important;
    letter-spacing: 0.06em !important;
    margin: 0 0 12px 0 !important;
    padding-bottom: 6px;
    border-bottom: 1px solid #eef0ee;
}

/* 7) Inner padding du mega-menu plus compact */
.mega-menu__inner { padding: 24px 16px !important; gap: 32px !important; }

/* v10 修正 (5/15 client) — Toutes les mega-menus uniformisées :
   pas d'images, 2 colonnes texte, sans soulignement, avec ›, grand titre majuscule. */

/* --- A) Par espace tiles → texte pur, SANS soulignement (5/15 retour client) --- */
.mm-espace .mm-tile img,
.mm-espace .mm-tile::before,
.mm-espace .mm-tile-label::after,
.mm-espace .mm-tile-label::before { display: none !important; content: none !important; }
.mm-espace .mm-tile {
    all: unset;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    background: transparent !important;
    border: none !important;
    border-bottom: none !important;
    border-radius: 0 !important;
    padding: 6px 4px !important;
    aspect-ratio: auto !important;
    height: auto !important;
    min-height: 0 !important;
    color: #1a1a1a !important;
    font-size: 13.5px !important;
    text-align: left !important;
    text-decoration: none !important;
    overflow: visible !important;
    box-shadow: none !important;
    cursor: pointer;
    transition: color .15s ease, padding-left .15s ease !important;
    position: relative !important;
}
.mm-espace .mm-tile:hover {
    color: #276B42 !important;
    background: transparent !important;
    transform: none !important;
    padding-left: 6px !important;
}
.mm-espace .mm-tile-label {
    position: static !important;
    inset: auto !important;
    background: transparent !important;
    color: inherit !important;
    padding: 0 !important;
    margin: 0 !important;
    font-weight: 400 !important;
    font-size: 13.5px !important;
    line-height: 1.5 !important;
    text-shadow: none !important;
    z-index: auto !important;
    display: inline !important;
    flex: 1 !important;
}
.mm-espace .mm-tile::after {
    content: "›" !important;
    display: inline !important;
    position: static !important;
    inset: auto !important;
    background: none !important;
    color: #bbb !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    margin-left: 6px !important;
}
.mm-espace .mm-tile:hover::after { color: #276B42 !important; }
.mm-espace .mm-tile--soft {
    background: transparent !important;
    aspect-ratio: auto !important;
    min-height: 0 !important;
}
.mm-espace .mm-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    column-gap: 32px !important;
    row-gap: 0 !important;
    flex-direction: unset !important;
}
@media (max-width: 600px) {
    .mm-espace .mm-grid { grid-template-columns: 1fr !important; }
}
.mm-espace .mm-group-head {
    text-transform: uppercase !important;
    font-weight: 700 !important;
    color: #1a1a1a !important;
    font-size: 12px !important;
    letter-spacing: 0.06em !important;
    margin: 0 0 10px 0 !important;
    padding-bottom: 6px !important;
    border-bottom: 1px solid #eef0ee !important;
}
.mm-espace .mm-group-tail { display: none !important; }

/* --- B) Tous les autres mega-menus (Éclairage solaire, 230V, 12V & nomade, Accessoires)
       → même rendu : 2 colonnes, › à droite, hover vert, sans soulignement de ligne. --- */
.mega-menu .linklist__item {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border-bottom: none !important;
}
.mega-menu .linklist__item a {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 6px 4px !important;
    font-size: 13.5px !important;
    color: #1a1a1a !important;
    text-decoration: none !important;
    text-align: left !important;
    line-height: 1.5 !important;
    transition: color .15s ease, padding-left .15s ease !important;
}
.mega-menu .linklist__item a::after {
    content: "›";
    color: #bbb;
    font-size: 14px;
    margin-left: 6px;
    transition: color .15s ease;
}
.mega-menu .linklist__item a:hover {
    color: #276B42 !important;
    padding-left: 6px !important;
    background: transparent !important;
}
.mega-menu .linklist__item a:hover::after { color: #276B42; }

/* --- C) Titre de groupe (grand titre majuscule, sous-trait fin)
       Le markup actuel n'a pas de heading dans certains menus — on ajoute via le bloc parent --- */
.mega-menu__column > .heading,
.mega-menu__column > h3,
.mega-menu__column > .mega-menu__column-title {
    text-transform: uppercase !important;
    font-weight: 700 !important;
    color: #1a1a1a !important;
    font-size: 12px !important;
    letter-spacing: 0.06em !important;
    margin: 0 0 10px 0 !important;
    padding-bottom: 6px !important;
    border-bottom: 1px solid #eef0ee !important;
}

/* 8) v10 修正 — Plus 下拉菜单 (.nav-dropdown) 完全按 lumihome 原版（无 ● 圆点 / 紧凑 / 13.5px） */
.nav-dropdown,
.nav-dropdown__item,
.linklist,
.linklist__item,
.mega-menu ul,
.mega-menu li {
    list-style: none !important;
    list-style-type: none !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
}
.nav-dropdown::before,
.nav-dropdown__item::before,
.linklist::before,
.linklist__item::before,
.mega-menu li::before { content: none !important; }
.nav-dropdown__item::marker,
.linklist__item::marker,
.mega-menu li::marker { content: '' !important; color: transparent !important; }

/* v16 (5/22 客户) ⑭ — 页脚链接列行距收窄 */
.footer .footer__item-content .linklist { line-height: 1.3; }
.footer .footer__item-content .linklist__item { margin: 0; padding: 0; }
.footer .footer__item-content .linklist__item a {
    display: inline-block;
    padding: 2px 0;
    line-height: 1.35;
}

/* Plus 下拉菜单容器样式 */
.nav-dropdown {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 4px;
    box-shadow: 0 6px 20px rgba(0,0,0,.08);
    min-width: 200px;
    padding: 8px 0 !important;
    margin: 0 !important;
}
.nav-dropdown__item {
    margin: 0 !important;
    padding: 0 !important;
}
.nav-dropdown__link {
    display: block;
    padding: 6px 18px !important;
    color: #1a1a1a !important;
    font-size: 13.5px !important;
    font-weight: 400 !important;
    text-decoration: none;
    text-align: left !important;
    line-height: 1.5 !important;
    transition: color .15s ease, background .15s ease;
}
.nav-dropdown__link:hover {
    color: #276B42 !important;
    background: #f7faf7;
}

/* Mega-menu list items — 紧凑行距 + 左对齐 + lumihome 字号 */
.mega-menu .linklist__item {
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.5 !important;
}
.mega-menu .linklist__item a {
    display: block !important;
    padding: 4px 0 !important;
    font-size: 13.5px !important;
    text-align: left !important;
}

/* v9: Photos client dans les cards review (5/14 client : "应该有图片") */
.review-photos {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 12px;
}
.review-photo {
    display: block;
    width: 64px;
    height: 64px;
    border-radius: 8px;
    overflow: hidden;
    border: 1px solid #e6ebe8;
    background: #f8faf8;
    transition: transform .2s ease, box-shadow .2s ease;
}
.review-photo:hover { transform: translateY(-2px); box-shadow: 0 4px 12px rgba(0,0,0,.08); }
.review-photo img { width: 100%; height: 100%; object-fit: cover; display: block; }

/* v9: Bill-of-Materials horizontal list (Accessoires & Complémentaires, esotec style) */
.bom-section { padding: clamp(32px, 5vw, 56px) clamp(16px, 3vw, 24px); background: #fff; }
.bom-section--alt { background: #f8faf8; }
.bom-wrap { max-width: 1100px; margin: 0 auto; }
.bom-title { text-align: center; font-size: clamp(1.4rem, 2.6vw, 1.8rem); font-weight: 700; color: #1a1a1a; margin: 0 0 24px; }
.bom-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.bom-row {
    display: grid;
    grid-template-columns: 64px 1fr auto auto auto;
    align-items: center;
    gap: 16px;
    background: #fff;
    border: 1px solid #eef0ee;
    border-radius: 12px;
    padding: 12px 16px 12px 12px;
    transition: border-color .2s, box-shadow .2s;
}
.bom-row:hover { border-color: #d3ddd5; box-shadow: 0 2px 10px rgba(0,0,0,.04); }
.bom-thumb {
    width: 56px; height: 56px;
    border-radius: 8px;
    overflow: hidden;
    background: #f8faf8;
    display: inline-flex; align-items: center; justify-content: center;
    flex-shrink: 0;
}
.bom-thumb img { width: 100%; height: 100%; object-fit: contain; padding: 4px; }
.bom-info { min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.bom-sku { font-size: 11px; color: #888; letter-spacing: 0.02em; }
.bom-name { color: #1a1a1a; font-weight: 500; text-decoration: none; font-size: 14px; line-height: 1.35; }
.bom-name:hover { color: #276B42; }
.bom-stock { font-size: 11.5px; color: #276b42; display: inline-flex; align-items: center; gap: 5px; }
.bom-dot { width: 8px; height: 8px; border-radius: 50%; background: #276b42; display: inline-block; }
.bom-price { font-weight: 700; color: #1a1a1a; font-size: 15px; white-space: nowrap; }
.bom-qty { display: inline-flex; align-items: center; background: #f8faf8; border-radius: 999px; padding: 2px; gap: 0; }
.bom-qty-btn {
    width: 26px; height: 26px;
    border: none; background: transparent;
    color: #555; cursor: pointer; font-size: 16px; line-height: 1;
    border-radius: 50%;
}
.bom-qty-btn:hover { background: #e9efe9; color: #276B42; }
.bom-qty-input {
    width: 36px; text-align: center; border: none; background: transparent;
    font-size: 14px; font-weight: 600; color: #1a1a1a;
    -moz-appearance: textfield;
}
.bom-qty-input::-webkit-outer-spin-button,
.bom-qty-input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.bom-cart {
    width: 38px; height: 38px; border-radius: 50%;
    background: #2C5DC9; color: #fff; border: none; cursor: pointer;
    display: inline-flex; align-items: center; justify-content: center;
    transition: background .2s, transform .15s;
}
.bom-cart:hover { background: #1f47a3; transform: scale(1.05); }
/* v11 (5/16 客户): 点击后视觉反馈 — 绿色闪烁 + 缩放 */
.bom-cart.is-added { background: #22c55e !important; transform: scale(1.15); }
.bom-cart.is-added svg { animation: bomCartPop .4s ease; }
@keyframes bomCartPop { 0%,100% { transform: scale(1); } 50% { transform: scale(1.25); } }
.bom-discover {
    color: #276B42;
    font-size: 13px;
    font-weight: 600;
    text-decoration: none;
    border: 1px solid #276B42;
    border-radius: 999px;
    padding: 8px 16px;
    white-space: nowrap;
    transition: background .2s, color .2s;
}
.bom-discover:hover { background: #276B42; color: #fff; }

/* Mobile : stacker prix + actions sous le nom */
@media (max-width: 640px) {
    .bom-row {
        grid-template-columns: 56px 1fr auto;
        grid-template-areas: "thumb info price" "thumb info qty"  "thumb info cart";
        gap: 8px 12px;
    }
    .bom-thumb { grid-area: thumb; }
    .bom-info { grid-area: info; }
    .bom-price { grid-area: price; justify-self: end; font-size: 14px; }
    .bom-qty { grid-area: qty; justify-self: end; }
    .bom-cart, .bom-discover { grid-area: cart; justify-self: end; }
}

/* v9: Schemas (4 line drawings horizontal grid, esotec style) */
.schemas-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 14px;
    margin-bottom: 18px;
}
@media (min-width: 720px) {
    .schemas-grid { grid-template-columns: repeat(4, 1fr); }
}
.schema-card {
    margin: 0;
    background: #f8faf8;
    border: 1px solid #e6ebe8;
    border-radius: 10px;
    overflow: hidden;
    cursor: pointer;
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
    display: flex;
    flex-direction: column;
}
.schema-card:hover {
    border-color: #276B42;
    box-shadow: 0 4px 14px rgba(0,0,0,.08);
    transform: translateY(-2px);
}
.schema-img {
    position: relative;
    aspect-ratio: 1 / 1;
    background: #fff;
    overflow: hidden;
}
.schema-img img { width: 100%; height: 100%; object-fit: contain; padding: 12px; }
.schema-zoom {
    position: absolute;
    top: 8px; right: 8px;
    background: rgba(255,255,255,.92);
    color: #276B42;
    border: 1px solid #d3ddd5;
    border-radius: 50%;
    width: 26px; height: 26px;
    display: inline-flex; align-items: center; justify-content: center;
}
.schema-label {
    text-align: center;
    font-size: 12.5px;
    color: #444;
    padding: 8px 10px 10px;
    background: #fff;
    border-top: 1px solid #eef0ee;
}

/* v9: PDF chip (esotec style — red PDF badge + filename + size) */
.schema-pdf-row { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 4px; }
.pdf-chip {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: #fff;
    border: 1px solid #e6ebe8;
    border-radius: 8px;
    padding: 8px 14px 8px 8px;
    text-decoration: none;
    color: #1a1a1a;
    font-size: 13px;
    transition: border-color .2s, box-shadow .2s;
}
.pdf-chip:hover { border-color: #c62828; box-shadow: 0 2px 8px rgba(198,40,40,.12); }
.pdf-icon-red {
    background: #c62828;
    color: #fff;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.04em;
    padding: 4px 6px;
    border-radius: 3px;
    line-height: 1;
}
.pdf-name { font-weight: 500; }
.pdf-size { color: #888; font-size: 12px; }
/* v10: lang badge + multi-row wrap */
.schema-pdf-row--multi { display: flex; flex-wrap: wrap; gap: 10px; }
.pdf-lang {
    background: #f3f5f3;
    color: #276B42;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.02em;
    padding: 3px 6px;
    border-radius: 4px;
    border: 1px solid #d3ddd5;
}
.acc-back-note { font-size: 12px; color: #888; margin: 12px 0 0; font-style: italic; }
.acc-back-note code { background: #f3f5f3; padding: 2px 6px; border-radius: 4px; font-size: 11.5px; color: #276B42; }

.acc-inner .downloads-container {
    display: flex;
    gap: 18px;
    flex-wrap: wrap;
}
.acc-inner .downloads-container .download-card {
    flex: 1 1 240px;
}

@media (max-width: 768px) {
    .acc-head { padding: 14px 16px; font-size: 0.95rem; gap: 12px; }
    .acc-inner { padding: 4px 16px 22px; }
    .acc-icon { width: 22px; height: 22px; }
    .acc-icon svg { width: 20px; height: 20px; }
}
@media (max-width: 480px) {
    .acc-head { padding: 12px 14px; font-size: 0.92rem; }
    .acc-inner { padding: 4px 14px 20px; }
}
/* Description Tab Specifics */
.desc-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: clamp(24px, 4vw, 48px);
    align-items: center;
}
.desc-text h3 {
    font-size: 1.6rem;
    margin-bottom: 16px;
    color: var(--brand-black);
}
.desc-text p {
    line-height: 1.6;
    color: #555;
    margin-bottom: 20px;
}
.desc-image-box {
    position: relative;
    border-radius: 16px;
    overflow: hidden;
    aspect-ratio: 4/3;
    box-shadow: var(--shadow-md);
}
.desc-image-box img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Specs Table */
.specs-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 32px;
}
.spec-card {
    background: #f9fbf9;
    padding: 0 0 20px 0;
    border-radius: 16px;
    border: 1px solid #eee;
    overflow: hidden;
}
.spec-card h4 {
    background: var(--accent-green);
    color: white;
    padding: 14px 20px;
    margin: 0 0 20px 0;
    font-size: 18px;
}
.spec-row {
    display: flex;
    justify-content: space-between;
    padding: 10px 20px;
    border-bottom: 1px dashed #ddd;
    font-size: 14px;
}
.spec-row:last-child {
    border-bottom: none;
}
.spec-key {
    font-weight: 600;
    color: #555;
}
.spec-val {
    color: #333;
    text-align: right;
}

/* Installation Steps */
.install-steps-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
    margin-top: 20px;
}
.step-card {
    text-align: center;
}
.step-img {
    width: 100%;
    aspect-ratio: 1/1;
    object-fit: cover;
    border-radius: 16px;
    margin-bottom: 16px;
    border: 1px solid #eee;
    box-shadow: var(--shadow-sm);
}
.step-num {
    display: inline-block;
    background: var(--accent-green);
    color: white;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    font-size: 13px;
    line-height: 28px;
    margin-bottom: 8px;
}
.step-title {
    font-weight: 700;
    margin-bottom: 6px;
}
.step-desc {
    font-size: 13px;
    color: #666;
}

/* Cross-sell Sections */
.cross-sell-section {
    background: #f8faf8;
    padding: clamp(40px, 6vw, 60px) clamp(16px, 3vw, 24px);
    margin-top: 40px;
}
.section-title-center {
    text-align: center;
    font-size: clamp(20px, 3vw, 28px);
    margin-bottom: clamp(24px, 4vw, 40px);
    color: var(--brand-black);
    font-weight: 700;
}
.product-carousel-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: clamp(16px, 2vw, 30px);
    max-width: 1280px;
    margin: 0 auto;
}
.mini-product-card {
    background: white;
    border-radius: 16px;
    padding: 20px;
    transition: all 0.3s ease;
    border: 1px solid #eee;
    text-align: center;
}
.mini-product-card:hover {
    transform: translateY(-6px);
    box-shadow: var(--shadow-lg);
}
.mini-prod-img {
    width: 100%;
    aspect-ratio: 1/1;
    object-fit: contain;
    margin-bottom: 16px;
}
.mini-prod-title {
    font-size: 15px;
    font-weight: 600;
    margin-bottom: 8px;
    min-height: 42px;
}
.mini-prod-price {
    color: var(--accent-green);
    font-weight: 700;
    font-size: 18px;
}
.btn-small {
    display: block;
    width: 100%;
    text-align: center;
    padding: 10px;
    background: #fff;
    border: 1px solid var(--accent-green);
    color: var(--accent-green);
    border-radius: 48px;
    margin-top: 16px;
    text-decoration: none;
    font-size: 14px;
    font-weight: 600;
    transition: all 0.2s;
}
.btn-small:hover {
    background: var(--accent-green);
    color: white;
}

/* 说明书下载 & 线描图模块样式 */
.downloads-container {
    display: flex;
    gap: 30px;
    justify-content: center;
    flex-wrap: wrap;
}
.download-card {
    flex: 1;
    min-width: 240px;
    background: #f9fbf9;
    border-radius: 20px;
    padding: 25px;
    text-align: center;
    transition: all 0.3s;
    border: 1px solid #eef2f0;
    cursor: pointer;
}
.download-card:hover {
    transform: translateY(-5px);
    box-shadow: var(--shadow-md);
    border-color: var(--accent-green);
}
.download-icon {
    width: 60px;
    height: 60px;
    margin: 0 auto 15px;
    background: var(--accent-green);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
}
.download-icon svg {
    width: 30px;
    height: 30px;
    fill: currentColor;
}
.download-title {
    font-weight: 700;
    font-size: 18px;
    margin-bottom: 8px;
}
.download-size {
    font-size: 13px;
    color: #777;
    margin-bottom: 15px;
}
.download-btn {
    display: inline-block;
    padding: 10px 20px;
    background: white;
    border: 1px solid var(--accent-green);
    color: var(--accent-green);
    border-radius: 40px;
    font-weight: 600;
    font-size: 14px;
    transition: all 0.2s;
}
.download-card:hover .download-btn {
    background: var(--accent-green);
    color: white;
}

/* ============================================================================
   📱 Responsive (Refined) - Breakpoints: 1199 / 992 / 768 / 480
============================================================================ */

/* Large desktop fine-tuning */
@media (max-width: 1199px) {
    .product-layout-container {
        gap: 32px;
        padding: 28px 24px;
    }
    .product-gallery-wrapper {
        top: 100px;
    }
    .install-steps-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 20px;
    }
}

/* Tablet -- Stack into single column */
@media (max-width: 992px) {
    .product-layout-container {
        grid-template-columns: 1fr;
        gap: 32px;
        padding: 24px 20px;
    }
    .product-gallery-wrapper {
        position: static;
        max-width: 720px;
        margin: 0 auto;
    }
    .product-info-wrapper {
        max-width: 720px;
        margin: 0 auto;
    }
    .glance-carousel {
        padding: 0 50px;
    }
    .desc-layout {
        grid-template-columns: 1fr;
    }
    .install-steps-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .product-title {
        font-size: 1.9rem;
    }
    .at-a-glance-bar {
        padding: 32px 20px;
    }
}

/* Tablet portrait / Large phones -- Accordion mode */
@media (max-width: 768px) {
    .product-layout-container {
        padding: 16px 16px 8px;
        gap: 24px;
    }
    .breadcrumb-nav {
        font-size: 12px;
    }
    .product-title {
        font-size: 1.5rem;
    }
    .product-rating {
        gap: 8px;
        font-size: 13px;
        margin-bottom: 16px;
    }
    .product-price-block {
        padding-bottom: 18px;
        margin-bottom: 18px;
    }
    .short-desc-list {
        margin-bottom: 22px;
    }
    .short-desc-list li {
        font-size: 14px;
        padding-left: 24px;
        margin-bottom: 10px;
    }
    .variant-selector {
        margin-bottom: 18px;
    }
    .swatch {
        width: 32px;
        height: 32px;
    }
    .glance-title {
        margin-bottom: 20px;
    }
    .glance-carousel {
        padding: 0 44px;
    }
    .glance-nav {
        width: 38px;
        height: 38px;
    }
    .glance-item {
        padding: 18px 12px 16px;
    }
    .glance-item .icon-box {
        width: 48px;
        height: 48px;
        margin-bottom: 10px;
    }
    .glance-item .icon-box svg {
        width: 22px;
        height: 22px;
    }
    .glance-item h4 {
        font-size: 10px;
    }
    .glance-item p {
        font-size: 13px;
    }
    .at-a-glance-bar {
        padding: 32px 12px;
    }
    /* ---- Tabs → Accordion ---- */

    .install-steps-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 16px;
    }
    .step-img { margin-bottom: 10px; }
    .specs-grid {
        grid-template-columns: 1fr;
        gap: 14px;
    }
    .spec-card h4 { font-size: 16px; padding: 12px 16px; }
    .spec-row { padding: 8px 16px; font-size: 13px; }
    .product-carousel-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 14px;
    }
    .mini-product-card { padding: 14px; }
    .mini-prod-title { font-size: 13px; min-height: 36px; }
    .mini-prod-price { font-size: 16px; }
    .add-to-cart-form {
        gap: 12px;
    }
    .quantity-input { width: 130px; }
    .btn-add-cart { flex: 1 1 auto; min-width: 200px; }
    .buy-now-spacer { flex-basis: 130px; }
    .btn-buy-now { flex: 1 1 auto; min-width: 200px; }
    .trust-badges {
        flex-wrap: wrap;
        gap: 12px 8px;
        padding: 14px 12px;
    }
    .trust-item { flex: 1 1 30%; min-width: 80px; }
    .video-section {
        margin: 24px auto;
        padding: 0 16px;
    }
    .play-button { width: 60px; height: 60px; }
    .play-button svg { width: 28px; height: 28px; }
    .downloads-container {
        flex-direction: column;
        gap: 14px;
    }
    .download-card { padding: 20px; min-width: 0; }
    .desc-image-box { aspect-ratio: 16 / 10; }
    .desc-text h3 { font-size: 1.3rem; }
    .cross-sell-section { margin-top: 24px; }
}

/* Small phones */
@media (max-width: 480px) {
    .product-title { font-size: 1.35rem; }
    .current-price { font-size: 1.5rem; }
    .compare-price { font-size: 0.95rem; }
    .badge-save { font-size: 11px; padding: 3px 8px; }
    .glance-carousel {
        padding: 0 40px;
    }
    .glance-nav {
        width: 34px;
        height: 34px;
    }
    .glance-item {
        padding: 16px 10px 14px;
    }
    .install-steps-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }
    .product-carousel-grid {
        grid-template-columns: 1fr;
        gap: 12px;
    }
    /* v13-2: 移动端也用 2 列大缩略图 */
    .thumbnail-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
    }
    .day-night-toggle {
        bottom: 12px;
        right: 12px;
        padding: 8px 12px;
        font-size: 12px;
    }
    .add-to-cart-form { flex-direction: column; }
    .quantity-input { width: 100%; }
    .btn-add-cart { width: 100%; min-width: 0; }
    .buy-now-spacer { display: none; }
    .btn-buy-now { width: 100%; min-width: 0; }
    .trust-item {
        flex: 1 1 30%;
        font-size: 11px;
    }
    .trust-item svg { width: 20px; height: 20px; }
}

@keyframes fadeIn {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}

/* v6: fix .link--faded color (Shopify theme class that ships from theme.css
   isn't available on this template — links were rendering almost invisible). */
.footer .link--faded,
.site-footer .link--faded,
footer .link--faded {
    color: rgba(255,255,255,0.92) !important;
    opacity: 1 !important;
    text-decoration: none;
    transition: color 0.2s ease;
}
.footer .link--faded:hover,
.site-footer .link--faded:hover,
footer .link--faded:hover {
    color: #FFD700 !important;
}

/* v7: Independent sections (Installation / Documents / Garantie) — extracted
   from the accordion per 5/14 customer feedback. */
.lh-section {
    padding: clamp(36px, 5vw, 64px) 0;
    background: #ffffff;
}
.lh-section.lh-section--alt {
    background: #f8faf8;
}
.lh-section .lh-wrap {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 clamp(16px, 3vw, 24px);
}
.lh-section-title {
    text-align: center;
    font-size: clamp(1.5rem, 3vw, 2rem);
    font-weight: 700;
    color: #1a1a1a;
    letter-spacing: -0.01em;
    margin: 0 0 28px;
}
.lh-section-body {
    /* let nested grids breathe */
}
.lh-section-body > .install-intro,
.lh-section-body > .downloads-container,
.lh-section-body > h3:first-child {
    margin-top: 0;
}

/* ════════════════════════════════════════════════════════════ */
/* v10 (5/15 client) — 所有 mega-menu 完全统一模板 .mm-uniform   */
/* ════════════════════════════════════════════════════════════ */
.mm-uniform { background:#fff; border-top:1px solid rgba(0,0,0,.06);
              box-shadow:0 18px 40px -12px rgba(20,40,30,.18); }
.mm-uniform .container { max-width:1200px; margin:0 auto; padding:28px 32px; }
.mm-uniform .mega-menu__inner {
  display:grid;
  grid-template-columns:1fr 1fr 1.1fr;
  column-gap:40px;
  align-items:start;
}
.mm-uniform .mega-menu__column { margin:0; min-width:0; }
.mm-uniform .mega-menu__column .linklist { padding:0; margin:0; }
.mm-uniform .mega-menu__column .linklist__item { list-style:none; margin:0; padding:0; }
.mm-uniform .mega-menu__column .linklist__item a {
  display:block;
  padding:7px 0;
  font-size:14px;
  font-weight:500;
  color:#1a1a1a;
  text-decoration:none;
  border:none;
  background:none;
  transition:color .15s ease, padding-left .15s ease;
}
.mm-uniform .mega-menu__column .linklist__item a::before,
.mm-uniform .mega-menu__column .linklist__item a::after { content:none !important; display:none !important; }
.mm-uniform .mega-menu__column .linklist__item a:hover {
  color:#276B42;
  padding-left:4px;
}
.mm-uniform .mega-menu__column .linklist__item a strong { font-weight:600; color:#276B42; }
/* 右图卡 */
.mm-uniform .mega-menu__images-wrapper { margin:0; }
.mm-uniform .mega-menu__image-push {
  display:block;
  text-decoration:none;
  border-radius:10px;
  overflow:hidden;
  background:#f6f9f7;
  transition:transform .25s ease, box-shadow .25s ease;
}
.mm-uniform .mega-menu__image-push:hover {
  transform:translateY(-2px);
  box-shadow:0 10px 24px -8px rgba(20,40,30,.18);
}
.mm-uniform .mega-menu__image-wrapper {
  aspect-ratio:16/10;
  overflow:hidden;
  margin:0;
}
.mm-uniform .mega-menu__image {
  width:100%; height:100%; object-fit:cover;
  transition:transform .35s ease;
}
.mm-uniform .mega-menu__image-push:hover .mega-menu__image { transform:scale(1.04); }
.mm-uniform .mega-menu__heading {
  margin:10px 14px 14px;
  font-size:14.5px;
  font-weight:600;
  color:#1a1a1a;
}
.mm-uniform .mega-menu__image-push:hover .mega-menu__heading { color:#276B42; }

/* 响应式：≤1199px 把图卡换行到下方 */
@media (max-width:1199px){
  .mm-uniform .mega-menu__inner { grid-template-columns:1fr 1fr; }
  .mm-uniform .mega-menu__images-wrapper { grid-column:1 / -1; max-width:520px; }
}

/* 旧的 mm-solaire / mm-230v / mm-bt / mm-espace / mm-acc 规则 — 全部失效 */
.mm-solaire, .mm-230v, .mm-bt, .mm-espace, .mm-acc { all: unset; display: block; }
.mm-solaire *, .mm-230v *, .mm-bt *, .mm-espace *, .mm-acc * { background: none; }


/* ════════════════════════════════════════════════════════════ */
/* v11 (5/16 客户) — 同系列 inline card：上图下文 + 2 列并排     */
/* 参考 lumihome PRODUITS COMPLÉMENTAIRES 风格                   */
/* ════════════════════════════════════════════════════════════ */
.serie-inline {
  margin-top: 18px;
  padding: 16px;
  background: #f7faf7;
  border: 1px solid rgba(39,107,66,.15);
  border-radius: 12px;
}
.serie-inline-head {
  margin: 0 0 14px;
  padding-bottom: 8px;
  border-bottom: 1px solid rgba(0,0,0,.06);
}
.serie-inline-title {
  font-size: 13px;
  font-weight: 700;
  color: #1a1a1a;
  text-transform: uppercase;
  letter-spacing: .04em;
}
/* v11: 2 列并排 grid */
.serie-inline-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}
@media (max-width: 480px) {
  .serie-inline-list { grid-template-columns: 1fr; }
}
/* v11: 卡片改为纵向 — 上图下文 */
.serie-inline-card {
  display: flex;
  flex-direction: column;
  padding: 0;
  background: #fff;
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 10px;
  text-decoration: none;
  color: inherit;
  overflow: hidden;
  transition: border-color .15s, box-shadow .15s, transform .15s;
}
.serie-inline-card:hover {
  border-color: #276B42;
  box-shadow: 0 6px 16px -6px rgba(39,107,66,.18);
  transform: translateY(-2px);
}
/* v11: 图片在顶部，全宽 */
.serie-inline-thumb {
  width: 100%;
  aspect-ratio: 1 / 1;
  background: #f3f4f6;
  overflow: hidden;
}
.serie-inline-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .3s ease;
}
.serie-inline-card:hover .serie-inline-thumb img {
  transform: scale(1.04);
}
/* v11: 文字部分在下方 */
.serie-inline-info {
  padding: 10px 12px 12px;
  display: flex;
  flex-direction: column;
  gap: 3px;
}
.serie-inline-name {
  font-size: 13px;
  font-weight: 600;
  color: #1a1a1a;
  line-height: 1.3;
  margin: 0;
}
.serie-inline-tag {
  font-size: 11.5px;
  color: #6b7280;
  margin: 0;
  line-height: 1.3;
}
.serie-inline-price {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 6px;
  margin: 4px 0 2px;
}
.serie-inline-price-now {
  font-size: 14px;
  font-weight: 700;
  color: #276B42;
}
.serie-inline-price-old {
  font-size: 11.5px;
  color: #9ca3af;
  text-decoration: line-through;
}
.serie-inline-stock-in,
.serie-inline-stock-out {
  align-self: flex-start;
  display: inline-block;
  font-size: 10.5px;
  font-weight: 600;
  padding: 2px 7px;
  border-radius: 4px;
  margin-top: 2px;
}
.serie-inline-stock-in  { background: #ecfdf5; color: #047857; }
.serie-inline-stock-out { background: #fef3c7; color: #92400e; }


/* v10 (5/15 客户) — 列标题 + bientôt 徽章 */
/* v15 (5/21 client): column titles bold + uppercase, NO bottom underline */
.mm-uniform .mm-col-title {
  margin: 0 0 12px;
  padding: 0;
  border-bottom: 0;
  font-size: 13px;
  font-weight: 800;
  color: #1a1a1a;
  text-transform: uppercase;
  letter-spacing: .05em;
}
/* Clickable column titles (EXTÉRIEUR / INTÉRIEUR) — same bold style, no underline */
.mm-uniform .mm-col-title-link,
.mm-uniform .mm-col-title-link:hover,
.mm-uniform .mm-col-title-link:focus { color: inherit; text-decoration: none; font: inherit; }
.mm-uniform .mm-col-title-link:hover { color: #276B42; }
/* v15: sub-items NOT bold */
.mm-uniform .mega-menu__column .linklist__item a { font-weight: 400; }
.mm-uniform .mm-soon { opacity: .55; pointer-events: none; }
.mm-uniform .mm-soon-badge {
  display: inline-block;
  margin-left: 4px;
  padding: 1px 6px;
  font-size: 9.5px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .04em;
  color: #92400e;
  background: #fef3c7;
  border-radius: 4px;
  vertical-align: middle;
}


/* ---- 03.002 页面内联样式块
   来源：index.html:3544, product.html:3554, eclairage-solaire.html:3543, account.html:3545, cart.html:3545, search.html:3545, contact.html:3545, magazine.html:3545, ... 共 15 处
   说明：由页面 <style> 抽离，保持原有选择器和声明不变。
   ---- */
:root { --enable-sticky-announcement-bar: 1; }
#shopify-section-sections--25458834178427__announcement-bar {
--heading-color: 255, 255, 255;
--text-color: 255, 255, 255;
--primary-button-background: 86, 17, 42;
--primary-button-text-color: 255, 255, 255;
--section-background: 40, 40, 40;
position: -webkit-sticky;
position: sticky;
top: 0;
z-index: 5;
}
@media screen and (min-width: 741px) {
:root { --enable-sticky-announcement-bar: 1; }
#shopify-section-sections--25458834178427__announcement-bar {
position: -webkit-sticky;
position: sticky;
top: 0;
z-index: 5;
}
}


/* ---- 03.003 页面内联样式块
   来源：index.html:3606, product.html:3616, eclairage-solaire.html:3605, account.html:3607, cart.html:3607, search.html:3607, contact.html:3607, magazine.html:3607, ... 共 15 处
   说明：由页面 <style> 抽离，保持原有选择器和声明不变。
   ---- */
:root {
--enable-sticky-header: 1;
--enable-transparent-header: 0;
--loading-bar-background: 27, 27, 27;
}
#shopify-section-sections--25458834178427__header {
--header-background: 255, 255, 255;
--header-text-color: 27, 27, 27;
--header-border-color: 221, 221, 221;
--reduce-header-padding: 1;
position: -webkit-sticky;
position: sticky;
top: 0;
z-index: 4;
}
.shopify-section--announcement-bar ~ #shopify-section-sections--25458834178427__header {
top: calc(var(--enable-sticky-announcement-bar, 0) * var(--announcement-bar-height, 0px));
}
#shopify-section-sections--25458834178427__header .header__logo-image {
max-width: 100px;
}
@media screen and (min-width: 741px) {
#shopify-section-sections--25458834178427__header .header__logo-image {
max-width: 125px;
}
}
@media screen and (min-width: 1200px) {
.header__logo {
order: -1;
flex: 1 1 0;
}
.header__inline-navigation {
flex: 1 1 auto;
justify-content: center;
max-width: max-content;
margin-inline: 48px;
}
}


/* ---- 03.004 页面内联样式块
   来源：index.html:4625, product.html:4628, eclairage-solaire.html:4617, account.html:4619, cart.html:4619, search.html:4619, contact.html:4619, magazine.html:4619, ... 共 15 处
   说明：由页面 <style> 抽离，保持原有选择器和声明不变。
   ---- */
.drawer {
  position: fixed;
  top: 0;
  left: 0;
  width: 85%;
  max-width: 400px;
  height: 100%;
  background: rgb(var(--background));
  z-index: 1000;
  transform: translateX(-100%);
  visibility: hidden;
  opacity: 0;
  transition: transform 0.3s ease, visibility 0.3s ease, opacity 0.3s ease;
  box-shadow: 2px 0 10px rgba(0,0,0,0.1);
}
.drawer--is-open {
  transform: translateX(0) !important;
  visibility: visible !important;
  opacity: 1 !important;
}
.drawer__overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,0.5);
  z-index: 999;
  display: none;
}
.drawer--is-open + .drawer__overlay,
.drawer--is-open .drawer__overlay {
  display: block;
}
.drawer__content {
  position: relative;
  height: 100%;
  overflow-y: auto;
  padding: 20px;
}
.drawer__header {
  display: flex;
  justify-content: flex-end;
  margin-bottom: 20px;
}
.drawer__close-button {
  background: none;
  border: none;
  cursor: pointer;
}
body.overflow-hidden {
  overflow: hidden;
}
.drawer {
  z-index: 1050;
}
.drawer__overlay {
  z-index: 1040;
}
.drawer__header {
  position: sticky;
  top: 0;
  background: rgb(var(--background));
  z-index: 10;
  padding: 15px 20px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid rgba(var(--border-color), 0.3);
}
.drawer__close-button {
  background: none;
  border: none;
  font-size: 24px;
  cursor: pointer;
  color: rgb(var(--text-color));
  padding: 8px;
}
.header__icon-wrapper .icon--header-hamburger {
  cursor: pointer;
}


/* ---- 03.005 页面内联样式块
   来源：index.html:4713, product.html:4716, eclairage-solaire.html:4705, account.html:4707, cart.html:4707, search.html:4707, contact.html:4707, magazine.html:4707, ... 共 15 处
   说明：由页面 <style> 抽离，保持原有选择器和声明不变。
   ---- */
/* ===== Common section spacing ===== */
.videos-section,
.faq-section { padding: 32px 16px; background: #ffffff; }
.faq-section { background: #f7f9f7; }
.videos-wrap,
.faq-wrap { max-width: 1200px; margin: 0 auto; }

.videos-header,
.faq-header { text-align: center; margin-bottom: 20px; }
.videos-title,
.faq-title { font-size: 22px; line-height: 1.25; font-weight: 600; color: #1b1b1b; margin: 0 0 6px; }
.videos-subtitle,
.faq-subtitle { font-size: 14px; color: #555; margin: 0; }

@media (min-width: 768px) {
  .videos-section, .faq-section { padding: 56px 24px; }
  .videos-title, .faq-title { font-size: 28px; }
  .videos-subtitle, .faq-subtitle { font-size: 15px; }
}

/* ===== Multi-video TABS ===== */
.videos-tabs {
  display: flex;
  gap: 8px;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  padding: 4px 0 12px;
  margin-bottom: 14px;
  scrollbar-width: none;
}
.videos-tabs::-webkit-scrollbar { display: none; }

.videos-tab-btn {
  flex: 0 0 auto;
  background: #ffffff;
  border: 1.5px solid #e0e0e0;
  border-radius: 999px;
  padding: 10px 16px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
  color: #1b1b1b;
  font-size: 13px;
  font-weight: 500;
  transition: all .2s ease;
  white-space: nowrap;
  min-height: 44px; /* mobile touch target */
}
.videos-tab-btn:hover { border-color: #276b42; }
.videos-tab-btn.is-active {
  background: #276b42;
  border-color: #276b42;
  color: #fff;
}
.videos-tab-btn .vt-duration {
  font-size: 11px;
  background: rgba(0,0,0,0.06);
  padding: 2px 8px;
  border-radius: 999px;
  color: #555;
}
.videos-tab-btn.is-active .vt-duration {
  background: rgba(255,255,255,0.22);
  color: #fff;
}

@media (min-width: 768px) {
  .videos-tabs {
    justify-content: center;
    overflow: visible;
    flex-wrap: wrap;
  }
  .videos-tab-btn { padding: 12px 22px; font-size: 14px; }
}

/* ===== Video Panels ===== */
.videos-panel { display: none; }
.videos-panel.is-active { display: block; }

.vt-player {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  background: #000;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 4px 18px rgba(0,0,0,0.10);
}
.vt-cover {
  width: 100%; height: 100%;
  object-fit: cover;
  display: block;
}
.vt-iframe {
  position: absolute; inset: 0;
  width: 100%; height: 100%;
  border: 0;
  display: none;
}
.vt-play {
  position: absolute;
  top: 50%; left: 50%;
  transform: translate(-50%, -50%);
  width: 64px; height: 64px;
  border-radius: 50%;
  background: rgba(255,255,255,0.92);
  border: 0;
  display: flex; align-items: center; justify-content: center;
  cursor: pointer;
  transition: transform .2s ease;
  box-shadow: 0 4px 14px rgba(0,0,0,0.25);
}
.vt-play:hover { transform: translate(-50%, -50%) scale(1.08); }
.vt-play svg { width: 26px; height: 26px; fill: #1b1b1b; margin-left: 4px; }

.vt-meta { padding: 14px 4px 0; }
.vt-title { font-size: 16px; font-weight: 600; color: #1b1b1b; margin: 0 0 6px; line-height: 1.3; }
.vt-desc { font-size: 14px; color: #555; line-height: 1.55; margin: 0; }

@media (min-width: 768px) {
  .vt-play { width: 80px; height: 80px; }
  .vt-play svg { width: 32px; height: 32px; }
  .vt-title { font-size: 20px; }
  .vt-desc { font-size: 15px; max-width: 760px; }
  .vt-meta { padding-top: 18px; }
}

/* ============================================================================
   ✅ INSTALLATION — Detailed body
============================================================================ */
.install-intro { text-align: center; margin: 0 0 22px; }
.install-intro h3 { font-size: 22px; font-weight: 600; color: #1b1b1b; margin: 0 0 6px; }
.install-intro-desc { font-size: 14px; color: #555; max-width: 640px; margin: 0 auto 14px; line-height: 1.55; }

.install-meta-row {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  list-style: none;
  padding: 0;
  margin: 14px 0 0;
}
.install-meta-row li {
  background: #f7f9f7;
  border: 1px solid #e0e0e0;
  border-radius: 999px;
  padding: 8px 14px;
  font-size: 13px;
  color: #1b1b1b;
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
.install-meta-row li strong {
  font-weight: 600;
  color: #276b42;
}

.step-card { text-decoration: none; color: inherit; }
.step-card:hover { transform: translateY(-2px); transition: transform .2s ease; }
.step-num {
  display: inline-flex !important;
  align-items: center; justify-content: center;
  width: 28px; height: 28px;
  background: #276b42;
  color: #fff;
  border-radius: 50%;
  font-size: 14px;
  font-weight: 600;
}
/* ============================================================================
   ✅ FAQ — Accordion
============================================================================ */
.faq-list {
  list-style: none;
  margin: 0; padding: 0;
  display: flex; flex-direction: column;
  gap: 10px;
}
.faq-item {
  background: #ffffff;
  border: 1px solid #e6e6e6;
  border-radius: 12px;
  overflow: hidden;
  transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;
}
/* v10: hover-to-open — give visual feedback before answer expands */
@media (hover: hover) and (pointer: fine) {
  .faq-item:hover {
    border-color: #c9dcce;
    background: #f8faf8;
  }
  .faq-item:hover .faq-q { color: #276B42; }
  .faq-item:hover .faq-chevron { color: #276B42; }
}
.faq-item.is-open {
  border-color: #276b42;
  box-shadow: 0 2px 12px rgba(58,157,95,0.08);
  background: #ffffff;
}
.faq-q {
  width: 100%;
  background: transparent;
  border: 0;
  cursor: pointer;
  text-align: left;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 16px 18px;
  min-height: 56px;
  font-size: 15px;
  font-weight: 500;
  color: #1b1b1b;
  line-height: 1.4;
  transition: color .15s ease;
}
.faq-q:focus-visible {
  outline: 2px solid #276b42;
  outline-offset: -2px;
}
.faq-q-text { flex: 1; }
.faq-chevron {
  flex: 0 0 20px;
  color: #276b42;
  transition: transform .3s ease, color .15s ease;
  /* v13-2 ⑪ 修复 "点不动": chevron 内的 SVG 不应拦截 click，让事件冒泡到 .faq-q 按钮 */
  pointer-events: none;
}
.faq-chevron * { pointer-events: none; }
.faq-item.is-open .faq-chevron { transform: rotate(180deg); }

.faq-a {
  /* smooth height transition via max-height (hidden attribute removed by JS) */
  transition: max-height .35s ease;
}
.faq-a-inner {
  padding: 0 18px 18px;
  font-size: 14px;
  color: #444;
  line-height: 1.65;
}

.faq-cta {
  margin-top: 22px;
  text-align: center;
  font-size: 14px;
  color: #555;
  display: flex;
  flex-direction: column;
  gap: 10px;
  align-items: center;
}
.faq-cta-btn {
  display: inline-block;
  background: #276b42;
  color: #fff !important;
  padding: 12px 24px;
  border-radius: 999px;
  font-weight: 500;
  text-decoration: none;
  min-height: 44px;
  line-height: 20px;
  transition: background .2s ease;
}
.faq-cta-btn:hover { background: #2f8550; }

@media (min-width: 768px) {
  .faq-q { padding: 20px 24px; font-size: 16px; }
  .faq-a-inner { padding: 0 24px 22px; font-size: 15px; }
  .faq-cta { flex-direction: row; justify-content: center; gap: 18px; }
}

/* ============================================================================
   ✅ Mobile sweep — make sure existing sections also breathe on small screens
============================================================================ */
@media (max-width: 767px) {
  .product-layout-container { padding: 12px 14px !important; }
  .install-steps-grid { grid-template-columns: repeat(2, 1fr) !important; gap: 10px !important; }
  .step-card { padding: 12px !important; }
  .step-card .step-img { aspect-ratio: 1 / 1; object-fit: cover; }
  .step-title { font-size: 14px !important; }
  .step-desc { font-size: 12px !important; }

  .cross-sell-section { padding: 24px 14px !important; }
  .product-carousel-grid { grid-template-columns: 1fr 1fr !important; gap: 10px !important; }
}


/* ---- 03.006 页面内联样式块
   来源：index.html:5011, eclairage-solaire.html:5003, eclairage-solaire.php:5081
   说明：由页面 <style> 抽离，保持原有选择器和声明不变。
   ---- */
:root {
  --wc-radius: 16px;
  --wc-radius-sm: 10px;
  --wc-green: #276b42;
  --wc-green-soft: #e7f5ec;
  --wc-green-deep: #276b42;
  --wc-bg: #ffffff;
  --wc-bg-alt: #f7f9f7;
  --wc-bg-deep: #0f1611;
  --wc-text: #1b1b1b;
  --wc-text-soft: #555;
  --wc-border: #e6e6e6;
  --wc-shadow: 0 4px 22px rgba(15,22,17,0.08);
  --wc-section-pad: 32px 16px;
}
@media (min-width: 768px){ :root { --wc-section-pad: 64px 32px; } }
@media (min-width: 1024px){ :root { --wc-section-pad: 88px 40px; } }

.features-flow, .usecases-section, .techviz-section, .compare-section, .eco-strip, .reviews-section { font-family: Poppins, sans-serif; }/* ============== FEATURE DEEP-DIVES ============== */
.features-flow {
  background: var(--wc-bg);
  padding: var(--wc-section-pad);
  display: flex;
  flex-direction: column;
  gap: 56px;
}
.feature-row {
  display: grid;
  grid-template-columns: 1fr;
  gap: 22px;
  align-items: center;
  max-width: 1180px;
  margin: 0 auto;
  width: 100%;
}
.feature-media {
  position: relative;
  border-radius: var(--wc-radius);
  overflow: hidden;
  background: var(--wc-bg-alt);
  aspect-ratio: 4 / 3;
}
.feature-media img {
  width: 100%; height: 100%;
  object-fit: cover;
  display: block;
}
.feature-stat {
  position: absolute;
  left: 16px; bottom: 16px;
  background: rgba(255,255,255,0.96);
  padding: 12px 16px;
  border-radius: 12px;
  box-shadow: var(--wc-shadow);
  backdrop-filter: blur(8px);
}
.feature-stat-value {
  font-size: 28px;
  font-weight: 600;
  color: var(--wc-text);
  line-height: 1;
}
.feature-stat-value span {
  font-size: 14px;
  font-weight: 400;
  color: var(--wc-text-soft);
  margin-left: 4px;
}
.feature-stat-label {
  font-size: 11px;
  color: var(--wc-text-soft);
  margin-top: 4px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
/* v14 (5/20 客户) — features 标题字体/字号/间距对齐 lumihome.com 官网
   eyebrow 12px 大写 / title 30-32px weight 600 / body 15px line-height 1.65 */
.feature-eyebrow {
  display: inline-block;
  font-size: 12px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #276B42;
  font-weight: 700;
  margin-bottom: 12px;
}
.feature-title {
  font-size: 30px;
  line-height: 1.25;
  font-weight: 600;
  color: #1a1a1a;
  margin: 0 0 14px;
  letter-spacing: -0.005em;
}
.feature-body {
  font-size: 15px;
  line-height: 1.65;
  color: #555;
  margin: 0 0 16px;
}
.feature-bullets {
  list-style: none;
  margin: 0; padding: 0;
  display: flex; flex-direction: column;
  gap: 10px;
}
.feature-bullets li {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  font-size: 14.5px;
  color: var(--wc-text);
  line-height: 1.5;
}
.feature-bullets li svg { color: var(--wc-green); flex: 0 0 18px; margin-top: 2px; }
@media (min-width: 768px){
  .feature-row {
    grid-template-columns: 1fr 1fr;
    gap: 36px;
  }
  .feature-row.is-reversed .feature-media { order: 2; }
  /* v14: 桌面标题保持 ~31px — 与 lumihome.com 一致 */
  .feature-title { font-size: 31px; }
  .feature-body { font-size: 15px; }
  .feature-stat-value { font-size: 32px; }
}
@media (min-width: 1024px){
  /* v16: 留白收紧 */
  .feature-row { gap: 44px; }
  .feature-title { font-size: 32px; }
}

/* ============== USE CASES GRID ============== */
.usecases-section {
  background: var(--wc-bg-alt);
  padding: var(--wc-section-pad);
}
.usecases-wrap { max-width: 1200px; margin: 0 auto; }
.usecases-header { text-align: center; margin-bottom: 28px; }
.usecases-title {
  font-size: 26px;
  font-weight: 600;
  color: var(--wc-text);
  margin: 0 0 10px;
  letter-spacing: -0.01em;
}
.usecases-sub {
  font-size: 15px;
  color: var(--wc-text-soft);
  margin: 0 auto;
  max-width: 620px;
  line-height: 1.55;
}
.usecases-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}
.usecase-card {
  position: relative;
  margin: 0;
  border-radius: var(--wc-radius);
  overflow: hidden;
  aspect-ratio: 1 / 1;
  background: #ddd;
  cursor: pointer;
  transition: transform .25s ease, box-shadow .25s ease;
}
.usecase-card:hover { transform: translateY(-4px); box-shadow: var(--wc-shadow); }
.usecase-card img {
  width: 100%; height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .5s ease;
}
.usecase-card:hover img { transform: scale(1.05); }
/* v11 (5/16 客户) — P050: 图片上不需要文字，删除 figcaption 渐变遮罩 */
.usecase-card figcaption,
.usecase-label,
.usecase-desc { display: none !important; }
@media (min-width: 768px){
  .usecases-title { font-size: 32px; }
  .usecases-grid { grid-template-columns: repeat(4, 1fr); gap: 18px; }
  .usecase-card { aspect-ratio: 1 / 1; }
}

/* ============== TECH VISUALIZATION ============== */
.techviz-section {
  background: var(--wc-bg);
  padding: var(--wc-section-pad);
}
.techviz-wrap { max-width: 1200px; margin: 0 auto; }
.techviz-header { text-align: center; margin-bottom: 28px; }
.techviz-title { font-size: 26px; font-weight: 600; color: var(--wc-text); margin: 0 0 10px; }
.techviz-sub { font-size: 15px; color: var(--wc-text-soft); margin: 0 auto; max-width: 640px; line-height: 1.55; }
.techviz-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 18px;
}
.techviz-card {
  background: var(--wc-bg-alt);
  border: 1px solid var(--wc-border);
  border-radius: var(--wc-radius);
  padding: 22px;
}
.techviz-card-title { font-size: 17px; font-weight: 600; color: var(--wc-text); margin: 0 0 4px; }
.techviz-card-sub { font-size: 13.5px; color: var(--wc-text-soft); margin: 0 0 18px; line-height: 1.5; }

/* Autonomy bars */
.autonomy-bars { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 12px; }
.autonomy-row { display: grid; grid-template-columns: 64px 1fr 50px; align-items: center; gap: 10px; font-size: 13px; }
.autonomy-mode { font-weight: 600; color: var(--wc-text); }
.autonomy-track { height: 14px; background: #fff; border-radius: 999px; overflow: hidden; border: 1px solid var(--wc-border); }
.autonomy-fill { height: 100%; border-radius: 999px; transition: width .8s cubic-bezier(0.22, 1, 0.36, 1); }
.autonomy-hours { text-align: right; color: var(--wc-text-soft); font-variant-numeric: tabular-nums; }

/* Beam */
.beam-diagram-wrap { background: #fff; border-radius: var(--wc-radius-sm); padding: 8px; border: 1px solid var(--wc-border); }
.beam-svg { width: 100%; height: auto; display: block; }
.beam-stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin-top: 14px; text-align: center; }
.beam-stats > div { background: #fff; border: 1px solid var(--wc-border); border-radius: var(--wc-radius-sm); padding: 12px 6px; }
.beam-stats strong { display: block; font-size: 18px; color: var(--wc-green); font-weight: 600; }
.beam-stats span { font-size: 11px; color: var(--wc-text-soft); margin-top: 2px; display: block; }

@media (min-width: 768px){
  .techviz-title { font-size: 32px; }
  .techviz-grid { grid-template-columns: 1fr 1fr; gap: 24px; }
  .techviz-card { padding: 32px; }
  .techviz-card-title { font-size: 20px; }
  .beam-stats strong { font-size: 22px; }
  .beam-stats span { font-size: 12px; }
}

/* ============== COMPARISON TABLE ============== */
.compare-section {
  background: var(--wc-bg-alt);
  padding: var(--wc-section-pad);
}
.compare-wrap { max-width: 1200px; margin: 0 auto; }
/* v9: New 2-column comparison layout (ALTO 3000 vs Autres concurrents).
   Left = intro paragraph, Right = compact table. Avoids the CE PRODUIT
   badge-overlay bug present in the old 3-column layout. */
.compare-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 32px;
  align-items: start;
}
@media (min-width: 900px) {
  .compare-grid { grid-template-columns: 1fr 1.15fr; gap: 48px; }
}
.compare-intro { font-family: Poppins, sans-serif; }
.compare-title {
  font-size: clamp(22px, 3vw, 30px);
  font-weight: 700;
  color: var(--wc-text);
  margin: 0 0 18px;
  line-height: 1.25;
}
.compare-intro-p {
  font-size: 14.5px;
  line-height: 1.7;
  color: var(--wc-text-soft);
  margin: 0 0 14px;
}
.compare-table-wrap {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.compare-table-v2 {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  font-size: 14px;
  background: #fff;
  border-radius: var(--wc-radius);
  overflow: hidden;
  box-shadow: var(--wc-shadow);
}
.compare-table-v2 th,
.compare-table-v2 td {
  padding: 14px 16px;
  text-align: center;
  vertical-align: middle;
  border-bottom: 1px solid var(--wc-border);
}
.compare-table-v2 tbody tr:last-child th,
.compare-table-v2 tbody tr:last-child td {
  border-bottom: none;
}
.compare-table-v2 thead th {
  background: var(--wc-bg-alt);
  font-weight: 700;
  font-size: 15px;
  color: var(--wc-text);
  letter-spacing: 0.01em;
}
.compare-table-v2 thead th.col-self {
  background: var(--wc-green);
  color: #fff;
}
.compare-table-v2 thead th.col-others {
  background: var(--wc-bg-alt);
  color: var(--wc-text);
}
.compare-table-v2 .row-label {
  text-align: left;
  font-weight: 500;
  color: var(--wc-text);
  font-size: 13.5px;
  min-width: 200px;
  background: #fff;
}
.compare-table-v2 td.col-self {
  background: var(--wc-green-soft);
  color: var(--wc-green-deep);
  font-weight: 600;
}
.compare-table-v2 td.col-others {
  color: #999;
}
.compare-table-v2 .cmp-yes { color: var(--wc-green); }
.compare-table-v2 .cmp-no { color: #d04141; opacity: 0.85; }
.compare-table-v2 .cmp-val { font-weight: 600; }
@media (max-width: 600px) {
  .compare-table-v2 th, .compare-table-v2 td { padding: 10px 8px; font-size: 12.5px; }
  .compare-table-v2 .row-label { min-width: 120px; font-size: 12.5px; }
}/* ============== ECO STRIP ============== */
.eco-strip {
  background: linear-gradient(135deg, var(--wc-green-soft) 0%, #fff 100%);
  padding: var(--wc-section-pad);
}
.eco-wrap { max-width: 1200px; margin: 0 auto; text-align: center; }
.eco-title { font-size: 22px; font-weight: 600; color: var(--wc-green-deep); margin: 0 0 22px; }
.eco-grid {
  list-style: none; margin: 0; padding: 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}
.eco-stat {
  background: #fff;
  border-radius: var(--wc-radius);
  padding: 18px 12px;
  border: 1px solid var(--wc-border);
}
.eco-num {
  font-size: 28px;
  font-weight: 600;
  color: var(--wc-green-deep);
  line-height: 1;
}
.eco-num span { font-size: 14px; color: var(--wc-text-soft); margin-left: 3px; font-weight: 400; }
.eco-lbl { font-size: 12px; color: var(--wc-text-soft); margin-top: 8px; line-height: 1.4; }
@media (min-width: 768px){
  .eco-title { font-size: 28px; }
  .eco-grid { grid-template-columns: repeat(4, 1fr); gap: 16px; }
  .eco-stat { padding: 28px 18px; }
  .eco-num { font-size: 40px; }
  .eco-lbl { font-size: 13px; }
}

/* ============== IN-THE-BOX FLAT-LAY (Contenu tab) ============== */
.flatlay-intro { text-align: center; margin: 0 0 22px; }
.flatlay-intro h3 { font-size: 22px; font-weight: 600; color: var(--wc-text); margin: 0 0 8px; }
.flatlay-intro p { font-size: 14px; color: var(--wc-text-soft); margin: 0; }
/* v16 (5/22 客户) ⑧ — Contenu de la boîte 纯文本列表 */
.box-content-list { list-style: none; margin: 0; padding: 0; }
.box-content-list li {
    position: relative;
    padding: 0 0 0 22px;
    margin: 0 0 12px;
    font-size: 15px;
    color: #333;
    line-height: 1.55;
}
.box-content-list li:last-child { margin-bottom: 0; }
.box-content-list li::before {
    content: "";
    position: absolute;
    left: 2px;
    top: 8px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #276B42;
}
.flatlay-grid {
  list-style: none; margin: 0; padding: 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}
.flatlay-card {
  display: flex;
  flex-direction: column;
  background: var(--wc-bg-alt);
  border: 1px solid var(--wc-border);
  border-radius: var(--wc-radius);
  padding: 14px;
  text-align: center;
  transition: border-color .2s ease;
}
.flatlay-card:hover { border-color: var(--wc-green); }
.flatlay-thumb {
  background: #fff;
  border-radius: var(--wc-radius-sm);
  padding: 12px;
  margin-bottom: 12px;
  aspect-ratio: 1 / 1;
  display: flex; align-items: center; justify-content: center;
}
.flatlay-thumb img { max-width: 100%; max-height: 100%; object-fit: contain; }
.flatlay-meta { display: flex; flex-direction: column; gap: 4px; }
.flatlay-qty {
  display: inline-block;
  font-size: 11px;
  background: var(--wc-green-soft);
  color: var(--wc-green-deep);
  padding: 3px 10px;
  border-radius: 999px;
  margin: 0 auto;
  font-weight: 600;
}
.flatlay-name { font-size: 13px; color: var(--wc-text); line-height: 1.4; }
@media (min-width: 768px){
  .flatlay-grid { grid-template-columns: repeat(3, 1fr); gap: 18px; }
  .flatlay-card { padding: 22px; }
  .flatlay-name { font-size: 14px; }
}
@media (min-width: 1024px){
  .flatlay-grid { grid-template-columns: repeat(6, 1fr); }
}

/* ============== REVIEWS ============== */
.reviews-section {
  background: var(--wc-bg-alt);
  padding: var(--wc-section-pad);
}
.reviews-wrap { max-width: 1200px; margin: 0 auto; }
.reviews-header { text-align: center; margin-bottom: 28px; }
.reviews-title { font-size: 26px; font-weight: 600; color: var(--wc-text); margin: 0 0 10px; }
.reviews-sub { font-size: 14px; color: var(--wc-text-soft); margin: 0; }
.reviews-summary {
  background: #fff;
  border: 1px solid var(--wc-border);
  border-radius: var(--wc-radius);
  padding: 22px;
  display: grid;
  grid-template-columns: 1fr;
  gap: 22px;
  margin-bottom: 22px;
}
.reviews-score { text-align: center; }
.reviews-avg {
  font-size: 56px;
  font-weight: 600;
  color: var(--wc-text);
  line-height: 1;
  letter-spacing: -0.02em;
}
.reviews-avg span { font-size: 22px; color: var(--wc-text-soft); font-weight: 400; }
.reviews-stars { font-size: 22px; color: #f6a429; margin-top: 6px; letter-spacing: 2px; }
.reviews-stars .r-star { opacity: 0.3; }
.reviews-stars .r-star.is-on { opacity: 1; }
.reviews-stars .r-star.is-half { opacity: 0.6; }
.reviews-count { font-size: 12px; color: var(--wc-text-soft); margin-top: 6px; }
.reviews-distrib { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.reviews-distrib li { display: grid; grid-template-columns: 50px 1fr 40px; gap: 10px; align-items: center; font-size: 12.5px; }
.rd-stars { color: #f6a429; font-weight: 600; }
.rd-track { height: 8px; background: #f0f0f0; border-radius: 999px; overflow: hidden; }
.rd-fill { height: 100%; background: #f6a429; border-radius: 999px; transition: width .8s; }
.rd-pct { color: var(--wc-text-soft); text-align: right; font-variant-numeric: tabular-nums; }
.reviews-highlights { font-size: 13px; }
.rh-label { display: block; color: var(--wc-text-soft); margin-bottom: 8px; }
.reviews-highlights ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 6px; }
.reviews-highlights li {
  background: var(--wc-green-soft);
  color: var(--wc-green-deep);
  padding: 5px 11px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 500;
}

.reviews-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 14px;
}
.review-card {
  background: #fff;
  border: 1px solid var(--wc-border);
  border-radius: var(--wc-radius);
  padding: 18px;
}
.review-head { display: flex; align-items: center; gap: 10px; margin-bottom: 8px; }
.review-avatar {
  width: 38px; height: 38px;
  background: var(--wc-green);
  color: #fff;
  border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  font-weight: 600;
  font-size: 16px;
}
.review-meta { flex: 1; display: flex; flex-direction: column; }
.review-name { font-size: 14px; font-weight: 600; color: var(--wc-text); }
.review-loc { font-size: 11.5px; color: var(--wc-text-soft); }
.review-verified {
  display: inline-flex; align-items: center; gap: 4px;
  background: var(--wc-green-soft);
  color: var(--wc-green-deep);
  font-size: 11px;
  font-weight: 600;
  padding: 4px 10px;
  border-radius: 999px;
}
.review-stars { font-size: 14px; color: #f6a429; margin: 6px 0; letter-spacing: 1px; }
.review-stars .r-star { opacity: 0.25; }
.review-stars .r-star.is-on { opacity: 1; }
.review-title { font-size: 14.5px; font-weight: 600; color: var(--wc-text); margin: 6px 0; }
.review-body { font-size: 13.5px; color: var(--wc-text-soft); line-height: 1.55; margin: 0; }

.reviews-cta { text-align: center; margin-top: 22px; }
.reviews-cta-btn {
  display: inline-block;
  background: var(--wc-text);
  color: #fff !important;
  padding: 12px 24px;
  border-radius: 999px;
  text-decoration: none;
  font-weight: 500;
  font-size: 14px;
  min-height: 44px;
  line-height: 20px;
}
.reviews-cta-btn:hover { background: #000; }

/* v16 (5/22 客户) ⑤ — Judge.me 经典版式 */
.jm-summary {
  display: flex;
  flex-direction: column;
  gap: 24px;
  background: #fff;
  border: 1px solid #e8ebe8;
  border-radius: 14px;
  padding: 26px 24px;
  margin-bottom: 24px;
}
.jm-score { text-align: center; }
.jm-score-num {
  font-size: 52px;
  font-weight: 800;
  line-height: 1;
  color: var(--wc-text);
}
.jm-score-stars { font-size: 22px; color: #f6a429; letter-spacing: 2px; margin: 6px 0 4px; }
.jm-score-stars .r-star { opacity: .25; }
.jm-score-stars .r-star.is-on { opacity: 1; }
.jm-score-stars .r-star.is-half { opacity: .6; }
.jm-score-base { font-size: 13px; color: var(--wc-text-soft); }
.jm-distrib { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 7px; }
.jm-distrib li { display: grid; grid-template-columns: 44px 1fr 30px; gap: 10px; align-items: center; }
.jm-d-label { font-size: 13px; color: var(--wc-text-soft); white-space: nowrap; }
.jm-d-star { color: #f6a429; }
.jm-d-track { height: 9px; background: #eef0ee; border-radius: 999px; overflow: hidden; }
.jm-d-fill { height: 100%; background: #f6a429; border-radius: 999px; }
.jm-d-count { font-size: 13px; color: var(--wc-text-soft); text-align: right; }
.jm-actions { display: flex; flex-direction: column; gap: 10px; }
.jm-btn {
  display: inline-flex; align-items: center; justify-content: center;
  padding: 11px 18px; border-radius: 8px; font-size: 14px; font-weight: 600;
  text-decoration: none; min-height: 44px; transition: all .15s;
}
.jm-btn--solid { background: #1a1a1a; color: #fff !important; }
.jm-btn--solid:hover { background: #276B42; }
.jm-btn--outline { background: #fff; color: #1a1a1a !important; border: 1.5px solid #1a1a1a; }
.jm-btn--outline:hover { background: #1a1a1a; color: #fff !important; }
/* v16 (5/22 客户) — Photos 左 + 徽章 右 同行 */
.jm-media-row { display: flex; gap: 36px; align-items: center; flex-wrap: wrap; margin-bottom: 8px; }
.jm-media { margin-bottom: 24px; flex: 1 1 340px; }
.jm-media-title { font-size: 15px; font-weight: 700; color: var(--wc-text); margin-bottom: 12px; }
.jm-media-grid { display: flex; gap: 10px; flex-wrap: wrap; }
.jm-media-thumb {
  width: 84px; height: 84px; border-radius: 10px; overflow: hidden;
  background: #f3f5f3; flex: 0 0 auto; border: 1px solid #e8ebe8;
}
.jm-media-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.jm-badges { display: flex; gap: 18px; flex-wrap: wrap; margin-bottom: 22px; align-items: center; }
/* v16 (5/22 客户) — Judge.me 官方认证徽章 (bronze.svg / diamond.svg 内联) */
.jm-medal svg { display: block; width: 120px; height: 120px; }
@media (max-width: 560px){ .jm-medal svg { width: 96px; height: 96px; } }

@media (min-width: 768px){
  .reviews-title { font-size: 32px; }
  .reviews-summary {
    grid-template-columns: 220px 1fr 1fr;
    align-items: center;
    padding: 32px;
  }
  .jm-summary { flex-direction: row; align-items: center; gap: 40px; padding: 30px 36px; }
  .jm-score { flex: 0 0 150px; border-right: 1px solid #e8ebe8; padding-right: 12px; }
  .jm-distrib { flex: 1; }
  .jm-actions { flex: 0 0 200px; }
  .reviews-grid { grid-template-columns: 1fr 1fr; gap: 18px; }
}
@media (min-width: 1024px){
  .reviews-grid { grid-template-columns: repeat(3, 1fr); }
}

/* ============== STICKY MOBILE BOTTOM BAR ============== */
.sticky-buy {
  position: fixed;
  left: 0; right: 0; bottom: 0;
  background: rgba(255,255,255,0.96);
  border-top: 1px solid var(--wc-border);
  box-shadow: 0 -8px 24px rgba(0,0,0,0.08);
  padding: 10px 14px calc(10px + env(safe-area-inset-bottom));
  display: flex;
  align-items: center;
  gap: 12px;
  z-index: 999;
  backdrop-filter: blur(10px);
  animation: stickyIn .25s ease both;
}
@keyframes stickyIn { from { transform: translateY(100%);} to { transform: translateY(0);} }
.sticky-buy[hidden] { display: none; }
.sb-thumb {
  width: 44px; height: 44px;
  object-fit: contain;
  background: var(--wc-bg-alt);
  border-radius: 8px;
  flex: 0 0 44px;
}
.sb-info { flex: 1; min-width: 0; display: flex; flex-direction: column; }
.sb-name {
  font-size: 12.5px;
  font-weight: 500;
  color: var(--wc-text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.25;
}
.sb-price { font-size: 14px; font-weight: 600; color: var(--wc-green); margin-top: 2px; }
.sb-compare {
  font-size: 11px;
  font-weight: 400;
  color: var(--wc-text-soft);
  text-decoration: line-through;
  margin-left: 6px;
}
.sb-cta {
  flex: 0 0 auto;
  background: var(--wc-green);
  color: #fff;
  border: 0;
  padding: 12px 20px;
  border-radius: 999px;
  font-size: 14px;
  font-weight: 600;
  min-height: 44px;
  cursor: pointer;
}
.sb-cta:hover { background: #2f8550; }
/* v15 (5/21): mobile sticky-buy now hides at ≥1000px so the new PC sticky bar takes over */
@media (min-width: 1000px){
  .sticky-buy { display: none !important; }
}

/* ============================================================
 *  v13 (5/18 客户) — Installation grid + FAQ contact bar (lampede.it style)
 * ============================================================ */
.v13-install { padding: clamp(28px, 5vw, 56px) clamp(16px, 3vw, 24px); background: #f7f9f7; }
.v13-install .lh-wrap { max-width: 1180px; margin: 0 auto; }
.v13-install .lh-section-title { font-size: clamp(22px, 3vw, 30px); font-weight: 700; color: #1a1a1a; margin: 0 0 8px; text-align: center; }
.v13-install-intro { text-align: center; color: #555; font-size: 14.5px; margin: 0 auto 28px; max-width: 640px; line-height: 1.55; }
.v13-install-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 18px;
}
.v13-install-card {
    background: #fff;
    border: 1px solid #ececec;
    border-radius: 14px;
    overflow: hidden;
    transition: box-shadow .25s ease, transform .25s ease;
}
.v13-install-card:hover { box-shadow: 0 8px 24px rgba(0,0,0,.07); transform: translateY(-2px); }
.v13-install-card-media {
    aspect-ratio: 1 / 1;
    background: #f4f4f4;
    overflow: hidden;
}
.v13-install-card-media img { width: 100%; height: 100%; object-fit: cover; display: block; }
.v13-install-card-body { padding: 14px 18px 20px; }
.v13-install-card-title {
    font-size: 14.5px;
    font-weight: 700;
    color: #1a1a1a;
    margin: 0 0 6px;
    letter-spacing: -0.005em;
}
.v13-install-card-desc {
    font-size: 13.5px;
    line-height: 1.55;
    color: #555;
    margin: 0;
}
@media (min-width: 768px) {
    .v13-install-grid { gap: 22px; }
    .v13-install-card-title { font-size: 15.5px; }
    .v13-install-card-desc { font-size: 14px; }
}

/* ---- FAQ 2 列布局（左 contact 卡 + 右 accordion） — 严格仿原 lumihome.com 详情页 ---- */
.v13-faq { background: #f7f9f7; padding: clamp(28px, 5vw, 56px) clamp(16px, 3vw, 32px); }
.v13-faq-wrap {
    max-width: 1240px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr;
    gap: 28px;
    align-items: start;
}
.v13-faq-aside {
    background: #fff;
    border: 1px solid #e5ebe5;
    border-radius: 14px;
    padding: 28px 28px 24px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    box-shadow: 0 2px 8px rgba(0,0,0,.025);
}
.v13-faq-title {
    font-size: 22px;
    line-height: 1.3;
    font-weight: 700;
    color: #1a1a1a;
    margin: 0 0 4px;
    letter-spacing: -0.005em;
}
.v13-faq-lead {
    font-size: 15px;
    color: #1a1a1a;
    margin: 0;
    line-height: 1.45;
}
.v13-faq-lead strong { color: #276B42; font-weight: 700; }
.v13-faq-sub { font-size: 13.5px; color: #5a5a5a; line-height: 1.55; margin: 2px 0 14px; }
.v13-faq-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 48px;
    border-radius: 999px;
    text-decoration: none;
    font-weight: 600;
    font-size: 15px;
    letter-spacing: 0.01em;
    transition: background .2s ease, color .2s ease, border-color .2s ease, transform .2s ease;
}
.v13-faq-btn:hover { transform: translateY(-1px); }
.v13-faq-btn--primary { background: #2f8550; color: #fff; }
.v13-faq-btn--primary:hover { background: #276B42; color: #fff; }
.v13-faq-btn--ghost { background: #fff; color: #276B42; border: 1.5px solid #276B42; }
.v13-faq-btn--ghost:hover { background: #f0f7f2; }
.v13-faq-list { flex: 1; min-width: 0; }
@media (min-width: 900px) {
    .v13-faq-wrap {
        grid-template-columns: 360px 1fr;
        gap: 40px;
    }
    .v13-faq-title { font-size: 26px; }
}
@media (min-width: 1200px) {
    .v13-faq-wrap { grid-template-columns: 400px 1fr; gap: 56px; }
}


/* v13 (5/18) ③ — Avis d'expert dans le rail d'achat (sous trust-badges) */
.v13-expert-rail {
    margin: 14px 0 20px;
    background: #f7f9f7;
    border: 1px solid #e5ebe5;
    border-radius: 12px;
    padding: 14px 16px;
}
.v13-expert-rail-head {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 8px;
}
.v13-expert-rail-avatar {
    width: 36px; height: 36px;
    border-radius: 50%;
    object-fit: cover;
    background: #fff;
    border: 1px solid #e5ebe5;
    flex: 0 0 36px;
}
.v13-expert-rail-meta { flex: 1; display: flex; flex-direction: column; line-height: 1.25; min-width: 0; }
.v13-expert-rail-name { font-weight: 700; font-size: 13.5px; color: #1a1a1a; }
.v13-expert-rail-role { font-size: 11px; letter-spacing: 0.08em; text-transform: uppercase; color: #b8862b; }
.v13-expert-rail-badge {
    display: inline-flex;
    align-items: center;
    background: #276B42;
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    padding: 5px 12px;
    border-radius: 999px;
    white-space: nowrap;
    flex: 0 0 auto;
}
.v13-expert-rail-quote {
    margin: 0;
    padding-left: 10px;
    border-left: 3px solid #276B42;
    font-style: italic;
    font-size: 13px;
    line-height: 1.55;
    color: #444;
}
@media (max-width: 480px){
    .v13-expert-rail-badge { font-size: 11px; padding: 4px 10px; }
}


/* ---- 03.007 页面内联样式块
   来源：index.html:5915
   说明：由页面 <style> 抽离，保持原有选择器和声明不变。
   ---- */
#shopify-section-mini-cart .cart-item-product__title-details{display:none}
#shopify-section-mini-cart .mini-cart__actions{display:none}
#shopify-section-mini-cart .mini-cart__drawer-footer{margin-top:30px}
#shopify-section-mini-cart .product-energy-badge{display:none}
.header__icon-wrapper[aria-controls="mini-cart"]{position:relative}
.lh-cart-count{position:absolute;top:-7px;right:-8px;min-width:17px;height:17px;padding:0 5px;border-radius:999px;background:#d8062f;color:#fff;font-size:10px;font-weight:800;line-height:17px;text-align:center;box-shadow:0 0 0 2px #fff}
#mini-cart.mini-cart{position:fixed !important;top:86px !important;right:28px !important;left:auto !important;width:330px !important;max-width:calc(100vw - 32px) !important;height:auto !important;max-height:calc(100vh - 110px) !important;transform:translateY(8px) !important;opacity:0 !important;visibility:hidden !important;border:1px solid #ececec !important;border-radius:3px !important;background:#fff !important;box-shadow:0 24px 55px rgba(20,25,30,.18) !important;overflow:visible !important;z-index:9999 !important;transition:opacity .16s ease,transform .16s ease,visibility .16s ease !important}
#mini-cart.mini-cart[open]{opacity:1 !important;visibility:visible !important;transform:translateY(0) !important}
#mini-cart::before{content:"";position:absolute;right:30px;top:-9px;width:18px;height:18px;background:#fff;border-left:1px solid #ececec;border-top:1px solid #ececec;transform:rotate(45deg)}
#mini-cart .drawer__overlay{display:none !important}
#mini-cart .drawer__header{height:auto;max-height:none;padding:16px 16px 12px;border-bottom:1px solid #ececec;background:#fff}
#mini-cart .drawer__title{font-size:15px;font-weight:800;margin:0;justify-content:center;width:100%}
#mini-cart .drawer__title svg{display:none}
#mini-cart .drawer__close-button{position:absolute;right:12px;top:12px;width:24px;height:24px}
#mini-cart .drawer__content{padding:0 16px 16px;background:#fff;display:block;text-align:left}
.lh-mini-empty{padding:22px 0;text-align:center;color:#666;font-size:13px}
.lh-mini-item{display:grid;grid-template-columns:50px 1fr auto;gap:12px;padding:15px 0;border-bottom:1px solid #ececec}
.lh-mini-item img{width:50px;height:50px;border-radius:6px;object-fit:cover;background:#f4f4f4}
.lh-mini-name{font-size:12.2px;font-weight:700;line-height:1.35;color:#151515;margin:0 0 5px}
.lh-mini-qty{font-size:11.5px;color:#555}
.lh-mini-remove{border:0;background:transparent;font-size:18px;line-height:1;color:#555;cursor:pointer;padding:0 0 0 6px}
.lh-mini-price{text-align:right;font-size:13px;font-weight:800;white-space:nowrap}
.lh-mini-old{display:block;margin-top:3px;font-size:10px;font-weight:400;color:#777}
.lh-mini-saving{display:flex;justify-content:space-between;gap:10px;margin:14px 0 10px;padding:9px 10px;border-radius:7px;background:#e8f6e7;color:#289344;font-size:12px}
.lh-mini-row{display:flex;justify-content:space-between;gap:12px;margin:9px 0;font-size:12.5px;color:#1c1c1c}
.lh-mini-total{font-size:14px;font-weight:800}
.lh-mini-tax{font-size:10.5px;color:#555;margin:-4px 0 14px}
.lh-mini-cart-btn{display:flex;align-items:center;justify-content:center;width:100%;height:46px;border-radius:999px;background:#d8062f;color:#fff;text-decoration:none;font-size:13px;font-weight:800;margin-top:14px}
.lh-mini-express{display:flex;align-items:center;gap:10px;margin:15px 0 12px;color:#777;font-size:9px;text-transform:uppercase}
.lh-mini-express::before,.lh-mini-express::after{content:"";height:1px;background:#ddd;flex:1}
.lh-mini-checkout{display:block;text-align:center;color:#1a1a1a;font-size:12px;text-decoration:underline}
@media screen and (max-width:741px){#shopify-section-mini-cart .product-item-meta__title{font-size:.9em}}


/* ---- 03.008 页面内联样式块
   来源：index.html:5996
   说明：由页面 <style> 抽离，保持原有选择器和声明不变。
   ---- */
/* ===== ACCUEIL Lumihome — sections (préfixe hp-) ===== */
#main{--g:#276B42;--gd:#1d5132;--gl:#3a9d5f;--gsoft:#eef5f0;--gtint:#f6faf7;
  --ink:#16201a;--body:#4a524b;--muted:#7f877f;--line:#e7eae7;--amber:#f6a429;--red:#e4322b;
  font-family:Poppins,-apple-system,Segoe UI,sans-serif;color:#16201a;background:#fff}
#main *{box-sizing:border-box}
.hp-wrap{max-width:1280px;margin:0 auto;padding:0 clamp(16px,3.4vw,32px)}
.hp-sec{padding:clamp(46px,6vw,86px) 0}
.hp-sec--soft{background:#f6f8f6}
.hp-sec--tint{background:#f6faf7}
.hp-eyebrow{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.15em;
  text-transform:uppercase;color:#276B42;margin-bottom:11px}
.hp-head{max-width:660px;margin:0 0 36px}
.hp-head--c{margin-left:auto;margin-right:auto;text-align:center}
.hp-head h2{font-size:clamp(25px,3.3vw,39px);font-weight:800;letter-spacing:-.02em;margin:0 0 10px;color:#16201a}
.hp-head p{font-size:15px;color:#4a524b;margin:0}
.hp-btn{display:inline-flex;align-items:center;gap:9px;font-weight:700;font-size:14.5px;
  border-radius:999px;padding:14px 28px;border:1.6px solid transparent;cursor:pointer;
  transition:transform .15s,box-shadow .2s,background .2s,color .2s;text-decoration:none}
.hp-btn svg{width:17px;height:17px}
.hp-btn--primary{background:#276B42;color:#fff}
.hp-btn--primary:hover{background:#1d5132;transform:translateY(-2px);box-shadow:0 12px 24px -10px rgba(39,107,66,.55)}
.hp-btn--ghost{background:#fff;color:#16201a;border-color:#d6ddd7}
.hp-btn--ghost:hover{border-color:#276B42;color:#276B42}
.hp-btn--light{background:#fff;color:#276B42}
.hp-btn--light:hover{transform:translateY(-2px);box-shadow:0 14px 28px -12px rgba(0,0,0,.45)}

/* ---- HERO ---- */
/* v2 docx H3 — Hero 字号缩小，白卡偏左居中 (image6 ref) */
.hp-hero{position:relative;min-height:clamp(420px,55vh,540px);display:flex;align-items:center;
  color:#fff;overflow:hidden}
.hp-hero-bg{position:absolute;inset:0;z-index:0}
.hp-hero-bg img{width:100%;height:100%;object-fit:cover}
/* 0603 docx: Léo "感觉图片黑黑的" — overlay 从 .84/.5/.08 减到 .58/.28/0 让 banner 更亮 */
.hp-hero-bg::after{content:"";position:absolute;inset:0;
  background:linear-gradient(100deg,rgba(11,24,15,.58) 0%,rgba(11,24,15,.28) 48%,rgba(11,24,15,0) 100%)}
.hp-hero .hp-wrap{position:relative;z-index:1}
/* v2 修正：去掉白卡，文字直接铺在图上 (官网 lumihome.com 实际效果) */
.hp-hero{align-items:center}
.hp-hero .hp-wrap{padding:0 clamp(24px,3vw,48px);width:100%}
.hp-hero-in{max-width:540px;padding:0;background:transparent;backdrop-filter:none;border-radius:0;box-shadow:none;margin-left:0}
/* 文字均为白色，原有 dark text 覆写撤销 */
.hp-hero h1{color:#fff !important;text-shadow:0 2px 14px rgba(0,0,0,.4)}
.hp-hero p{color:#e8efea !important;max-width:480px !important;text-shadow:0 1px 8px rgba(0,0,0,.5)}
.hp-hero-tags span{background:rgba(255,255,255,.16) !important;color:#fff !important;border:1px solid rgba(255,255,255,.28) !important;backdrop-filter:blur(6px)}
.hp-hero-tags svg{color:#3aff8a !important}
/* 0527 docx #2: Cert pill 内嵌绿色「Certifié」chip */
.hp-hero-cert{display:inline-grid;place-items:center;background:#1d9c5a;color:#fff;font-size:11px;font-weight:800;letter-spacing:.02em;padding:3px 9px;border-radius:999px;margin-left:6px}
.hp-hero-media{display:inline-flex;align-items:center;gap:4px;background:rgba(255,255,255,.96);color:#1a1a1a;font-size:11.5px;font-weight:700;padding:4px 9px;border-radius:6px;margin-left:6px;white-space:nowrap}
.hp-hero-media--bfm{color:#0099ff}
.hp-hero-media--cnews{color:#e3001b}
.hp-hero-seen-v2{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:#fff;font-weight:500;margin-left:14px}
.hp-hero-rate{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.15);color:#fff !important;backdrop-filter:blur(6px);
  border:1px solid rgba(255,255,255,.26);border-radius:999px;padding:6px 14px;font-size:12.5px;
  font-weight:600;margin-bottom:18px}
.hp-hero-rate b{color:#ffd24a}
.hp-hero h1{font-size:clamp(26px,3vw,38px);font-weight:800;line-height:1.12;letter-spacing:-.02em;margin:0 0 14px}
.hp-hero p{font-size:clamp(14px,1.2vw,15.5px);color:#dbe7df;max-width:460px;margin:0 0 20px;line-height:1.6}
.hp-hero-tags{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:28px}
.hp-hero-tags span{display:inline-flex;align-items:center;gap:7px;font-size:12.7px;font-weight:600;
  background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);padding:8px 13px;border-radius:999px}
.hp-hero-tags svg{width:14px;height:14px;color:#8fe0ab}
.hp-hero-cta{display:flex;gap:13px;flex-wrap:wrap;align-items:center}
.hp-hero-seen{font-size:11.5px;color:#acc4b4;margin-left:4px}
.hp-hero-seen b{color:#fff}

/* ---- TRUST BAR ---- */
.hp-trust{background:#fff;border-bottom:1px solid #e7eae7}
.hp-trust-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.hp-trust-i{display:flex;align-items:center;gap:12px;padding:20px 18px}
.hp-trust-i+.hp-trust-i{border-left:1px solid #e7eae7}
.hp-trust-i img{width:30px;height:30px;object-fit:contain;flex:0 0 auto}
.hp-trust-i b{font-size:13.7px;font-weight:700;color:#16201a;line-height:1.3}

/* ---- PRODUCT CAROUSEL ---- */
.hp-prow-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:30px}
.hp-arrows{display:flex;gap:8px}
/* 0527 docx #4: 热卖品箭头放两侧 */
.hp-bv-wrap{position:relative;padding:0}
.hp-arrow--side{position:absolute;top:42%;transform:translateY(-50%);z-index:5;width:44px;height:44px;box-shadow:0 4px 14px rgba(0,0,0,.1)}
.hp-arrow--side.hp-arrow--prev{left:-8px}
.hp-arrow--side.hp-arrow--next{right:-8px}
@media(max-width:760px){.hp-arrow--side{display:none}}
.hp-arrow{width:44px;height:44px;border-radius:999px;border:1.5px solid #d6ddd7;background:#fff;
  display:flex;align-items:center;justify-content:center;cursor:pointer;transition:.15s;color:#16201a}
.hp-arrow:hover{border-color:#276B42;background:#276B42;color:#fff}
.hp-arrow svg{width:18px;height:18px}
/* 0527 docx #4: track 一行 5 个等宽，不溢出 (修右侧半个产品 BUG) */
.hp-track{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;
  overflow:hidden;scroll-snap-type:x mandatory;padding-bottom:6px;scrollbar-width:none;padding-left:48px;padding-right:48px}
@media(max-width:1100px){.hp-track{grid-template-columns:repeat(4,minmax(0,1fr));padding-left:24px;padding-right:24px}.hp-track > .hp-pcard:nth-child(n+5){display:none}}
@media(max-width:760px){.hp-track{grid-template-columns:repeat(2,minmax(0,1fr));padding:0 12px}.hp-track > .hp-pcard:nth-child(n+5){display:grid}}
.hp-track::-webkit-scrollbar{display:none}
.hp-pcard{position:relative;background:#fff;border:1px solid #e9ece9;border-radius:14px;overflow:hidden;
  scroll-snap-align:start;transition:transform .2s,box-shadow .2s,border-color .2s}
.hp-pcard:hover{transform:translateY(-4px);box-shadow:0 18px 40px -18px rgba(20,40,28,.26);border-color:#dde3dd}
.hp-pcard a{display:flex;flex-direction:column;height:100%;color:inherit;text-decoration:none}
.hp-pc-media{position:relative;aspect-ratio:1/1;background:#f4f5f4;overflow:hidden}
.hp-pc-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:opacity .35s,transform .5s}
.hp-pc-media .night{opacity:0}
.hp-pcard:hover .night{opacity:1}
.hp-pcard:hover .day{transform:scale(1.04)}
/* v7 docx — 颜色对齐 luminaire ref: 全部用同款红 #e4322b (不是橙色) */
.hp-bdgs{position:absolute;top:10px;left:10px;z-index:2;display:flex;flex-direction:column;gap:6px;align-items:flex-start}
.hp-bdg{font-size:11.5px;font-weight:800;line-height:1;padding:7px 12px;border-radius:999px;white-space:nowrap;letter-spacing:.01em}
.hp-bdg--remises{background:#e4322b;color:#fff}  /* 红色 "+ Remises sur quantité" (luminaire 同款) */
.hp-bdg--promo{background:#f6a429;color:#fff}    /* 二级橙色 (留给 -30€ panier 等促销) */
/* PVC 折扣大 pill —— 红色 (与左上 badge 同色), 在图片下方 */
.hp-pc-pvc{display:inline-flex;align-self:flex-start;background:#e4322b;color:#fff;font-size:12.5px;font-weight:800;padding:7px 14px;border-radius:999px;letter-spacing:.01em;margin-bottom:4px}
/* 价格栈: 粗价格 + 下方划线 PVC 价格 */
.hp-pc-price{flex-direction:column;align-items:flex-start;gap:2px}
.hp-pc-price b{font-size:20px;font-weight:800;line-height:1.1}
.hp-pc-oldprice{font-size:13px;color:#9b9f9b}
.hp-pc-oldprice s{color:#9b9f9b;text-decoration:line-through}
/* Solaire chip 改成 luminaire 橙色 pill，白字大写 */
.hp-bdg--solar{position:absolute;bottom:10px;left:10px;z-index:2;background:#f6a429;
  color:#fff;border:0;font-size:10px;font-weight:800;padding:6px 11px;
  border-radius:999px;text-transform:uppercase;letter-spacing:.06em;display:inline-flex;align-items:center;gap:5px}
.hp-bdg--solar::before{content:"";display:inline-block;width:9px;height:9px;border-radius:50%;background:radial-gradient(circle,#fff 30%,#ffd24a 60%,transparent 65%);box-shadow:0 0 0 1.5px #fff inset}
/* Heart wishlist (luminaire-style) */
.hp-pc-fav{position:absolute;top:10px;right:10px;z-index:2;width:32px;height:32px;border:0;background:rgba(255,255,255,.95);border-radius:50%;cursor:pointer;display:grid;place-items:center;color:#1a1a1a;box-shadow:0 1px 3px rgba(0,0,0,.08);transition:background .15s,color .15s,transform .15s}
.hp-pc-fav:hover{background:#fff;color:#c01230;transform:scale(1.08)}
.hp-pc-fav svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2}
.hp-pc-fav[aria-pressed="true"] svg{fill:currentColor}
.hp-pc-body{padding:14px;display:flex;flex-direction:column;gap:7px;flex:1}
.hp-pc-name{font-size:13.6px;font-weight:600;line-height:1.4;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:38px}
.hp-pc-rate{display:flex;align-items:center;gap:6px;font-size:11.5px;color:#7f877f}
.hp-stars{color:#f6a429;letter-spacing:1.5px;font-size:12px}
.hp-pc-price{display:flex;align-items:baseline;gap:8px;margin-top:auto;padding-top:4px}
.hp-pc-price b{font-size:18px;font-weight:800}
.hp-pc-price s{font-size:13px;color:#b4b8b1}
.hp-pc-stock{font-size:11.5px;font-weight:600;color:#276B42;display:flex;align-items:center;gap:6px}
.hp-pc-stock::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}

/* ---- CATEGORIES ---- */
.hp-cats{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
/* H4 docx: 产品分类图片修改成 1:1 */
.hp-cat{position:relative;display:block;border-radius:16px;overflow:hidden;background:#eef0ee;
  aspect-ratio:1/1;text-decoration:none}
.hp-cat img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.hp-cat:hover img{transform:scale(1.07)}
.hp-cat::after{content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(0,0,0,0) 42%,rgba(11,24,15,.84) 100%)}
.hp-cat-cap{position:absolute;left:16px;right:16px;bottom:15px;z-index:1;color:#fff}
.hp-cat-cap b{font-size:15px;font-weight:700;display:block;line-height:1.25}
.hp-cat-cap span{font-size:11px;font-weight:600;letter-spacing:.04em;color:#bcdcc6;
  display:inline-flex;align-items:center;gap:5px;margin-top:5px}
.hp-cat-cap svg{width:12px;height:12px}

/* ---- SPACES ---- */
.hp-spaces{display:grid;grid-template-columns:repeat(6,1fr);gap:13px}
/* H4 docx: 这一块的图片也是 1:1 */
.hp-space{position:relative;display:block;border-radius:14px;overflow:hidden;aspect-ratio:1/1;text-decoration:none}
.hp-space img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.hp-space:hover img{transform:scale(1.08)}
.hp-space::after{content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(0,0,0,0) 44%,rgba(11,24,15,.82) 100%)}
.hp-space b{position:absolute;left:0;right:0;bottom:14px;z-index:1;text-align:center;color:#fff;
  font-size:13.5px;font-weight:700;padding:0 8px}

/* ---- REVIEWS ---- */
.hp-rev-top{display:flex;flex-direction:column;align-items:center;gap:7px;margin-bottom:34px;text-align:center}
.hp-rev-stars{color:#f6a429;font-size:22px;letter-spacing:2px}
.hp-rev-top .sc{font-size:15px;font-weight:700}
.hp-rev-top small{color:#7f877f;font-size:12.5px}
.hp-rev-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.hp-rev{background:#fff;border:1px solid #e7eae7;border-radius:14px;padding:22px;display:flex;flex-direction:column}
.hp-rev .hp-stars{font-size:13px}
.hp-rev h4{font-size:14.5px;font-weight:700;margin:11px 0 7px}
.hp-rev p{font-size:13px;color:#4a524b;line-height:1.62;flex:1}
.hp-rev-prod{display:flex;align-items:center;gap:10px;margin-top:16px;padding-top:14px;border-top:1px solid #eef1ee}
.hp-rev-prod img{width:42px;height:42px;border-radius:9px;object-fit:cover;flex:0 0 auto}
.hp-rev-prod b{font-size:12px;font-weight:600;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.hp-rev-by{margin-top:13px;font-size:12px;color:#7f877f}
.hp-rev-by strong{color:#16201a;font-weight:700}
.hp-rev-by .vf{color:#276B42;font-weight:600}

/* ---- ÉNERGIE ---- */
.hp-energy{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.hp-en{background:#fff;border:1px solid #e7eae7;border-radius:18px;overflow:hidden;display:flex;flex-direction:column;
  transition:transform .2s,box-shadow .2s}
.hp-en:hover{transform:translateY(-4px);box-shadow:0 20px 44px -20px rgba(20,40,28,.26)}
.hp-en-media{aspect-ratio:16/11;overflow:hidden;background:#f4f5f4}
.hp-en-media img{width:100%;height:100%;object-fit:cover}
.hp-en-body{padding:24px 24px 26px;display:flex;flex-direction:column;flex:1}
.hp-en-body h3{font-size:19px;font-weight:700;margin:0 0 9px}
.hp-en-body p{font-size:13.6px;color:#4a524b;line-height:1.6;flex:1;margin:0 0 18px}
.hp-en-link{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700;
  letter-spacing:.06em;color:#276B42}
.hp-en-link svg{width:15px;height:15px}

/* ---- PARTNERS ---- */
.hp-partners-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:clamp(22px,4vw,56px)}
.hp-partners-row img{height:34px;width:auto;object-fit:contain;
  filter:grayscale(1);opacity:.62;transition:filter .2s,opacity .2s}
.hp-partners-row img:hover{filter:none;opacity:1}

/* ---- MEDIA ---- */
.hp-media{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.hp-md{background:#fff;border:1px solid #e7eae7;border-radius:16px;overflow:hidden;display:flex;flex-direction:column}
.hp-md-media{position:relative;aspect-ratio:16/10;overflow:hidden;background:#f4f5f4}
.hp-md-media img{width:100%;height:100%;object-fit:cover}
.hp-md-tag{position:absolute;top:12px;left:12px;background:#276B42;color:#fff;font-size:10.5px;
  font-weight:800;letter-spacing:.08em;padding:5px 10px;border-radius:6px}
.hp-md-play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}
.hp-md-play span{width:54px;height:54px;border-radius:999px;background:rgba(255,255,255,.92);
  display:flex;align-items:center;justify-content:center}
.hp-md-play svg{width:20px;height:20px;color:#276B42;margin-left:3px}
.hp-md-body{padding:20px;display:flex;flex-direction:column;flex:1}
.hp-md-body h3{font-size:16px;font-weight:700;margin:0 0 8px;line-height:1.32}
.hp-md-body p{font-size:13px;color:#4a524b;line-height:1.6;flex:1}
.hp-md-link{margin-top:14px;font-size:13px;font-weight:700;color:#276B42;display:inline-flex;align-items:center;gap:6px}
.hp-md-link svg{width:14px;height:14px}

/* ---- SEO ---- */
.hp-seo{max-width:880px;margin:0 auto;text-align:center}
.hp-seo h2{font-size:clamp(22px,2.8vw,32px);font-weight:800;letter-spacing:-.02em;margin:0 0 18px}
.hp-seo p{font-size:14.5px;color:#4a524b;line-height:1.75;margin:0 0 13px}

/* ---- BLOG ---- */
.hp-blog{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.hp-post{background:#fff;border:1px solid #e7eae7;border-radius:14px;overflow:hidden;
  display:flex;flex-direction:column;text-decoration:none;color:inherit;transition:transform .2s,box-shadow .2s}
.hp-post:hover{transform:translateY(-4px);box-shadow:0 18px 40px -18px rgba(20,40,28,.26)}
.hp-post-media{aspect-ratio:16/10;overflow:hidden}
.hp-post-media img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.hp-post:hover .hp-post-media img{transform:scale(1.05)}
.hp-post-body{padding:18px 20px 20px;display:flex;flex-direction:column;flex:1}
.hp-post-tag{font-size:10.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#276B42}
.hp-post-body h3{font-size:15.5px;font-weight:700;line-height:1.36;margin:9px 0 0}
.hp-post-more{margin-top:13px;font-size:12.7px;font-weight:700;color:#276B42;display:inline-flex;align-items:center;gap:6px}
.hp-post-more svg{width:14px;height:14px}

/* ---- reveal ---- */
[data-rv]{opacity:0;transform:translateY(22px);transition:opacity .6s ease,transform .6s ease}
[data-rv].in{opacity:1;transform:none}

/* ---- responsive ---- */
@media(max-width:1080px){
  .hp-cats{grid-template-columns:repeat(3,1fr)}
  .hp-spaces{grid-template-columns:repeat(3,1fr)}
  .hp-rev-grid{grid-template-columns:1fr 1fr}
  .hp-energy,.hp-media,.hp-blog{grid-template-columns:1fr}
  .hp-energy{grid-template-columns:1fr 1fr 1fr}
}
@media(max-width:860px){
  .hp-trust-grid{grid-template-columns:1fr 1fr}
  .hp-trust-i:nth-child(3){border-left:none}
  .hp-energy,.hp-media,.hp-blog{grid-template-columns:1fr}
}
@media(max-width:620px){
  .hp-cats{grid-template-columns:1fr 1fr}
  .hp-spaces{grid-template-columns:1fr 1fr}
  .hp-rev-grid{grid-template-columns:1fr}
  .hp-trust-i+.hp-trust-i{border-left:none}
  .hp-trust-i{border-top:1px solid #e7eae7}
  .hp-prow-head{flex-direction:column;align-items:flex-start;gap:14px}
}

/* =================================================================
   H2 — Autoplay USP marquee (docx p24-25, image10 ref)
   GPU-only transform, hover-pause, reduced-motion guard.
   ================================================================= */
.lh-marquee{position:relative;overflow:hidden;background:#fff;border-top:1px solid #e7eae7;border-bottom:1px solid #e7eae7;padding:16px 0}
.lh-marquee__track{display:flex;gap:60px;width:max-content;will-change:transform;animation:lh-mq 36s linear infinite}
.lh-marquee:hover .lh-marquee__track,
.lh-marquee:focus-within .lh-marquee__track{animation-play-state:paused}
.lh-marquee__i{display:inline-flex;align-items:center;gap:10px;font-size:14.5px;font-weight:600;color:#1a1a1a;white-space:nowrap;flex:0 0 auto}
.lh-marquee__i svg{width:22px;height:22px;flex:0 0 auto;color:#276B42}
@keyframes lh-mq{from{transform:translateX(0)}to{transform:translateX(calc(-50% - 30px))}}
@media (prefers-reduced-motion:reduce){.lh-marquee__track{animation:none}}

/* H3 — Best-sellers heading centered (docx p26, image12 ref) */
.hp-prow-head--c{flex-direction:column;align-items:center;text-align:center;gap:6px}
.hp-prow-head--c .hp-prow-h-sub{font-size:14px;color:#7f877f;margin:0}
.hp-prow-head--c .hp-arrows{margin-top:14px}

/* H6 — Retailer logos auto-scroll (v2 docx p43: 不要灰色亮起来，要一开始就是彩色的) */
.lh-retailers{overflow:hidden;padding:8px 0}
.lh-retailers__track{display:flex;gap:72px;align-items:center;width:max-content;animation:lh-mq 42s linear infinite;will-change:transform}
.lh-retailers:hover .lh-retailers__track,
.lh-retailers:focus-within .lh-retailers__track{animation-play-state:paused}
.lh-retailers__i{flex:0 0 auto;height:64px;display:grid;place-items:center;padding:0 4px}
/* v2: 默认彩色 (filter:none, opacity:1)，hover 微缩放反馈 */
.lh-retailers__i img{max-height:42px;max-width:160px;width:auto;height:auto;object-fit:contain;filter:none;opacity:1;transition:transform .2s}
.lh-retailers__i:hover img,.lh-retailers__i:focus img{transform:scale(1.06)}
@media(max-width:720px){.lh-retailers__i{height:54px}.lh-retailers__i img{max-height:36px;max-width:130px}.lh-retailers__track{gap:48px}}

/* =================================================================
   v8 0527 docx #3 — 圆形分类: 一行 5 个, 箭头在两侧, 文字居中
   ================================================================= */
.lh-circats{padding:clamp(20px,3vw,30px) 0 clamp(8px,1.5vw,16px);background:#fff;border-bottom:0}
.lh-circats__wrap{max-width:1280px;margin:0 auto;padding:0 64px;position:relative}
.lh-circats__head{display:flex;align-items:center;justify-content:center;margin-bottom:18px}
.lh-circats__head h2{font-size:clamp(20px,2.4vw,26px);font-weight:800;margin:0;color:#1a1a1a;letter-spacing:-.01em;text-align:center}
.lh-circats__arrows{display:none}  /* 标题旁的箭头隐藏，改在 track 两侧 */
/* track: 一行 5 个等宽, 居中, 不溢出 */
.lh-circats__track{display:grid;grid-template-columns:repeat(5,1fr);gap:clamp(12px,1.8vw,24px);overflow:hidden;padding:6px 0 12px;scroll-snap-type:x mandatory;scroll-behavior:smooth}
.lh-circats__track::-webkit-scrollbar{display:none}
/* 第 6~10 个隐藏，避免半个 */
.lh-circats__i:nth-child(n+6){display:none}
.lh-circats__i{flex:0 0 auto;width:100%;text-align:center;text-decoration:none;color:#1a1a1a;scroll-snap-align:start}
.lh-circats__pic{aspect-ratio:1/1;border-radius:50%;overflow:hidden;background:#f3f5f3;border:1px solid #eef1ee;transition:transform .25s,box-shadow .25s,border-color .25s;max-width:140px;margin:0 auto}
.lh-circats__pic img{width:100%;height:100%;object-fit:cover;display:block}
.lh-circats__i:hover .lh-circats__pic{transform:translateY(-3px);box-shadow:0 8px 22px rgba(39,107,66,.18);border-color:#276B42}
.lh-circats__lbl{display:block;margin-top:10px;font-size:13.5px;font-weight:600;line-height:1.3;text-align:center}
/* 两侧箭头，在 wrap 内的左右居中浮于内容上方 */
.lh-circats__arrow{position:absolute;top:50%;transform:translateY(-30%);width:38px;height:38px;border:1px solid #e5e7eb;background:#fff;border-radius:50%;cursor:pointer;display:grid;place-items:center;color:#1a1a1a;transition:.15s;z-index:2;box-shadow:0 2px 8px rgba(0,0,0,.06)}
.lh-circats__arrow:hover{background:#276B42;color:#fff;border-color:#276B42}
.lh-circats__arrow svg{width:16px;height:16px}
.lh-circats__arrow--prev{left:8px}
.lh-circats__arrow--next{right:8px}
@media(max-width:760px){
  .lh-circats__wrap{padding:0 24px}
  .lh-circats__track{grid-template-columns:repeat(3,1fr)}
  .lh-circats__i:nth-child(n+4){display:none}
  .lh-circats__arrow{display:none}
}
@media(max-width:480px){.lh-circats__track{grid-template-columns:repeat(2,1fr)}.lh-circats__i:nth-child(n+3){display:none}}

/* =================================================================
   v3 docx H6 修正 — 保留 H2 + 副标题, "espace" 绿色斜体, 标签在图下方
   ================================================================= */
.hp-spaces--v2{margin-top:8px}
/* 标签从叠在图上 → 移到图片下方，文字深色 */
.hp-spaces--v2 .hp-space b{position:static;color:#1a1a1a;font-weight:500;font-size:14.5px;text-align:center;display:block;margin-top:12px;text-shadow:none;letter-spacing:.01em}
.hp-spaces--v2 .hp-space{overflow:visible;background:transparent;aspect-ratio:auto;text-decoration:none;display:flex;flex-direction:column}
.hp-spaces--v2 .hp-space img{aspect-ratio:1/1;border-radius:14px;overflow:hidden;width:100%;height:auto;object-fit:cover}
.hp-spaces--v2 .hp-space::after{display:none}

/* 0527 docx #5: par espace v8 — 5 visible, 左右箭头, 减小间隙, 细体字 */
.hp-spaces-wrap{position:relative;padding:0 56px}
.hp-spaces--v8{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
.hp-spaces--v8 .hp-space:nth-child(n+6){display:none}
.hp-spaces-arrow{position:absolute;top:36%;transform:translateY(-50%);width:38px;height:38px;border:1px solid #e5e7eb;background:#fff;border-radius:50%;cursor:pointer;display:grid;place-items:center;color:#1a1a1a;transition:.15s;z-index:2;box-shadow:0 2px 8px rgba(0,0,0,.06)}
.hp-spaces-arrow:hover{background:#276B42;color:#fff;border-color:#276B42}
.hp-spaces-arrow svg{width:16px;height:16px}
.hp-spaces-arrow--prev{left:8px}
.hp-spaces-arrow--next{right:8px}
@media(max-width:960px){.hp-spaces--v8{grid-template-columns:repeat(3,1fr)}.hp-spaces--v8 .hp-space:nth-child(n+4){display:none}}
@media(max-width:560px){.hp-spaces--v8{grid-template-columns:repeat(2,1fr)}.hp-spaces--v8 .hp-space:nth-child(n+3){display:none}.hp-spaces-wrap{padding:0 24px}.hp-spaces-arrow{display:none}}

/* =================================================================
   v2 docx H7 — Reviews: 3 cards left-aligned (was 4 centered)
   ================================================================= */
.hp-rev-top--l{flex-direction:column;align-items:flex-start;text-align:left;gap:6px;margin-bottom:24px}
.hp-rev-top--l .hp-rev-stars{font-size:18px}
.hp-rev-grid--3{grid-template-columns:repeat(3,1fr)}
@media(max-width:960px){.hp-rev-grid--3{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.hp-rev-grid--3{grid-template-columns:1fr}}

/* v4 docx #8/#9 — Solid full-width buttons for Énergie + Médias */
.hp-en-btn,.hp-md-btn{display:flex;align-items:center;justify-content:center;gap:8px;background:#276B42;color:#fff;text-decoration:none;padding:13px 18px;border-radius:8px;font-size:13px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;transition:background .15s,transform .15s;margin-top:auto}
.hp-en-btn:hover,.hp-md-btn:hover{background:#1d5232;transform:translateY(-1px)}
.hp-md-btn{padding:11px 16px}
.hp-md-btn svg{width:13px;height:13px}
/* Media badge color variants (CNEWS red, BFM dark, AMBASSADEUR green) */
.hp-md-tag--green{background:#276B42 !important;color:#fff}
.hp-md-tag--red{background:#c01230 !important;color:#fff}
.hp-md-tag--dark{background:#1a1a1a !important;color:#fff}

/* v4 docx #9 LOGO — grid tiles always colored (replaces marquee) */
.lh-retailers-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:0 auto;max-width:1100px}
.lh-rt-tile{background:#fff;border:1px solid #e7eae7;border-radius:14px;padding:22px 18px;display:grid;place-items:center;min-height:100px;transition:box-shadow .2s,transform .2s,border-color .2s}
.lh-rt-tile:hover{box-shadow:0 8px 22px rgba(20,40,28,.1);transform:translateY(-2px);border-color:rgba(39,107,66,.3)}
.lh-rt-tile img{max-height:42px;max-width:140px;width:auto;height:auto;object-fit:contain;filter:none;opacity:1}
@media(max-width:760px){.lh-retailers-grid{grid-template-columns:repeat(2,1fr)}}

/* v4 docx #7 — Reviews ref: inline rating, Judge.me logo, product chips */
.hp-rev-judgeme{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:#7f877f;margin-top:4px}
.hp-rev-judgeme b{color:#0f9d8a;font-weight:700;font-size:13px}
.hp-rev__head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;gap:8px}
.hp-rev__rate{display:inline-flex;align-items:center;gap:6px;font-size:12.5px}
.hp-rev__rate .hp-stars{font-size:13px}
.hp-rev__rate b{color:#1a1a1a;font-weight:700}
.hp-rev__who{font-size:11.5px;color:#888;white-space:nowrap}
.hp-rev__cta{display:inline-flex;align-items:center;gap:4px;color:#276B42;font-weight:700;font-size:13px;text-decoration:none;margin-top:12px}
.hp-rev__cta:hover{text-decoration:underline}
.hp-rev__prod{margin-top:14px;padding-top:12px;border-top:1px solid #eef1ee;display:flex;gap:10px;align-items:flex-start}
.hp-rev__prod img{width:42px;height:42px;border-radius:8px;object-fit:cover;flex:0 0 auto}
.hp-rev__prod b{display:block;font-size:12.5px;font-weight:700;line-height:1.3;margin:0 0 5px}
.hp-rev__chips{display:flex;flex-wrap:wrap;gap:4px}
.hp-rev__chip{display:inline-block;background:#f7f9f7;border:1px solid #e5e7eb;border-radius:999px;font-size:10.5px;font-weight:600;padding:3px 8px;color:#555;letter-spacing:.01em}

/* =================================================================
   0527 final pass — true 5-up carousels + tightened vertical rhythm
   ================================================================= */
.lh-circats{padding:clamp(14px,2vw,22px) 0 clamp(6px,1vw,10px)}
.lh-circats__head{margin-bottom:12px}
.lh-circats__wrap{padding:0 58px}
.lh-circats__track{
  --cc-gap:18px;
  display:flex !important;
  grid-template-columns:none !important;
  gap:var(--cc-gap);
  overflow-x:auto;
  overflow-y:hidden;
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  padding:4px 2px 10px;
}
.lh-circats__i,
.lh-circats__i:nth-child(n+6){
  display:block !important;
  flex:0 0 calc((100% - 72px) / 5);
  min-width:0;
}
.lh-circats__pic{max-width:118px}
.lh-circats__lbl{font-weight:500;font-size:13px}
.lh-circats__arrow{top:54%;transform:translateY(-50%)}

.hp-sec--best{padding-top:clamp(26px,3.4vw,44px)}
.hp-sec--best .hp-prow-head{margin-bottom:18px}
.hp-track{
  display:flex !important;
  grid-template-columns:none !important;
  gap:14px;
  overflow-x:auto;
  overflow-y:hidden;
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  padding:2px 48px 8px;
}
.hp-track > .hp-pcard,
.hp-track > .hp-pcard:nth-child(n+5){
  display:flex !important;
  flex:0 0 calc((100% - 56px) / 5);
  min-width:0;
}
.hp-arrow--side{top:40%}
.hp-bdg{font-size:10.5px;padding:6px 10px;max-width:calc(100% - 52px);white-space:normal;line-height:1.15}
.hp-bdgs{right:48px}
.hp-pc-fav{top:9px;right:9px}
.hp-pc-body{gap:6px}
.hp-pc-pvc{font-size:11.5px;padding:6px 11px;margin-bottom:2px}

.hp-sec--spaces{padding-top:clamp(26px,3.5vw,48px);padding-bottom:clamp(40px,5vw,64px)}
.hp-sec--spaces .hp-head{margin-bottom:22px !important}
.hp-spaces-wrap{padding:0 56px}
.hp-spaces--v8{
  display:flex !important;
  grid-template-columns:none !important;
  gap:14px;
  overflow-x:auto;
  overflow-y:hidden;
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  padding:2px 0 6px;
}
.hp-spaces--v8 .hp-space,
.hp-spaces--v8 .hp-space:nth-child(n+6){
  display:flex !important;
  flex:0 0 calc((100% - 56px) / 5);
  min-width:0;
  scroll-snap-align:start;
}
.hp-spaces--v8 .hp-space img{border-radius:8px}
.hp-spaces--v8 .hp-space b{font-size:13px;font-weight:400;margin-top:9px}
.hp-spaces-arrow{top:39%}

.hp-sec--reviews{padding-top:clamp(38px,5vw,58px);padding-bottom:clamp(42px,5vw,64px)}
.hp-sec--reviews .hp-rev-top--l{margin-bottom:6px}
.hp-sec--reviews h2{margin-top:0 !important}
.hp-sec--reviews .hp-rev-grid--3{margin-top:18px !important}

@media(max-width:1100px){
  .lh-circats__i,
  .lh-circats__i:nth-child(n+6){flex-basis:calc((100% - 54px) / 4)}
  .hp-track > .hp-pcard,
  .hp-track > .hp-pcard:nth-child(n+5),
  .hp-spaces--v8 .hp-space,
  .hp-spaces--v8 .hp-space:nth-child(n+6){flex-basis:calc((100% - 42px) / 4)}
}
@media(max-width:760px){
  .lh-circats__wrap,.hp-spaces-wrap{padding:0 24px}
  .lh-circats__i,
  .lh-circats__i:nth-child(n+6){flex-basis:calc((100% - 18px) / 2)}
  .hp-track > .hp-pcard,
  .hp-track > .hp-pcard:nth-child(n+5),
  .hp-spaces--v8 .hp-space,
  .hp-spaces--v8 .hp-space:nth-child(n+6){flex-basis:calc((100% - 14px) / 2)}
  .hp-track{padding-left:0;padding-right:0}
  .lh-circats__arrow,.hp-spaces-arrow,.hp-arrow--side{display:none}
}

.hp-hero{min-height:clamp(470px,58vh,610px)}
.hp-hero .hp-wrap{max-width:1280px}
.hp-hero-in{max-width:620px;margin-left:clamp(10px,4vw,72px)}
.hp-hero-rate{background:rgba(255,255,255,.95);color:#1a1a1a !important;padding:8px 16px;margin-bottom:20px}
.hp-hero-rate b{color:#1a1a1a}
.hp-hero-tags{display:grid;grid-template-columns:max-content max-content;gap:10px 12px;margin-bottom:26px}
.hp-hero-tags span{justify-content:flex-start}
.hp-hero-tags span:nth-child(3){grid-column:1 / -1;width:max-content}
.hp-hero-cta{gap:14px 18px}
.hp-hero-seen-v2{margin-left:0}
.hp-btn--light{min-width:190px;color:#276B42}

/* 0527 hero correction: match the compact client reference */
.hp-hero{min-height:clamp(420px,48vh,520px)}
.hp-hero-bg::after{background:linear-gradient(100deg,rgba(11,24,15,.52) 0%,rgba(15,48,16,.24) 50%,rgba(23,58,16,0) 100%)}
.hp-hero .hp-wrap{max-width:1180px;padding:0 clamp(30px,4.2vw,58px)}
.hp-hero-in{max-width:520px;margin-left:0}
.hp-hero-rate{
  gap:8px;
  padding:6px 12px;
  margin-bottom:18px;
  border-radius:999px;
  font-size:12px;
  line-height:1;
  border:0;
  box-shadow:none;
  backdrop-filter:none;
}
.hp-hero-rate b{font-size:12px;font-weight:800;color:#1a1a1a}
.hp-hero-rate > span:first-child{font-size:12px !important;letter-spacing:1px !important}
.hp-hero-cert{font-size:11px;font-weight:600;background:#dff6e9;color:#23a05b;padding:5px 10px;margin-left:2px}
.hp-hero h1{font-size:clamp(32px,3.9vw,42px);line-height:1.12;margin-bottom:18px;max-width:520px}
.hp-hero p{font-size:clamp(15px,1.45vw,18px);line-height:1.45;max-width:510px !important;margin-bottom:18px}
.hp-hero-tags{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  margin-bottom:28px;
}
.hp-hero-tags span,
.hp-hero-tags span:nth-child(3){
  width:auto;
  grid-column:auto;
  display:flex;
  align-items:center;
  gap:10px;
  padding:0;
  border:0 !important;
  background:transparent !important;
  backdrop-filter:none;
  font-size:15px;
  font-weight:700;
  color:#fff !important;
}
.hp-hero-tags svg{
  width:23px;
  height:23px;
  padding:5px;
  border-radius:50%;
  color:#35d16f !important;
  background:rgba(35,147,78,.45);
  flex:0 0 auto;
}
.hp-hero-cta{
  display:grid;
  grid-template-columns:minmax(190px,224px) auto;
  align-items:center;
  gap:18px;
}
.hp-hero-cta .hp-btn--primary{
  height:48px;
  padding:0 26px;
  border-radius:999px;
  font-size:14px;
  font-weight:800;
}
.hp-hero-seen-v2{
  margin-left:0;
  gap:8px;
  font-size:12px;
  color:#fff;
  white-space:nowrap;
}
.hp-hero-media{
  margin-left:0;
  border-radius:5px;
  font-size:11px;
  padding:5px 9px;
}
@media(max-width:760px){
  .hp-hero{min-height:520px}
  .hp-hero-in{max-width:100%}
  .hp-hero-cta{grid-template-columns:1fr;align-items:start}
  .hp-hero-seen-v2{flex-wrap:wrap}
}

/* 0527 hero spacing fix: title must stay on 2 lines, not 3 */
.hp-hero{min-height:clamp(420px,46vh,500px)}
.hp-hero .hp-wrap{padding-left:clamp(42px,6vw,86px)}
.hp-hero-in{max-width:680px}
.hp-hero-rate{margin-bottom:18px}
.hp-hero h1{
  max-width:680px;
  font-size:clamp(35px,4.15vw,50px);
  line-height:1.08;
  margin-bottom:18px;
}
.hp-hero p{
  max-width:660px !important;
  font-size:clamp(16px,1.55vw,20px);
  line-height:1.42;
  margin-bottom:18px;
}
.hp-hero-tags{gap:11px;margin-bottom:26px}
.hp-hero-tags span{font-size:16px}
.hp-hero-cta{grid-template-columns:260px auto;gap:28px}
.hp-hero-cta .hp-btn--primary{height:52px}
@media(max-width:900px){
  .hp-hero-in{max-width:600px}
  .hp-hero h1{max-width:600px;font-size:clamp(32px,5vw,44px)}
  .hp-hero p{max-width:560px !important}
}

.lh-circats{padding:clamp(18px,2.4vw,28px) 0 clamp(12px,1.5vw,18px)}
.lh-circats__wrap{max-width:980px;padding:0 58px}
.lh-circats__head{margin-bottom:16px;text-align:center}
.lh-circats__head h2{font-size:clamp(21px,2.4vw,28px)}
.lh-circats__head h2 em{color:#276B42;font-style:italic;font-weight:800}
.lh-circats__head p{margin:8px 0 0;font-size:12px;color:#7f877f}
.lh-circats__track{gap:24px;padding:2px 0 14px}
.lh-circats__i,.lh-circats__i:nth-child(n+6){flex-basis:calc((100% - 96px) / 5)}
.lh-circats__pic{max-width:124px}
.lh-circats__lbl{font-size:12.5px;font-weight:500}
.lh-circats__arrow{top:57%;box-shadow:none;border-color:#edf0ed}
.lh-circats__arrow--prev{left:0}
.lh-circats__arrow--next{right:0}

.hp-sec--best{padding-top:clamp(20px,2.6vw,34px);padding-bottom:clamp(32px,4vw,48px)}
.hp-sec--best .hp-wrap{max-width:1120px}
.hp-bv-wrap{padding:0 48px}
.hp-track{padding:0;gap:16px}
.hp-track > .hp-pcard,.hp-track > .hp-pcard:nth-child(n+5){flex-basis:calc((100% - 64px) / 5)}
.hp-arrow--side{top:43%;width:38px;height:38px;box-shadow:0 2px 8px rgba(0,0,0,.06)}
.hp-arrow--side.hp-arrow--prev{left:0}
.hp-arrow--side.hp-arrow--next{right:0}
.hp-bdg{font-size:10px;padding:5px 8px;max-width:calc(100% - 46px);line-height:1.1}
.hp-bdgs{top:8px;left:8px;right:42px}
.hp-bdg--solar{bottom:8px;left:8px;font-size:9px;padding:5px 8px}
.hp-pc-media{aspect-ratio:1/1.05}
.hp-pc-body{padding:12px 12px 14px}
.hp-pc-name{font-size:12.4px;min-height:35px}
.hp-pc-price b{font-size:17px}
.hp-pc-stock{font-size:11.5px}
.hp-pc-stock::before{content:"✓";width:16px;height:16px;display:inline-grid;place-items:center;border-radius:50%;background:#45ad57;color:#fff;font-size:11px;line-height:1}

.hp-sec--spaces{padding-top:clamp(28px,3.5vw,44px);padding-bottom:clamp(34px,4.6vw,56px)}
.hp-sec--spaces .hp-wrap{max-width:1120px}
.hp-dots{display:flex;justify-content:center;gap:10px;margin-bottom:18px}
.hp-dots span{width:7px;height:7px;border-radius:50%;background:#c8cdd0}
.hp-dots span:first-child{background:#1a1a1a}
.hp-sec--spaces .hp-head{margin-bottom:28px !important}
.hp-space-mosaic{display:grid;grid-template-columns:2fr 1fr 1fr;grid-auto-rows:190px;gap:14px;margin:0 auto 26px}
.hp-space-tile{display:flex;flex-direction:column;color:#18221b;text-decoration:none;min-width:0}
.hp-space-tile img{width:100%;height:100%;object-fit:cover;border-radius:8px;display:block}
.hp-space-tile b{font-size:13px;font-weight:600;text-align:center;margin-top:7px;line-height:1.2}
.hp-space-tile--large{grid-row:span 2}
.hp-space-tile--large img{height:calc(100% - 26px)}
.hp-room-title{text-align:center;font-size:clamp(24px,3vw,34px);font-weight:800;letter-spacing:-.01em;color:#172034;margin:18px 0 18px}
.hp-room-title em{color:#3a9d5f;font-style:normal}
.hp-rooms-wrap{position:relative;padding:0 44px}
.hp-room-track{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:0 0 8px;scrollbar-width:none}
.hp-room-track::-webkit-scrollbar{display:none}
.hp-room-card{flex:0 0 calc((100% - 56px) / 5);scroll-snap-align:start;color:#172034;text-decoration:none;min-width:0}
.hp-room-card img{width:100%;aspect-ratio:1.2/1;object-fit:cover;border-radius:8px}
.hp-room-card b{display:block;text-align:center;font-size:12.5px;font-weight:600;margin-top:8px;line-height:1.2}
.hp-rooms-wrap .hp-spaces-arrow{display:grid;top:43%}
.hp-rooms-wrap .hp-spaces-arrow--prev{left:0}
.hp-rooms-wrap .hp-spaces-arrow--next{right:0}

/* 0527 alignment fix: keep captions in their own rows */
.hp-sec--spaces{padding-top:clamp(32px,4vw,54px)}
.hp-sec--spaces .hp-wrap{max-width:1180px}
.hp-sec--spaces .hp-head{margin-bottom:34px !important}
.hp-space-mosaic{
  display:grid;
  grid-template-columns:minmax(0,1.18fr) minmax(0,.82fr) minmax(0,.82fr);
  grid-template-rows:220px 220px;
  gap:22px 26px;
  align-items:start;
  margin:0 auto 44px;
}
.hp-space-tile{
  display:grid;
  grid-template-rows:1fr 32px;
  gap:10px;
  min-width:0;
  min-height:0;
  color:#17201a;
  text-decoration:none;
}
.hp-space-tile img{
  width:100%;
  height:100%;
  min-height:0;
  object-fit:cover;
  border-radius:8px;
  display:block;
}
.hp-space-tile b{
  display:block;
  align-self:start;
  margin:0;
  font-size:15px;
  font-weight:700;
  line-height:1.2;
  text-align:center;
  color:#17201a;
}
.hp-space-tile--large{grid-row:1 / span 2}
.hp-space-tile--large img{height:100%}
.hp-room-title{margin:18px 0 28px;font-size:clamp(30px,3.8vw,46px);line-height:1.08}
.hp-rooms-wrap{padding:0 54px}
.hp-room-track{gap:18px}
.hp-room-card{flex-basis:calc((100% - 72px) / 5)}
.hp-room-card img{aspect-ratio:1.34/1;border-radius:8px}
.hp-room-card b{font-size:13px;font-weight:600}
.hp-rooms-wrap .hp-spaces-arrow{top:46%;width:42px;height:42px}
.hp-rooms-wrap .hp-spaces-arrow--prev{left:0}
.hp-rooms-wrap .hp-spaces-arrow--next{right:0}

/* 0527 mosaic hard fix: no row-span overflow, no title overlap */
.hp-space-mosaic{
  grid-template-columns:1.45fr 1fr 1fr;
  grid-template-rows:auto auto;
  gap:20px 24px;
  align-items:start;
  margin-bottom:54px;
}
.hp-space-tile{
  display:flex;
  flex-direction:column;
  gap:10px;
  height:auto;
  min-height:0;
}
.hp-space-tile img{
  flex:0 0 auto;
  height:210px;
  object-fit:cover;
  border-radius:8px;
}
.hp-space-tile b{
  flex:0 0 24px;
  margin:0;
  line-height:24px;
}
.hp-space-tile--large{
  grid-row:1 / span 2;
}
.hp-space-tile--large img{
  height:calc(420px + 20px + 24px);
}
.hp-room-title{
  clear:both;
  position:relative;
  z-index:1;
  margin-top:8px;
  margin-bottom:30px;
}

.hp-sec--reviews{padding-top:clamp(34px,4vw,52px)}
.hp-sec--reviews .hp-wrap{max-width:1120px}
.hp-sec--reviews .hp-rev-top--l{margin-bottom:8px}
.hp-sec--reviews .hp-rev-stars{font-size:20px !important}
.hp-sec--reviews .hp-rev-top--l + h2{font-size:clamp(34px,4vw,48px) !important;line-height:1.08;margin-bottom:14px !important}
.hp-sec--reviews .hp-rev-judgeme{font-size:16px;margin-bottom:18px}
.hp-sec--reviews .hp-rev-judgeme b{display:inline-flex;align-items:center;gap:7px;font-size:17px;color:#31a29b}
.hp-sec--reviews .hp-rev-judgeme b::before{content:"J";display:inline-grid;place-items:center;width:30px;height:30px;background:#31a29b;color:#fff;border-radius:2px;font-weight:800}

@media(max-width:900px){
  .hp-hero-tags{grid-template-columns:1fr}
  .hp-hero-tags span:nth-child(3){grid-column:auto;width:auto}
  .lh-circats__wrap,.hp-bv-wrap,.hp-rooms-wrap{padding-left:24px;padding-right:24px}
  .lh-circats__i,.lh-circats__i:nth-child(n+6),
  .hp-track > .hp-pcard,.hp-track > .hp-pcard:nth-child(n+5),
  .hp-room-card{flex-basis:calc((100% - 16px) / 2)}
  .hp-space-mosaic{grid-template-columns:1fr 1fr;grid-auto-rows:150px}
  .hp-space-tile--large{grid-column:1 / -1;grid-row:span 2}
}

@media(max-width:900px){
  .hp-space-mosaic{
    grid-template-columns:1fr 1fr;
    grid-template-rows:none;
    gap:18px;
  }
  .hp-space-tile img{height:170px}
  .hp-space-tile--large{grid-column:1 / -1;grid-row:auto}
  .hp-space-tile--large img{height:260px}
  .hp-room-card{flex-basis:calc((100% - 18px) / 2)}
}

/* ================================================================
   0527 final home rhythm: one width system + no overlap
   ================================================================ */
#main{--home-w:1080px}
#main .hp-wrap,
.lh-circats__wrap,
.hp-sec--best .hp-wrap,
.hp-sec--spaces .hp-wrap,
.hp-sec--reviews .hp-wrap{max-width:var(--home-w) !important}

.hp-hero{
  min-height:540px !important;
  display:flex;
  align-items:center;
}
.hp-hero .hp-wrap{
  max-width:var(--home-w) !important;
  padding:0 28px !important;
}
.hp-hero-in{
  width:min(560px,100%);
  max-width:560px !important;
  margin-left:0 !important;
}
.hp-hero-rate{
  margin-bottom:18px !important;
  padding:6px 13px !important;
}
.hp-hero h1{
  max-width:560px !important;
  font-size:42px !important;
  line-height:1.12 !important;
  margin-bottom:16px !important;
}
.hp-hero p{
  max-width:540px !important;
  font-size:17px !important;
  line-height:1.48 !important;
  margin-bottom:18px !important;
}
.hp-hero-tags{
  gap:10px !important;
  margin-bottom:24px !important;
}
.hp-hero-tags span{font-size:14px !important}
.hp-hero-tags svg{width:21px !important;height:21px !important}
.hp-hero-cta{
  grid-template-columns:220px auto !important;
  gap:22px !important;
}
.hp-hero-cta .hp-btn--primary{height:50px !important}

.lh-circats{padding-top:30px !important;padding-bottom:18px !important}
.hp-sec--best{padding-top:34px !important;padding-bottom:46px !important}
.hp-sec--spaces{padding-top:56px !important;padding-bottom:64px !important}
.hp-sec--spaces .hp-head{margin-bottom:30px !important}

.hp-space-mosaic{
  display:grid !important;
  grid-template-columns:1.35fr 1fr 1fr !important;
  grid-template-rows:230px 230px !important;
  gap:18px !important;
  margin:0 auto 42px !important;
}
.hp-space-tile{
  position:relative !important;
  display:block !important;
  height:100% !important;
  overflow:hidden !important;
  border-radius:8px !important;
  background:#f3f5f3 !important;
}
.hp-space-tile--large{
  grid-row:1 / span 2 !important;
}
.hp-space-tile img,
.hp-space-tile--large img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  border-radius:8px !important;
  display:block !important;
}
.hp-space-tile b{
  position:absolute !important;
  left:0 !important;
  right:0 !important;
  bottom:0 !important;
  height:auto !important;
  margin:0 !important;
  padding:9px 10px 10px !important;
  background:linear-gradient(180deg,rgba(255,255,255,0),rgba(255,255,255,.95) 38%,#fff 100%) !important;
  color:#17201a !important;
  font-size:13px !important;
  font-weight:700 !important;
  line-height:1.2 !important;
  text-align:center !important;
}
.hp-room-title{
  margin:0 0 28px !important;
  font-size:38px !important;
  line-height:1.12 !important;
}
.hp-rooms-wrap{padding:0 48px !important}
.hp-room-track{gap:16px !important}
.hp-room-card{flex-basis:calc((100% - 64px) / 5) !important}
.hp-room-card img{aspect-ratio:1.28 / 1 !important}
.hp-rooms-wrap .hp-spaces-arrow{
  top:42% !important;
  width:40px !important;
  height:40px !important;
}

@media(max-width:900px){
  .hp-hero{min-height:560px !important}
  .hp-hero h1{font-size:34px !important}
  .hp-hero-cta{grid-template-columns:1fr !important}
  .hp-space-mosaic{
    grid-template-columns:1fr 1fr !important;
    grid-template-rows:210px 210px 210px !important;
  }
  .hp-space-tile--large{grid-column:1 / -1 !important;grid-row:auto !important}
  .hp-room-card{flex-basis:calc((100% - 16px) / 2) !important}
}

/* ================================================================
   0527 clean reset: stable hero + unified middle grid
   ================================================================ */
#main{
  --home-w:1120px;
  --home-pad:28px;
}
#main .hp-wrap,
#main .lh-circats__wrap,
#main .hp-sec--best .hp-wrap,
#main .hp-sec--spaces .hp-wrap,
#main .hp-sec--reviews .hp-wrap{
  max-width:var(--home-w) !important;
  margin-left:auto !important;
  margin-right:auto !important;
  padding-left:var(--home-pad) !important;
  padding-right:var(--home-pad) !important;
}

.hp-hero{
  min-height:600px !important;
  height:auto !important;
  padding:0 !important;
  display:flex !important;
  align-items:center !important;
}
/* 0603 docx Léo "banner 看起来黑黑的" — 大幅降低遮罩，仅保留左侧轻微渐变以保证白字可读 */
.hp-hero-bg::after{
  background:linear-gradient(100deg,rgba(8,22,11,.52) 0%,rgba(14,40,16,.24) 52%,rgba(24,58,18,0) 100%) !important;
}
.hp-hero .hp-wrap{
  max-width:1120px !important;
  padding-left:44px !important;
  padding-right:44px !important;
}
.hp-hero-in{
  width:100% !important;
  max-width:690px !important;
  margin:0 !important;
}
.hp-hero-rate{
  margin:0 0 22px !important;
  padding:8px 15px !important;
  min-height:38px !important;
  background:#fff !important;
  color:#1a1a1a !important;
  border:0 !important;
  box-shadow:none !important;
}
.hp-hero-rate b{
  color:#1a1a1a !important;
  font-size:13px !important;
  line-height:1 !important;
}
.hp-hero-cert{
  background:#dcf6e8 !important;
  color:#1b9b57 !important;
  padding:6px 11px !important;
  font-size:12px !important;
}
.hp-hero h1{
  max-width:690px !important;
  font-size:48px !important;
  line-height:1.08 !important;
  letter-spacing:0 !important;
  margin:0 0 20px !important;
}
.hp-hero p{
  max-width:660px !important;
  font-size:18px !important;
  line-height:1.45 !important;
  margin:0 0 22px !important;
}
.hp-hero-tags{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:13px !important;
  margin:0 0 32px !important;
}
.hp-hero-tags span,
.hp-hero-tags span:nth-child(3){
  width:auto !important;
  grid-column:auto !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  color:#fff !important;
  font-size:16px !important;
  line-height:1.25 !important;
  font-weight:700 !important;
}
.hp-hero-tags svg{
  width:26px !important;
  height:26px !important;
  padding:6px !important;
  border-radius:50% !important;
  background:rgba(31,126,69,.75) !important;
  color:#5cff98 !important;
  flex:0 0 26px !important;
}
.hp-hero-cta{
  display:flex !important;
  align-items:center !important;
  gap:26px !important;
  flex-wrap:wrap !important;
}
.hp-hero-cta .hp-btn--primary{
  width:230px !important;
  height:54px !important;
  justify-content:center !important;
  padding:0 28px !important;
  font-size:15px !important;
}
.hp-hero-seen-v2{
  margin:0 !important;
  display:inline-flex !important;
  align-items:center !important;
  gap:10px !important;
  white-space:nowrap !important;
  font-size:13px !important;
}
.hp-hero-media{
  margin:0 !important;
  padding:7px 12px !important;
  border-radius:6px !important;
  font-size:12px !important;
}

.lh-circats{
  padding-top:32px !important;
  padding-bottom:22px !important;
}
.lh-circats__wrap{
  max-width:980px !important;
}
.hp-sec--best{
  padding-top:34px !important;
  padding-bottom:54px !important;
}
.hp-sec--best .hp-wrap{
  max-width:1120px !important;
}
.hp-bv-wrap{
  padding-left:48px !important;
  padding-right:48px !important;
}
.hp-track{
  gap:16px !important;
  padding:0 !important;
}
.hp-track > .hp-pcard,
.hp-track > .hp-pcard:nth-child(n+5){
  flex:0 0 calc((100% - 64px) / 5) !important;
}
.hp-pcard,
.hp-pcard a,
.hp-pc-media{
  overflow:visible !important;
}
.hp-pcard{
  isolation:isolate !important;
}
.hp-pc-media{
  border-radius:14px 14px 0 0 !important;
}
.hp-pc-media img{
  border-radius:14px 14px 0 0 !important;
}
.hp-bdgs{
  top:-9px !important;
  left:8px !important;
  right:auto !important;
  z-index:5 !important;
}
.hp-bdg{
  box-shadow:0 5px 12px rgba(228,50,43,.22) !important;
}
.hp-pc-fav{
  z-index:6 !important;
}

.hp-sec--spaces{
  padding-top:70px !important;
  padding-bottom:78px !important;
  overflow:visible !important;
}
.hp-sec--spaces .hp-wrap{
  max-width:1120px !important;
  overflow:visible !important;
}
.hp-sec--spaces .hp-head{
  margin-bottom:32px !important;
}
.hp-space-mosaic{
  display:grid !important;
  grid-template-columns:1.38fr 1fr 1fr !important;
  grid-template-rows:224px 224px !important;
  column-gap:22px !important;
  row-gap:22px !important;
  align-items:stretch !important;
  margin:0 0 64px !important;
  height:auto !important;
  overflow:visible !important;
}
.hp-space-tile,
.hp-space-tile--large{
  position:relative !important;
  display:grid !important;
  grid-template-rows:minmax(0,1fr) 26px !important;
  gap:10px !important;
  height:100% !important;
  min-height:0 !important;
  border-radius:8px !important;
  overflow:visible !important;
  background:transparent !important;
}
.hp-space-tile--large{
  grid-row:1 / span 2 !important;
}
.hp-space-tile img,
.hp-space-tile--large img{
  width:100% !important;
  height:100% !important;
  min-height:0 !important;
  object-fit:cover !important;
  display:block !important;
  border-radius:8px !important;
}
.hp-space-tile b{
  position:static !important;
  display:block !important;
  height:26px !important;
  margin:0 !important;
  padding:0 8px !important;
  background:transparent !important;
  color:#17201a !important;
  font-size:13.5px !important;
  font-weight:400 !important;
  line-height:26px !important;
  text-align:center !important;
}
.hp-room-title{
  position:relative !important;
  z-index:2 !important;
  clear:both !important;
  display:block !important;
  margin:0 0 30px !important;
  padding:0 !important;
  text-align:center !important;
  font-size:40px !important;
  line-height:1.12 !important;
}
.hp-rooms-wrap{
  position:relative !important;
  padding-left:50px !important;
  padding-right:50px !important;
}
.hp-room-track{
  gap:18px !important;
  padding:0 0 4px !important;
}
.hp-room-card{
  flex:0 0 calc((100% - 72px) / 5) !important;
}
.hp-room-card img{
  width:100% !important;
  aspect-ratio:1.28 / 1 !important;
  object-fit:cover !important;
  border-radius:8px !important;
}
.hp-room-card b{
  margin-top:9px !important;
  font-size:12.5px !important;
  line-height:1.2 !important;
  font-weight:400 !important;
  letter-spacing:0 !important;
}

@media(max-width:900px){
  #main{--home-pad:20px}
  .hp-hero{min-height:620px !important}
  .hp-hero .hp-wrap{padding-left:24px !important;padding-right:24px !important}
  .hp-hero h1{font-size:38px !important}
  .hp-hero p{font-size:16px !important}
  .hp-space-mosaic{
    grid-template-columns:1fr 1fr !important;
    grid-template-rows:210px 210px 210px !important;
    gap:16px !important;
  }
  .hp-space-tile--large{
    grid-column:1 / -1 !important;
    grid-row:auto !important;
  }
  .hp-room-title{font-size:32px !important}
  .hp-room-card{flex-basis:calc((100% - 18px) / 2) !important}
}

@media(max-width:760px){
  #main{
    overflow-x:hidden !important;
  }
  #main .hp-wrap,
  #main .lh-circats__wrap,
  #main .hp-sec--best .hp-wrap,
  #main .hp-sec--spaces .hp-wrap,
  #main .hp-sec--reviews .hp-wrap{
    max-width:100% !important;
    padding-left:18px !important;
    padding-right:18px !important;
  }
  .lh-circats__wrap{
    padding-left:44px !important;
    padding-right:44px !important;
  }
  .lh-circats__track{
    display:flex !important;
    gap:28px !important;
    overflow-x:auto !important;
    padding-bottom:18px !important;
  }
  .lh-circats__i,
  .lh-circats__i:nth-child(n+3),
  .lh-circats__i:nth-child(n+6){
    display:block !important;
    flex:0 0 calc((100% - 28px) / 2) !important;
  }
  .lh-circats__pic{
    max-width:118px !important;
  }
  .lh-circats__lbl{
    font-size:14px !important;
  }
  .hp-sec--best{
    padding-top:44px !important;
    padding-bottom:56px !important;
  }
  .hp-sec--best .hp-prow-head h2{
    font-size:34px !important;
    line-height:1.12 !important;
  }
  .hp-bv-wrap{
    padding-left:0 !important;
    padding-right:0 !important;
    overflow:visible !important;
  }
  .hp-track{
    display:flex !important;
    gap:16px !important;
    overflow-x:auto !important;
    overflow-y:visible !important;
    padding:12px 4px 8px !important;
    scroll-snap-type:x mandatory !important;
  }
  .hp-track > .hp-pcard,
  .hp-track > .hp-pcard:nth-child(n+5){
    display:flex !important;
    flex:0 0 min(76vw,290px) !important;
    max-width:min(76vw,290px) !important;
    scroll-snap-align:center !important;
  }
  .hp-pc-media{
    aspect-ratio:1 / .92 !important;
  }
  .hp-bdgs{
    top:-7px !important;
    left:10px !important;
    max-width:calc(100% - 58px) !important;
  }
  .hp-bdg{
    font-size:11px !important;
    line-height:1.15 !important;
    padding:6px 9px !important;
    white-space:normal !important;
  }
  .hp-bdg--solar{
    bottom:8px !important;
    left:10px !important;
    font-size:9.5px !important;
    padding:5px 9px !important;
  }
  .hp-pc-body{
    padding:14px 15px 16px !important;
  }
  .hp-pc-name{
    font-size:14px !important;
    min-height:40px !important;
  }
  .hp-pc-price b{
    font-size:20px !important;
  }
  .hp-arrow--side{
    display:flex !important;
    top:auto !important;
    bottom:-54px !important;
    width:38px !important;
    height:38px !important;
  }
  .hp-arrow--side.hp-arrow--prev{left:18px !important}
  .hp-arrow--side.hp-arrow--next{right:18px !important}
  .hp-sec--spaces{
    padding-top:58px !important;
  }
  .hp-space-mosaic{
    grid-template-columns:1fr !important;
    grid-template-rows:none !important;
    gap:18px !important;
  }
  .hp-space-tile,
  .hp-space-tile--large{
    grid-column:auto !important;
    grid-row:auto !important;
    height:230px !important;
  }
  .hp-room-card{
    flex-basis:min(72vw,260px) !important;
  }
}

@media(min-width:761px){
  .hp-sec--best .hp-wrap{
    max-width:1600px !important;
    padding-left:70px !important;
    padding-right:70px !important;
  }
  .hp-bv-wrap{
    padding-left:60px !important;
    padding-right:60px !important;
    overflow:visible !important;
  }
  .hp-track{
    display:flex !important;
    gap:36px !important;
    overflow-x:auto !important;
    padding:34px 2px 8px !important;
    scroll-snap-type:x mandatory !important;
  }
  .hp-track > .hp-pcard,
  .hp-track > .hp-pcard:nth-child(n+5){
    flex:0 0 calc((100% - 108px) / 4) !important;
    max-width:calc((100% - 108px) / 4) !important;
    scroll-snap-align:start !important;
  }
  .hp-pcard{
    overflow:visible !important;
  }
  .hp-pc-media{
    overflow:visible !important;
    isolation:isolate !important;
  }
  .hp-pc-media img{
    overflow:hidden !important;
  }
  .hp-bdgs{
    top:-24px !important;
    left:16px !important;
    right:auto !important;
    z-index:8 !important;
    max-width:none !important;
  }
  .hp-sec--best .hp-bdgs .hp-bdg,
  .hp-sec--best .hp-bdgs .hp-bdg.hp-bdg--remises{
    white-space:nowrap !important;
    max-width:none !important;
    min-width:0 !important;
    width:auto !important;
    height:42px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    font-size:18px !important;
    font-weight:800 !important;
    line-height:1 !important;
    padding:0 18px !important;
    border-radius:7px !important;
    box-shadow:none !important;
    letter-spacing:0 !important;
    text-transform:none !important;
  }
  .hp-sec--best .hp-bdgs .hp-bdg--remises{
    background:#e65a2e !important;
    color:#fff !important;
  }
  .hp-arrow--side.hp-arrow--prev{
    left:0 !important;
  }
  .hp-arrow--side.hp-arrow--next{
    right:0 !important;
  }
}

/* 0527 final: best sellers must show 4 cards with reference-like card width */
@media(min-width:761px){
  #main .hp-sec--best .hp-wrap{
    max-width:1500px !important;
    padding-left:64px !important;
    padding-right:64px !important;
  }
  #main .hp-sec--best .hp-bv-wrap{
    padding-left:72px !important;
    padding-right:72px !important;
    overflow:visible !important;
  }
  #main .hp-sec--best .hp-track{
    display:flex !important;
    gap:36px !important;
    justify-content:flex-start !important;
    overflow-x:auto !important;
    overflow-y:visible !important;
    padding:34px 0 10px !important;
    scroll-snap-type:x mandatory !important;
  }
  #main .hp-sec--best .hp-track > .hp-pcard,
  #main .hp-sec--best .hp-track > .hp-pcard:nth-child(n+5){
    display:flex !important;
    flex:0 0 292px !important;
    width:292px !important;
    max-width:292px !important;
    min-width:292px !important;
    scroll-snap-align:start !important;
  }
  #main .hp-sec--best .hp-pcard{
    overflow:visible !important;
    border-radius:14px !important;
  }
  #main .hp-sec--best .hp-pc-media{
    overflow:visible !important;
    border-radius:14px 14px 0 0 !important;
  }
  #main .hp-sec--best .hp-pc-media img{
    display:block !important;
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    border-radius:14px 14px 0 0 !important;
  }
  #main .hp-sec--best .hp-bdgs{
    top:-24px !important;
    left:16px !important;
    right:auto !important;
    z-index:20 !important;
    max-width:none !important;
    pointer-events:none !important;
  }
  #main .hp-sec--best .hp-bdgs .hp-bdg,
  #main .hp-sec--best .hp-bdgs .hp-bdg.hp-bdg--remises{
    height:42px !important;
    padding:0 18px !important;
    border-radius:7px !important;
    font-size:18px !important;
    line-height:1 !important;
    font-weight:800 !important;
    white-space:nowrap !important;
    box-shadow:none !important;
    background:#e15a34 !important;
    color:#fff !important;
  }
  #main .hp-sec--best .hp-arrow--side.hp-arrow--prev{
    left:18px !important;
  }
  #main .hp-sec--best .hp-arrow--side.hp-arrow--next{
    right:18px !important;
  }
}
@media(min-width:1500px){
  #main .hp-sec--best .hp-track{
    justify-content:center !important;
  }
}

/* 0527 final: mobile spaces mosaic must not overlap the next title */
@media(max-width:760px){
  #main .hp-sec--spaces{
    padding-top:44px !important;
    padding-bottom:58px !important;
    overflow:hidden !important;
  }
  #main .hp-sec--spaces .hp-wrap{
    max-width:100% !important;
    padding-left:28px !important;
    padding-right:28px !important;
    overflow:visible !important;
  }
  #main .hp-sec--spaces .hp-head{
    margin-bottom:24px !important;
  }
  #main .hp-sec--spaces .hp-head h2{
    font-size:30px !important;
    line-height:1.12 !important;
  }
  #main .hp-sec--spaces .hp-head p{
    font-size:14px !important;
    line-height:1.45 !important;
  }
  #main .hp-space-mosaic{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    grid-template-rows:none !important;
    gap:18px 14px !important;
    margin:0 0 38px !important;
    height:auto !important;
    overflow:visible !important;
    align-items:start !important;
  }
  #main .hp-space-tile,
  #main .hp-space-tile--large{
    display:grid !important;
    grid-template-rows:auto auto !important;
    grid-column:auto !important;
    grid-row:auto !important;
    gap:8px !important;
    height:auto !important;
    min-height:0 !important;
    overflow:visible !important;
  }
  #main .hp-space-tile--large{
    grid-column:1 / -1 !important;
  }
  #main .hp-space-tile img,
  #main .hp-space-tile--large img{
    width:100% !important;
    height:148px !important;
    aspect-ratio:auto !important;
    object-fit:cover !important;
    border-radius:8px !important;
  }
  #main .hp-space-tile--large img{
    height:230px !important;
  }
  #main .hp-space-tile b{
    position:static !important;
    display:block !important;
    height:auto !important;
    min-height:20px !important;
    margin:0 !important;
    padding:0 2px !important;
    color:#17201a !important;
    background:transparent !important;
    font-size:13px !important;
    font-weight:500 !important;
    line-height:1.25 !important;
    text-align:center !important;
  }
  #main .hp-room-title{
    clear:both !important;
    position:relative !important;
    z-index:1 !important;
    margin:18px 0 22px !important;
    padding:0 !important;
    font-size:34px !important;
    line-height:1.04 !important;
    text-align:center !important;
  }
  #main .hp-rooms-wrap{
    padding-left:42px !important;
    padding-right:42px !important;
  }
  #main .hp-room-track{
    gap:14px !important;
    padding-bottom:4px !important;
  }
  #main .hp-room-card{
    flex:0 0 min(70vw,230px) !important;
  }
  #main .hp-room-card img{
    aspect-ratio:1.22 / 1 !important;
    border-radius:8px !important;
  }
  #main .hp-room-card b{
    font-size:13px !important;
    font-weight:500 !important;
    line-height:1.2 !important;
  }
}
@media(max-width:430px){
  #main .hp-sec--spaces .hp-wrap{
    padding-left:22px !important;
    padding-right:22px !important;
  }
  #main .hp-space-tile img,
  #main .hp-space-tile--large img{
    height:136px !important;
  }
  #main .hp-space-tile--large img{
    height:210px !important;
  }
  #main .hp-room-title{
    font-size:31px !important;
  }
}

/* 0527 emergency cleanup: remove carousel/mosaic drift */
@media(min-width:761px){
  #main .hp-sec--best .hp-wrap{
    max-width:1500px !important;
    padding-left:48px !important;
    padding-right:48px !important;
  }
  #main .hp-sec--best .hp-bv-wrap{
    width:1372px !important;
    max-width:100% !important;
    margin-left:auto !important;
    margin-right:auto !important;
    padding-left:48px !important;
    padding-right:48px !important;
    overflow:hidden !important;
    box-sizing:border-box !important;
  }
  #main .hp-sec--best .hp-track{
    width:1276px !important;
    max-width:100% !important;
    margin:0 auto !important;
    gap:36px !important;
    padding:34px 0 10px !important;
    overflow-x:auto !important;
    overflow-y:visible !important;
    scroll-padding-left:0 !important;
    scroll-snap-type:x mandatory !important;
  }
  #main .hp-sec--best .hp-track > .hp-pcard,
  #main .hp-sec--best .hp-track > .hp-pcard:nth-child(n+5){
    flex:0 0 292px !important;
    width:292px !important;
    min-width:292px !important;
    max-width:292px !important;
  }
  #main .hp-sec--best .hp-arrow--side.hp-arrow--prev{
    left:0 !important;
  }
  #main .hp-sec--best .hp-arrow--side.hp-arrow--next{
    right:0 !important;
  }
}
@media(max-width:760px){
  #main .hp-sec--spaces .hp-wrap{
    padding-left:24px !important;
    padding-right:24px !important;
  }
  #main .hp-space-mosaic{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    grid-auto-rows:auto !important;
    grid-template-rows:auto !important;
    gap:18px 14px !important;
    margin:0 0 42px !important;
    overflow:visible !important;
  }
  #main .hp-space-mosaic .hp-space-tile,
  #main .hp-space-mosaic .hp-space-tile--large{
    grid-column:auto !important;
    grid-row:auto !important;
    display:block !important;
    height:auto !important;
    min-height:0 !important;
    margin:0 !important;
    overflow:visible !important;
  }
  #main .hp-space-mosaic .hp-space-tile--large{
    grid-column:1 / -1 !important;
  }
  #main .hp-space-mosaic .hp-space-tile img,
  #main .hp-space-mosaic .hp-space-tile--large img{
    display:block !important;
    width:100% !important;
    height:140px !important;
    min-height:0 !important;
    max-height:none !important;
    aspect-ratio:auto !important;
    object-fit:cover !important;
    border-radius:8px !important;
  }
  #main .hp-space-mosaic .hp-space-tile--large img{
    height:220px !important;
  }
  #main .hp-space-mosaic .hp-space-tile b{
    display:block !important;
    position:static !important;
    height:auto !important;
    margin:8px 0 0 !important;
    padding:0 !important;
    line-height:1.22 !important;
    font-size:14px !important;
    font-weight:600 !important;
    text-align:center !important;
    color:#17201a !important;
    background:transparent !important;
  }
  #main .hp-room-title{
    margin:28px 0 24px !important;
    font-size:32px !important;
    line-height:1.04 !important;
  }
}
@media(max-width:430px){
  #main .hp-space-mosaic .hp-space-tile img{
    height:132px !important;
  }
  #main .hp-space-mosaic .hp-space-tile--large img{
    height:206px !important;
  }
}

/* 0527 detail pass: product cards match the reference rhythm */
#main .hp-sec--best .hp-track{
  align-items:flex-start !important;
}
#main .hp-sec--best .hp-pcard,
#main .hp-sec--best .hp-pcard a{
  height:auto !important;
  min-height:0 !important;
}
#main .hp-sec--best .hp-pc-media{
  aspect-ratio:1.08 / 1 !important;
  height:auto !important;
}
#main .hp-sec--best .hp-pc-body{
  display:flex !important;
  flex-direction:column !important;
  gap:8px !important;
  flex:0 0 auto !important;
  padding:18px 18px 20px !important;
}
#main .hp-sec--best .hp-pc-pvc{
  order:1 !important;
  margin:0 0 4px !important;
  padding:8px 16px !important;
  font-size:15px !important;
  line-height:1 !important;
  background:#df5a34 !important;
}
#main .hp-sec--best .hp-pc-price{
  order:2 !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  gap:4px !important;
  margin:0 !important;
  padding:0 !important;
}
#main .hp-sec--best .hp-pc-price b{
  font-size:22px !important;
  line-height:1.08 !important;
  font-weight:800 !important;
}
#main .hp-sec--best .hp-pc-oldprice{
  font-size:16px !important;
  line-height:1.15 !important;
  color:#a9aca9 !important;
}
#main .hp-sec--best .hp-pc-name{
  order:3 !important;
  min-height:0 !important;
  margin:6px 0 0 !important;
  font-size:17px !important;
  line-height:1.35 !important;
  font-weight:500 !important;
  -webkit-line-clamp:2 !important;
}
#main .hp-sec--best .hp-pc-rate{
  order:4 !important;
  margin-top:4px !important;
  font-size:14px !important;
}
#main .hp-sec--best .hp-stars{
  font-size:15px !important;
}
#main .hp-sec--best .hp-pc-stock{
  order:5 !important;
  margin-top:20px !important;
  font-size:15px !important;
  font-weight:500 !important;
  color:#28312b !important;
}
#main .hp-sec--best .hp-pc-stock::before{
  width:18px !important;
  height:18px !important;
  background:#58ad55 !important;
  content:"✓" !important;
  display:inline-grid !important;
  place-items:center !important;
  color:#fff !important;
  font-size:13px !important;
  line-height:1 !important;
}
@media(min-width:761px){
  #main .hp-sec--best .hp-bv-wrap{
    width:1640px !important;
    padding-left:64px !important;
    padding-right:64px !important;
    overflow:visible !important;
  }
  #main .hp-sec--best .hp-track{
    width:1512px !important;
    gap:34px !important;
    overflow:hidden !important;
  }
  #main .hp-sec--best .hp-track > .hp-pcard,
  #main .hp-sec--best .hp-track > .hp-pcard:nth-child(n+5){
    flex-basis:275px !important;
    width:275px !important;
    min-width:275px !important;
    max-width:275px !important;
  }
  #main .hp-sec--best .hp-bdgs{
    top:-18px !important;
    left:0 !important;
  }
  #main .hp-sec--best .hp-bdgs .hp-bdg,
  #main .hp-sec--best .hp-bdgs .hp-bdg.hp-bdg--remises{
    height:38px !important;
    border-radius:4px !important;
    padding:0 14px !important;
    font-size:18px !important;
    background:#df5a34 !important;
  }
  #main .hp-sec--best .hp-pc-fav{
    top:auto !important;
    right:14px !important;
    bottom:14px !important;
    width:42px !important;
    height:42px !important;
    z-index:9 !important;
  }
  #main .hp-sec--best .hp-bdg--solar{
    bottom:14px !important;
    left:14px !important;
    padding:7px 12px !important;
    font-size:11px !important;
  }
}

/* 0527 precision pass: equal product card geometry */
@media(min-width:761px){
  #main .hp-sec--best .hp-track{
    align-items:stretch !important;
    padding-top:24px !important;
  }
  #main .hp-sec--best .hp-pcard,
  #main .hp-sec--best .hp-track > .hp-pcard,
  #main .hp-sec--best .hp-track > .hp-pcard:nth-child(n+5){
    height:540px !important;
    min-height:540px !important;
    max-height:540px !important;
    border-radius:12px !important;
    overflow:visible !important;
    background:#fff !important;
  }
  #main .hp-sec--best .hp-pcard a{
    display:grid !important;
    grid-template-rows:230px 310px !important;
    height:540px !important;
    min-height:540px !important;
    max-height:540px !important;
    overflow:hidden !important;
    border-radius:12px !important;
  }
  #main .hp-sec--best .hp-pc-media{
    height:230px !important;
    min-height:230px !important;
    max-height:230px !important;
    aspect-ratio:auto !important;
    overflow:hidden !important;
    border-radius:12px 12px 0 0 !important;
    background:#f4f5f4 !important;
  }
  #main .hp-sec--best .hp-pc-media img{
    height:230px !important;
    min-height:230px !important;
    max-height:230px !important;
    object-fit:cover !important;
    border-radius:12px 12px 0 0 !important;
  }
  #main .hp-sec--best .hp-pc-body{
    height:310px !important;
    min-height:310px !important;
    max-height:310px !important;
    padding:18px 18px 18px !important;
    display:grid !important;
    grid-template-rows:36px 52px 50px 28px 1fr 24px !important;
    gap:0 !important;
    overflow:hidden !important;
  }
  #main .hp-sec--best .hp-pc-pvc{
    align-self:start !important;
    justify-self:start !important;
    height:31px !important;
    margin:0 !important;
    padding:0 14px !important;
    border-radius:999px !important;
    font-size:13.5px !important;
    line-height:31px !important;
  }
  #main .hp-sec--best .hp-pc-price{
    align-self:start !important;
    justify-self:start !important;
    height:52px !important;
    min-height:52px !important;
    max-height:52px !important;
    overflow:hidden !important;
  }
  #main .hp-sec--best .hp-pc-price b{
    font-size:21px !important;
    line-height:1.05 !important;
  }
  #main .hp-sec--best .hp-pc-oldprice{
    font-size:14.5px !important;
    line-height:1.2 !important;
  }
  #main .hp-sec--best .hp-pc-name{
    height:46px !important;
    min-height:46px !important;
    max-height:46px !important;
    margin:0 !important;
    overflow:hidden !important;
    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;
    text-overflow:ellipsis !important;
    font-size:15.5px !important;
    line-height:1.45 !important;
    font-weight:600 !important;
  }
  #main .hp-sec--best .hp-pc-rate{
    height:24px !important;
    min-height:24px !important;
    max-height:24px !important;
    margin:0 !important;
    overflow:hidden !important;
    align-items:center !important;
    font-size:13px !important;
  }
  #main .hp-sec--best .hp-stars{
    font-size:13.5px !important;
    letter-spacing:1px !important;
    white-space:nowrap !important;
  }
  #main .hp-sec--best .hp-pc-stock{
    align-self:end !important;
    height:24px !important;
    margin:0 !important;
    font-size:13px !important;
    line-height:24px !important;
  }
  #main .hp-sec--best .hp-pc-stock::before{
    width:17px !important;
    height:17px !important;
    font-size:12px !important;
  }
  #main .hp-sec--best .hp-bdgs{
    top:-16px !important;
    left:12px !important;
  }
  #main .hp-sec--best .hp-bdgs .hp-bdg,
  #main .hp-sec--best .hp-bdgs .hp-bdg.hp-bdg--remises{
    height:30px !important;
    padding:0 11px !important;
    border-radius:4px !important;
    font-size:14px !important;
    line-height:30px !important;
    font-weight:800 !important;
  }
  #main .hp-sec--best .hp-pc-fav{
    width:34px !important;
    height:34px !important;
    right:12px !important;
    bottom:12px !important;
  }
  #main .hp-sec--best .hp-pc-fav svg{
    width:18px !important;
    height:18px !important;
  }
  #main .hp-sec--best .hp-bdg--solar{
    bottom:12px !important;
    left:12px !important;
    height:25px !important;
    padding:0 10px !important;
    font-size:10px !important;
    line-height:25px !important;
  }
}

/* 0527 final alignment: old-site middle width + exactly 4 best-seller cards */
@media(min-width:761px){
  #main{
    --home-w:1200px !important;
    --home-pad:28px !important;
  }
  #main .hp-wrap,
  #main .lh-circats__wrap,
  #main .hp-sec--spaces .hp-wrap,
  #main .hp-sec--reviews .hp-wrap{
    max-width:1200px !important;
    padding-left:28px !important;
    padding-right:28px !important;
  }
  #main .hp-sec--best{
    padding-top:48px !important;
    padding-bottom:54px !important;
  }
  #main .hp-sec--best .hp-wrap{
    max-width:1200px !important;
    padding-left:28px !important;
    padding-right:28px !important;
  }
  #main .hp-sec--best .hp-prow-head{
    margin-bottom:36px !important;
  }
  #main .hp-sec--best .hp-bv-wrap{
    width:100% !important;
    max-width:1144px !important;
    margin:0 auto !important;
    padding:0 !important;
    overflow:visible !important;
  }
  #main .hp-sec--best .hp-track{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:26px !important;
    width:100% !important;
    max-width:1144px !important;
    margin:0 auto !important;
    padding:18px 0 0 !important;
    overflow:visible !important;
    scroll-snap-type:none !important;
  }
  #main .hp-sec--best .hp-track > .hp-pcard{
    display:flex !important;
    width:auto !important;
    min-width:0 !important;
    max-width:none !important;
    flex:none !important;
    height:520px !important;
    min-height:520px !important;
    max-height:520px !important;
  }
  #main .hp-sec--best .hp-track > .hp-pcard:nth-child(n+5){
    display:none !important;
  }
  #main .hp-sec--best .hp-pcard a{
    grid-template-rows:214px 306px !important;
    height:520px !important;
    min-height:520px !important;
    max-height:520px !important;
  }
  #main .hp-sec--best .hp-pc-media,
  #main .hp-sec--best .hp-pc-media img{
    height:214px !important;
    min-height:214px !important;
    max-height:214px !important;
    border-radius:10px 10px 0 0 !important;
  }
  #main .hp-sec--best .hp-pc-body{
    height:306px !important;
    min-height:306px !important;
    max-height:306px !important;
    grid-template-rows:34px 50px 46px 26px 1fr 22px !important;
    padding:16px 16px 17px !important;
  }
  #main .hp-sec--best .hp-pc-name{
    height:44px !important;
    min-height:44px !important;
    max-height:44px !important;
    font-size:15px !important;
    line-height:1.45 !important;
  }
  #main .hp-sec--best .hp-bdgs{
    top:-14px !important;
    left:10px !important;
  }
  #main .hp-sec--best .hp-bdgs .hp-bdg,
  #main .hp-sec--best .hp-bdgs .hp-bdg.hp-bdg--remises{
    height:28px !important;
    padding:0 10px !important;
    border-radius:4px !important;
    font-size:13px !important;
    line-height:28px !important;
  }
  #main .hp-sec--best .hp-pc-pvc{
    height:30px !important;
    line-height:30px !important;
    font-size:13px !important;
    padding:0 13px !important;
  }
  #main .hp-sec--best .hp-pc-price b{
    font-size:20px !important;
  }
  #main .hp-sec--best .hp-pc-oldprice{
    font-size:13.5px !important;
  }
  #main .hp-sec--best .hp-pc-rate,
  #main .hp-sec--best .hp-pc-stock{
    font-size:12.5px !important;
  }
  #main .hp-sec--best .hp-stars{
    font-size:12.5px !important;
  }
  #main .hp-sec--best .hp-pc-fav{
    width:32px !important;
    height:32px !important;
    right:11px !important;
    bottom:11px !important;
  }
  #main .hp-sec--best .hp-bdg--solar{
    height:23px !important;
    line-height:23px !important;
    bottom:11px !important;
    left:11px !important;
    padding:0 9px !important;
    font-size:9.5px !important;
  }
  #main .hp-sec--best .hp-arrow--side{
    display:none !important;
  }
}

/* 0527 strict final: wide middle, compact four-card best-seller block */
@media(min-width:761px){
  #main{
    --home-w:1280px !important;
    --home-pad:32px !important;
  }
  #main .hp-wrap,
  #main .lh-circats__wrap,
  #main .hp-sec--spaces .hp-wrap,
  #main .hp-sec--reviews .hp-wrap{
    max-width:1280px !important;
    padding-left:32px !important;
    padding-right:32px !important;
  }
  #main .hp-sec--best{
    padding-top:44px !important;
    padding-bottom:52px !important;
  }
  #main .hp-sec--best .hp-wrap{
    max-width:1280px !important;
    padding-left:32px !important;
    padding-right:32px !important;
  }
  #main .hp-sec--best .hp-prow-head{
    margin-bottom:28px !important;
  }
  #main .hp-sec--best .hp-prow-head h2{
    font-size:34px !important;
    line-height:1.1 !important;
  }
  #main .hp-sec--best .hp-prow-h-sub{
    font-size:14px !important;
    margin-top:8px !important;
  }
  #main .hp-sec--best .hp-bv-wrap{
    width:100% !important;
    max-width:1120px !important;
    margin:0 auto !important;
    padding:0 !important;
    overflow:visible !important;
  }
  #main .hp-sec--best .hp-track{
    display:grid !important;
    grid-template-columns:repeat(4, 1fr) !important;
    gap:24px !important;
    width:100% !important;
    max-width:1120px !important;
    margin:0 auto !important;
    padding:16px 0 0 !important;
    overflow:visible !important;
  }
  #main .hp-sec--best .hp-track > .hp-pcard{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    height:404px !important;
    min-height:404px !important;
    max-height:404px !important;
    border:1px solid #e8ebe8 !important;
    border-radius:8px !important;
    overflow:visible !important;
    box-shadow:0 8px 22px rgba(20,40,28,.04) !important;
  }
  #main .hp-sec--best .hp-track > .hp-pcard:nth-child(n+5){
    display:none !important;
  }
  #main .hp-sec--best .hp-pcard a{
    display:grid !important;
    grid-template-rows:180px 224px !important;
    height:404px !important;
    min-height:404px !important;
    max-height:404px !important;
    overflow:hidden !important;
    border-radius:8px !important;
  }
  #main .hp-sec--best .hp-pc-media,
  #main .hp-sec--best .hp-pc-media img{
    height:180px !important;
    min-height:180px !important;
    max-height:180px !important;
    border-radius:8px 8px 0 0 !important;
    object-fit:cover !important;
  }
  #main .hp-sec--best .hp-pc-body{
    height:224px !important;
    min-height:224px !important;
    max-height:224px !important;
    display:grid !important;
    grid-template-rows:30px 46px 40px 22px 1fr 20px !important;
    padding:14px 14px 14px !important;
    overflow:hidden !important;
    gap:0 !important;
  }
  #main .hp-sec--best .hp-pc-pvc{
    height:26px !important;
    line-height:26px !important;
    padding:0 11px !important;
    border-radius:999px !important;
    font-size:12px !important;
    font-weight:800 !important;
    margin:0 !important;
  }
  #main .hp-sec--best .hp-pc-price{
    height:46px !important;
    min-height:46px !important;
    max-height:46px !important;
    margin:0 !important;
    padding:0 !important;
    gap:2px !important;
    overflow:hidden !important;
  }
  #main .hp-sec--best .hp-pc-price b{
    font-size:19px !important;
    line-height:1.05 !important;
  }
  #main .hp-sec--best .hp-pc-oldprice{
    font-size:12.5px !important;
    line-height:1.2 !important;
  }
  #main .hp-sec--best .hp-pc-name{
    height:38px !important;
    min-height:38px !important;
    max-height:38px !important;
    margin:0 !important;
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    font-size:13px !important;
    line-height:1.42 !important;
    font-weight:600 !important;
  }
  #main .hp-sec--best .hp-pc-rate{
    height:20px !important;
    min-height:20px !important;
    max-height:20px !important;
    margin:0 !important;
    gap:5px !important;
    align-items:center !important;
    overflow:hidden !important;
    font-size:11.5px !important;
    color:#8b928b !important;
  }
  #main .hp-sec--best .hp-stars{
    font-size:11.5px !important;
    letter-spacing:.8px !important;
  }
  #main .hp-sec--best .hp-pc-stock{
    height:20px !important;
    margin:0 !important;
    align-self:end !important;
    line-height:20px !important;
    font-size:11.5px !important;
    color:#276B42 !important;
    font-weight:600 !important;
  }
  #main .hp-sec--best .hp-pc-stock::before{
    width:14px !important;
    height:14px !important;
    font-size:9px !important;
  }
  #main .hp-sec--best .hp-bdgs{
    top:-11px !important;
    left:8px !important;
    z-index:12 !important;
  }
  #main .hp-sec--best .hp-bdgs .hp-bdg,
  #main .hp-sec--best .hp-bdgs .hp-bdg.hp-bdg--remises{
    height:24px !important;
    line-height:24px !important;
    padding:0 9px !important;
    border-radius:3px !important;
    font-size:11.5px !important;
    font-weight:800 !important;
    background:#df5a34 !important;
  }
  #main .hp-sec--best .hp-bdg--solar{
    height:20px !important;
    line-height:20px !important;
    bottom:8px !important;
    left:8px !important;
    padding:0 8px !important;
    font-size:8.5px !important;
  }
  #main .hp-sec--best .hp-bdg--solar::before{
    width:7px !important;
    height:7px !important;
  }
  #main .hp-sec--best .hp-pc-fav{
    width:30px !important;
    height:30px !important;
    right:8px !important;
    bottom:8px !important;
    box-shadow:0 2px 7px rgba(0,0,0,.12) !important;
  }
  #main .hp-sec--best .hp-pc-fav svg{
    width:15px !important;
    height:15px !important;
  }
}


/* ---- 03.009 页面内联样式块
   来源：index.html:9055
   说明：由页面 <style> 抽离，保持原有选择器和声明不变。
   ---- */
/* v5 docx: 上面 trust strip 与下面 footer 合并 — 整片绿色, 白色文字, 白底瓦片 logo */
/* v7 fix: 用 Shopify .container 同样的 padding 计算方式，保证左右边缘完全对齐 footer */
.v15-trust-strip{background:#276B42;padding-top:44px;padding-bottom:36px;padding-left:var(--container-outer-width,24px);padding-right:var(--container-outer-width,24px);border-top:0;border-bottom:1px solid rgba(255,255,255,.12);position:relative;margin:0;box-sizing:border-box}
.v15-trust-inner{max-width:none;margin:0;display:grid;grid-template-columns:1.1fr 1.1fr 1fr;gap:48px;align-items:start;padding:0}
@media(max-width:900px){.v15-trust-inner{grid-template-columns:1fr;gap:32px}}
.v15-trust-col h3{margin:0 0 16px;font-size:13px;font-weight:800;color:rgba(255,255,255,.95);letter-spacing:.08em;text-transform:uppercase}
.v15-trust-logos{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.v15-trust-logos img{height:32px;width:auto;object-fit:contain;background:#fff;border:0;border-radius:6px;padding:6px 10px;transition:transform .15s,box-shadow .15s}
.v15-trust-logos img:hover{transform:translateY(-2px);box-shadow:0 4px 14px rgba(0,0,0,.18)}
.v15-trust-col--shipping img{height:36px}
.v15-trust-col span{color:rgba(255,255,255,.78) !important}
.v15-trust-col a{color:#fff !important}
.v15-trust-eco{display:inline-flex;align-items:center;gap:8px;margin-top:12px;padding:6px 12px;background:#e8f5e9;border-radius:6px;font-size:12.5px;color:#1b5e20;font-weight:600}
.v15-trust-eco img{height:24px;border:0;padding:0;background:none}
.v15-trust-rating{display:flex;align-items:center;gap:14px}
.v15-trust-rating-stars{display:flex;gap:3px}
/* v5: trust strip on green — stars now use TrustPilot-style white-on-green-bg blocks */
.v15-trust-rating-stars svg{width:22px;height:22px;background:#00b67a;padding:3px;color:#fff;fill:#fff;border-radius:3px}
.v15-trust-rating-score{font-size:14px;color:rgba(255,255,255,.85)}
.v15-trust-rating-score strong{color:#fff;font-weight:800;font-size:16px}
.v15-trust-rating-score a{color:#fff;text-decoration:underline;text-decoration-color:rgba(255,255,255,.4)}
.v15-trust-rating-logo{margin-top:10px;display:inline-flex;align-items:center;gap:6px;font-size:13px;color:rgba(255,255,255,.85);font-weight:600}
.v15-trust-rating-logo svg{width:18px;height:18px;color:#00ff95;fill:#00ff95}

/* v5: 清理后的 footer 底部条 — 不重复支付图标，仅版权 + cookies + 国家选择 */
.lh-foot-copy{color:rgba(255,255,255,.78);font-size:12.5px;font-weight:500;letter-spacing:.01em}
.lh-foot-cookies{color:rgba(255,255,255,.78);font-size:12.5px}
.lh-foot-cookies a{color:#fff;text-decoration:underline;text-decoration-color:rgba(255,255,255,.4);font-weight:600}
.lh-foot-cookies a:hover{text-decoration-color:#fff}

/* =============================================================
   v5 docx — Footer polish: 干掉丑陋的方框 social, 统一字号, hover
   ============================================================= */
/* 列标题统一更紧凑 */
.footer .footer__item-title,
.footer .footer__heading{
  font-size:11.5px !important;
  font-weight:800 !important;
  letter-spacing:.14em !important;
  text-transform:uppercase !important;
  color:rgba(255,255,255,.95) !important;
  margin-bottom:18px !important;
  position:relative;
  padding-bottom:10px;
}
.footer .footer__item-title::after,
.footer .footer__heading::after{
  content:"";position:absolute;left:0;bottom:0;width:24px;height:2px;background:rgba(255,255,255,.4);border-radius:2px
}
/* 链接 hover 加下划线 */
.footer a{transition:color .15s,opacity .15s}
.footer .footer__menu a,
.footer .footer__menu-list a,
.footer .footer__link{
  color:rgba(255,255,255,.85) !important;
  text-decoration:none !important;
  font-size:13.5px !important;
  font-weight:500 !important;
  line-height:1.7 !important;
}
.footer .footer__menu a:hover,
.footer .footer__menu-list a:hover,
.footer .footer__link:hover{
  color:#fff !important;
  text-decoration:underline !important;
  text-decoration-color:rgba(255,255,255,.5) !important;
  text-underline-offset:3px;
}
/* INFORMATIONS 段落字号统一 + 强调 */
.footer .footer__item p,
.footer .footer__item div{
  font-size:13.5px;
  line-height:1.7;
  color:rgba(255,255,255,.85)
}
.footer .footer__item p strong,
.footer .footer__item div strong{color:#fff;font-weight:700}

/* 社交图标 — 干掉方框, 改成圆形 ghost 风格 */
.footer .social-media,
.footer .footer__social-media,
.footer .social-media__list{
  display:flex !important;flex-wrap:wrap !important;gap:10px !important;padding:0 !important;margin:0 !important;list-style:none !important
}
.footer .social-media__item,
.footer .footer__social-media-item{padding:0 !important;margin:0 !important;border:0 !important;background:0 !important;list-style:none !important;outline:0 !important;box-shadow:none !important}
.footer .social-media__item::before,
.footer .social-media__item::after{display:none !important;content:none !important}
.footer .social-media__link,
.footer .footer__social-media-link{
  display:inline-grid !important;place-items:center !important;
  width:36px !important;height:36px !important;min-width:36px !important;min-height:36px !important;
  background:rgba(255,255,255,.14) !important;
  border:0 !important;outline:0 !important;box-shadow:none !important;
  border-radius:50% !important;
  color:#fff !important;
  transition:background .18s,transform .18s !important;
  padding:0 !important;text-decoration:none !important;
  box-sizing:border-box !important
}
.footer .social-media__link:hover,
.footer .footer__social-media-link:hover,
.footer .social-media__link:focus-visible,
.footer .footer__social-media-link:focus-visible{
  background:#fff !important;
  color:#276B42 !important;
  transform:translateY(-2px) !important;
  outline:0 !important
}
.footer .social-media__link svg,
.footer .footer__social-media-link svg{
  width:15px !important;height:15px !important;
  fill:currentColor !important;color:currentColor !important
}

/* 4列footer 间距 + 顶部留白调整 */
.footer .footer__inner{padding-top:8px;padding-bottom:24px;gap:48px}
.footer .footer__item-list{gap:clamp(24px,3vw,48px)}
@media(min-width:900px){.footer .footer__item-list{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr}}

/* 国家选择器 button — chip 样式 */
.footer .select--small{
  background:rgba(255,255,255,.08) !important;
  border:1px solid rgba(255,255,255,.18) !important;
  color:#fff !important;
  border-radius:999px !important;
  padding:8px 16px !important;
  font-size:13px !important;font-weight:600 !important;
  transition:background .15s,border-color .15s
}
.footer .select--small:hover{background:rgba(255,255,255,.16) !important;border-color:rgba(255,255,255,.32) !important}

@media(max-width:760px){
  body{
    overflow-x:hidden !important;
  }
  .v15-trust-strip{
    padding:30px 18px 28px !important;
    overflow:hidden !important;
  }
  .v15-trust-inner{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:30px !important;
    width:100% !important;
  }
  .v15-trust-col{
    min-width:0 !important;
  }
  .v15-trust-col h3{
    font-size:13px !important;
    letter-spacing:.08em !important;
    margin-bottom:14px !important;
  }
  .v15-trust-logos{
    display:flex !important;
    flex-wrap:wrap !important;
    gap:8px !important;
    max-width:100% !important;
  }
  .v15-trust-logos img{
    height:30px !important;
    max-width:86px !important;
    padding:6px 8px !important;
    border-radius:6px !important;
  }
  .v15-trust-logos img[alt="PayPal"]{
    max-width:96px !important;
  }
  .v15-trust-col > span{
    display:block !important;
    max-width:100% !important;
    font-size:13px !important;
    line-height:1.55 !important;
    overflow-wrap:anywhere !important;
  }
  .v15-trust-rating{
    align-items:flex-start !important;
    gap:12px !important;
    flex-wrap:wrap !important;
  }
  .v15-trust-rating-stars svg{
    width:20px !important;
    height:20px !important;
  }
  .v15-trust-rating-score strong{
    font-size:15px !important;
  }
  .v15-trust-rating-score{
    font-size:13px !important;
  }
  .v15-trust-rating-logo{
    font-size:13px !important;
    line-height:1.4 !important;
  }
  #shopify-section-sections--25458834145659__footer .footer,
  .footer{
    overflow:hidden !important;
  }
  .footer .container{
    padding-left:18px !important;
    padding-right:18px !important;
  }
  .footer .footer__inner{
    padding-top:28px !important;
    padding-bottom:28px !important;
    gap:24px !important;
  }
  .footer .footer__item-list{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:26px !important;
  }
  .footer .footer__item,
  .footer .footer__item-content{
    min-width:0 !important;
    max-width:100% !important;
  }
  .footer .footer__item p,
  .footer .footer__item div,
  .footer .footer__item a{
    max-width:100% !important;
    overflow-wrap:anywhere !important;
    word-break:normal !important;
  }
  .footer .footer__aside{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:14px !important;
    align-items:start !important;
  }
}

/* 0527 footer width reset: trust strip and footer share one centered rhythm */
.v15-trust-strip,
#shopify-section-sections--25458834145659__footer .footer{
  width:100% !important;
  max-width:100% !important;
  box-sizing:border-box !important;
  overflow:hidden !important;
}
.v15-trust-strip{
  padding-left:0 !important;
  padding-right:0 !important;
}
.v15-trust-inner,
#shopify-section-sections--25458834145659__footer .footer .container{
  width:min(100%,1180px) !important;
  max-width:1180px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  padding-left:28px !important;
  padding-right:28px !important;
  box-sizing:border-box !important;
}
.v15-trust-inner{
  grid-template-columns:1fr 1fr 1fr !important;
  gap:44px !important;
}
#shopify-section-sections--25458834145659__footer .footer .footer__inner{
  padding-left:0 !important;
  padding-right:0 !important;
}
@media(max-width:900px){
  .v15-trust-inner{
    grid-template-columns:1fr !important;
    gap:34px !important;
  }
}
@media(max-width:760px){
  html,
  body{
    max-width:100% !important;
    overflow-x:hidden !important;
  }
  .v15-trust-strip{
    padding:34px 0 34px !important;
  }
  .v15-trust-inner,
  #shopify-section-sections--25458834145659__footer .footer .container{
    width:100% !important;
    max-width:100% !important;
    padding-left:34px !important;
    padding-right:34px !important;
  }
  .v15-trust-col{
    min-width:0 !important;
  }
  .v15-trust-logos{
    gap:8px !important;
    max-width:100% !important;
  }
  .v15-trust-logos img{
    flex:0 0 auto !important;
    max-width:88px !important;
    height:31px !important;
    padding:6px 8px !important;
  }
  .v15-trust-logos img[alt="PayPal"]{
    max-width:110px !important;
  }
  .v15-trust-col > span{
    max-width:100% !important;
    overflow-wrap:break-word !important;
    line-height:1.55 !important;
  }
  .v15-trust-rating{
    display:grid !important;
    grid-template-columns:auto 1fr !important;
    column-gap:12px !important;
    row-gap:12px !important;
    align-items:center !important;
  }
  .v15-trust-rating-logo{
    max-width:100% !important;
    line-height:1.45 !important;
    overflow-wrap:break-word !important;
  }
  #shopify-section-sections--25458834145659__footer .footer .footer__inner{
    padding-top:42px !important;
    padding-bottom:34px !important;
  }
  #shopify-section-sections--25458834145659__footer .footer .footer__item-list{
    grid-template-columns:1fr !important;
    gap:30px !important;
  }
  #shopify-section-sections--25458834145659__footer .footer .footer__item,
  #shopify-section-sections--25458834145659__footer .footer .footer__item-content{
    min-width:0 !important;
    max-width:100% !important;
  }
  #shopify-section-sections--25458834145659__footer .footer .footer__item p,
  #shopify-section-sections--25458834145659__footer .footer .footer__item div,
  #shopify-section-sections--25458834145659__footer .footer .footer__item a{
    max-width:100% !important;
    overflow-wrap:break-word !important;
    word-break:normal !important;
  }
}
@media(max-width:430px){
  .v15-trust-inner,
  #shopify-section-sections--25458834145659__footer .footer .container{
    padding-left:28px !important;
    padding-right:28px !important;
  }
}

/* 0527 final: footer/trust spacing normalized */
.v15-trust-strip{
  background:#276B42 !important;
  padding-top:46px !important;
  padding-bottom:42px !important;
}
.v15-trust-inner,
#shopify-section-sections--25458834145659__footer .footer .container{
  max-width:1180px !important;
}
#shopify-section-sections--25458834145659__footer .footer{
  background:#276B42 !important;
}
#shopify-section-sections--25458834145659__footer .footer .footer__inner{
  border-top:1px solid rgba(255,255,255,.18) !important;
  padding-top:54px !important;
}
@media(max-width:760px){
  .v15-trust-strip{
    padding:36px 0 38px !important;
  }
  .v15-trust-inner,
  #shopify-section-sections--25458834145659__footer .footer .container{
    padding-left:34px !important;
    padding-right:34px !important;
  }
  .v15-trust-inner{
    gap:36px !important;
  }
  .v15-trust-col h3,
  #shopify-section-sections--25458834145659__footer .footer .footer__item-title,
  #shopify-section-sections--25458834145659__footer .footer .footer__heading{
    margin-bottom:18px !important;
  }
  .v15-trust-logos{
    row-gap:10px !important;
    column-gap:10px !important;
  }
  .v15-trust-logos img{
    height:34px !important;
    max-width:92px !important;
    padding:7px 10px !important;
  }
  .v15-trust-logos img[alt="PayPal"]{
    max-width:118px !important;
  }
  .v15-trust-col > span{
    margin-top:16px !important;
    font-size:15px !important;
    line-height:1.55 !important;
  }
  #shopify-section-sections--25458834145659__footer .footer .footer__inner{
    padding-top:54px !important;
    padding-bottom:36px !important;
  }
  #shopify-section-sections--25458834145659__footer .footer .footer__item-list{
    gap:36px !important;
  }
}
@media(max-width:430px){
  .v15-trust-inner,
  #shopify-section-sections--25458834145659__footer .footer .container{
    padding-left:28px !important;
    padding-right:28px !important;
  }
  .v15-trust-logos img{
    height:32px !important;
    max-width:86px !important;
    padding-left:8px !important;
    padding-right:8px !important;
  }
  .v15-trust-logos img[alt="PayPal"]{
    max-width:108px !important;
  }
}

/* 0527 site-wide width final: match legacy Shopify container */
:root{
  --lh-legacy-container: min(calc(100vw - 80px), 1520px);
}
@media(min-width:761px){
  #main .hp-wrap,
  #main .lh-circats__wrap,
  #main .hp-sec--best .hp-wrap,
  #main .hp-sec--spaces .hp-wrap,
  #main .hp-sec--reviews .hp-wrap,
  #main .hp-sec--soft .hp-wrap,
  #main .hp-sec--tint .hp-wrap,
  #main .hp-sec > .hp-wrap,
  .v15-trust-inner,
  #shopify-section-sections--25458834145659__footer .footer .container{
    width:var(--lh-legacy-container) !important;
    max-width:var(--lh-legacy-container) !important;
    margin-left:auto !important;
    margin-right:auto !important;
    padding-left:0 !important;
    padding-right:0 !important;
    box-sizing:border-box !important;
  }
  #main .hp-sec--best .hp-bv-wrap,
  #main .hp-sec--best .hp-track{
    width:var(--lh-legacy-container) !important;
    max-width:var(--lh-legacy-container) !important;
    margin-left:auto !important;
    margin-right:auto !important;
    padding-left:0 !important;
    padding-right:0 !important;
  }
  #main .hp-sec--best .hp-track{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:24px !important;
    overflow:visible !important;
  }
  #main .hp-sec--best .hp-track > .hp-pcard{
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    height:474px !important;
    min-height:474px !important;
    max-height:474px !important;
  }
  #main .hp-sec--best .hp-track > .hp-pcard:nth-child(n+5){
    display:none !important;
  }
  #main .hp-sec--best .hp-pcard,
  #main .hp-sec--best .hp-pc-media{
    overflow:visible !important;
  }
  #main .hp-sec--best .hp-pcard a{
    display:grid !important;
    grid-template-rows:250px 224px !important;
    height:474px !important;
    min-height:474px !important;
    max-height:474px !important;
    overflow:visible !important;
  }
  #main .hp-sec--best .hp-pc-media{
    height:250px !important;
    min-height:250px !important;
    max-height:250px !important;
    border-radius:8px 8px 0 0 !important;
    overflow:visible !important;
  }
  #main .hp-sec--best .hp-pc-media img{
    height:250px !important;
    min-height:250px !important;
    max-height:250px !important;
    border-radius:8px 8px 0 0 !important;
    object-fit:cover !important;
    object-position:center center !important;
    transform:none !important;
    filter:none !important;
    transition:opacity .22s ease !important;
  }
  #main .hp-sec--best .hp-pcard:hover,
  #main .hp-sec--best .hp-pcard:hover .day,
  #main .hp-sec--best .hp-pcard:hover .night,
  #main .hp-sec--best .hp-pc-media:hover img{
    transform:none !important;
    filter:none !important;
  }
  #main .hp-sec--best .hp-pc-body{
    height:224px !important;
    min-height:224px !important;
    max-height:224px !important;
  }
  #main .hp-sec--best .hp-bdgs{
    top:-12px !important;
    left:0 !important;
    z-index:30 !important;
    pointer-events:none !important;
  }
  #main .hp-sec--best .hp-bdgs .hp-bdg,
  #main .hp-sec--best .hp-bdgs .hp-bdg.hp-bdg--remises{
    height:24px !important;
    line-height:24px !important;
    padding:0 10px !important;
    border-radius:4px 4px 4px 0 !important;
    font-size:11.5px !important;
    font-weight:800 !important;
    background:#df5a34 !important;
    color:#fff !important;
    box-shadow:none !important;
  }
  #shopify-section-sections--25458834145659__footer .footer .footer__inner{
    border-top:0 !important;
  }
  .v15-trust-strip{
    border-bottom:0 !important;
  }
  #shopify-section-sections--25458834145659__footer .footer{
    border-top:0 !important;
  }
  #shopify-section-sections--25458834145659__footer .footer .footer__inner::before{
    content:none !important;
    display:none !important;
  }
}
@media(max-width:760px){
  #main .hp-wrap,
  #main .lh-circats__wrap,
  #main .hp-sec--best .hp-wrap,
  #main .hp-sec--spaces .hp-wrap,
  #main .hp-sec--reviews .hp-wrap,
  #main .hp-sec > .hp-wrap,
  .v15-trust-inner,
  #shopify-section-sections--25458834145659__footer .footer .container{
    width:100% !important;
    max-width:100% !important;
    padding-left:24px !important;
    padding-right:24px !important;
    box-sizing:border-box !important;
  }
  #main .hp-sec--best .hp-bdgs{
    top:-10px !important;
    left:8px !important;
  }
  #main .hp-sec--best .hp-bdgs .hp-bdg,
  #main .hp-sec--best .hp-bdgs .hp-bdg.hp-bdg--remises{
    border-radius:4px 4px 4px 0 !important;
  }
  .v15-trust-strip{
    border-bottom:0 !important;
  }
  #shopify-section-sections--25458834145659__footer .footer{
    border-top:0 !important;
  }
  #shopify-section-sections--25458834145659__footer .footer .footer__inner{
    border-top:0 !important;
  }
}

/* 0528 final — large-screen container, title rhythm, product/scene proportions */
:root{
  --lh-legacy-container: min(calc(100vw - 80px), 1520px) !important;
  --lh-green-0528:#3a9d5f;
}
#main{
  --g:#3a9d5f !important;
  --gd:#2f8450 !important;
  --gl:#3a9d5f !important;
}
#main .hp-btn--primary,
#main .hp-md-tag{
  background:#3a9d5f !important;
}
#main .hp-head h2 em,
#main .lh-circats__head h2 em,
#main .hp-prow-head h2 em,
#main .hp-room-title em,
#main .hp-en-link,
#main .hp-md-link,
#main .hp-post-tag,
#main .hp-post-more{
  color:#3a9d5f !important;
}
#main .hp-head,
#main .lh-circats__head,
#main .hp-prow-head{
  margin-bottom:18px !important;
}
#main .hp-head h2,
#main .lh-circats__head h2,
#main .hp-prow-head h2{
  font-size:28px !important;
  line-height:1.18 !important;
  letter-spacing:-.01em !important;
  margin:0 0 8px !important;
}
#main .hp-head p,
#main .lh-circats__head p,
#main .hp-prow-h-sub{
  font-size:13px !important;
  line-height:1.45 !important;
  color:#7f877f !important;
  margin:0 !important;
}
.lh-marquee{
  padding:12px 0 !important;
}
.lh-marquee__track{
  width:var(--lh-legacy-container) !important;
  max-width:var(--lh-legacy-container) !important;
  margin:0 auto !important;
  display:flex !important;
  justify-content:space-between !important;
  gap:22px !important;
  animation:none !important;
  transform:none !important;
}
.lh-marquee__track .lh-marquee__i[aria-hidden="true"]{
  display:none !important;
}
.lh-marquee__i{
  font-size:12px !important;
  gap:8px !important;
}
.lh-marquee__i svg{
  width:16px !important;
  height:16px !important;
  color:#3a9d5f !important;
}
#main .lh-circats{
  padding:28px 0 22px !important;
}
#main .lh-circats__wrap{
  width:var(--lh-legacy-container) !important;
  max-width:var(--lh-legacy-container) !important;
  padding-left:56px !important;
  padding-right:56px !important;
}
#main .lh-circats__track{
  grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  gap:18px !important;
  padding-top:4px !important;
}
#main .lh-circats__pic{
  max-width:132px !important;
}
#main .lh-circats__lbl{
  margin-top:9px !important;
  font-size:12.5px !important;
  font-weight:500 !important;
}
@media(min-width:761px){
  #main .hp-wrap,
  #main .hp-sec--best .hp-wrap,
  #main .hp-sec--best .hp-bv-wrap,
  #main .hp-sec--best .hp-track,
  #main .hp-sec--spaces .hp-wrap,
  #main .hp-sec--reviews .hp-wrap,
  #main .hp-sec > .hp-wrap,
  .v15-trust-inner,
  #shopify-section-sections--25458834145659__footer .footer .container{
    width:var(--lh-legacy-container) !important;
    max-width:var(--lh-legacy-container) !important;
    padding-left:0 !important;
    padding-right:0 !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
  #main .hp-sec--best{
    padding-top:34px !important;
    padding-bottom:52px !important;
  }
  #main .hp-sec--best .hp-track{
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:26px !important;
    overflow:visible !important;
  }
  #main .hp-sec--best .hp-track > .hp-pcard{
    height:516px !important;
    min-height:516px !important;
    max-height:516px !important;
    border-radius:8px !important;
  }
  #main .hp-sec--best .hp-pcard a{
    display:grid !important;
    grid-template-rows:auto 206px !important;
    height:516px !important;
    min-height:516px !important;
    max-height:516px !important;
    overflow:visible !important;
  }
  #main .hp-sec--best .hp-pc-media{
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    aspect-ratio:9/10 !important;
    border-radius:8px 8px 0 0 !important;
    overflow:visible !important;
  }
  #main .hp-sec--best .hp-pc-media img{
    height:100% !important;
    min-height:0 !important;
    max-height:none !important;
    object-fit:cover !important;
    object-position:center center !important;
    border-radius:8px 8px 0 0 !important;
    transform:none !important;
    filter:none !important;
    transition:opacity .22s ease !important;
  }
  #main .hp-sec--best .hp-pcard:hover,
  #main .hp-sec--best .hp-pcard:hover .day,
  #main .hp-sec--best .hp-pcard:hover .night,
  #main .hp-sec--best .hp-pc-media:hover img{
    transform:none !important;
    filter:none !important;
  }
  #main .hp-sec--best .hp-pc-body{
    height:206px !important;
    min-height:206px !important;
    max-height:206px !important;
    display:grid !important;
    grid-template-rows:30px 42px 38px 23px 1fr 20px !important;
    padding:12px 14px 14px !important;
    gap:0 !important;
    overflow:hidden !important;
  }
  #main .hp-sec--best .hp-pc-name{
    height:36px !important;
    min-height:36px !important;
    max-height:36px !important;
    -webkit-line-clamp:2 !important;
    font-size:13px !important;
    line-height:1.38 !important;
    margin:0 !important;
  }
  #main .hp-sec--best .hp-pc-rate{
    height:20px !important;
    margin:0 !important;
  }
  #main .hp-sec--best .hp-pc-stock{
    align-self:end !important;
  }
  #main .hp-sec--best .hp-bdgs{
    top:-12px !important;
    left:0 !important;
  }
  #main .hp-sec--best .hp-bdgs .hp-bdg,
  #main .hp-sec--best .hp-bdgs .hp-bdg.hp-bdg--remises{
    height:24px !important;
    line-height:24px !important;
    padding:0 10px !important;
    border-radius:4px 4px 4px 0 !important;
    font-size:11px !important;
    background:#df5a34 !important;
  }
  #main .hp-sec--spaces{
    padding-top:48px !important;
    padding-bottom:58px !important;
  }
  #main .hp-space-mosaic{
    width:100% !important;
    display:grid !important;
    grid-template-columns:2fr 1fr 1fr !important;
    grid-auto-rows:auto !important;
    gap:16px !important;
    margin-bottom:34px !important;
  }
  #main .hp-space-mosaic .hp-space-tile{
    min-height:0 !important;
  }
  #main .hp-space-mosaic .hp-space-tile img{
    width:100% !important;
    height:auto !important;
    aspect-ratio:1/1 !important;
    object-fit:cover !important;
    border-radius:8px !important;
  }
  #main .hp-space-mosaic .hp-space-tile--large{
    grid-row:span 2 !important;
  }
  #main .hp-space-mosaic .hp-space-tile--large img{
    height:auto !important;
    aspect-ratio:1/1 !important;
  }
  #main .hp-space-mosaic .hp-space-tile b{
    margin-top:8px !important;
    font-size:12.5px !important;
    font-weight:500 !important;
    line-height:1.2 !important;
  }
  #mini-cart::before{
    left:calc(var(--mini-cart-arrow-x, 280px) - 9px) !important;
    right:auto !important;
  }
}
@media(max-width:760px){
  .lh-marquee__track{
    width:100% !important;
    padding:0 18px !important;
    overflow-x:auto !important;
    justify-content:flex-start !important;
  }
  .lh-marquee__track .lh-marquee__i[aria-hidden="true"]{
    display:none !important;
  }
  #main .hp-head h2,
  #main .lh-circats__head h2,
  #main .hp-prow-head h2,
  #main .hp-room-title{
    font-size:28px !important;
  }
  #main .hp-space-mosaic{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:16px !important;
  }
  #main .hp-space-mosaic .hp-space-tile--large{
    grid-column:1 / -1 !important;
    grid-row:auto !important;
  }
  #main .hp-space-mosaic .hp-space-tile img,
  #main .hp-space-mosaic .hp-space-tile--large img{
    height:auto !important;
    aspect-ratio:1/1 !important;
    object-fit:cover !important;
    border-radius:8px !important;
  }
  #main .hp-sec--best .hp-pc-media{
    aspect-ratio:9/10 !important;
    height:auto !important;
  }
  #main .hp-sec--best .hp-pc-media img{
    height:100% !important;
    transform:none !important;
    filter:none !important;
  }
}

/* 0528 restore — footer keeps original width rhythm */
@media(min-width:761px){
  .v15-trust-inner,
  #shopify-section-sections--25458834145659__footer .footer .container{
    width:min(calc(100vw - 80px),1520px) !important;
    max-width:min(calc(100vw - 80px),1520px) !important;
    margin-left:auto !important;
    margin-right:auto !important;
    padding-left:0 !important;
    padding-right:0 !important;
    box-sizing:border-box !important;
  }
}

/* 0528 restore — par espace must reserve its own height, no overlap with rooms */
@media(min-width:761px){
  #main .hp-sec--spaces{
    overflow:visible !important;
  }
  #main .hp-sec--spaces .hp-wrap{
    overflow:visible !important;
  }
  #main .hp-space-mosaic{
    display:grid !important;
    grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr) !important;
    grid-template-rows:auto auto !important;
    grid-auto-rows:auto !important;
    column-gap:16px !important;
    row-gap:18px !important;
    align-items:start !important;
    margin:0 0 64px !important;
    height:auto !important;
    min-height:0 !important;
    overflow:visible !important;
  }
  #main .hp-space-mosaic .hp-space-tile,
  #main .hp-space-mosaic .hp-space-tile--large{
    position:relative !important;
    display:block !important;
    align-self:start !important;
    height:auto !important;
    min-height:0 !important;
    overflow:visible !important;
    background:transparent !important;
  }
  #main .hp-space-mosaic .hp-space-tile--large{
    grid-row:1 / span 2 !important;
  }
  #main .hp-space-mosaic .hp-space-tile img,
  #main .hp-space-mosaic .hp-space-tile--large img{
    position:static !important;
    display:block !important;
    width:100% !important;
    height:auto !important;
    aspect-ratio:1/1 !important;
    object-fit:cover !important;
    border-radius:8px !important;
  }
  #main .hp-space-mosaic .hp-space-tile b{
    position:static !important;
    display:block !important;
    height:24px !important;
    margin:8px 0 0 !important;
    padding:0 !important;
    color:#17201a !important;
    background:transparent !important;
    font-size:12.5px !important;
    font-weight:500 !important;
    line-height:24px !important;
    text-align:center !important;
  }
  #main .hp-room-title{
    position:relative !important;
    z-index:1 !important;
    clear:both !important;
    margin:0 0 26px !important;
    padding-top:0 !important;
  }
  #main .hp-rooms-wrap{
    position:relative !important;
    z-index:1 !important;
    clear:both !important;
  }
}

/* 0528 refine — tighter category circles and aligned space mosaic */
@media(min-width:761px){
  #main .lh-circats__wrap{
    width:var(--lh-legacy-container) !important;
    max-width:var(--lh-legacy-container) !important;
    padding-left:56px !important;
    padding-right:56px !important;
  }
  #main .lh-circats__track{
    width:min(100%,980px) !important;
    max-width:980px !important;
    margin-left:auto !important;
    margin-right:auto !important;
    grid-template-columns:repeat(5,150px) !important;
    justify-content:space-between !important;
    gap:22px !important;
  }
  #main .lh-circats__pic{
    width:144px !important;
    max-width:144px !important;
  }
  #main .lh-circats__arrow--prev{
    left:calc(50% - 560px) !important;
  }
  #main .lh-circats__arrow--next{
    right:calc(50% - 560px) !important;
  }

  #main .hp-space-mosaic{
    --space-gap:16px;
    display:grid !important;
    grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr) !important;
    grid-template-rows:repeat(2,minmax(0,1fr)) !important;
    gap:var(--space-gap) !important;
    align-items:stretch !important;
    margin:0 0 86px !important;
    aspect-ratio:2 / 1 !important;
    height:auto !important;
    min-height:0 !important;
    overflow:visible !important;
  }
  #main .hp-space-mosaic .hp-space-tile,
  #main .hp-space-mosaic .hp-space-tile--large{
    display:block !important;
    position:relative !important;
    height:100% !important;
    min-height:0 !important;
    overflow:visible !important;
  }
  #main .hp-space-mosaic .hp-space-tile--large{
    grid-row:1 / span 2 !important;
  }
  #main .hp-space-mosaic .hp-space-tile img,
  #main .hp-space-mosaic .hp-space-tile--large img{
    display:block !important;
    width:100% !important;
    height:100% !important;
    min-height:0 !important;
    aspect-ratio:auto !important;
    object-fit:cover !important;
    border-radius:8px !important;
  }
  #main .hp-space-mosaic .hp-space-tile b{
    position:absolute !important;
    left:0 !important;
    right:0 !important;
    bottom:-25px !important;
    height:18px !important;
    margin:0 !important;
    padding:0 !important;
    color:#17201a !important;
    background:transparent !important;
    font-size:12.5px !important;
    font-weight:500 !important;
    line-height:18px !important;
    text-align:center !important;
  }
  #main .hp-room-title{
    margin-top:0 !important;
    margin-bottom:28px !important;
  }
  #main .hp-rooms-wrap{
    margin-top:0 !important;
  }
}
@media(min-width:761px) and (max-width:1180px){
  #main .lh-circats__track{
    width:min(100%,860px) !important;
    grid-template-columns:repeat(5,132px) !important;
    gap:16px !important;
  }
  #main .lh-circats__pic{
    width:128px !important;
    max-width:128px !important;
  }
  #main .lh-circats__arrow--prev{left:10px !important;}
  #main .lh-circats__arrow--next{right:10px !important;}
}

/* ============================================================
   08. 真正最终层

   说明：
   1. 本区块必须保持在 lumihome-unified.css 文件最后。
   2. 作用是压住前面从旧 theme.css、页面内联样式、final-fixes.css 合并进来的重复规则。
   3. 当前重点锁定：顶部公告栏、导航下拉、Promos 百分号、首页热卖卡片、footer 字色。
   ============================================================ */

/* 顶部公告栏最终锁定：单行、居中、超出省略，不允许换行。 */
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
  display:grid !important;
  grid-template-columns:44px minmax(0,1fr) 44px !important;
  align-items:center !important;
  min-height:34px !important;
}
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__list{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  min-width:0 !important;
  overflow:hidden !important;
}
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message,
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message p,
.announcement-bar__message,
.announcement-bar__message p{
  display:block !important;
  max-width:100% !important;
  margin:0 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  line-height:1.2 !important;
}

/* Promos 百分号最终锁定：红底白字，固定圆形。 */
.header__inline-navigation .header__linklist-link .promos-pct-dot,
.header__linklist-link .promos-pct-dot,
.promos-pct-dot{
  display:inline-grid !important;
  place-items:center !important;
  flex:0 0 22px !important;
  width:22px !important;
  height:22px !important;
  min-width:22px !important;
  min-height:22px !important;
  border:0 !important;
  border-radius:50% !important;
  background:#e00023 !important;
  color:#fff !important;
  font-size:12px !important;
  font-weight:800 !important;
  line-height:1 !important;
  text-align:center !important;
}

/* 一级导航最终锁定：鼠标经过一级菜单时显示二级菜单。 */
.header__linklist-item.has-dropdown > .mega-menu[hidden]{
  display:block !important;
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
  transform:translateY(8px) !important;
}
.header__linklist-item.has-dropdown:hover > .mega-menu[hidden],
.header__linklist-item.has-dropdown:focus-within > .mega-menu[hidden],
.header__linklist-item.has-dropdown:hover > .mega-menu,
.header__linklist-item.has-dropdown:focus-within > .mega-menu{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:auto !important;
  transform:translateY(0) !important;
}

/* 首页热卖真实 DOM 最终锁定：4 个卡片等宽等高，图片和内容区域统一。 */
@media (min-width:761px){
  #main .hp-sec--best .hp-track{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    column-gap:34px !important;
    row-gap:0 !important;
    align-items:stretch !important;
    overflow:visible !important;
  }
  #main .hp-sec--best .hp-track > article.hp-pcard{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    height:510px !important;
    min-height:510px !important;
    max-height:510px !important;
    overflow:visible !important;
    border-radius:8px !important;
  }
  #main .hp-sec--best .hp-track > article.hp-pcard:nth-child(n+5){
    display:none !important;
  }
  #main .hp-sec--best .hp-track > article.hp-pcard > a{
    display:grid !important;
    grid-template-rows:288px 220px !important;
    height:100% !important;
    min-height:100% !important;
    max-height:100% !important;
    overflow:visible !important;
  }
  #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media{
    position:relative !important;
    height:288px !important;
    min-height:288px !important;
    max-height:288px !important;
    aspect-ratio:auto !important;
    overflow:visible !important;
    border-radius:8px 8px 0 0 !important;
    background:#f4f5f4 !important;
  }
  #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media img,
  #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media .day,
  #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media .night{
    position:absolute !important;
    inset:0 !important;
    width:100% !important;
    height:100% !important;
    min-height:100% !important;
    max-height:100% !important;
    object-fit:cover !important;
    border-radius:8px 8px 0 0 !important;
    transform:none !important;
  }
  #main .hp-sec--best .hp-track > article.hp-pcard:hover,
  #main .hp-sec--best .hp-track > article.hp-pcard:hover img,
  #main .hp-sec--best .hp-track > article.hp-pcard:hover .day,
  #main .hp-sec--best .hp-track > article.hp-pcard:hover .night{
    transform:none !important;
  }
  #main .hp-sec--best .hp-track > article.hp-pcard:hover img,
  #main .hp-sec--best .hp-track > article.hp-pcard:hover .day,
  #main .hp-sec--best .hp-track > article.hp-pcard:hover .night{
    filter:brightness(.72) !important;
  }
  #main .hp-sec--best .hp-track > article.hp-pcard .hp-bdgs{
    position:absolute !important;
    left:0 !important;
    top:-16px !important;
    z-index:5 !important;
  }
  #main .hp-sec--best .hp-track > article.hp-pcard .hp-bdgs .hp-bdg,
  #main .hp-sec--best .hp-track > article.hp-pcard .hp-bdgs .hp-bdg.hp-bdg--remises{
    height:32px !important;
    padding:0 14px !important;
    border-radius:6px 6px 6px 0 !important;
    font-size:13px !important;
    font-weight:800 !important;
    line-height:32px !important;
    white-space:nowrap !important;
  }
  #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-body{
    display:flex !important;
    flex-direction:column !important;
    height:220px !important;
    min-height:220px !important;
    max-height:220px !important;
    padding:18px 18px 16px !important;
    gap:7px !important;
    overflow:hidden !important;
  }
  #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-name{
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    min-height:36px !important;
    max-height:36px !important;
    overflow:hidden !important;
    font-size:14px !important;
    line-height:18px !important;
  }
  #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-rate{
    min-height:18px !important;
    max-height:18px !important;
    line-height:18px !important;
  }
  #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-price{
    min-height:39px !important;
    max-height:39px !important;
    margin:0 !important;
    padding:0 !important;
  }
  #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-stock{
    min-height:20px !important;
    max-height:20px !important;
    margin-top:auto !important;
    line-height:20px !important;
  }
}

/* Footer 最终锁定：绿底区域全部白字，避免旧主题黑字回流。 */
.site-footer,
.footer,
.lh-footer,
.footer-trust,
.footer__wrapper{
  background:#276b42 !important;
}
.site-footer *,
.footer *,
.lh-footer *,
.footer-trust *,
.footer__wrapper *{
  color:rgba(255,255,255,.82) !important;
}
.site-footer h1,
.site-footer h2,
.site-footer h3,
.site-footer h4,
.site-footer strong,
.site-footer b,
.footer h1,
.footer h2,
.footer h3,
.footer h4,
.footer strong,
.footer b,
.lh-footer h1,
.lh-footer h2,
.lh-footer h3,
.lh-footer h4,
.lh-footer strong,
.lh-footer b,
.footer-trust h1,
.footer-trust h2,
.footer-trust h3,
.footer-trust h4,
.footer-trust strong,
.footer-trust b{
  color:#fff !important;
}

/* ============================================================
   07. 全局最终保险层

   作用：
   1. 统一 CSS 合并后，本区块放在文件最末尾，专门锁定容易被旧主题覆盖的关键视觉点。
   2. 后续如果还要修复全站共用问题，优先追加到这里，避免再次在 HTML 里写 <style>。
   3. 这里的规则只处理全局头部、导航、产品卡片、footer 字色等高风险样式。
   ============================================================ */

/* 顶部黑色公告栏：强制单行居中，避免“FRANCE CONTINENTALE”掉到第二行。 */
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
  display:grid !important;
  grid-template-columns:44px minmax(0,1fr) 44px !important;
  align-items:center !important;
  min-height:34px !important;
}
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__list{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  min-width:0 !important;
  overflow:hidden !important;
}
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message,
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message p,
.announcement-bar__message,
.announcement-bar__message p{
  display:block !important;
  max-width:100% !important;
  margin:0 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  line-height:1.2 !important;
}

/* Promos 百分号：红底白字、固定圆形尺寸，防止旧主题把字变黑或把圆点压扁。 */
.header__inline-navigation .header__linklist-link .promos-pct-dot,
.header__linklist-link .promos-pct-dot,
.promos-pct-dot{
  display:inline-grid !important;
  place-items:center !important;
  flex:0 0 22px !important;
  width:22px !important;
  height:22px !important;
  min-width:22px !important;
  min-height:22px !important;
  border:0 !important;
  border-radius:50% !important;
  background:#e00023 !important;
  color:#fff !important;
  font-size:12px !important;
  font-weight:800 !important;
  line-height:1 !important;
  text-align:center !important;
}

/* 一级导航 hover：二级导航默认隐藏，hover/focus 时强制显示。 */
.header__linklist-item.has-dropdown > .mega-menu[hidden]{
  display:block !important;
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
  transform:translateY(8px) !important;
}
.header__linklist-item.has-dropdown:hover > .mega-menu[hidden],
.header__linklist-item.has-dropdown:focus-within > .mega-menu[hidden],
.header__linklist-item.has-dropdown:hover > .mega-menu,
.header__linklist-item.has-dropdown:focus-within > .mega-menu{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:auto !important;
  transform:translateY(0) !important;
}

/* 首页热卖产品：统一卡片、图片和内容高度，产品名最多两行，超出省略。 */
#main .hp-sec--best .hp-products{
  align-items:stretch !important;
}
#main .hp-sec--best .hp-product-card{
  display:grid !important;
  grid-template-rows:288px 220px !important;
  height:510px !important;
  min-height:510px !important;
  max-height:510px !important;
  overflow:visible !important;
}
#main .hp-sec--best .hp-product-card__media,
#main .hp-sec--best .hp-product-card__image-wrap,
#main .hp-sec--best .hp-pc-media{
  height:288px !important;
  min-height:288px !important;
  max-height:288px !important;
  overflow:visible !important;
}
#main .hp-sec--best .hp-product-card img,
#main .hp-sec--best .hp-pc-media img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  border-radius:8px 8px 0 0 !important;
}
#main .hp-sec--best .hp-pc-body,
#main .hp-sec--best .hp-product-card__body{
  height:220px !important;
  min-height:220px !important;
  max-height:220px !important;
}
#main .hp-sec--best .hp-pc-name,
#main .hp-sec--best .hp-product-card__title{
  display:-webkit-box !important;
  -webkit-box-orient:vertical !important;
  -webkit-line-clamp:2 !important;
  overflow:hidden !important;
  min-height:36px !important;
  max-height:36px !important;
}

/* 热卖角标：与图片左边对齐，半露在图片外，左下角直角，尺寸不要过大。 */
#main .hp-sec--best .hp-pc-badge,
#main .hp-sec--best .hp-product-card__badge,
#main .hp-sec--best .badge-discount{
  left:0 !important;
  top:-16px !important;
  height:32px !important;
  padding:0 14px !important;
  border-radius:6px 6px 6px 0 !important;
  font-size:13px !important;
  font-weight:800 !important;
  line-height:32px !important;
  white-space:nowrap !important;
}

/* 产品图 hover：只加深，不做模糊、不放大，避免用户看到图片抖动。 */
#main .hp-sec--best .hp-product-card:hover img,
#main .hp-sec--best .hp-pc-card:hover img{
  filter:brightness(.72) !important;
  transform:none !important;
}

/* Footer 绿底区域：全站强制白字，防止旧主题黑字覆盖。 */
.site-footer,
.footer,
.lh-footer,
.footer-trust,
.footer__wrapper{
  background:#276b42 !important;
}
.site-footer *,
.footer *,
.lh-footer *,
.footer-trust *,
.footer__wrapper *{
  color:rgba(255,255,255,.82) !important;
}
.site-footer h1,
.site-footer h2,
.site-footer h3,
.site-footer h4,
.site-footer strong,
.site-footer b,
.footer h1,
.footer h2,
.footer h3,
.footer h4,
.footer strong,
.footer b,
.lh-footer h1,
.lh-footer h2,
.lh-footer h3,
.lh-footer h4,
.lh-footer strong,
.lh-footer b,
.footer-trust h1,
.footer-trust h2,
.footer-trust h3,
.footer-trust h4,
.footer-trust strong,
.footer-trust b{
  color:#fff !important;
}

/* 首页热卖真实 DOM 最终锁定：当前 index.html 使用 .hp-track > article.hp-pcard。 */
@media (min-width: 761px){
  #main .hp-sec--best .hp-track{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    column-gap:34px !important;
    row-gap:0 !important;
    align-items:stretch !important;
    overflow:visible !important;
  }
  #main .hp-sec--best .hp-track > article.hp-pcard{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    height:510px !important;
    min-height:510px !important;
    max-height:510px !important;
    overflow:visible !important;
    border-radius:8px !important;
  }
  #main .hp-sec--best .hp-track > article.hp-pcard:nth-child(n+5){
    display:none !important;
  }
  #main .hp-sec--best .hp-track > article.hp-pcard > a{
    display:grid !important;
    grid-template-rows:288px 220px !important;
    height:100% !important;
    min-height:100% !important;
    max-height:100% !important;
    overflow:visible !important;
  }
  #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media{
    position:relative !important;
    height:288px !important;
    min-height:288px !important;
    max-height:288px !important;
    aspect-ratio:auto !important;
    overflow:visible !important;
    border-radius:8px 8px 0 0 !important;
    background:#f4f5f4 !important;
  }
  #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media img,
  #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media .day,
  #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media .night{
    position:absolute !important;
    inset:0 !important;
    width:100% !important;
    height:100% !important;
    min-height:100% !important;
    max-height:100% !important;
    object-fit:cover !important;
    border-radius:8px 8px 0 0 !important;
    transform:none !important;
  }
  #main .hp-sec--best .hp-track > article.hp-pcard:hover,
  #main .hp-sec--best .hp-track > article.hp-pcard:hover img,
  #main .hp-sec--best .hp-track > article.hp-pcard:hover .day,
  #main .hp-sec--best .hp-track > article.hp-pcard:hover .night{
    transform:none !important;
  }
  #main .hp-sec--best .hp-track > article.hp-pcard:hover img,
  #main .hp-sec--best .hp-track > article.hp-pcard:hover .day,
  #main .hp-sec--best .hp-track > article.hp-pcard:hover .night{
    filter:brightness(.72) !important;
  }
  #main .hp-sec--best .hp-track > article.hp-pcard .hp-bdgs{
    position:absolute !important;
    left:0 !important;
    top:-16px !important;
    z-index:5 !important;
  }
  #main .hp-sec--best .hp-track > article.hp-pcard .hp-bdgs .hp-bdg,
  #main .hp-sec--best .hp-track > article.hp-pcard .hp-bdgs .hp-bdg.hp-bdg--remises{
    height:32px !important;
    padding:0 14px !important;
    border-radius:6px 6px 6px 0 !important;
    font-size:13px !important;
    font-weight:800 !important;
    line-height:32px !important;
    white-space:nowrap !important;
  }
  #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-body{
    display:flex !important;
    flex-direction:column !important;
    height:220px !important;
    min-height:220px !important;
    max-height:220px !important;
    padding:18px 18px 16px !important;
    gap:7px !important;
    overflow:hidden !important;
  }
  #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-name{
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    min-height:36px !important;
    max-height:36px !important;
    overflow:hidden !important;
    font-size:14px !important;
    line-height:18px !important;
  }
  #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-rate{
    min-height:18px !important;
    max-height:18px !important;
    line-height:18px !important;
  }
  #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-price{
    min-height:39px !important;
    max-height:39px !important;
    margin:0 !important;
    padding:0 !important;
  }
  #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-stock{
    min-height:20px !important;
    max-height:20px !important;
    margin-top:auto !important;
    line-height:20px !important;
  }
}

/* 0528 final pass — product text rhythm and scene labels must breathe */
@media(min-width:761px){
  #main .hp-sec--best .hp-track > .hp-pcard{
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
  }
  #main .hp-sec--best .hp-pcard a{
    display:flex !important;
    flex-direction:column !important;
    height:100% !important;
    min-height:0 !important;
    max-height:none !important;
    overflow:visible !important;
  }
  #main .hp-sec--best .hp-pc-body{
    display:flex !important;
    flex-direction:column !important;
    height:auto !important;
    min-height:174px !important;
    max-height:none !important;
    padding:12px 14px 15px !important;
    gap:7px !important;
    overflow:hidden !important;
  }
  #main .hp-sec--best .hp-pc-pvc{
    margin:0 !important;
    align-self:flex-start !important;
    flex:0 0 auto !important;
  }
  #main .hp-sec--best .hp-pc-name{
    height:auto !important;
    min-height:36px !important;
    max-height:36px !important;
    margin:0 !important;
    padding:0 !important;
    font-size:13px !important;
    font-weight:700 !important;
    line-height:18px !important;
    -webkit-line-clamp:2 !important;
  }
  #main .hp-sec--best .hp-pc-rate{
    height:18px !important;
    min-height:18px !important;
    margin:0 !important;
    padding:0 !important;
    gap:6px !important;
    line-height:18px !important;
  }
  #main .hp-sec--best .hp-pc-price{
    height:auto !important;
    min-height:39px !important;
    margin:0 !important;
    padding:0 !important;
    gap:1px !important;
    flex:0 0 auto !important;
  }
  #main .hp-sec--best .hp-pc-price b{
    line-height:22px !important;
  }
  #main .hp-sec--best .hp-pc-oldprice{
    line-height:16px !important;
  }
  #main .hp-sec--best .hp-pc-stock{
    height:20px !important;
    min-height:20px !important;
    margin:0 !important;
    padding:0 !important;
    align-self:flex-start !important;
    line-height:20px !important;
  }

  #main .hp-space-mosaic{
    display:grid !important;
    grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr) !important;
    grid-template-rows:repeat(2,clamp(250px,18vw,360px)) !important;
    column-gap:16px !important;
    row-gap:20px !important;
    align-items:stretch !important;
    aspect-ratio:auto !important;
    height:auto !important;
    margin:0 0 58px !important;
    overflow:visible !important;
  }
  #main .hp-space-mosaic .hp-space-tile,
  #main .hp-space-mosaic .hp-space-tile--large{
    display:grid !important;
    grid-template-rows:minmax(0,1fr) 20px !important;
    gap:6px !important;
    height:100% !important;
    min-height:0 !important;
    overflow:visible !important;
    background:transparent !important;
  }
  #main .hp-space-mosaic .hp-space-tile--large{
    grid-row:1 / span 2 !important;
  }
  #main .hp-space-mosaic .hp-space-tile img,
  #main .hp-space-mosaic .hp-space-tile--large img{
    position:static !important;
    display:block !important;
    width:100% !important;
    height:100% !important;
    min-height:0 !important;
    aspect-ratio:auto !important;
    object-fit:cover !important;
    border-radius:8px !important;
  }
  #main .hp-space-mosaic .hp-space-tile b{
    position:static !important;
    display:block !important;
    height:20px !important;
    margin:0 !important;
    padding:0 !important;
    color:#17201a !important;
    background:transparent !important;
    font-size:12.5px !important;
    font-weight:500 !important;
    line-height:20px !important;
    text-align:center !important;
  }
}
@media(max-width:760px){
  #main .hp-space-mosaic .hp-space-tile,
  #main .hp-space-mosaic .hp-space-tile--large{
    display:grid !important;
    grid-template-rows:minmax(0,1fr) 20px !important;
    gap:6px !important;
  }
  #main .hp-space-mosaic .hp-space-tile b{
    position:static !important;
    height:20px !important;
    margin:0 !important;
    line-height:20px !important;
  }
}

/* 0529 requirements — nav/menu/cart/section polish */
@media screen and (min-width:1200px){
  #shopify-section-sections--25458834178427__header .container{
    max-width:min(calc(100vw - 80px), 1760px) !important;
  }
  #shopify-section-sections--25458834178427__header .header__wrapper{
    display:grid !important;
    grid-template-columns:160px minmax(0,1fr) 150px !important;
    align-items:center !important;
    column-gap:26px !important;
  }
  #shopify-section-sections--25458834178427__header .header__logo{
    order:0 !important;
    flex:none !important;
    width:160px !important;
    grid-column:1 !important;
    grid-row:1 !important;
    justify-self:start !important;
  }
  #shopify-section-sections--25458834178427__header .header__inline-navigation{
    flex:none !important;
    min-width:0 !important;
    max-width:none !important;
    width:100% !important;
    margin:0 !important;
    justify-content:center !important;
    grid-column:2 !important;
    grid-row:1 !important;
  }
  #shopify-section-sections--25458834178427__header .header__linklist{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    flex-wrap:nowrap !important;
    gap:clamp(20px,1.8vw,38px) !important;
    width:100% !important;
    white-space:nowrap !important;
  }
  #shopify-section-sections--25458834178427__header .header__linklist-item{
    flex:0 0 auto !important;
    margin:0 !important;
  }
  #shopify-section-sections--25458834178427__header .header__secondary-links,
  #shopify-section-sections--25458834178427__header .header__icon-list{
    justify-self:end !important;
    min-width:0 !important;
  }
  #shopify-section-sections--25458834178427__header .header__secondary-links{
    grid-column:3 !important;
    grid-row:1 !important;
  }
}
@media screen and (min-width:1200px) and (max-width:1480px){
  #shopify-section-sections--25458834178427__header .header__wrapper{
    grid-template-columns:136px minmax(0,1fr) 132px !important;
    column-gap:16px !important;
  }
  #shopify-section-sections--25458834178427__header .header__logo{
    width:136px !important;
  }
  #shopify-section-sections--25458834178427__header .header__logo-image{
    max-width:112px !important;
  }
  #shopify-section-sections--25458834178427__header .header__linklist{
    gap:clamp(14px,1.25vw,22px) !important;
  }
  #shopify-section-sections--25458834178427__header .header__linklist-link{
    font-size:13.5px !important;
  }
  .promos-pct-dot{
    width:18px !important;
    height:18px !important;
    min-width:18px !important;
    font-size:10px !important;
  }
}
.header__inline-navigation .header__linklist-link,
.header__inline-navigation .header__linklist-link span{
  color:#111 !important;
  font-weight:800 !important;
  white-space:nowrap !important;
  line-height:1 !important;
}
.header__inline-navigation .header__linklist-link{
  display:inline-flex !important;
  align-items:center !important;
  gap:7px !important;
  min-height:42px !important;
  padding:0 !important;
}
.nav-text-bold{
  white-space:nowrap !important;
}
.promos-pct-dot{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex:0 0 auto !important;
  margin-left:4px !important;
  vertical-align:middle !important;
  transform:none !important;
}

#desktop-menu-5 .mega-menu__inner{
  display:block !important;
  max-width:1120px !important;
  margin:0 auto !important;
  padding:34px 0 28px !important;
}
#desktop-menu-5 .mm-accessory-strip{
  display:grid !important;
  grid-template-columns:repeat(5, minmax(0, 1fr)) !important;
  column-gap:34px !important;
  align-items:end !important;
  width:100% !important;
}
#desktop-menu-5 .mm-accessory-card{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:flex-end !important;
  min-width:0 !important;
  text-decoration:none !important;
  color:#111 !important;
}
#desktop-menu-5 .mm-accessory-img{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:132px !important;
  height:92px !important;
  margin:0 auto 16px !important;
}
#desktop-menu-5 .mm-accessory-img img{
  display:block !important;
  max-width:100% !important;
  max-height:100% !important;
  width:auto !important;
  height:auto !important;
  object-fit:contain !important;
}
#desktop-menu-5 .mm-accessory-label{
  display:block !important;
  width:100% !important;
  text-align:center !important;
  text-transform:uppercase !important;
  font-size:10.5px !important;
  font-weight:800 !important;
  letter-spacing:.08em !important;
  line-height:1.25 !important;
}
#desktop-menu-5 .mm-accessory-card:hover .mm-accessory-label{
  color:#276B42 !important;
}

.mm-uniform .mega-menu__images-wrapper{
  display:block !important;
  width:374px !important;
  max-width:374px !important;
  margin:0 !important;
}
.mm-uniform .mega-menu__image-wrapper{
  display:block !important;
  width:100% !important;
  aspect-ratio:374 / 427 !important;
  border-radius:12px !important;
  overflow:hidden !important;
  background:#f6f7f5 !important;
}
.mm-uniform .mega-menu__image{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  display:block !important;
}
.mm-uniform .mega-menu__image-push:hover .mega-menu__image{
  transform:none !important;
  filter:none !important;
}
.mm-uniform .mega-menu__inner{
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) 374px !important;
  column-gap:48px !important;
  align-items:start !important;
}
#desktop-menu-4 .mega-menu__inner{
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) 374px 374px !important;
  column-gap:28px !important;
}
#desktop-menu-4 .mega-menu__images-wrapper{
  display:contents !important;
  width:auto !important;
  max-width:none !important;
}
.mm-uniform .mega-menu__heading{
  margin-top:12px !important;
  color:#17663c !important;
  font-weight:800 !important;
}

#mini-cart.mini-cart{
  width:var(--mini-cart-width, 330px) !important;
  left:var(--mini-cart-left, auto) !important;
  top:var(--mini-cart-top, 86px) !important;
  right:auto !important;
}
#mini-cart::before{
  left:calc(var(--mini-cart-arrow-x, 280px) - 9px) !important;
  right:auto !important;
}

#main .lh-circats__head h2,
#main .hp-prow-head h2,
#main .hp-head h2,
#main .hp-room-title,
#main .hp-en-head h2,
#main .hp-md-head h2,
#main .hp-seo h2,
#main .hp-blog-head h2{
  font-size:28px !important;
  line-height:1.16 !important;
  letter-spacing:0 !important;
  font-weight:800 !important;
}

@media(min-width:761px){
  #main .lh-circats__track{
    --cc-item:170px;
    --cc-gap:32px;
    --cc-visible:1180px;
    gap:var(--cc-gap) !important;
    padding-left:max(0px, calc((100% - var(--cc-visible)) / 2)) !important;
    padding-right:max(0px, calc((100% - var(--cc-visible)) / 2)) !important;
    justify-content:flex-start !important;
  }
  #main .lh-circats__i,
  #main .lh-circats__i:nth-child(n+6){
    flex:0 0 var(--cc-item) !important;
    width:var(--cc-item) !important;
    max-width:var(--cc-item) !important;
    display:block !important;
  }
  #main .lh-circats__pic{
    width:154px !important;
    max-width:154px !important;
  }
  #main .lh-circats__arrow--prev{left:16px !important;}
  #main .lh-circats__arrow--next{right:16px !important;}

  #main .hp-sec--best .hp-track{
    display:flex !important;
    grid-template-columns:none !important;
    gap:28px !important;
    overflow-x:auto !important;
    overflow-y:visible !important;
    scroll-snap-type:x mandatory !important;
    padding:18px 0 10px !important;
    scrollbar-width:none !important;
  }
  #main .hp-sec--best .hp-track::-webkit-scrollbar{display:none !important;}
  #main .hp-sec--best .hp-track > .hp-pcard,
  #main .hp-sec--best .hp-track > .hp-pcard:nth-child(n+5){
    display:block !important;
    flex:0 0 calc((100% - 84px) / 4) !important;
    width:calc((100% - 84px) / 4) !important;
    max-width:calc((100% - 84px) / 4) !important;
    min-width:0 !important;
    scroll-snap-align:start !important;
  }
  #main .hp-sec--best .hp-pcard,
  #main .hp-sec--best .hp-pcard a{
    height:100% !important;
  }
  #main .hp-sec--best .hp-pc-media{
    height:300px !important;
    aspect-ratio:auto !important;
    border-radius:9px 9px 0 0 !important;
    overflow:visible !important;
  }
  #main .hp-sec--best .hp-pc-media img{
    height:100% !important;
    object-fit:cover !important;
    border-radius:9px 9px 0 0 !important;
    transform:none !important;
    filter:none !important;
  }
  #main .hp-sec--best .hp-pcard:hover .day,
  #main .hp-sec--best .hp-pcard:hover .night,
  #main .hp-sec--best .hp-pc-media:hover img{
    transform:none !important;
    filter:none !important;
  }
  #main .hp-sec--best .hp-bdgs{
    left:0 !important;
    top:-18px !important;
    right:auto !important;
    align-items:flex-start !important;
  }
  #main .hp-sec--best .hp-bdgs .hp-bdg,
  #main .hp-sec--best .hp-bdgs .hp-bdg.hp-bdg--remises{
    height:31px !important;
    padding:0 14px !important;
    border-radius:6px 6px 6px 0 !important;
    font-size:13px !important;
    line-height:31px !important;
    box-shadow:0 8px 18px rgba(216,91,49,.16) !important;
  }
  #main .hp-sec--best .hp-pc-body{
    min-height:260px !important;
    padding:24px 18px 18px !important;
    display:flex !important;
    flex-direction:column !important;
    gap:11px !important;
  }
  #main .hp-sec--best .hp-pc-name{
    min-height:44px !important;
    max-height:44px !important;
    overflow:hidden !important;
    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;
    line-height:22px !important;
  }
  #main .hp-sec--best .hp-pc-stock{
    margin-top:auto !important;
  }
}

@media(max-width:760px){
  .mm-uniform .mega-menu__images-wrapper,
  .mm-uniform .mega-menu__image-wrapper{display:none !important;}
}

/* 0528 final pass — category circles stay grouped on wide screens */
@media(min-width:761px){
  #main .lh-circats__wrap{
    width:var(--lh-legacy-container) !important;
    max-width:var(--lh-legacy-container) !important;
    padding-left:0 !important;
    padding-right:0 !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
  #main .lh-circats__track{
    width:100% !important;
    max-width:100% !important;
    margin-left:auto !important;
    margin-right:auto !important;
    display:flex !important;
    grid-template-columns:none !important;
    justify-content:flex-start !important;
    gap:24px !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    padding:4px 0 12px !important;
    scroll-padding-left:0 !important;
  }
  #main .lh-circats__i,
  #main .lh-circats__i:nth-child(n+6){
    display:block !important;
    flex:0 0 calc((100% - 120px) / 6) !important;
    width:calc((100% - 120px) / 6) !important;
    max-width:calc((100% - 120px) / 6) !important;
    min-width:0 !important;
  }
  #main .lh-circats__pic{
    width:min(100%,184px) !important;
    max-width:184px !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
  #main .lh-circats__lbl{
    margin-top:9px !important;
    font-size:13px !important;
    line-height:1.25 !important;
  }
  #main .lh-circats__arrow--prev{
    left:-56px !important;
  }
  #main .lh-circats__arrow--next{
    right:-56px !important;
  }
}
@media(min-width:761px) and (max-width:1180px){
  #main .lh-circats__track{
    width:100% !important;
    max-width:100% !important;
    gap:18px !important;
  }
  #main .lh-circats__i,
  #main .lh-circats__i:nth-child(n+6){
    flex:0 0 calc((100% - 72px) / 5) !important;
    width:calc((100% - 72px) / 5) !important;
    max-width:calc((100% - 72px) / 5) !important;
    min-width:0 !important;
  }
  #main .lh-circats__pic{
    width:min(100%,154px) !important;
    max-width:154px !important;
  }
  #main .lh-circats__arrow--prev{left:10px !important;}
  #main .lh-circats__arrow--next{right:10px !important;}
}

/* 0529 category carousel correction — six compact circles, same outer width */
@media(min-width:761px){
  #main .lh-circats__track{
    --cc-item:170px;
    --cc-gap:32px;
    --cc-visible:1180px;
    display:flex !important;
    grid-template-columns:none !important;
    justify-content:flex-start !important;
    gap:var(--cc-gap) !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    padding:6px max(0px, calc((100% - var(--cc-visible)) / 2)) 14px !important;
    scroll-padding-left:max(0px, calc((100% - var(--cc-visible)) / 2)) !important;
  }
  #main .lh-circats__i,
  #main .lh-circats__i:nth-child(n+6){
    display:block !important;
    flex:0 0 var(--cc-item) !important;
    width:var(--cc-item) !important;
    max-width:var(--cc-item) !important;
  }
  #main .lh-circats__pic{
    width:154px !important;
    max-width:154px !important;
  }
  #main .lh-circats__arrow--prev{left:16px !important;}
  #main .lh-circats__arrow--next{right:16px !important;}
}
@media(min-width:761px) and (max-width:1180px){
  #main .lh-circats__track{
    --cc-item:150px;
    --cc-gap:22px;
    --cc-visible:980px;
  }
  #main .lh-circats__pic{
    width:142px !important;
    max-width:142px !important;
  }
}

/* 0529 restore — keep the two finished modules compact like the approved homepage */
@media(min-width:761px){
  #main .lh-circats{
    padding-top:24px !important;
    padding-bottom:20px !important;
  }
  #main .lh-circats__wrap{
    width:min(calc(100vw - 80px), 1120px) !important;
    max-width:1120px !important;
    padding-left:46px !important;
    padding-right:46px !important;
  }
  #main .lh-circats__head{
    margin-bottom:14px !important;
  }
  #main .lh-circats__track{
    display:flex !important;
    grid-template-columns:none !important;
    width:100% !important;
    max-width:100% !important;
    gap:22px !important;
    padding:3px 0 10px !important;
    margin:0 !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    justify-content:flex-start !important;
    scroll-padding-left:0 !important;
    scrollbar-width:none !important;
  }
  #main .lh-circats__track::-webkit-scrollbar{
    display:none !important;
  }
  #main .lh-circats__i,
  #main .lh-circats__i:nth-child(n+6){
    display:block !important;
    flex:0 0 calc((100% - 132px) / 7) !important;
    width:calc((100% - 132px) / 7) !important;
    max-width:calc((100% - 132px) / 7) !important;
    min-width:0 !important;
  }
  #main .lh-circats__pic{
    width:108px !important;
    max-width:108px !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
  #main .lh-circats__lbl{
    margin-top:8px !important;
    font-size:12px !important;
    line-height:1.25 !important;
    font-weight:500 !important;
  }
  #main .lh-circats__arrow{
    width:32px !important;
    height:32px !important;
    top:56% !important;
  }
  #main .lh-circats__arrow--prev{left:0 !important;}
  #main .lh-circats__arrow--next{right:0 !important;}

  #main .hp-sec--best{
    padding-top:24px !important;
    padding-bottom:44px !important;
  }
  #main .hp-sec--best .hp-wrap{
    width:min(calc(100vw - 80px), 1120px) !important;
    max-width:1120px !important;
    padding-left:0 !important;
    padding-right:0 !important;
  }
  #main .hp-sec--best .hp-prow-head{
    margin-bottom:18px !important;
  }
  #main .hp-sec--best .hp-bv-wrap{
    width:100% !important;
    max-width:100% !important;
    padding:0 42px !important;
    overflow:visible !important;
  }
  #main .hp-sec--best .hp-track{
    display:flex !important;
    grid-template-columns:none !important;
    width:100% !important;
    max-width:100% !important;
    margin-left:0 !important;
    margin-right:0 !important;
    gap:24px !important;
    padding:12px 0 8px !important;
    overflow-x:auto !important;
    overflow-y:visible !important;
    scroll-snap-type:x mandatory !important;
    scrollbar-width:none !important;
  }
  #main .hp-sec--best .hp-track::-webkit-scrollbar{
    display:none !important;
  }
  #main .hp-sec--best .hp-track > .hp-pcard,
  #main .hp-sec--best .hp-track > .hp-pcard:nth-child(n+5){
    display:block !important;
    flex:0 0 calc((100% - 72px) / 4) !important;
    width:calc((100% - 72px) / 4) !important;
    max-width:calc((100% - 72px) / 4) !important;
    min-width:0 !important;
    scroll-snap-align:start !important;
  }
  #main .hp-sec--best .hp-pcard{
    border-radius:7px !important;
  }
  #main .hp-sec--best .hp-pcard a{
    height:100% !important;
  }
  #main .hp-sec--best .hp-pc-media{
    height:188px !important;
    aspect-ratio:auto !important;
    border-radius:7px 7px 0 0 !important;
    overflow:visible !important;
  }
  #main .hp-sec--best .hp-pc-media img{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    border-radius:7px 7px 0 0 !important;
    transform:none !important;
    filter:none !important;
  }
  #main .hp-sec--best .hp-pcard:hover .day,
  #main .hp-sec--best .hp-pcard:hover .night,
  #main .hp-sec--best .hp-pc-media:hover img{
    transform:none !important;
    filter:none !important;
  }
  #main .hp-sec--best .hp-bdgs{
    left:0 !important;
    top:-11px !important;
    right:auto !important;
  }
  #main .hp-sec--best .hp-bdgs .hp-bdg,
  #main .hp-sec--best .hp-bdgs .hp-bdg.hp-bdg--remises{
    height:24px !important;
    padding:0 10px !important;
    border-radius:4px 4px 4px 0 !important;
    font-size:10.5px !important;
    line-height:24px !important;
  }
  #main .hp-sec--best .hp-bdg--solar{
    height:20px !important;
    padding:0 10px !important;
    font-size:9px !important;
    line-height:20px !important;
  }
  #main .hp-sec--best .hp-pc-fav{
    width:28px !important;
    height:28px !important;
    right:9px !important;
    bottom:9px !important;
  }
  #main .hp-sec--best .hp-pc-body{
    min-height:178px !important;
    padding:18px 14px 14px !important;
    gap:8px !important;
  }
  #main .hp-sec--best .hp-pc-pvc{
    height:24px !important;
    padding:0 10px !important;
    font-size:11px !important;
    line-height:24px !important;
  }
  #main .hp-sec--best .hp-pc-name{
    min-height:36px !important;
    max-height:36px !important;
    font-size:13px !important;
    line-height:18px !important;
    -webkit-line-clamp:2 !important;
  }
  #main .hp-sec--best .hp-pc-rate,
  #main .hp-sec--best .hp-pc-stock{
    font-size:11px !important;
  }
  #main .hp-sec--best .hp-pc-price b{
    font-size:18px !important;
    line-height:1.1 !important;
  }
  #main .hp-sec--best .hp-pc-oldprice{
    font-size:11px !important;
  }
}

@media(min-width:761px) and (max-width:1180px){
  #main .lh-circats__wrap,
  #main .hp-sec--best .hp-wrap{
    width:min(calc(100vw - 48px), 980px) !important;
  }
  #main .lh-circats__i,
  #main .lh-circats__i:nth-child(n+6){
    flex-basis:calc((100% - 90px) / 6) !important;
    width:calc((100% - 90px) / 6) !important;
    max-width:calc((100% - 90px) / 6) !important;
  }
  #main .lh-circats__pic{
    width:100px !important;
    max-width:100px !important;
  }
  #main .hp-sec--best .hp-pc-media{
    height:178px !important;
  }
}

/* Final lock: restore the approved index0528 layout for categories + best sellers. */
@media(min-width:761px){
  #main .lh-circats{
    padding:28px 0 22px !important;
  }
  #main .lh-circats__wrap{
    width:var(--lh-legacy-container) !important;
    max-width:var(--lh-legacy-container) !important;
    padding-left:0 !important;
    padding-right:0 !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
  #main .lh-circats__head{
    margin-bottom:18px !important;
  }
  #main .lh-circats__track{
    display:flex !important;
    grid-template-columns:none !important;
    width:100% !important;
    max-width:100% !important;
    margin-left:auto !important;
    margin-right:auto !important;
    justify-content:flex-start !important;
    gap:24px !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    padding:4px 0 12px !important;
    scroll-padding-left:0 !important;
    scrollbar-width:none !important;
  }
  #main .lh-circats__track::-webkit-scrollbar{
    display:none !important;
  }
  #main .lh-circats__i,
  #main .lh-circats__i:nth-child(n+6){
    display:block !important;
    flex:0 0 calc((100% - 120px) / 6) !important;
    width:calc((100% - 120px) / 6) !important;
    max-width:calc((100% - 120px) / 6) !important;
    min-width:0 !important;
  }
  #main .lh-circats__pic{
    width:min(100%,184px) !important;
    max-width:184px !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
  #main .lh-circats__lbl{
    margin-top:9px !important;
    font-size:13px !important;
    line-height:1.25 !important;
    font-weight:500 !important;
  }
  #main .lh-circats__arrow{
    width:38px !important;
    height:38px !important;
    top:57% !important;
  }
  #main .lh-circats__arrow--prev{left:-56px !important;}
  #main .lh-circats__arrow--next{right:-56px !important;}

  #main .hp-sec--best{
    padding-top:34px !important;
    padding-bottom:52px !important;
  }
  #main .hp-sec--best .hp-wrap,
  #main .hp-sec--best .hp-bv-wrap,
  #main .hp-sec--best .hp-track{
    width:var(--lh-legacy-container) !important;
    max-width:var(--lh-legacy-container) !important;
    padding-left:0 !important;
    padding-right:0 !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
  #main .hp-sec--best .hp-prow-head{
    margin-bottom:18px !important;
  }
  #main .hp-sec--best .hp-track{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:26px !important;
    overflow:visible !important;
    scroll-snap-type:none !important;
    padding:0 !important;
  }
  #main .hp-sec--best .hp-track > .hp-pcard{
    display:block !important;
    flex:initial !important;
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    border-radius:8px !important;
  }
  #main .hp-sec--best .hp-track > .hp-pcard:nth-child(n+5){
    display:none !important;
  }
  #main .hp-sec--best .hp-pcard a{
    display:flex !important;
    flex-direction:column !important;
    height:100% !important;
    min-height:0 !important;
    max-height:none !important;
    overflow:visible !important;
  }
  #main .hp-sec--best .hp-pc-media{
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    aspect-ratio:9/10 !important;
    border-radius:8px 8px 0 0 !important;
    overflow:visible !important;
  }
  #main .hp-sec--best .hp-pc-media img{
    width:100% !important;
    height:100% !important;
    min-height:0 !important;
    max-height:none !important;
    object-fit:cover !important;
    object-position:center center !important;
    border-radius:8px 8px 0 0 !important;
    transform:none !important;
    filter:none !important;
    transition:opacity .22s ease !important;
  }
  #main .hp-sec--best .hp-pcard:hover,
  #main .hp-sec--best .hp-pcard:hover .day,
  #main .hp-sec--best .hp-pcard:hover .night,
  #main .hp-sec--best .hp-pc-media:hover img{
    transform:none !important;
    filter:none !important;
  }
  #main .hp-sec--best .hp-bdgs{
    left:0 !important;
    top:-12px !important;
    right:auto !important;
  }
  #main .hp-sec--best .hp-bdgs .hp-bdg,
  #main .hp-sec--best .hp-bdgs .hp-bdg.hp-bdg--remises{
    height:24px !important;
    line-height:24px !important;
    padding:0 10px !important;
    border-radius:4px 4px 4px 0 !important;
    font-size:11px !important;
    background:#df5a34 !important;
  }
  #main .hp-sec--best .hp-pc-body{
    display:flex !important;
    flex-direction:column !important;
    height:auto !important;
    min-height:174px !important;
    max-height:none !important;
    padding:12px 14px 15px !important;
    gap:7px !important;
    overflow:hidden !important;
  }
  #main .hp-sec--best .hp-pc-pvc{
    margin:0 !important;
    align-self:flex-start !important;
    flex:0 0 auto !important;
  }
  #main .hp-sec--best .hp-pc-name{
    height:auto !important;
    min-height:36px !important;
    max-height:36px !important;
    margin:0 !important;
    padding:0 !important;
    font-size:13px !important;
    font-weight:700 !important;
    line-height:18px !important;
    -webkit-line-clamp:2 !important;
  }
  #main .hp-sec--best .hp-pc-rate{
    height:18px !important;
    min-height:18px !important;
    margin:0 !important;
    padding:0 !important;
    gap:6px !important;
    line-height:18px !important;
  }
  #main .hp-sec--best .hp-pc-price{
    height:auto !important;
    min-height:39px !important;
    margin:0 !important;
    padding:0 !important;
    gap:1px !important;
    flex:0 0 auto !important;
  }
  #main .hp-sec--best .hp-pc-price b{
    line-height:22px !important;
  }
  #main .hp-sec--best .hp-pc-oldprice{
    line-height:16px !important;
  }
  #main .hp-sec--best .hp-pc-stock{
    height:20px !important;
    min-height:20px !important;
    margin:0 !important;
    padding:0 !important;
    align-self:flex-start !important;
    line-height:20px !important;
  }
}
@media(min-width:761px) and (max-width:1180px){
  #main .lh-circats__track{
    gap:18px !important;
  }
  #main .lh-circats__i,
  #main .lh-circats__i:nth-child(n+6){
    flex:0 0 calc((100% - 72px) / 5) !important;
    width:calc((100% - 72px) / 5) !important;
    max-width:calc((100% - 72px) / 5) !important;
    min-width:0 !important;
  }
  #main .lh-circats__pic{
    width:min(100%,154px) !important;
    max-width:154px !important;
  }
  #main .lh-circats__arrow--prev{left:10px !important;}
  #main .lh-circats__arrow--next{right:10px !important;}
}


/* ---- 03.010 页面内联样式块
   来源：product.html:18, account.html:18, cart.html:18, search.html:18, contact.html:18, magazine.html:18, article.html:18, fidelite.html:18, ... 共 12 处
   说明：由页面 <style> 抽离，保持原有选择器和声明不变。
   ---- */
/* ============================================================================
   ✅ CSS DE BASE (hérité de la page promo) - Conservé tel quel pour la cohérence
============================================================================ */
:root {
--heading-color: 27, 27, 27;
--text-color: 51, 51, 51;
--background: 255, 255, 255;
--secondary-background: 247, 249, 247;
--border-color: 224, 224, 224;
--border-color-darker: 173, 173, 173;
--success-color: 27, 27, 27;
--success-background: 209, 209, 209;
--error-color: 222, 42, 42;
--error-background: 253, 240, 240;
--primary-button-background: 58, 157, 95;
--primary-button-text-color: 255, 255, 255;
--secondary-button-background: 40, 40, 40;
--secondary-button-text-color: 255, 255, 255;
--product-star-rating: 246, 164, 41;
--product-on-sale-accent: 16, 16, 16;
--product-sold-out-accent: 111, 113, 155;
--product-custom-label-background: 64, 93, 230;
--product-custom-label-text-color: 255, 255, 255;
--product-custom-label-2-background: 243, 255, 52;
--product-custom-label-2-text-color: 0, 0, 0;
--product-low-stock-text-color: 11, 11, 13;
--product-in-stock-text-color: 11, 11, 13;
--loading-bar-background: 51, 51, 51;
--root-heading-color: 27, 27, 27;
--root-text-color: 51, 51, 51;
--root-background: 255, 255, 255;
--root-border-color: 224, 224, 224;
--root-primary-button-background: 58, 157, 95;
--root-primary-button-text-color: 255, 255, 255;
--base-font-size: 15px;
--heading-font-family: Poppins, sans-serif;
--heading-font-weight: 500;
--heading-font-style: normal;
--heading-text-transform: normal;
--text-font-family: Poppins, sans-serif;
--text-font-weight: 400;
--text-font-style: normal;
--text-font-bold-weight: 600;
--heading-xxsmall-font-size: 10px;
--heading-xsmall-font-size: 10px;
--heading-small-font-size: 11px;
--heading-large-font-size: 32px;
--heading-h1-font-size: 32px;
--heading-h2-font-size: 28px;
--heading-h3-font-size: 26px;
--heading-h4-font-size: 22px;
--heading-h5-font-size: 18px;
--heading-h6-font-size: 16px;
--button-border-radius: 30px;
--block-border-radius: 8px;
--block-border-radius-reduced: 4px;
--color-swatch-border-radius: 100%;
--button-height: 48px;
--button-small-height: 40px;
--form-input-field-height: 48px;
--form-input-gap: 16px;
--form-submit-margin: 24px;
--product-list-block-spacing: 32px;
--vertical-breather: 48px;
--vertical-breather-tight: 48px;
--container-max-width: 1600px;
--container-gutter: 24px;
--container-max-width-minus-gutters: calc(var(--container-max-width) - (var(--container-gutter)) * 2);
--container-outer-width: max(calc((100vw - var(--container-max-width-minus-gutters)) / 2), var(--container-gutter));
--container-inner-width: calc(100vw - var(--container-outer-width) * 2);
--grid-column-count: 10;
--grid-gap: 24px;
--grid-column-width: calc((100vw - var(--container-outer-width) * 2 - var(--grid-gap) * (var(--grid-column-count) - 1)) / var(--grid-column-count));
--transform-logical-flip: 1;
--transform-origin-start: left;
--transform-origin-end: right;
--zoom-cursor-svg-url: url(./catalog/zoom-cursor-cb5cdb4630e5.svg);
--arrow-right-svg-url: url(./catalog/arrow-right-2a115713352b.svg);
--arrow-left-svg-url: url(./catalog/arrow-left-6062eca54cd3.svg);
}
@media screen and (min-width: 741px) {
:root {
--container-gutter: 40px;
--grid-column-count: 20;
--vertical-breather: 64px;
--vertical-breather-tight: 64px;
--heading-xsmall-font-size: 11px;
--heading-small-font-size: 12px;
--heading-large-font-size: 48px;
--heading-h1-font-size: 48px;
--heading-h2-font-size: 36px;
--heading-h3-font-size: 30px;
--heading-h4-font-size: 22px;
--heading-h5-font-size: 18px;
--heading-h6-font-size: 16px;
--form-input-field-height: 52px;
--form-submit-margin: 32px;
--button-height: 52px;
--button-small-height: 44px;
}
}
@media screen and (min-width: 1200px) {
:root {
--vertical-breather: 80px;
--vertical-breather-tight: 64px;
--product-list-block-spacing: 48px;
--heading-large-font-size: 58px;
--heading-h1-font-size: 50px;
--heading-h2-font-size: 44px;
--heading-h3-font-size: 32px;
--heading-h4-font-size: 26px;
--heading-h5-font-size: 22px;
--heading-h6-font-size: 16px;
}
}
@media screen and (min-width: 1600px) {
:root {
--vertical-breather: 90px;
--vertical-breather-tight: 64px;
}
}
/* Typography */
@font-face {
font-family: Poppins;
font-weight: 500;
font-style: normal;
font-display: swap;
src: url("./fonts/poppins-medium.woff2") format("woff2"),
url("./fonts/poppins-medium.woff2") format("woff2");
}
@font-face {
font-family: Poppins;
font-weight: 500;
font-style: italic;
font-display: swap;
src: url("./fonts/poppins-medium.woff2") format("woff2"),
url("./fonts/poppins-medium.woff2") format("woff2");
}
@font-face {
font-family: Poppins;
font-weight: 400;
font-style: normal;
font-display: swap;
src: url("./fonts/poppins-regular.woff2") format("woff2"),
url("./fonts/poppins-regular.woff2") format("woff2");
}
@font-face {
font-family: Poppins;
font-weight: 400;
font-style: italic;
font-display: swap;
src: url("./fonts/poppins-regular.woff2") format("woff2"),
url("./fonts/poppins-regular.woff2") format("woff2");
}
@font-face {
font-family: Poppins;
font-weight: 600;
font-style: normal;
font-display: swap;
src: url("./fonts/poppins-semibold.woff2") format("woff2"),
url("./fonts/poppins-semibold.woff2") format("woff2");
}
@font-face {
font-family: Poppins;
font-weight: 600;
font-style: italic;
font-display: swap;
src: url("./fonts/poppins-semibold.woff2") format("woff2"),
url("./fonts/poppins-semibold.woff2") format("woff2");
}
html {
scroll-behavior: smooth;
}
/* Header & Navigation Styles */
.header__linklist-link {
position: relative;
display: inline-block;
}
.header__linklist-link::after {
content: '';
position: absolute;
left: 0;
right: 100%;
bottom: -3px;
background: #276b42;
height: 1px;
transition-property: right;
transition-duration: 0.4s;
transition-timing-function: ease-out;
}
.header__linklist-link:hover::after {
right: 0;
}
.header__linklist a[href="/collections/promos"] {
color: white;
background: #276B42;
padding: 1px 10px;
font-weight: 500;
border-radius: 4px;
}
/* =========================================================
 * LUMIHOME V3 — Multi-Style Mega-Menu (8 categories)
 *  - Style A · Solaire: editorial 3-col + hero card + filter pills
 *  - Style B · 230V:    split sub-cats + ambiance hero + chips
 *  - Style C · Basse tension: dual card panels w/ accent icons
 *  - Style D · Par espace: indoor/outdoor visual room mosaic
 *  - Style E · Accessoires: compact icon strip + conditional sub
 *  - Style F · PROMOS:    red attention pill (link)
 *  - Style G · BON PLAN: amber/gold attention pill (link)
 *  - Style H · Plus:      tight dropdown card
 * ========================================================= */
.mega-menu{
--mega-menu-column-gap:40px;
--mega-menu-image-gap:20px;
--mm-accent:#276B42;
--mm-accent-soft:#e8f3ec;
--mm-accent-dark:#1e5333;
--mm-amber:#d97706;
--mm-amber-soft:#fff4e0;
--mm-red:#e60023;
--mm-radius:14px;
--mm-radius-sm:10px;
visibility:hidden;opacity:0;pointer-events:none;
background:#fff;color:#1a1a1a;width:100%;
display:block;position:absolute;top:100%;left:0;z-index:10;
transition:opacity .28s ease,visibility .28s ease,transform .28s ease;
transform:translateY(8px);
box-shadow:0 18px 40px -12px rgba(20,40,30,.18),0 6px 14px -8px rgba(20,40,30,.10);
border-top:1px solid rgba(39,107,66,.10);
border-radius:0 0 var(--mm-radius) var(--mm-radius);
}
.header__linklist-item.has-dropdown:hover .mega-menu,
.header__linklist-item.has-dropdown:focus-within .mega-menu{
visibility:visible;opacity:1;pointer-events:auto;transform:translateY(0);
}
.mega-menu__inner{
justify-content:center;column-gap:var(--mega-menu-column-gap);
max-height:calc(100vh - var(--header-height,0px) - var(--announcement-bar-height,0px) - 60px);
z-index:1;grid-auto-flow:column;
padding:40px 0 44px;display:grid;position:relative;overflow:auto;
}
.mega-menu__column{margin:calc(var(--mega-menu-column-gap)/2);min-width:200px;}
.mega-menu__title{
margin:0 0 14px;font-weight:700;font-size:.92rem;letter-spacing:.02em;
color:var(--mm-accent-dark);display:inline-flex;align-items:center;gap:8px;
text-decoration:none;
}
.mega-menu__title::before{
content:"";width:18px;height:2px;background:var(--mm-accent);border-radius:2px;
}
.mega-menu__title:hover{color:var(--mm-accent);}
.mega-menu__image-wrapper{
border-radius:var(--mm-radius);z-index:0;margin-block-end:14px;overflow:hidden;
position:relative;aspect-ratio:4/3;background:#f4f7f5;
}
.mega-menu__image{
border-radius:inherit;width:100%;height:100%;display:block;object-fit:cover;
transition:transform .55s ease;
}
.mega-menu__image-push:hover .mega-menu__image{transform:scale(1.05);}
.mega-menu__heading{
font-size:.88rem;font-weight:600;color:#1a1a1a;margin:0;
display:inline-flex;align-items:center;gap:6px;
}
.mega-menu__image-push:hover .mega-menu__heading{color:var(--mm-accent);}
.linklist__item a{
word-break:break-word;display:inline-flex;align-items:center;gap:6px;
text-decoration:none;color:#4a5568;padding:5px 0;font-size:.9rem;
transition:color .2s,transform .2s;position:relative;
}
.linklist__item a::before{
content:"";width:0;height:1px;background:var(--mm-accent);
transition:width .25s ease;margin-right:0;
}
.linklist__item a:hover{color:var(--mm-accent);transform:translateX(2px);}
.linklist__item a:hover::before{width:14px;margin-right:6px;}

/* ---------- Style A · Solaire: 2-col list + hero (per Excel) ---------- */
.mm-solaire .mega-menu__inner{
grid-template-columns:1fr 1fr 1.35fr;grid-auto-flow:row;
padding:36px 0 36px;
}
.mm-solaire .mega-menu__images-wrapper{
margin:calc(var(--mega-menu-column-gap)/2);
display:flex;flex-direction:column;justify-content:flex-start;gap:14px;
position:relative;
}
.mm-solaire .mega-menu__image-push{
display:block;text-decoration:none;color:inherit;
border-radius:var(--mm-radius);overflow:hidden;
position:relative;background:linear-gradient(135deg,#1e5333,#276B42);
}
.mm-solaire .mega-menu__image-wrapper{aspect-ratio:16/10;margin:0;}
.mm-solaire .mega-menu__image-push .mega-menu__heading{
position:absolute;left:16px;bottom:14px;color:#fff;font-weight:600;
text-shadow:0 2px 8px rgba(0,0,0,.45);font-size:.95rem;
}
.mm-filter-row{
grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:10px;align-items:center;
margin:8px calc(var(--mega-menu-column-gap)/2) 0;
padding-top:18px;border-top:1px dashed #d6e3da;
}
.mm-filter-label{
font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
color:var(--mm-accent-dark);margin-right:6px;
}
.mm-chip{
display:inline-flex;align-items:center;gap:4px;font-size:.78rem;
padding:5px 11px;border-radius:999px;
background:var(--mm-accent-soft);color:var(--mm-accent-dark);
border:1px solid transparent;cursor:pointer;font-weight:500;
transition:all .2s;text-decoration:none;
}
.mm-chip:hover{background:var(--mm-accent);color:#fff;transform:translateY(-1px);}
.mm-chip--ip{background:#eef4f7;color:#2c5777;}
.mm-chip--ip:hover{background:#2c5777;color:#fff;}
/* SVG icons via CSS mask (inherit chip text color, support hover color change) */
.mm-chip--solar::before,
.mm-chip--detect::before,
.mm-chip--remote::before,
.mm-chip--usb::before,
.mm-chip--head::before,
.mm-chip--plug::before{
content:"";display:inline-block;width:12px;height:12px;
background-color:currentColor;flex-shrink:0;
-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;
-webkit-mask-position:center;mask-position:center;
-webkit-mask-size:contain;mask-size:contain;
}
.mm-chip--solar::before{
-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='4'/><path d='M12 2v2M12 20v2M4.93 4.93l1.41 1.41M17.66 17.66l1.41 1.41M2 12h2M20 12h2M4.93 19.07l1.41-1.41M17.66 6.34l1.41-1.41'/></svg>");
mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='4'/><path d='M12 2v2M12 20v2M4.93 4.93l1.41 1.41M17.66 17.66l1.41 1.41M2 12h2M20 12h2M4.93 19.07l1.41-1.41M17.66 6.34l1.41-1.41'/></svg>");
}
.mm-chip--detect::before{
-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M12 17a5 5 0 0 0 0-10'/><path d='M12 21a9 9 0 0 0 0-18'/><circle cx='12' cy='12' r='1.5' fill='black'/></svg>");
mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M12 17a5 5 0 0 0 0-10'/><path d='M12 21a9 9 0 0 0 0-18'/><circle cx='12' cy='12' r='1.5' fill='black'/></svg>");
}
.mm-chip--remote::before{
-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><rect x='6' y='2' width='12' height='20' rx='2'/><circle cx='12' cy='7' r='1.2' fill='black'/><line x1='9' y1='12' x2='15' y2='12'/><line x1='9' y1='16' x2='15' y2='16'/></svg>");
mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><rect x='6' y='2' width='12' height='20' rx='2'/><circle cx='12' cy='7' r='1.2' fill='black'/><line x1='9' y1='12' x2='15' y2='12'/><line x1='9' y1='16' x2='15' y2='16'/></svg>");
}
.mm-chip--usb::before{
-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><polygon points='13 2 4 14 11 14 10 22 20 9 13 9 13 2'/></svg>");
mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><polygon points='13 2 4 14 11 14 10 22 20 9 13 9 13 2'/></svg>");
}
.mm-chip--head::before{
-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'><line x1='6' y1='18' x2='18' y2='6'/><polyline points='9 6 18 6 18 15'/></svg>");
mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'><line x1='6' y1='18' x2='18' y2='6'/><polyline points='9 6 18 6 18 15'/></svg>");
}
.mm-chip--plug::before{
-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M9 2v6M15 2v6M6 8h12v3a6 6 0 0 1-12 0V8z'/><path d='M12 17v5'/></svg>");
mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M9 2v6M15 2v6M6 8h12v3a6 6 0 0 1-12 0V8z'/><path d='M12 17v5'/></svg>");
}

/* ---------- Style B · 230V: split panes w/ ambiance hero ---------- */
.mm-230v .mega-menu__inner{
grid-template-columns:1.05fr 1.05fr 1.5fr;grid-auto-flow:row;padding:36px 0 36px;
}
.mm-230v .mega-menu__column{
background:linear-gradient(180deg,#fbfdfc,#f4f7f5);
border:1px solid #e5ede8;border-radius:var(--mm-radius);
padding:18px 20px;margin:calc(var(--mega-menu-column-gap)/2);
}
.mm-230v .mega-menu__column .mega-menu__title{
display:flex;font-size:.95rem;color:var(--mm-accent-dark);margin-bottom:10px;
padding-bottom:10px;border-bottom:1px solid #dbe6de;
}
.mm-230v .mega-menu__images-wrapper{
margin:calc(var(--mega-menu-column-gap)/2);
display:grid;grid-template-rows:auto 1fr;gap:14px;
}
.mm-230v .mm-hero{
position:relative;border-radius:var(--mm-radius);overflow:hidden;min-height:240px;
display:flex;flex-direction:column;justify-content:flex-end;padding:24px;
background:#222;color:#fff;isolation:isolate;
}
.mm-230v .mm-hero img{
position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-1;
transition:transform .6s ease;
}
.mm-230v .mm-hero:hover img{transform:scale(1.05);}
.mm-230v .mm-hero::after{
content:"";position:absolute;inset:0;z-index:-1;
background:linear-gradient(180deg,rgba(0,0,0,.1) 30%,rgba(0,0,0,.65) 100%);
}
.mm-230v .mm-hero-eyebrow{
font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;opacity:.85;
font-weight:600;margin-bottom:4px;
}
.mm-230v .mm-hero-title{font-size:1.25rem;font-weight:700;margin:0 0 4px;}
.mm-230v .mm-hero-cta{
display:inline-flex;align-items:center;gap:6px;font-size:.85rem;font-weight:600;
margin-top:8px;color:#fff;text-decoration:underline;text-underline-offset:3px;
}

/* ---------- Style C · Basse tension: dual card panels ---------- */
.mm-bt .mega-menu__inner{
grid-template-columns:1fr 1fr;grid-auto-flow:row;padding:36px 0 36px;gap:24px;
}
.mm-bt .mm-card{
margin:calc(var(--mega-menu-column-gap)/2);
border-radius:var(--mm-radius);padding:24px 26px;
background:#fff;border:1px solid #e5ede8;
position:relative;overflow:hidden;transition:box-shadow .25s;
}
.mm-bt .mm-card:hover{box-shadow:0 8px 20px -8px rgba(39,107,66,.18);}
.mm-bt .mm-card::before{
content:"";position:absolute;top:0;left:0;right:0;height:4px;
background:linear-gradient(90deg,var(--mm-accent),#3a855a,#79c094);
}
.mm-bt .mm-card-head{display:flex;align-items:center;gap:12px;margin-bottom:14px;}
.mm-bt .mm-card-icon{
width:44px;height:44px;border-radius:12px;background:var(--mm-accent-soft);
color:var(--mm-accent-dark);display:grid;place-items:center;font-size:1.25rem;
flex-shrink:0;
}
.mm-bt .mm-card-title{font-size:1rem;font-weight:700;color:#1a1a1a;margin:0;}
.mm-bt .mm-card-sub{font-size:.78rem;color:#6b7280;margin:2px 0 0;}
.mm-bt .mm-card .linklist__item a{font-size:.91rem;padding:6px 0;}

/* ---------- Style D · Par espace: room mosaic ---------- */
.mm-espace .mega-menu__inner{
grid-template-columns:1fr;grid-auto-flow:row;padding:32px 0 36px;gap:18px;
}
.mm-espace .mm-group{margin:0 calc(var(--mega-menu-column-gap)/2);}
.mm-espace .mm-group-head{
display:flex;align-items:center;gap:10px;margin:6px 0 14px;
font-size:.8rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;
color:var(--mm-accent-dark);
}
.mm-espace .mm-group-head::before{
content:"";display:inline-block;width:24px;height:2px;background:var(--mm-accent);
border-radius:2px;
}
.mm-espace .mm-group-head .mm-group-tail{
flex:1;height:1px;background:#e2e8f0;margin-left:6px;
}
.mm-espace .mm-grid{
display:grid;grid-template-columns:repeat(5,1fr);gap:14px;
}
.mm-espace .mm-tile{
display:block;text-decoration:none;color:#1a1a1a;
border-radius:var(--mm-radius);overflow:hidden;position:relative;
background:#f4f7f5;aspect-ratio:5/4;transition:transform .25s,box-shadow .25s;
}
.mm-espace .mm-tile:hover{transform:translateY(-3px);box-shadow:0 10px 22px -10px rgba(39,107,66,.30);}
.mm-espace .mm-tile img{
position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
transition:transform .55s ease;
}
.mm-espace .mm-tile:hover img{transform:scale(1.08);}
.mm-espace .mm-tile::after{
content:"";position:absolute;inset:0;
background:linear-gradient(180deg,rgba(0,0,0,0) 40%,rgba(0,0,0,.65) 100%);
}
.mm-espace .mm-tile-label{
position:absolute;left:12px;right:12px;bottom:10px;color:#fff;font-size:.85rem;
font-weight:600;text-shadow:0 2px 6px rgba(0,0,0,.45);z-index:1;
display:flex;align-items:center;justify-content:space-between;gap:6px;
}
.mm-espace .mm-tile-label::after{content:"›";font-weight:400;font-size:1.1rem;}
.mm-espace .mm-tile--soft{
background:linear-gradient(135deg,#e8f3ec,#d6e3da);
}
.mm-espace .mm-tile--soft .mm-tile-label{color:var(--mm-accent-dark);text-shadow:none;}
.mm-espace .mm-tile--soft::after{display:none;}

/* ---------- Style E · Accessoires: compact icon strip ---------- */
.mm-acc .mega-menu__inner{
grid-template-columns:1fr;grid-auto-flow:row;padding:30px 0 30px;gap:14px;
}
.mm-acc .mm-acc-grid{
display:grid;grid-template-columns:repeat(5,1fr);gap:14px;
margin:0 calc(var(--mega-menu-column-gap)/2);
}
.mm-acc .mm-acc-tile{
display:flex;flex-direction:column;align-items:center;text-align:center;
text-decoration:none;color:#1a1a1a;padding:18px 12px 16px;border-radius:var(--mm-radius);
background:linear-gradient(180deg,#fff,#f7faf8);border:1px solid #e5ede8;
transition:all .25s;position:relative;overflow:hidden;
}
.mm-acc .mm-acc-tile:hover{
transform:translateY(-3px);border-color:var(--mm-accent);
box-shadow:0 12px 22px -12px rgba(39,107,66,.25);
}
.mm-acc .mm-acc-tile img{
width:78px;height:78px;object-fit:contain;margin-bottom:10px;
transition:transform .3s;
}
.mm-acc .mm-acc-tile:hover img{transform:scale(1.08);}
.mm-acc .mm-acc-tile-name{font-size:.92rem;font-weight:600;margin:0 0 2px;}
.mm-acc .mm-acc-tile-sub{font-size:.72rem;color:#6b7280;margin:0;}
.mm-acc .mm-acc-cond{
margin:6px calc(var(--mega-menu-column-gap)/2) 0;padding:14px 18px;
background:#fbfdfc;border:1px dashed #d6e3da;border-radius:var(--mm-radius-sm);
display:flex;flex-wrap:wrap;gap:10px;align-items:center;
font-size:.8rem;color:#4a5568;
}
.mm-acc .mm-acc-cond-label{
font-size:.7rem;font-weight:700;color:var(--mm-accent-dark);
text-transform:uppercase;letter-spacing:.08em;margin-right:6px;
}

/* ---------- v10 (5/15 client) PROMOS/BONS PLANS — 完全照官网纯文字 + 红圆点 ---------- */
.nav-text-bold {
  font-weight: 600;
  font-size: inherit;
  color: inherit;
  letter-spacing: 0;
  text-transform: none;
}
.promos-pct-dot {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  margin-left: 6px;
  border-radius: 50%;
  background: #e60023;
  color: #fff;
  font-size: 10px;
  font-weight: 700;
  line-height: 1;
  vertical-align: middle;
}
/* v10 旧 pill 残留 — 全失效 */
.mm-pill, .mm-pill--promos, .mm-pill--bonplan, .mm-pill--new { all: unset; }
.mm-pill--promos::before, .mm-pill--bonplan::before, .mm-pill--new::after { content: none !important; display: none !important; }

/* ---------- Style H · Plus: tight dropdown card (v10 修正: 去 ● 圆点 + 左对齐) ---------- */
.mm-plus .nav-dropdown{
background:#fff;border-radius:var(--mm-radius);
box-shadow:0 18px 40px -12px rgba(20,40,30,.18),0 6px 14px -8px rgba(20,40,30,.10);
padding:8px 0;min-width:200px;border:1px solid rgba(39,107,66,.10);
}
.mm-plus .nav-dropdown__item a{
display:block;
padding:7px 18px;
font-size:13.5px;
color:#1a1a1a;
text-decoration:none;
text-align:left !important;
line-height:1.5;
transition:color .15s ease, background .15s ease;
}
.mm-plus .nav-dropdown__item a::before,
.mm-plus .nav-dropdown__item a::after { content:none !important; display:none !important; }
.mm-plus .nav-dropdown__item a:hover{
background:#f7faf7;
color:#276B42;
}

/* ---------- Responsive guards ---------- */
@media (max-width:1199px){
.mm-espace .mm-grid{grid-template-columns:repeat(3,1fr);}
.mm-acc .mm-acc-grid{grid-template-columns:repeat(3,1fr);}
.mm-230v .mega-menu__inner{grid-template-columns:1fr 1fr;}
.mm-230v .mega-menu__images-wrapper{grid-column:1 / -1;}
}

/* Brand-link special look — v11 (5/16): 600 to match PROMOS/BONS PLANS */
.header__linklist-link{font-weight:600;}
.header__linklist-item .mm-pill{padding-top:3px;padding-bottom:3px;}

/* Product Grid Styles */
.product-item {
position: relative;
overflow: hidden;
transition: box-shadow 0.3s ease;
border-radius: 12px;
background-color: white;
margin-bottom: 20px;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
}
.product-item:hover {
box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08);
}
/* Footer Styles */
#shopify-section-sections--25458834145659__footer .footer {
--background: 39, 107, 66;
--heading-color: 255, 255, 255;
--text-color: 255, 255, 255;
--border-color: 71, 129, 94;
}
#shopify-section-sections--25458834145659__text-with-icons {
--heading-color: 27, 27, 27;
--text-color: 51, 51, 51;
--section-background: 247, 249, 247;
--vertical-breather: 40px;
}
/* ============================================================================
🎨 LUMIHOME - STYLES AMP PERSONNALISÉS
============================================================================ */
:root {
--brand-black: #1a1a1a;
--brand-dark: #2d3748;
--brand-medium: #4a5568;
--brand-light: #718096;
--accent-blue: #276B42;
--accent-blue-dark: #1e5333;
--accent-blue-light: #3a855a;
--accent-blue-gradient: linear-gradient(135deg, #1e5333 0%, #276B42 50%, #3a855a 100%);
--footer-bg: #276B42;
--footer-dark: #1e5333;
--footer-light: #3a855a;
--footer-gradient: linear-gradient(135deg, #1e5333 0%, #276B42 50%, #3a855a 100%);
--gold: #ffd700;
--amber: #ffb347;
--light-amber: #ffcc80;
--gold-gradient: linear-gradient(135deg, #ffd700 0%, #ffb347 50%, #ffd700 100%);
--warm-white: #f8f4e9;
--pure-white: #ffffff;
--off-white: #f7fafc;
--light-gray: #e2e8f0;
--gradient-brand: linear-gradient(135deg, #1a1a1a 0%, #2d3748 30%, #4a5568 70%, #718096 100%);
--gradient-accent: linear-gradient(135deg, #1e5333 0%, #276B42 30%, #3a855a 70%, #4ca06b 100%);
--gradient-footer: linear-gradient(135deg, #1e5333 0%, #276B42 50%, #3a855a 100%);
--gradient-gold: linear-gradient(135deg, #ffd700 0%, #ffb347 50%, #ffd700 100%);
--gradient-light: linear-gradient(135deg, #f8f4e9 0%, #ffffff 100%);
--shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.08);
--shadow-md: 0 6px 20px rgba(0, 0, 0, 0.12);
--shadow-lg: 0 12px 32px rgba(0, 0, 0, 0.15);
--shadow-xl: 0 20px 50px rgba(0, 0, 0, 0.18);
--shadow-accent: 0 4px 20px rgba(39, 107, 66, 0.3);
--shadow-footer: 0 4px 20px rgba(39, 107, 66, 0.3);
--shadow-gold: 0 4px 20px rgba(255, 215, 0, 0.4);
--border-brand: #2d3748;
--border-accent: #276B42;
--border-footer: #276B42;
--border-light: #e2e8f0;
--btn-brand: #1a1a1a;
--btn-brand-hover: #2d3748;
--btn-brand-active: #4a5568;
--btn-accent: #276B42;
--btn-accent-hover: #1e5333;
--btn-accent-active: #153d25;
--btn-footer: #276B42;
--btn-footer-hover: #1e5333;
--btn-footer-active: #153d25;
--font-primary: 'Poppins', sans-serif;
--fw-light: 300;
--fw-regular: 400;
--fw-medium: 500;
--fw-semibold: 600;
--fw-bold: 700;
--fw-extrabold: 800;
--fs-h1: 3rem;
--fs-h2: 2.25rem;
--fs-h3: 1.25rem;
--fs-h4: 1rem;
--fs-body-lg: 1.125rem;
--fs-body: 1rem;
--fs-small: 0.875rem;
--fs-caption: 0.75rem;
--lh-tight: 1.2;
--lh-normal: 1.5;
--lh-relaxed: 1.6;
--ls-tight: -0.02em;
--ls-normal: 0;
--ls-wide: 0.05em;
--ls-wider: 0.08em;
--color-heading: #1A1A1A;
--color-body: #4A5568;
--color-muted: #6B7280;
--color-white: #FFFFFF;
--color-accent-blue: #276B42;
--color-footer-green: #276B42;
--color-gold: #FFD700;
}
/* 公共区块 */
.section {
margin: 0 auto;
}
.section-title {
text-align: center;
color: var(--brand-black);
font-size: 2.2rem;
margin-bottom: 15px;
font-weight: 800;
letter-spacing: -0.3px;
position: relative;
display: inline-block;
left: 50%;
transform: translateX(-50%);
padding-bottom: 10px;
}
.section-title::after {
content: '';
display: block;
width: 80px;
height: 3px;
background: var(--accent-blue-gradient);
margin: 10px auto 0;
border-radius: 2px;
box-shadow: 0 2px 4px rgba(97,176,207,0.3);
}
.section-subtitle {
text-align: center;
color: var(--brand-medium);
font-size: 1.1rem;
margin-bottom: 50px;
max-width: 700px;
margin-left: auto;
margin-right: auto;
font-weight: 400;
}
/* 页脚 */
.footer {
background-color: var(--footer-bg);
color: var(--pure-white);
padding: 70px 20px 30px;
position: relative;
}
.footer::before {
content: '';
position: absolute;
top: 0; left: 0; width: 100%; height: 3px;
background: var(--gradient-gold);
}
.footer-content {
max-width: 1200px;
margin: 0 auto;
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 50px;
margin-bottom: 50px;
}
.footer-section h3 {
color: var(--pure-white);
margin-bottom: 20px;
font-size: 1.2rem;
font-weight: 700;
position: relative;
padding-bottom: 10px;
}
.footer-section h3::after {
content: '';
position: absolute;
bottom: 0; left: 0;
width: 40px; height: 2px;
background: var(--gold);
}
.footer-description {
opacity: 0.9;
line-height: 1.5;
margin-bottom: 20px;
font-size: 0.9rem;
}
.footer-links {
display: flex;
flex-direction: column;
gap: 12px;
}
.footer-links a {
color: rgba(255,255,255,0.9);
text-decoration: none;
transition: all 0.3s ease;
font-size: 0.9rem;
display: flex;
align-items: center;
padding: 4px 0;
}
.footer-links a:hover {
color: var(--gold);
padding-left: 8px;
}
.footer-links a::before {
content: '→';
margin-right: 5px;
opacity: 0;
transition: all 0.3s ease;
}
.footer-links a:hover::before { opacity: 1; }
.social-icons {
display: flex;
gap: 10px;
margin-top: 20px;
flex-wrap: wrap;
}
.social-icon {
display: inline-flex;
align-items: center;
justify-content: center;
width: 40px; height: 40px;
background: rgba(255,255,255,0.1);
border-radius: 50%;
color: var(--pure-white);
text-decoration: none;
transition: all 0.3s ease;
}
.social-icon:hover {
background: var(--gold);
color: var(--footer-bg);
transform: translateY(-3px);
box-shadow: var(--shadow-gold);
}
.social-icon svg { width: 18px; height: 18px; fill: currentColor; }
.footer-bottom {
text-align: center;
padding-top: 30px;
border-top: 1px solid rgba(255,255,255,0.15);
opacity: 0.8;
font-size: 0.85rem;
max-width: 1200px;
margin: 0 auto;
}
/* 英雄区域 - 简化版用于详情页不展示 */
.hero { display: none; }
/* 设备自适应图片 */
.pc-img, .pc-only { display: block; }
.pad-img, .pad-only { display: none; }
.h5-img, .h5-only { display: none; }
@media (max-width:1200px) and (min-width:769px) {
.pc-img, .pc-only { display: none; }
.pad-img, .pad-only { display: block; }
.h5-img, .h5-only { display: none; }
}
@media (max-width:768px) {
.pc-img, .pc-only { display: none; }
.pad-img, .pad-only { display: none; }
.h5-img, .h5-only { display: block; }
}
/* 动画 */
.animate-fade-in-up { animation: fadeInUp 0.6s ease-out; }
@keyframes fadeInUp {
from { opacity:0; transform:translateY(30px); }
to { opacity:1; transform:translateY(0); }
}
/* 移动端优化 */
@media (max-width: 768px) {
.section,
.featured-products,
.testimonials,
.partners,
.media,
.faq {
padding: 30px 15px ;
}
.section-title {
font-size: 1.6rem ;
margin-bottom: 10px;
}
.section-subtitle {
font-size: 0.9rem !important;
margin-bottom: 30px;
padding: 0 10px;
}
.footer-content {
grid-template-columns: 2fr !important;
gap: 30px;
margin-bottom: 30px;
}
.footer-section h3::after {
left: 50%;
transform: translateX(-50%);
}
.social-icons {
justify-content: center;
}
}
a {
cursor: pointer;
}

/* ============================================================================
   🎨 PRODUCT PAGE SPECIFIC STYLES (optimisé et aligné)
   ============================================================================ */
:root {
    --product-text-color: #333;
    --product-bg-color: #fff;
    --accent-green: #276B42;
    --accent-green-hover: #1e5333;
    --border-light: #e5e5e5;
}

/* Layout Grid for Product Top Section */
.product-layout-container {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
    gap: clamp(24px, 4vw, 56px);
    max-width: 1320px;
    margin: 0 auto;
    padding: clamp(20px, 3vw, 40px) clamp(16px, 3vw, 28px);
    align-items: start;
    box-sizing: border-box;
}

/* --- LEFT: Sticky Gallery --- */
.product-gallery-wrapper {
    position: sticky;
    top: 120px;
    width: 100%;
    min-width: 0; /* prevent grid overflow */
}

/* 0603 docx Léo P1: "On laptop, the first picture seems too big" — desktop 端缩到 max 520px */
.main-image-container {
    position: relative;
    width: 100%;
    max-width: 520px;
    margin-left: auto;
    margin-right: auto;
    aspect-ratio: 1 / 1;
    background: #f9f9f9;
    border-radius: 12px;
    overflow: hidden;
    margin-bottom: 20px;
    box-shadow: var(--shadow-sm);
}
@media(max-width:960px){.main-image-container{max-width:none}}

.main-image-container img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: opacity 0.3s ease;
}

/* Day/Night Toggle Overlay Button */
.day-night-toggle {
    position: absolute;
    bottom: 20px;
    right: 20px;
    background: rgba(255,255,255,0.95);
    border: 1px solid var(--border-light);
    padding: 10px 18px;
    border-radius: 40px;
    cursor: pointer;
    font-weight: 600;
    font-size: 14px;
    display: flex;
    align-items: center;
    gap: 8px;
    box-shadow: var(--shadow-md);
    z-index: 10;
    transition: all 0.2s ease;
}
.day-night-toggle:hover {
    background: #fff;
    transform: translateY(-2px);
}

/* v13-2 (5/18 客户) ⑨ — 缩略图调大：从 4 列 → 2 列（同原 lumihome.com 详情页）*/
.thumbnail-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 14px;
}
.thumb-item {
    aspect-ratio: 1/1;
    border-radius: 10px;
    overflow: hidden;
    cursor: pointer;
    border: 2px solid transparent;
    transition: all 0.2s;
    background: #f7f9f7;
}
.thumb-item.active {
    border-color: var(--accent-green);
    transform: scale(0.98);
}
/* v14 (5/20 客户) — 默认只显示前 4 张缩略图，展开/收起切换 */
.thumb-hidden {
    display: none;
}
.thumbnail-grid.is-expanded .thumb-hidden {
    display: block;
}
.thumb-more-btn {
    display: block;
    margin: 14px auto 0;
    padding: 10px 22px;
    background: #fff;
    color: #276B42;
    border: 1px solid #cfd8d2;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
}
.thumb-more-btn:hover {
    border-color: #276B42;
    background: #f4f8f5;
}
.thumb-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    /* v13-2 ⑩: gallery 换色时的淡入淡出 */
    transition: opacity 0.25s ease;
}
.swatch-v2 { cursor: pointer; /* v13-2 ⑪: 强化可点击视觉 */ }

/* --- RIGHT: Product Info --- */
.product-info-wrapper {
    padding-top: 0;
    min-width: 0; /* prevent grid overflow */
    width: 100%;
}

.breadcrumb-nav {
    font-size: 13px;
    color: #666;
    margin-bottom: 20px;
}
.breadcrumb-nav a {
    color: #666;
    text-decoration: none;
}
.breadcrumb-nav a:hover {
    color: var(--accent-green);
}
.breadcrumb-nav span {
    margin: 0 5px;
}

.product-title {
    font-family: var(--heading-font-family);
    font-size: 2.2rem;
    font-weight: 700;
    color: var(--brand-black);
    margin-bottom: 12px;
    line-height: 1.2;
}

.product-rating {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 0;
    font-size: 14px;
}
/* 0603 docx Léo P1: 买盒评分星更大更鲜亮 */
.stars {
    color: #ffb800;
    letter-spacing: 3px;
    font-size: 22px;
    line-height: 1;
    text-shadow: 0 1px 2px rgba(255,184,0,.25);
}
.product-rating .stars + span { font-weight: 700; color:#1a1a1a; }

.product-price-block {
    margin-bottom: 24px;
    padding-bottom: 24px;
    border-bottom: 1px solid var(--border-light);
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px 12px;
}
.current-price {
    font-size: clamp(1.6rem, 4vw, 2rem);
    font-weight: 700;
    color: var(--accent-green);
    line-height: 1;
}
.compare-price {
    font-size: clamp(1rem, 2.4vw, 1.2rem);
    text-decoration: line-through;
    color: #999;
}
.badge-save {
    background: #ffebee;
    color: #c62828;
    padding: 4px 10px;
    border-radius: 30px;
    font-size: 12px;
    font-weight: 700;
    vertical-align: middle;
    white-space: nowrap;
}

/* v16 (5/22 客户): 3 specs pills — alignées sur lumihome.com */
.spec-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0 0 14px;
}
.spec-pills--top { margin: 0 0 12px; }
.spec-pill {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    background: #fff;
    border: 1.5px solid #e2e6e2;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 600;
    color: #33392f;
}
.spec-pill svg { width: 14px; height: 14px; flex: 0 0 auto; }
.spec-pill--solaire svg { color: #f6a429; }
.spec-pill--lumens svg,
.spec-pill--remote svg { color: #276B42; }

/* v11 (5/16 客户): 紧行距 — 客户截图标红 "行距太大"，最多 5 行 */
.short-desc-list {
    list-style: none;
    padding: 0;
    margin-bottom: 20px;
}
.short-desc-list li {
    position: relative;
    padding-left: 24px;
    margin-bottom: 6px;
    font-size: 14.5px;
    line-height: 1.4;
    color: #333;
}
.short-desc-list li::before {
    content: '✓';
    position: absolute;
    left: 0;
    top: 1px;
    color: var(--accent-green);
    font-weight: bold;
    font-size: 16px;
}

/* Variant Selector */
.variant-selector {
    margin-bottom: 24px;
}
.variant-label {
    font-weight: 600;
    margin-bottom: 10px;
    display: block;
}
.color-swatches {
    display: flex;
    gap: 12px;
}
.swatch {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: 2px solid #ddd;
    cursor: pointer;
    transition: all 0.2s;
}
.swatch.active {
    border-color: var(--accent-green);
    transform: scale(1.1);
    box-shadow: 0 0 0 2px rgba(39,107,66,0.3);
}

/* v9: Actions row — quantity + add-to-cart aligned, fixed equal 52px height */
.add-to-cart-form {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    gap: 12px;
    margin-bottom: 20px;
}
.quantity-input {
    display: inline-flex;
    align-items: stretch;
    border: 1.5px solid #d8ddd8;
    border-radius: 999px;
    width: 140px;
    height: 52px;
    flex: 0 0 auto;
    background: #fff;
    overflow: hidden;
}
.qty-btn {
    background: none;
    border: none;
    width: 44px;
    height: 100%;
    cursor: pointer;
    font-size: 20px;
    font-weight: 500;
    color: #555;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    transition: background .15s, color .15s;
}
.qty-btn:hover { background: #f3f5f3; color: var(--accent-green); }
.qty-val {
    flex: 1;
    width: 100%;
    text-align: center;
    border: none;
    outline: none;
    font-size: 16px;
    font-weight: 700;
    color: #1a1a1a;
    background: transparent;
    padding: 0;
    -moz-appearance: textfield;
}
.qty-val::-webkit-outer-spin-button,
.qty-val::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.btn-add-cart {
    flex: 1 1 220px;
    height: 52px;
    background: var(--accent-green);
    color: white;
    border: none;
    border-radius: 999px;
    font-weight: 700;
    font-size: 14.5px;
    letter-spacing: 0.04em;
    cursor: pointer;
    transition: background 0.25s ease, transform 0.2s ease, box-shadow 0.2s ease;
    text-transform: uppercase;
    padding: 0 24px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}
.btn-add-cart:hover {
    background: var(--accent-green-hover);
    transform: translateY(-1px);
    box-shadow: 0 6px 16px rgba(39,107,66,.25);
}
.btn-add-cart:active { transform: translateY(0); }
/* v16 (5/22 客户) — bouton paiement express, 与 "Ajouter au panier" 等宽对齐 */
.buy-now-row {
    display: flex;
    gap: 12px;
    margin-bottom: 20px;
}
.buy-now-spacer { flex: 0 0 140px; }
.btn-buy-now {
    flex: 1 1 220px; height: 52px;
    background: #1a1a1a; color: #fff; border: none; border-radius: 999px;
    font-weight: 700; font-size: 14px; letter-spacing: .04em; text-transform: uppercase;
    cursor: pointer; display: inline-flex; align-items: center; justify-content: center; gap: 8px;
    transition: background .2s ease, transform .15s ease;
}
.btn-buy-now:hover { background: #000; transform: translateY(-1px); }
.btn-buy-now:active { transform: translateY(0); }

/* v16 (5/22 客户) ③ — 信任条紧凑：缩小内边距/间距，字号 +2px */
.trust-badges {
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
    background: #f8f9fa;
    padding: 9px 12px;
    border-radius: 12px;
    margin-top: 16px;
    gap: 4px 6px;
}
.trust-item {
    text-align: center;
    font-size: 13.5px;
    font-weight: 500;
    color: #555;
    flex: 1 1 30%;
    min-width: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
}
.trust-item svg {
    width: 19px;
    height: 19px;
    margin-bottom: 0;
    flex: 0 0 auto;
    fill: var(--accent-green);
}

/* v16 (5/22 客户) ① — 动态配送信息 */
.ship-info-v16 {
    /* v16 (5/22 客户) — 配送行移到购买按钮上方 */
    margin-top: 2px;
    margin-bottom: 14px;
    display: flex;
    flex-direction: column;
    gap: 3px;
}
.ship-line {
    font-size: 13px;
    color: #444;
    display: flex;
    align-items: center;
    gap: 7px;
    line-height: 1.4;
}
.ship-line strong { color: var(--accent-green); font-weight: 700; }
.ship-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--accent-green);
    box-shadow: 0 0 0 3px rgba(39,107,66,.15);
    flex: 0 0 auto;
}
.ship-line--prime {
    font-size: 12px;
    color: #777;
    padding-left: 15px;
}

/* --- SECTIONS BELOW FOLD --- */

/* ============================================================================
   ✨ At a Glance — Carousel horizontal (Swiper) avec titre + flèches
============================================================================ */
.at-a-glance-bar {
    background: linear-gradient(180deg, #f7faf7 0%, #ffffff 100%);
    border-top: 1px solid var(--border-light);
    border-bottom: 1px solid var(--border-light);
    padding: clamp(32px, 5vw, 56px) clamp(16px, 3vw, 24px);
    margin-top: 24px;
}
.glance-wrapper {
    max-width: 1280px;
    margin: 0 auto;
    text-align: center;
}
.glance-title {
    font-family: var(--heading-font-family);
    font-size: clamp(1.6rem, 3vw, 2.1rem);
    font-weight: 700;
    color: var(--brand-black);
    margin: 0 0 28px;
    letter-spacing: -0.01em;
}
.glance-carousel {
    position: relative;
    padding: 0 56px; /* room for arrow buttons */
}
.glance-swiper {
    overflow: hidden;
    padding: 4px 2px 8px; /* prevent shadow clipping */
}
.glance-swiper .swiper-wrapper {
    align-items: stretch;
}
.glance-item {
    text-align: center;
    background: #fff;
    border: 1px solid #eef2ef;
    border-radius: 14px;
    padding: 22px 14px 20px;
    box-sizing: border-box;
    min-width: 0;
    height: auto;
    transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}
.glance-item:hover {
    transform: translateY(-3px);
    box-shadow: var(--shadow-md);
    border-color: rgba(39, 107, 66, 0.25);
}
.glance-item .icon-box {
    width: 56px;
    height: 56px;
    margin: 0 auto 14px;
    background: #e8f2ec;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--accent-green);
}
.glance-item .icon-box svg {
    width: 26px;
    height: 26px;
    color: var(--accent-green);
}
.glance-item h4 {
    font-size: 11px;
    color: #777;
    margin: 0 0 6px;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    font-weight: 600;
    line-height: 1.3;
}
.glance-item p {
    font-weight: 700;
    font-size: 14px;
    color: var(--brand-black);
    margin: 0;
    line-height: 1.35;
    word-break: break-word;
}

/* --- Boutons flèche style lumihome --- */
.glance-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 44px;
    height: 44px;
    border-radius: 50%;
    border: none;
    background: var(--accent-green);
    color: #fff;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 12px rgba(39, 107, 66, 0.25);
    transition: background 0.2s ease, transform 0.2s ease, opacity 0.2s ease;
    z-index: 5;
}
.glance-nav:hover {
    background: var(--accent-green-hover);
    transform: translateY(-50%) scale(1.06);
}
.glance-nav:disabled,
.glance-nav.swiper-button-disabled {
    opacity: 0.35;
    cursor: not-allowed;
    transform: translateY(-50%);
}
.glance-nav-prev { left: 0; }
.glance-nav-next { right: 0; }

/* --- Pagination dots --- */
.glance-pagination {
    margin-top: 20px;
    display: flex;
    justify-content: center;
    gap: 6px;
}
.glance-pagination .swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #cdd5cf;
    opacity: 1;
    transition: background 0.2s ease, width 0.2s ease;
    cursor: pointer;
}
.glance-pagination .swiper-pagination-bullet-active {
    background: var(--accent-green);
    width: 22px;
    border-radius: 4px;
}

/* 视频模块样式 */
.video-section {
    max-width: 1280px;
    margin: 40px auto;
    padding: 0 clamp(16px, 3vw, 24px);
}
.video-container {
    position: relative;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: var(--shadow-lg);
    cursor: pointer;
    background: #000;
}
.video-cover {
    width: 100%;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    display: block;
}
.play-button {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 80px;
    height: 80px;
    background: rgba(0,0,0,0.7);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s;
}
.play-button svg {
    width: 40px;
    height: 40px;
    fill: white;
    margin-left: 5px;
}
.video-container:hover .play-button {
    background: var(--accent-green);
    transform: translate(-50%, -50%) scale(1.05);
}
.video-iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
}

/* ============================================================
   Product Accordion (style solarversand) — sections repliables
   Remplace l'ancien Tabs + standalone sections.
============================================================ */
.product-accordion-section {
    padding: clamp(36px, 5vw, 64px) 0;
    background: #fff;
}
.product-accordion-section .acc-wrap {
    /* v16 (5/22 客户) ⑫ — 宽度对齐 At a glance (.glance-wrapper = 1280px) */
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 clamp(16px, 3vw, 24px);
}
.acc-section-title {
    text-align: center;
    font-size: clamp(1.5rem, 3vw, 2rem);
    font-weight: 700;
    color: var(--brand-black, #1a1a1a);
    margin: 0 0 28px;
    letter-spacing: -0.01em;
}
/* v16 (5/22 客户) ⑦ — 白天/黑夜对比图块 */
.daynight-compare {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    margin: 0 0 32px;
}
.daynight-cell {
    position: relative;
    margin: 0;
    border-radius: 16px;
    overflow: hidden;
    aspect-ratio: 4 / 3;
    background: #f3f5f3;
}
.daynight-cell img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.daynight-tag {
    position: absolute;
    top: 12px;
    left: 12px;
    padding: 5px 14px;
    border-radius: 999px;
    font-size: 12.5px;
    font-weight: 700;
    letter-spacing: .02em;
    color: #fff;
    backdrop-filter: blur(4px);
}
.daynight-tag--day   { background: rgba(39,107,66,.92); }
.daynight-tag--night { background: rgba(26,26,26,.82); }
@media (max-width: 640px) {
    .daynight-compare { grid-template-columns: 1fr; gap: 12px; }
}
.acc-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.acc-item {
    background: #eff3fa;
    border: 1px solid transparent;
    border-radius: 10px;
    overflow: hidden;
    transition: background 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}
.acc-item.open {
    background: #ffffff;
    border-color: #e2e8f0;
    box-shadow: 0 2px 14px rgba(0,0,0,0.05);
}
.acc-head {
    width: 100%;
    padding: 16px 20px;
    background: none;
    border: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 14px;
    font-family: inherit;
    font-size: 1rem;
    font-weight: 500;
    color: #1a1a1a;
    text-align: left;
    transition: color 0.2s ease;
}
.acc-head:hover {
    color: var(--accent-green, #276B42);
}
.acc-head:focus-visible {
    outline: 2px solid var(--accent-green, #276B42);
    outline-offset: -2px;
}
.acc-icon {
    flex-shrink: 0;
    width: 24px;
    height: 24px;
    color: #4a5568;
    opacity: 0.85;
    display: flex;
    align-items: center;
    justify-content: center;
}
.acc-icon svg {
    width: 22px;
    height: 22px;
}
.acc-item.open .acc-icon {
    color: var(--accent-green, #276B42);
    opacity: 1;
}
.acc-label {
    flex: 1;
    min-width: 0;
    overflow-wrap: anywhere;
}
.acc-chevron {
    flex-shrink: 0;
    width: 22px;
    height: 22px;
    color: #6b7280;
    transition: transform 0.3s ease, color 0.2s ease;
}
.acc-chevron svg {
    width: 100%;
    height: 100%;
    display: block;
}
.acc-item.open .acc-chevron {
    transform: rotate(180deg);
    color: var(--accent-green, #276B42);
}
.acc-body {
    max-height: 0;
    overflow: hidden;
    background: #ffffff;
    transition: max-height 0.45s cubic-bezier(0.4, 0, 0.2, 1);
}
.acc-item.open .acc-body {
    max-height: 6000px;
}
.acc-inner {
    padding: 8px 24px 28px;
}
.acc-inner > h3:first-child,
.acc-inner > .install-intro > h3 {
    margin-top: 0;
}

/* Inside accordion: tweak nested grids so they look balanced in the constrained width */
.acc-inner .specs-grid {
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 18px;
}
.acc-inner .install-steps-grid {
    margin-top: 18px;
}

/* v10 (5/15 client): Avis d'expert (Christophe C. — Fondateur Lumihome) */
.expert-review { padding: clamp(24px, 4vw, 40px) clamp(16px, 3vw, 24px); background: #fff; }
.expert-review-wrap { max-width: 900px; margin: 0 auto; }
.expert-review-card {
    background: #f8faf8;
    border: 1px solid #e6ebe8;
    border-radius: 16px;
    padding: 22px 26px;
    position: relative;
}
.expert-review-head {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 14px;
}
.expert-avatar {
    width: 48px; height: 48px;
    border-radius: 50%;
    object-fit: cover;
    background: #fff;
    border: 1px solid #e6ebe8;
}
.expert-meta { flex: 1; display: flex; flex-direction: column; line-height: 1.3; }
.expert-name { font-weight: 700; color: #1a1a1a; font-size: 15px; }
.expert-role {
    color: #666;
    font-size: 11.5px;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}
.expert-badge {
    background: #276B42;
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    padding: 6px 14px;
    border-radius: 999px;
    white-space: nowrap;
}
.expert-quote {
    margin: 0;
    font-size: 14.5px;
    line-height: 1.7;
    color: #333;
    font-style: italic;
    border-left: 3px solid #276B42;
    padding-left: 14px;
}
@media (max-width: 540px) {
    .expert-review-head { flex-wrap: wrap; }
    .expert-badge { order: -1; margin-left: auto; }
}

/* v10 (5/15 client): Description = LEFT text + RIGHT video (esotec layout) */
.desc-video-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 24px;
    align-items: start;
}
@media (min-width: 860px) {
    .desc-video-grid { grid-template-columns: 1.05fr 1fr; gap: 32px; }
}
.desc-video-text {
    min-width: 0;
}
.desc-video-text h3 {
    font-size: clamp(1.05rem, 2.2vw, 1.25rem);
    color: #1a1a1a;
    margin: 0 0 10px;
    line-height: 1.3;
}
.desc-video-text h3:not(:first-child) { margin-top: 18px; }
.desc-video-text p {
    color: #555;
    font-size: 14.5px;
    line-height: 1.65;
    margin: 0 0 12px;
}
.desc-video-media { min-width: 0; }
/* Inline variant of videos-section when nested in Description */
.videos-section--inline { background: transparent !important; padding: 0 !important; }
.videos-section--inline .videos-wrap { max-width: none !important; padding: 0 !important; }
.videos-section--inline .videos-header { margin: 0 0 12px; text-align: left; }
.videos-section--inline .videos-title { font-size: 1.1rem; font-weight: 700; color: #1a1a1a; margin: 0 0 4px; text-align: left; }
.videos-section--inline .videos-subtitle { font-size: 13px; color: #666; margin: 0; text-align: left; }
/* v10 (5/15 client): tabs moved BELOW player → margin reversed */
.videos-section--inline .videos-tabs { gap: 6px; flex-wrap: wrap; margin: 12px 0 0; justify-content: flex-start; }
.videos-section--inline .videos-tab-btn { padding: 6px 12px; font-size: 12.5px; border-radius: 999px; }
.videos-section--inline .vt-duration { display: none !important; } /* v10 5/15: 不显示时长 */
.videos-section--inline .vt-label { font-size: 12.5px; } /* short label only */
.videos-section--inline .vt-player { border-radius: 12px; overflow: hidden; }
.videos-section--inline .vt-meta { padding: 10px 4px 0; }
.videos-section--inline .vt-title { font-size: 14px; font-weight: 600; margin: 0 0 4px; }
.videos-section--inline .vt-desc { font-size: 12.5px; color: #666; margin: 0; }
@media (max-width: 860px) {
    .videos-section--inline .videos-header { display: none; }
}

/* v10 (5/15 client) : Prix HT (gros) + PVC TTC + remises sur quantité */
/* v11 (5/16 客户): 评分链接全程 no underline (客户要求红箭头标记) */
.product-rating--link,
.product-rating--link:hover,
.product-rating--link:focus,
.product-rating--link:active { text-decoration: none !important; color: inherit; cursor: pointer; }
.product-rating--link span { text-decoration: none !important; }
.price-v2 {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 14px;
    padding: 0 0 12px;
    border-bottom: 1px solid #e5e7eb;
    margin: 0 0 12px;
}
.price-v2-left { min-width: 0; }
.price-v2-now {
    /* v16 (5/22 客户) — 价格字号缩小 2 号（之前偏大） */
    font-size: clamp(30px, 4.6vw, 38px);
    font-weight: 900;
    color: #1a1a1a;
    line-height: 1.05;
    letter-spacing: -0.015em;
}
.price-v2-tax {
    display: inline-block;
    margin-left: 6px;
    font-size: 14px;
    color: #666;
    font-weight: 600;
    vertical-align: middle;
}
.price-v2-pvc {
    font-size: 13.5px;
    color: #666;
    margin-top: 4px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
/* v11 (5/16) — product subtitle / rating row / SKU / eco line */
.product-subtitle {
    margin: -8px 0 12px;
    font-size: 14px;
    color: #555;
    line-height: 1.4;
    font-weight: 400;
}
.product-rating-row {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 6px;
    margin-bottom: 16px;
}
.product-sku-ref {
    font-size: 12px;
    color: #888;
    letter-spacing: .02em;
    font-family: ui-monospace, Menlo, Consolas, monospace;
}
/* v16 (5/22 客户) ⑬ — 分享 + 收藏按钮（标题同行，标题占主空间避免重叠） */
.product-title-row {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px;
}
.pdp-actions-v16 {
    display: flex;
    gap: 8px;
    flex-shrink: 0;
    margin-top: 3px;
}
.product-info-wrapper { position: relative; }
.pdp-action-btn {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    border: 1.5px solid #e2e6e2;
    background: #fff;
    color: #276B42;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: background .15s, border-color .15s, transform .1s;
}
.pdp-action-btn:hover { background: #f3f7f4; border-color: #276B42; }
.pdp-action-btn:active { transform: scale(.92); }
.pdp-action-btn svg { width: 18px; height: 18px; }
.pdp-action-btn.is-fav { color: #d83b3b; border-color: #f0c2c2; }
.pdp-action-btn.is-fav svg { fill: #d83b3b; stroke: #d83b3b; }
.price-v2-eco {
    font-size: 12px;
    color: #888;
    margin-top: 4px;
    font-style: italic;
}
/* v11 (5/16 客户) — PVC -X% 动态徽章（点 pill 后会更新） */
/* v11 (5/16 客户) — Dimensions PDF 下载行（"图纸在 PDF 里面"） */
.schemas-pdf-row {
    display: flex; align-items: center; gap: 14px;
    margin-top: 22px; padding: 14px 18px;
    background: #fff; border: 1px solid rgba(39,107,66,.18); border-radius: 10px;
    text-decoration: none; color: inherit;
    transition: border-color .15s, box-shadow .15s, transform .15s;
}
.schemas-pdf-row:hover {
    border-color: #276B42;
    box-shadow: 0 6px 18px -6px rgba(39,107,66,.2);
    transform: translateY(-1px);
}
.schemas-pdf-icon {
    display: inline-block; padding: 4px 9px;
    background: #d83b3b; color: #fff;
    font-size: 11px; font-weight: 700; letter-spacing: .04em;
    border-radius: 4px;
}
.schemas-pdf-label { flex: 1; display: flex; flex-direction: column; gap: 2px; }
.schemas-pdf-label strong { font-size: 14px; font-weight: 600; color: #1a1a1a; }
.schemas-pdf-label small { font-size: 12px; color: #888; }
.schemas-pdf-cta {
    display: inline-flex; align-items: center; gap: 6px;
    padding: 7px 14px; background: #276B42; color: #fff;
    border-radius: 999px; font-size: 13px; font-weight: 600;
}

.pvc-badge {
    display: inline-flex;
    align-items: center;
    padding: 8px 16px;
    background: #e85a2c;
    color: #fff;
    border-radius: 999px;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .02em;
    white-space: nowrap;
    box-shadow: 0 4px 10px -3px rgba(232,90,44,.4);
    transition: transform .15s ease, box-shadow .15s ease;
}
.pvc-badge.is-flash {
    animation: pvcFlash .35s ease;
}
@keyframes pvcFlash {
    0%   { transform: scale(1); }
    50%  { transform: scale(1.08); box-shadow: 0 6px 14px -3px rgba(232,90,44,.6); }
    100% { transform: scale(1); }
}
/* ════════════════════════════════════════════════════ */
/* v11 (5/16 客户) — Avant / Après slider (clip-path)    */
/*   两张图同尺寸同位置 absolute，clip-path 控制 BEFORE 可见 */
/*   保证场景角度 100% 对齐                                */
/* ════════════════════════════════════════════════════ */
.ba-section { padding: 60px 24px; background: #f7faf7; }
.ba-wrap { max-width: 1100px; margin: 0 auto; }
.ba-title { text-align: center; font-size: 26px; font-weight: 700; margin: 0 0 8px; color: #1a1a1a; }
.ba-sub { text-align: center; font-size: 15px; color: #555; margin: 0 0 32px; line-height: 1.5; }
.ba-compare {
    position: relative; max-width: 900px; margin: 0 auto;
    aspect-ratio: 16/9; border-radius: 14px; overflow: hidden;
    box-shadow: 0 16px 40px -12px rgba(20,40,30,.25);
    cursor: ew-resize; user-select: none;
    background: #000;
    --ba-pos: 50%;
}
.ba-compare .ba-img {
    position: absolute; inset: 0;
    width: 100%; height: 100%;
    object-fit: cover; object-position: center;
    display: block;
}
/* AFTER → bottom layer (always full, visible right of handle) */
.ba-compare .ba-img--after { z-index: 1; }
/* BEFORE → top layer, clipped from right via clip-path
   inset(top right bottom left) — right = 100% - pos, so left half stays visible */
.ba-compare .ba-img--before {
    z-index: 2;
    clip-path: inset(0 calc(100% - var(--ba-pos)) 0 0);
    -webkit-clip-path: inset(0 calc(100% - var(--ba-pos)) 0 0);
}
.ba-label {
    position: absolute; top: 16px; padding: 5px 12px; border-radius: 999px;
    background: rgba(255,255,255,.92); color: #1a1a1a; font-size: 12px; font-weight: 700;
    letter-spacing: .04em; text-transform: uppercase; box-shadow: 0 2px 6px rgba(0,0,0,.2);
    z-index: 4;
}
.ba-label--left  { left: 16px; }
.ba-label--right { right: 16px; }
.ba-handle {
    position: absolute; top: 50%;
    left: var(--ba-pos);
    width: 44px; height: 44px; border-radius: 50%;
    background: #fff; color: #1a1a1a;
    display: flex; align-items: center; justify-content: center;
    box-shadow: 0 4px 14px rgba(0,0,0,.3);
    transform: translate(-50%,-50%); cursor: ew-resize;
    transition: box-shadow .15s ease;
    z-index: 5;
}
.ba-handle::before, .ba-handle::after {
    content: ""; position: absolute; top: 50%; left: 50%;
    transform: translate(-50%,-50%);
    width: 2px; height: 9999px; background: #fff;
    box-shadow: 0 0 6px rgba(0,0,0,.25);
    z-index: -1;
}
.ba-handle:hover { box-shadow: 0 6px 18px rgba(0,0,0,.4); }
@media (max-width: 640px){
    .ba-section { padding: 40px 16px; }
    .ba-title { font-size: 22px; }
    .ba-compare { aspect-ratio: 4/5; }
}

/* ════════════════════════════════════════════════════ */
/* v11 (5/16 客户) — Sticky cart bottom bar              */
/* ════════════════════════════════════════════════════ */
.cw-cart-bar {
    position: fixed; bottom: 0; left: 0; right: 0;
    background: #1a1a1a; color: #fff;
    transform: translateY(100%); transition: transform .25s ease;
    z-index: 99998; box-shadow: 0 -8px 24px rgba(0,0,0,.2);
}
/* v15 (5/21): hide on desktop — the new PC sticky add-to-cart bar takes its place ≥1000px */
@media (min-width: 1000px){ .cw-cart-bar { display: none !important; } }
.cw-cart-bar.is-visible { transform: translateY(0); }
.cw-cart-bar-inner {
    max-width: 1200px; margin: 0 auto; padding: 12px 20px;
    display: flex; align-items: center; gap: 16px;
}
.cw-cart-bar-info { display: flex; align-items: center; gap: 10px; flex: 1; font-size: 14px; }
.cw-cart-icon { display: inline-flex; }
.cw-cart-count { display: inline-block; min-width: 22px; padding: 2px 7px;
    background: #d83b3b; color: #fff; border-radius: 999px; text-align: center;
    font-weight: 700; }
.cw-cart-btn {
    background: #fff; color: #1a1a1a; padding: 10px 22px; border-radius: 999px;
    text-decoration: none; font-weight: 600; font-size: 14px;
    transition: background .15s, transform .15s;
}
.cw-cart-btn:hover { background: #f3f4f6; transform: translateY(-1px); }
.cw-cart-close {
    background: none; border: 0; color: #fff; font-size: 24px; cursor: pointer;
    padding: 4px 8px; opacity: .7; transition: opacity .15s;
}
.cw-cart-close:hover { opacity: 1; }
@media (max-width: 640px){
    .cw-cart-bar-inner { padding: 10px 12px; gap: 8px; flex-wrap: wrap; }
    .cw-cart-bar-info { font-size: 12.5px; }
    .cw-cart-btn { padding: 8px 14px; font-size: 13px; }
}

/* ════════════════════════════════════════════════════ */
/* v11 (5/16 客户) — Trust strip (paiement / livraison)  */
/* ════════════════════════════════════════════════════ */
.cw-trust-strip { background: #f7faf7; padding: 40px 24px; border-top: 1px solid rgba(39,107,66,.1); }
.cw-trust-inner {
    max-width: 1200px; margin: 0 auto;
    display: grid; grid-template-columns: repeat(4,1fr); gap: 24px;
}
.cw-trust-col { display: flex; flex-direction: column; gap: 4px; }
.cw-trust-col strong { color: #276B42; font-size: 14px; font-weight: 700; }
.cw-trust-col span { color: #555; font-size: 13px; line-height: 1.4; }
.cw-trust-col em { color: #d83b3b; font-style: normal; font-weight: 600; }
@media (max-width: 900px){
    .cw-trust-inner { grid-template-columns: repeat(2,1fr); }
}
@media (max-width: 500px){
    .cw-trust-inner { grid-template-columns: 1fr; }
}

/* v11 (5/16 客户) PVC ⓘ tooltip — 小白卡 + 箭头（照客户参考），干净不出框 */
.pvc-info-icon {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    font-size: 13px;
    color: #6b7280;
    cursor: help;
    border-radius: 50%;
    transition: color .15s, background .15s;
}
.pvc-info-icon:hover,
.pvc-info-icon:focus {
    color: #1a1a1a;
    background: #f3f4f6;
    outline: none;
}
.pvc-tooltip {
    position: absolute;
    top: calc(100% + 10px);
    left: 50%;
    transform: translateX(-50%);
    width: max-content;
    max-width: 220px;
    padding: 10px 12px;
    font-size: 12px;
    font-weight: 400;
    line-height: 1.45;
    color: #1a1a1a;
    background: #fff;
    border: 1px solid rgba(0,0,0,.08);
    border-radius: 10px;
    text-align: left;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity .15s ease, visibility .15s ease, transform .15s ease;
    z-index: 1000;
    box-shadow: 0 10px 24px -6px rgba(20,40,30,.18), 0 4px 8px -4px rgba(0,0,0,.08);
}
/* 三角箭头指向 ⓘ */
.pvc-tooltip::before {
    content: "";
    position: absolute;
    bottom: 100%;
    left: 50%;
    transform: translateX(-50%);
    border: 6px solid transparent;
    border-bottom-color: #fff;
    filter: drop-shadow(0 -1px 0 rgba(0,0,0,.08));
}
.pvc-info-icon:hover .pvc-tooltip,
.pvc-info-icon:focus .pvc-tooltip {
    opacity: 1;
    visibility: visible;
    transform: translateX(-50%) translateY(0);
}
.price-v2-right {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 6px;
}
.price-v2-badge {
    background: #e85a2c;
    color: #fff;
    padding: 6px 14px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.02em;
    white-space: nowrap;
}
.price-v2-badge--alt {
    background: #d83b3b;
    font-size: 12px;
    opacity: 0.95;
}
.price-v2-pay {
    font-size: 12.5px;
    color: #555;
    margin: -4px 0 14px;
    padding: 6px 10px;
    background: #f7faf7;
    border-radius: 6px;
}
/* v16 (5/22 客户) ⑨ — Alma 小字（加购按钮下方） */
.alma-note-v16 {
    font-size: 12.5px;
    color: #555;
    text-align: center;
    margin: 10px 0 0;
}

/* Multi-buy pills */
/* v16 (5/22 客户) — 外框保留、去掉背景填充；标题放大；卡片去背景、字体放大 */
.multi-buy {
    margin: 0 0 18px;
    padding: 14px 16px;
    background: transparent;
    border: 1px solid #e8ece8;
    border-radius: 12px;
}
.multi-buy-title { font-size: 16.5px; font-weight: 700; color: #1a1a1a; margin: 0 0 12px; }
.multi-buy-pills { display: flex; flex-wrap: wrap; gap: 8px; }
.mb-pill {
    background: transparent;
    border: 1.5px solid #d8ddd8;
    border-radius: 10px;
    padding: 9px 15px;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-family: inherit;
    transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;
}
.mb-pill:hover { border-color: #276B42; }
/* v16 (5/22 客户) ⑩ — 选中卡：绿色边框 + 浅绿背景 + 绿色徽章 */
.mb-pill.is-active {
    border-color: #276B42;
    border-width: 2px;
    background: transparent;
    box-shadow: 0 0 0 3px rgba(39,107,66,.12);
}
.mb-pct {
    color: #888;
    font-weight: 800;
    font-size: 14.5px;
}
/* v16 (5/22 客户) — 选中徽章改成圆角矩形（与外框同形状），不要椭圆形 */
.mb-pill.is-active .mb-pct:not(.mb-pct--zero) {
    color: #fff;
    background: #276B42;
    padding: 3px 9px;
    border-radius: 6px;
    font-size: 13.5px;
}
.mb-pct--zero { color: #999; }
.mb-line { font-size: 15px; color: #1a1a1a; }
.mb-pill.is-active .mb-line { font-weight: 700; }

@media (max-width: 540px) {
    .price-v2 { flex-direction: column; }
    .price-v2-right { flex-direction: row; align-items: center; }
}

/* v10 (5/15 client) : swatch 小图 + 颜色形式 */
.color-swatches--v2 { display: flex; gap: 10px; flex-wrap: wrap; }
.swatch-v2 {
    background: #fff;
    border: 2px solid transparent;
    border-radius: 12px;
    padding: 4px 4px 6px;
    cursor: pointer;
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    transition: border-color .2s ease, box-shadow .2s ease;
}
.swatch-v2:hover { border-color: #d3ddd5; }
.swatch-v2.active { border-color: #276B42; box-shadow: 0 4px 12px rgba(39,107,66,.15); }
.swatch-v2-thumb {
    width: 52px; height: 52px;
    border-radius: 8px;
    overflow: hidden;
    background: #f8faf8;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.swatch-v2-thumb img { width: 100%; height: 100%; object-fit: contain; padding: 3px; }
.swatch-v2-dot {
    /* v10 修正 (5/15 client) : 色点彻底删除，只保留小图 */
    display: none !important;
}
.variant-current { font-weight: 700; color: #1a1a1a; }

/* v10 (5/15 client) : Reco cards — hover 切换白天/黑夜图 + 同系列模块 */
.reco-section { padding: clamp(28px, 4vw, 40px) clamp(16px, 3vw, 24px); background: #fff; }
.reco-section--alt { background: #f8faf8; }
.reco-wrap { max-width: 1100px; margin: 0 auto; }
.reco-title { text-align: center; font-size: clamp(1.4rem, 2.6vw, 1.8rem); font-weight: 700; color: #1a1a1a; margin: 0 0 8px; }
.reco-sub { text-align: center; color: #666; font-size: 14.5px; max-width: 540px; margin: 0 auto 24px; line-height: 1.55; }
.reco-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 16px;
}
.reco-card {
    background: #fff;
    border: 1px solid #eef0ee;
    border-radius: 14px;
    overflow: hidden;
    color: inherit;
    text-decoration: none;
    display: flex;
    flex-direction: column;
    transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
    position: relative;
}
.reco-card:hover { transform: translateY(-3px); box-shadow: 0 6px 18px rgba(0,0,0,.08); border-color: #d3ddd5; }
.reco-card.is-current { border-color: #276B42; border-width: 2px; }
.reco-badge {
    position: absolute; top: 10px; left: 10px; z-index: 2;
    background: #276B42; color: #fff;
    padding: 4px 10px; border-radius: 999px;
    font-size: 11px; font-weight: 700; letter-spacing: 0.04em;
}
.reco-badge--save { background: #d83b3b; }
.reco-media {
    position: relative;
    aspect-ratio: 1 / 1;
    background: #f8faf8;
    overflow: hidden;
}
.reco-img-day, .reco-img-night {
    position: absolute; inset: 0;
    width: 100%; height: 100%;
    object-fit: cover;
    transition: opacity .4s ease;
}
.reco-img-night { opacity: 0; }
.reco-card:hover .reco-img-day   { opacity: 0; }
.reco-card:hover .reco-img-night { opacity: 1; }
.reco-body { padding: 14px 16px 18px; }
.reco-name { font-size: 15px; font-weight: 600; color: #1a1a1a; margin: 0 0 4px; line-height: 1.3; }
.reco-tag { font-size: 12px; color: #888; margin: 0 0 8px; }
.reco-price-row { display: flex; align-items: baseline; gap: 8px; margin: 6px 0 8px; flex-wrap: wrap; }
.reco-price { font-size: 16px; font-weight: 700; color: #276B42; }
.reco-price-old { font-size: 13px; color: #aaa; }
.reco-cta { font-size: 13px; color: #276B42; font-weight: 600; }
.reco-card:hover .reco-cta { text-decoration: underline; }

/* v10 (5/15 client) : 收紧 sections 之间留白 */
.at-a-glance-bar { padding: clamp(24px, 3vw, 36px) clamp(16px, 3vw, 24px) !important; margin-top: 0 !important; }
.product-accordion-section { padding: clamp(20px, 3vw, 32px) 0 !important; }
/* v14 (5/20 客户): features 版块上下间距统一到 ~48-64px */
/* v16 (5/22 客户): 留白收紧 — padding/行间距进一步压缩 */
.features-flow { padding: clamp(24px, 3vw, 36px) 0 !important; gap: clamp(18px, 2.4vw, 28px) !important; }
.lh-section { padding: clamp(20px, 3vw, 32px) 0 !important; }
.usecases-section, .techviz-section, .compare-section, .eco-strip,
.bom-section, .reviews-section, .faq-section {
    padding-top: clamp(20px, 3vw, 32px) !important;
    padding-bottom: clamp(20px, 3vw, 32px) !important;
}
.acc-section-title { margin: 0 0 16px !important; }
.bom-title { margin: 0 0 16px !important; }
.compare-title { margin: 0 0 14px !important; }
.product-layout-container { padding-bottom: clamp(16px, 3vw, 28px) !important; }

/* v10 (5/15 client) — Mega-menu intégral cleanup */
/* 1) Cacher toutes les rangées de filtres dans le mega-menu (FONCTIONS / IP / Avec détecteur 等) */
.mm-filter-row { display: none !important; }

/* 2) Cacher icônes ☀️ / ⚡ avant les grandes catégories dans la nav top-level */
.header__linklist-item > .header__linklist-link > span > svg:first-child,
.header__linklist-item > .header__linklist-link > span.mm-toplink-icon,
.header__linklist-item > a.header__linklist-link > svg:first-child { display: none !important; }

/* 3) Top-level desktop nav: v11 (5/16 客户): 全部一级菜单 bold, 对齐 PROMOS/BONS PLANS */
.header__linklist-link {
    font-weight: 600 !important;
    font-size: 14px;
    letter-spacing: 0;
    text-transform: none;
    color: #1a1a1a;
}
.header__linklist-link > span { gap: 0 !important; }

/* 4) Mega-menu interne: pas d'images grandes bannières (5/15 client : "取消以下图片") */
.mega-menu__images-wrapper { display: none !important; }
.mega-menu__image-wrapper { display: none !important; }

/* 5) Lignes de liste compactes, alignées à gauche, sans icône / sans sous-description
      (5/15 client : "导航栏不需要图标，不需要小字描述，行距过大，需左端对齐") */
.mega-menu__column { margin: 0 32px 0 0 !important; }
.mega-menu .linklist__item { margin: 0 0 6px 0 !important; padding: 0 !important; line-height: 1.45 !important; }
.mega-menu .linklist__item a {
    color: #1a1a1a !important;
    font-size: 13.5px !important;
    text-decoration: none;
    text-align: left !important;
    padding: 0 !important;
    transition: color 0.15s ease;
}
.mega-menu .linklist__item a:hover { color: #276B42 !important; }
/* Hide inline "bientôt" / sub-description spans */
.mega-menu .linklist__item a > span[style*="background:#fef3c7"],
.mega-menu .linklist__item a > span[style*="color:#9ca3af"] { display: none !important; }

/* 6) Mega-menu column header (gras + maj + couleur) — pour bien séparer les groupes */
.mega-menu__title,
.mega-menu .heading--small {
    text-transform: uppercase !important;
    font-weight: 700 !important;
    color: #1a1a1a !important;
    font-size: 12px !important;
    letter-spacing: 0.06em !important;
    margin: 0 0 12px 0 !important;
    padding-bottom: 6px;
    border-bottom: 1px solid #eef0ee;
}

/* 7) Inner padding du mega-menu plus compact */
.mega-menu__inner { padding: 24px 16px !important; gap: 32px !important; }

/* v10 修正 (5/15 client) — Toutes les mega-menus uniformisées :
   pas d'images, 2 colonnes texte, sans soulignement, avec ›, grand titre majuscule. */

/* --- A) Par espace tiles → texte pur, SANS soulignement (5/15 retour client) --- */
.mm-espace .mm-tile img,
.mm-espace .mm-tile::before,
.mm-espace .mm-tile-label::after,
.mm-espace .mm-tile-label::before { display: none !important; content: none !important; }
.mm-espace .mm-tile {
    all: unset;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    background: transparent !important;
    border: none !important;
    border-bottom: none !important;
    border-radius: 0 !important;
    padding: 6px 4px !important;
    aspect-ratio: auto !important;
    height: auto !important;
    min-height: 0 !important;
    color: #1a1a1a !important;
    font-size: 13.5px !important;
    text-align: left !important;
    text-decoration: none !important;
    overflow: visible !important;
    box-shadow: none !important;
    cursor: pointer;
    transition: color .15s ease, padding-left .15s ease !important;
    position: relative !important;
}
.mm-espace .mm-tile:hover {
    color: #276B42 !important;
    background: transparent !important;
    transform: none !important;
    padding-left: 6px !important;
}
.mm-espace .mm-tile-label {
    position: static !important;
    inset: auto !important;
    background: transparent !important;
    color: inherit !important;
    padding: 0 !important;
    margin: 0 !important;
    font-weight: 400 !important;
    font-size: 13.5px !important;
    line-height: 1.5 !important;
    text-shadow: none !important;
    z-index: auto !important;
    display: inline !important;
    flex: 1 !important;
}
.mm-espace .mm-tile::after {
    content: "›" !important;
    display: inline !important;
    position: static !important;
    inset: auto !important;
    background: none !important;
    color: #bbb !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    margin-left: 6px !important;
}
.mm-espace .mm-tile:hover::after { color: #276B42 !important; }
.mm-espace .mm-tile--soft {
    background: transparent !important;
    aspect-ratio: auto !important;
    min-height: 0 !important;
}
.mm-espace .mm-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    column-gap: 32px !important;
    row-gap: 0 !important;
    flex-direction: unset !important;
}
@media (max-width: 600px) {
    .mm-espace .mm-grid { grid-template-columns: 1fr !important; }
}
.mm-espace .mm-group-head {
    text-transform: uppercase !important;
    font-weight: 700 !important;
    color: #1a1a1a !important;
    font-size: 12px !important;
    letter-spacing: 0.06em !important;
    margin: 0 0 10px 0 !important;
    padding-bottom: 6px !important;
    border-bottom: 1px solid #eef0ee !important;
}
.mm-espace .mm-group-tail { display: none !important; }

/* --- B) Tous les autres mega-menus (Éclairage solaire, 230V, 12V & nomade, Accessoires)
       → même rendu : 2 colonnes, › à droite, hover vert, sans soulignement de ligne. --- */
.mega-menu .linklist__item {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border-bottom: none !important;
}
.mega-menu .linklist__item a {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 6px 4px !important;
    font-size: 13.5px !important;
    color: #1a1a1a !important;
    text-decoration: none !important;
    text-align: left !important;
    line-height: 1.5 !important;
    transition: color .15s ease, padding-left .15s ease !important;
}
.mega-menu .linklist__item a::after {
    content: "›";
    color: #bbb;
    font-size: 14px;
    margin-left: 6px;
    transition: color .15s ease;
}
.mega-menu .linklist__item a:hover {
    color: #276B42 !important;
    padding-left: 6px !important;
    background: transparent !important;
}
.mega-menu .linklist__item a:hover::after { color: #276B42; }

/* --- C) Titre de groupe (grand titre majuscule, sous-trait fin)
       Le markup actuel n'a pas de heading dans certains menus — on ajoute via le bloc parent --- */
.mega-menu__column > .heading,
.mega-menu__column > h3,
.mega-menu__column > .mega-menu__column-title {
    text-transform: uppercase !important;
    font-weight: 700 !important;
    color: #1a1a1a !important;
    font-size: 12px !important;
    letter-spacing: 0.06em !important;
    margin: 0 0 10px 0 !important;
    padding-bottom: 6px !important;
    border-bottom: 1px solid #eef0ee !important;
}

/* 8) v10 修正 — Plus 下拉菜单 (.nav-dropdown) 完全按 lumihome 原版（无 ● 圆点 / 紧凑 / 13.5px） */
.nav-dropdown,
.nav-dropdown__item,
.linklist,
.linklist__item,
.mega-menu ul,
.mega-menu li {
    list-style: none !important;
    list-style-type: none !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
}
.nav-dropdown::before,
.nav-dropdown__item::before,
.linklist::before,
.linklist__item::before,
.mega-menu li::before { content: none !important; }
.nav-dropdown__item::marker,
.linklist__item::marker,
.mega-menu li::marker { content: '' !important; color: transparent !important; }

/* v16 (5/22 客户) ⑭ — 页脚链接列行距收窄 */
.footer .footer__item-content .linklist { line-height: 1.3; }
.footer .footer__item-content .linklist__item { margin: 0; padding: 0; }
.footer .footer__item-content .linklist__item a {
    display: inline-block;
    padding: 2px 0;
    line-height: 1.35;
}

/* Plus 下拉菜单容器样式 */
.nav-dropdown {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 4px;
    box-shadow: 0 6px 20px rgba(0,0,0,.08);
    min-width: 200px;
    padding: 8px 0 !important;
    margin: 0 !important;
}
.nav-dropdown__item {
    margin: 0 !important;
    padding: 0 !important;
}
.nav-dropdown__link {
    display: block;
    padding: 6px 18px !important;
    color: #1a1a1a !important;
    font-size: 13.5px !important;
    font-weight: 400 !important;
    text-decoration: none;
    text-align: left !important;
    line-height: 1.5 !important;
    transition: color .15s ease, background .15s ease;
}
.nav-dropdown__link:hover {
    color: #276B42 !important;
    background: #f7faf7;
}

/* Mega-menu list items — 紧凑行距 + 左对齐 + lumihome 字号 */
.mega-menu .linklist__item {
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.5 !important;
}
.mega-menu .linklist__item a {
    display: block !important;
    padding: 4px 0 !important;
    font-size: 13.5px !important;
    text-align: left !important;
}

/* v9: Photos client dans les cards review (5/14 client : "应该有图片") */
.review-photos {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 12px;
}
.review-photo {
    display: block;
    width: 64px;
    height: 64px;
    border-radius: 8px;
    overflow: hidden;
    border: 1px solid #e6ebe8;
    background: #f8faf8;
    transition: transform .2s ease, box-shadow .2s ease;
}
.review-photo:hover { transform: translateY(-2px); box-shadow: 0 4px 12px rgba(0,0,0,.08); }
.review-photo img { width: 100%; height: 100%; object-fit: cover; display: block; }

/* v9: Bill-of-Materials horizontal list (Accessoires & Complémentaires, esotec style) */
.bom-section { padding: clamp(32px, 5vw, 56px) clamp(16px, 3vw, 24px); background: #fff; }
.bom-section--alt { background: #f8faf8; }
.bom-wrap { max-width: 1100px; margin: 0 auto; }
.bom-title { text-align: center; font-size: clamp(1.4rem, 2.6vw, 1.8rem); font-weight: 700; color: #1a1a1a; margin: 0 0 24px; }
.bom-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.bom-row {
    display: grid;
    grid-template-columns: 64px 1fr auto auto auto;
    align-items: center;
    gap: 16px;
    background: #fff;
    border: 1px solid #eef0ee;
    border-radius: 12px;
    padding: 12px 16px 12px 12px;
    transition: border-color .2s, box-shadow .2s;
}
.bom-row:hover { border-color: #d3ddd5; box-shadow: 0 2px 10px rgba(0,0,0,.04); }
.bom-thumb {
    width: 56px; height: 56px;
    border-radius: 8px;
    overflow: hidden;
    background: #f8faf8;
    display: inline-flex; align-items: center; justify-content: center;
    flex-shrink: 0;
}
.bom-thumb img { width: 100%; height: 100%; object-fit: contain; padding: 4px; }
.bom-info { min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.bom-sku { font-size: 11px; color: #888; letter-spacing: 0.02em; }
.bom-name { color: #1a1a1a; font-weight: 500; text-decoration: none; font-size: 14px; line-height: 1.35; }
.bom-name:hover { color: #276B42; }
.bom-stock { font-size: 11.5px; color: #276b42; display: inline-flex; align-items: center; gap: 5px; }
.bom-dot { width: 8px; height: 8px; border-radius: 50%; background: #276b42; display: inline-block; }
.bom-price { font-weight: 700; color: #1a1a1a; font-size: 15px; white-space: nowrap; }
.bom-qty { display: inline-flex; align-items: center; background: #f8faf8; border-radius: 999px; padding: 2px; gap: 0; }
.bom-qty-btn {
    width: 26px; height: 26px;
    border: none; background: transparent;
    color: #555; cursor: pointer; font-size: 16px; line-height: 1;
    border-radius: 50%;
}
.bom-qty-btn:hover { background: #e9efe9; color: #276B42; }
.bom-qty-input {
    width: 36px; text-align: center; border: none; background: transparent;
    font-size: 14px; font-weight: 600; color: #1a1a1a;
    -moz-appearance: textfield;
}
.bom-qty-input::-webkit-outer-spin-button,
.bom-qty-input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.bom-cart {
    width: 38px; height: 38px; border-radius: 50%;
    background: #2C5DC9; color: #fff; border: none; cursor: pointer;
    display: inline-flex; align-items: center; justify-content: center;
    transition: background .2s, transform .15s;
}
.bom-cart:hover { background: #1f47a3; transform: scale(1.05); }
/* v11 (5/16 客户): 点击后视觉反馈 — 绿色闪烁 + 缩放 */
.bom-cart.is-added { background: #22c55e !important; transform: scale(1.15); }
.bom-cart.is-added svg { animation: bomCartPop .4s ease; }
@keyframes bomCartPop { 0%,100% { transform: scale(1); } 50% { transform: scale(1.25); } }
.bom-discover {
    color: #276B42;
    font-size: 13px;
    font-weight: 600;
    text-decoration: none;
    border: 1px solid #276B42;
    border-radius: 999px;
    padding: 8px 16px;
    white-space: nowrap;
    transition: background .2s, color .2s;
}
.bom-discover:hover { background: #276B42; color: #fff; }

/* Mobile : stacker prix + actions sous le nom */
@media (max-width: 640px) {
    .bom-row {
        grid-template-columns: 56px 1fr auto;
        grid-template-areas: "thumb info price" "thumb info qty"  "thumb info cart";
        gap: 8px 12px;
    }
    .bom-thumb { grid-area: thumb; }
    .bom-info { grid-area: info; }
    .bom-price { grid-area: price; justify-self: end; font-size: 14px; }
    .bom-qty { grid-area: qty; justify-self: end; }
    .bom-cart, .bom-discover { grid-area: cart; justify-self: end; }
}

/* v9: Schemas (4 line drawings horizontal grid, esotec style) */
.schemas-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 14px;
    margin-bottom: 18px;
}
@media (min-width: 720px) {
    .schemas-grid { grid-template-columns: repeat(4, 1fr); }
}
.schema-card {
    margin: 0;
    background: #f8faf8;
    border: 1px solid #e6ebe8;
    border-radius: 10px;
    overflow: hidden;
    cursor: pointer;
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
    display: flex;
    flex-direction: column;
}
.schema-card:hover {
    border-color: #276B42;
    box-shadow: 0 4px 14px rgba(0,0,0,.08);
    transform: translateY(-2px);
}
.schema-img {
    position: relative;
    aspect-ratio: 1 / 1;
    background: #fff;
    overflow: hidden;
}
.schema-img img { width: 100%; height: 100%; object-fit: contain; padding: 12px; }
.schema-zoom {
    position: absolute;
    top: 8px; right: 8px;
    background: rgba(255,255,255,.92);
    color: #276B42;
    border: 1px solid #d3ddd5;
    border-radius: 50%;
    width: 26px; height: 26px;
    display: inline-flex; align-items: center; justify-content: center;
}
.schema-label {
    text-align: center;
    font-size: 12.5px;
    color: #444;
    padding: 8px 10px 10px;
    background: #fff;
    border-top: 1px solid #eef0ee;
}

/* v9: PDF chip (esotec style — red PDF badge + filename + size) */
.schema-pdf-row { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 4px; }
.pdf-chip {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: #fff;
    border: 1px solid #e6ebe8;
    border-radius: 8px;
    padding: 8px 14px 8px 8px;
    text-decoration: none;
    color: #1a1a1a;
    font-size: 13px;
    transition: border-color .2s, box-shadow .2s;
}
.pdf-chip:hover { border-color: #c62828; box-shadow: 0 2px 8px rgba(198,40,40,.12); }
.pdf-icon-red {
    background: #c62828;
    color: #fff;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.04em;
    padding: 4px 6px;
    border-radius: 3px;
    line-height: 1;
}
.pdf-name { font-weight: 500; }
.pdf-size { color: #888; font-size: 12px; }
/* v10: lang badge + multi-row wrap */
.schema-pdf-row--multi { display: flex; flex-wrap: wrap; gap: 10px; }
.pdf-lang {
    background: #f3f5f3;
    color: #276B42;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.02em;
    padding: 3px 6px;
    border-radius: 4px;
    border: 1px solid #d3ddd5;
}
.acc-back-note { font-size: 12px; color: #888; margin: 12px 0 0; font-style: italic; }
.acc-back-note code { background: #f3f5f3; padding: 2px 6px; border-radius: 4px; font-size: 11.5px; color: #276B42; }

.acc-inner .downloads-container {
    display: flex;
    gap: 18px;
    flex-wrap: wrap;
}
.acc-inner .downloads-container .download-card {
    flex: 1 1 240px;
}

@media (max-width: 768px) {
    .acc-head { padding: 14px 16px; font-size: 0.95rem; gap: 12px; }
    .acc-inner { padding: 4px 16px 22px; }
    .acc-icon { width: 22px; height: 22px; }
    .acc-icon svg { width: 20px; height: 20px; }
}
@media (max-width: 480px) {
    .acc-head { padding: 12px 14px; font-size: 0.92rem; }
    .acc-inner { padding: 4px 14px 20px; }
}
/* Description Tab Specifics */
.desc-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: clamp(24px, 4vw, 48px);
    align-items: center;
}
.desc-text h3 {
    font-size: 1.6rem;
    margin-bottom: 16px;
    color: var(--brand-black);
}
.desc-text p {
    line-height: 1.6;
    color: #555;
    margin-bottom: 20px;
}
.desc-image-box {
    position: relative;
    border-radius: 16px;
    overflow: hidden;
    aspect-ratio: 4/3;
    box-shadow: var(--shadow-md);
}
.desc-image-box img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Specs Table */
.specs-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 32px;
}
.spec-card {
    background: #f9fbf9;
    padding: 0 0 20px 0;
    border-radius: 16px;
    border: 1px solid #eee;
    overflow: hidden;
}
.spec-card h4 {
    background: var(--accent-green);
    color: white;
    padding: 14px 20px;
    margin: 0 0 20px 0;
    font-size: 18px;
}
.spec-row {
    display: flex;
    justify-content: space-between;
    padding: 10px 20px;
    border-bottom: 1px dashed #ddd;
    font-size: 14px;
}
.spec-row:last-child {
    border-bottom: none;
}
.spec-key {
    font-weight: 600;
    color: #555;
}
.spec-val {
    color: #333;
    text-align: right;
}

/* Installation Steps */
.install-steps-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
    margin-top: 20px;
}
.step-card {
    text-align: center;
}
.step-img {
    width: 100%;
    aspect-ratio: 1/1;
    object-fit: cover;
    border-radius: 16px;
    margin-bottom: 16px;
    border: 1px solid #eee;
    box-shadow: var(--shadow-sm);
}
.step-num {
    display: inline-block;
    background: var(--accent-green);
    color: white;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    font-size: 13px;
    line-height: 28px;
    margin-bottom: 8px;
}
.step-title {
    font-weight: 700;
    margin-bottom: 6px;
}
.step-desc {
    font-size: 13px;
    color: #666;
}

/* Cross-sell Sections */
.cross-sell-section {
    background: #f8faf8;
    padding: clamp(40px, 6vw, 60px) clamp(16px, 3vw, 24px);
    margin-top: 40px;
}
.section-title-center {
    text-align: center;
    font-size: clamp(20px, 3vw, 28px);
    margin-bottom: clamp(24px, 4vw, 40px);
    color: var(--brand-black);
    font-weight: 700;
}
.product-carousel-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: clamp(16px, 2vw, 30px);
    max-width: 1280px;
    margin: 0 auto;
}
.mini-product-card {
    background: white;
    border-radius: 16px;
    padding: 20px;
    transition: all 0.3s ease;
    border: 1px solid #eee;
    text-align: center;
}
.mini-product-card:hover {
    transform: translateY(-6px);
    box-shadow: var(--shadow-lg);
}
.mini-prod-img {
    width: 100%;
    aspect-ratio: 1/1;
    object-fit: contain;
    margin-bottom: 16px;
}
.mini-prod-title {
    font-size: 15px;
    font-weight: 600;
    margin-bottom: 8px;
    min-height: 42px;
}
.mini-prod-price {
    color: var(--accent-green);
    font-weight: 700;
    font-size: 18px;
}
.btn-small {
    display: block;
    width: 100%;
    text-align: center;
    padding: 10px;
    background: #fff;
    border: 1px solid var(--accent-green);
    color: var(--accent-green);
    border-radius: 48px;
    margin-top: 16px;
    text-decoration: none;
    font-size: 14px;
    font-weight: 600;
    transition: all 0.2s;
}
.btn-small:hover {
    background: var(--accent-green);
    color: white;
}

/* 说明书下载 & 线描图模块样式 */
.downloads-container {
    display: flex;
    gap: 30px;
    justify-content: center;
    flex-wrap: wrap;
}
.download-card {
    flex: 1;
    min-width: 240px;
    background: #f9fbf9;
    border-radius: 20px;
    padding: 25px;
    text-align: center;
    transition: all 0.3s;
    border: 1px solid #eef2f0;
    cursor: pointer;
}
.download-card:hover {
    transform: translateY(-5px);
    box-shadow: var(--shadow-md);
    border-color: var(--accent-green);
}
.download-icon {
    width: 60px;
    height: 60px;
    margin: 0 auto 15px;
    background: var(--accent-green);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
}
.download-icon svg {
    width: 30px;
    height: 30px;
    fill: currentColor;
}
.download-title {
    font-weight: 700;
    font-size: 18px;
    margin-bottom: 8px;
}
.download-size {
    font-size: 13px;
    color: #777;
    margin-bottom: 15px;
}
.download-btn {
    display: inline-block;
    padding: 10px 20px;
    background: white;
    border: 1px solid var(--accent-green);
    color: var(--accent-green);
    border-radius: 40px;
    font-weight: 600;
    font-size: 14px;
    transition: all 0.2s;
}
.download-card:hover .download-btn {
    background: var(--accent-green);
    color: white;
}

/* ============================================================================
   📱 Responsive (Refined) - Breakpoints: 1199 / 992 / 768 / 480
============================================================================ */

/* Large desktop fine-tuning */
@media (max-width: 1199px) {
    .product-layout-container {
        gap: 32px;
        padding: 28px 24px;
    }
    .product-gallery-wrapper {
        top: 100px;
    }
    .install-steps-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 20px;
    }
}

/* Tablet -- Stack into single column */
@media (max-width: 992px) {
    .product-layout-container {
        grid-template-columns: 1fr;
        gap: 32px;
        padding: 24px 20px;
    }
    .product-gallery-wrapper {
        position: static;
        max-width: 720px;
        margin: 0 auto;
    }
    .product-info-wrapper {
        max-width: 720px;
        margin: 0 auto;
    }
    .glance-carousel {
        padding: 0 50px;
    }
    .desc-layout {
        grid-template-columns: 1fr;
    }
    .install-steps-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .product-title {
        font-size: 1.9rem;
    }
    .at-a-glance-bar {
        padding: 32px 20px;
    }
}

/* Tablet portrait / Large phones -- Accordion mode */
@media (max-width: 768px) {
    .product-layout-container {
        padding: 16px 16px 8px;
        gap: 24px;
    }
    .breadcrumb-nav {
        font-size: 12px;
    }
    .product-title {
        font-size: 1.5rem;
    }
    .product-rating {
        gap: 8px;
        font-size: 13px;
        margin-bottom: 16px;
    }
    .product-price-block {
        padding-bottom: 18px;
        margin-bottom: 18px;
    }
    .short-desc-list {
        margin-bottom: 22px;
    }
    .short-desc-list li {
        font-size: 14px;
        padding-left: 24px;
        margin-bottom: 10px;
    }
    .variant-selector {
        margin-bottom: 18px;
    }
    .swatch {
        width: 32px;
        height: 32px;
    }
    .glance-title {
        margin-bottom: 20px;
    }
    .glance-carousel {
        padding: 0 44px;
    }
    .glance-nav {
        width: 38px;
        height: 38px;
    }
    .glance-item {
        padding: 18px 12px 16px;
    }
    .glance-item .icon-box {
        width: 48px;
        height: 48px;
        margin-bottom: 10px;
    }
    .glance-item .icon-box svg {
        width: 22px;
        height: 22px;
    }
    .glance-item h4 {
        font-size: 10px;
    }
    .glance-item p {
        font-size: 13px;
    }
    .at-a-glance-bar {
        padding: 32px 12px;
    }
    /* ---- Tabs → Accordion ---- */

    .install-steps-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 16px;
    }
    .step-img { margin-bottom: 10px; }
    .specs-grid {
        grid-template-columns: 1fr;
        gap: 14px;
    }
    .spec-card h4 { font-size: 16px; padding: 12px 16px; }
    .spec-row { padding: 8px 16px; font-size: 13px; }
    .product-carousel-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 14px;
    }
    .mini-product-card { padding: 14px; }
    .mini-prod-title { font-size: 13px; min-height: 36px; }
    .mini-prod-price { font-size: 16px; }
    .add-to-cart-form {
        gap: 12px;
    }
    .quantity-input { width: 130px; }
    .btn-add-cart { flex: 1 1 auto; min-width: 200px; }
    .buy-now-spacer { flex-basis: 130px; }
    .btn-buy-now { flex: 1 1 auto; min-width: 200px; }
    .trust-badges {
        flex-wrap: wrap;
        gap: 12px 8px;
        padding: 14px 12px;
    }
    .trust-item { flex: 1 1 30%; min-width: 80px; }
    .video-section {
        margin: 24px auto;
        padding: 0 16px;
    }
    .play-button { width: 60px; height: 60px; }
    .play-button svg { width: 28px; height: 28px; }
    .downloads-container {
        flex-direction: column;
        gap: 14px;
    }
    .download-card { padding: 20px; min-width: 0; }
    .desc-image-box { aspect-ratio: 16 / 10; }
    .desc-text h3 { font-size: 1.3rem; }
    .cross-sell-section { margin-top: 24px; }
}

/* Small phones */
@media (max-width: 480px) {
    .product-title { font-size: 1.35rem; }
    .current-price { font-size: 1.5rem; }
    .compare-price { font-size: 0.95rem; }
    .badge-save { font-size: 11px; padding: 3px 8px; }
    .glance-carousel {
        padding: 0 40px;
    }
    .glance-nav {
        width: 34px;
        height: 34px;
    }
    .glance-item {
        padding: 16px 10px 14px;
    }
    .install-steps-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }
    .product-carousel-grid {
        grid-template-columns: 1fr;
        gap: 12px;
    }
    /* v13-2: 移动端也用 2 列大缩略图 */
    .thumbnail-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
    }
    .day-night-toggle {
        bottom: 12px;
        right: 12px;
        padding: 8px 12px;
        font-size: 12px;
    }
    .add-to-cart-form { flex-direction: column; }
    .quantity-input { width: 100%; }
    .btn-add-cart { width: 100%; min-width: 0; }
    .buy-now-spacer { display: none; }
    .btn-buy-now { width: 100%; min-width: 0; }
    .trust-item {
        flex: 1 1 30%;
        font-size: 11px;
    }
    .trust-item svg { width: 20px; height: 20px; }
}

@keyframes fadeIn {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}

/* v6: fix .link--faded color (Shopify theme class that ships from theme.css
   isn't available on this template — links were rendering almost invisible). */
.footer .link--faded,
.site-footer .link--faded,
footer .link--faded {
    color: rgba(255,255,255,0.92) !important;
    opacity: 1 !important;
    text-decoration: none;
    transition: color 0.2s ease;
}
.footer .link--faded:hover,
.site-footer .link--faded:hover,
footer .link--faded:hover {
    color: #FFD700 !important;
}

/* v7: Independent sections (Installation / Documents / Garantie) — extracted
   from the accordion per 5/14 customer feedback. */
.lh-section {
    padding: clamp(36px, 5vw, 64px) 0;
    background: #ffffff;
}
.lh-section.lh-section--alt {
    background: #f8faf8;
}
.lh-section .lh-wrap {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 clamp(16px, 3vw, 24px);
}
.lh-section-title {
    text-align: center;
    font-size: clamp(1.5rem, 3vw, 2rem);
    font-weight: 700;
    color: #1a1a1a;
    letter-spacing: -0.01em;
    margin: 0 0 28px;
}
.lh-section-body {
    /* let nested grids breathe */
}
.lh-section-body > .install-intro,
.lh-section-body > .downloads-container,
.lh-section-body > h3:first-child {
    margin-top: 0;
}

/* ════════════════════════════════════════════════════════════ */
/* v10 (5/15 client) — 所有 mega-menu 完全统一模板 .mm-uniform   */
/* ════════════════════════════════════════════════════════════ */
.mm-uniform { background:#fff; border-top:1px solid rgba(0,0,0,.06);
              box-shadow:0 18px 40px -12px rgba(20,40,30,.18); }
.mm-uniform .container { max-width:1200px; margin:0 auto; padding:28px 32px; }
.mm-uniform .mega-menu__inner {
  display:grid;
  grid-template-columns:1fr 1fr 1.1fr;
  column-gap:40px;
  align-items:start;
}
.mm-uniform .mega-menu__column { margin:0; min-width:0; }
.mm-uniform .mega-menu__column .linklist { padding:0; margin:0; }
.mm-uniform .mega-menu__column .linklist__item { list-style:none; margin:0; padding:0; }
.mm-uniform .mega-menu__column .linklist__item a {
  display:block;
  padding:7px 0;
  font-size:14px;
  font-weight:500;
  color:#1a1a1a;
  text-decoration:none;
  border:none;
  background:none;
  transition:color .15s ease, padding-left .15s ease;
}
.mm-uniform .mega-menu__column .linklist__item a::before,
.mm-uniform .mega-menu__column .linklist__item a::after { content:none !important; display:none !important; }
.mm-uniform .mega-menu__column .linklist__item a:hover {
  color:#276B42;
  padding-left:4px;
}
.mm-uniform .mega-menu__column .linklist__item a strong { font-weight:600; color:#276B42; }
/* 右图卡 */
.mm-uniform .mega-menu__images-wrapper { margin:0; }
.mm-uniform .mega-menu__image-push {
  display:block;
  text-decoration:none;
  border-radius:10px;
  overflow:hidden;
  background:#f6f9f7;
  transition:transform .25s ease, box-shadow .25s ease;
}
.mm-uniform .mega-menu__image-push:hover {
  transform:translateY(-2px);
  box-shadow:0 10px 24px -8px rgba(20,40,30,.18);
}
.mm-uniform .mega-menu__image-wrapper {
  aspect-ratio:16/10;
  overflow:hidden;
  margin:0;
}
.mm-uniform .mega-menu__image {
  width:100%; height:100%; object-fit:cover;
  transition:transform .35s ease;
}
.mm-uniform .mega-menu__image-push:hover .mega-menu__image { transform:scale(1.04); }
.mm-uniform .mega-menu__heading {
  margin:10px 14px 14px;
  font-size:14.5px;
  font-weight:600;
  color:#1a1a1a;
}
.mm-uniform .mega-menu__image-push:hover .mega-menu__heading { color:#276B42; }

/* 响应式：≤1199px 把图卡换行到下方 */
@media (max-width:1199px){
  .mm-uniform .mega-menu__inner { grid-template-columns:1fr 1fr; }
  .mm-uniform .mega-menu__images-wrapper { grid-column:1 / -1; max-width:520px; }
}

/* 旧的 mm-solaire / mm-230v / mm-bt / mm-espace / mm-acc 规则 — 全部失效 */
.mm-solaire, .mm-230v, .mm-bt, .mm-espace, .mm-acc { all: unset; display: block; }
.mm-solaire *, .mm-230v *, .mm-bt *, .mm-espace *, .mm-acc * { background: none; }


/* ════════════════════════════════════════════════════════════ */
/* v11 (5/16 客户) — 同系列 inline card：上图下文 + 2 列并排     */
/* 参考 lumihome PRODUITS COMPLÉMENTAIRES 风格                   */
/* ════════════════════════════════════════════════════════════ */
.serie-inline {
  margin-top: 18px;
  padding: 16px;
  background: #f7faf7;
  border: 1px solid rgba(39,107,66,.15);
  border-radius: 12px;
}
.serie-inline-head {
  margin: 0 0 14px;
  padding-bottom: 8px;
  border-bottom: 1px solid rgba(0,0,0,.06);
}
.serie-inline-title {
  font-size: 13px;
  font-weight: 700;
  color: #1a1a1a;
  text-transform: uppercase;
  letter-spacing: .04em;
}
/* v11: 2 列并排 grid */
.serie-inline-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}
@media (max-width: 480px) {
  .serie-inline-list { grid-template-columns: 1fr; }
}
/* v11: 卡片改为纵向 — 上图下文 */
.serie-inline-card {
  display: flex;
  flex-direction: column;
  padding: 0;
  background: #fff;
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 10px;
  text-decoration: none;
  color: inherit;
  overflow: hidden;
  transition: border-color .15s, box-shadow .15s, transform .15s;
}
.serie-inline-card:hover {
  border-color: #276B42;
  box-shadow: 0 6px 16px -6px rgba(39,107,66,.18);
  transform: translateY(-2px);
}
/* v11: 图片在顶部，全宽 */
.serie-inline-thumb {
  width: 100%;
  aspect-ratio: 1 / 1;
  background: #f3f4f6;
  overflow: hidden;
}
.serie-inline-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .3s ease;
}
.serie-inline-card:hover .serie-inline-thumb img {
  transform: scale(1.04);
}
/* v11: 文字部分在下方 */
.serie-inline-info {
  padding: 10px 12px 12px;
  display: flex;
  flex-direction: column;
  gap: 3px;
}
.serie-inline-name {
  font-size: 13px;
  font-weight: 600;
  color: #1a1a1a;
  line-height: 1.3;
  margin: 0;
}
.serie-inline-tag {
  font-size: 11.5px;
  color: #6b7280;
  margin: 0;
  line-height: 1.3;
}
.serie-inline-price {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 6px;
  margin: 4px 0 2px;
}
.serie-inline-price-now {
  font-size: 14px;
  font-weight: 700;
  color: #276B42;
}
.serie-inline-price-old {
  font-size: 11.5px;
  color: #9ca3af;
  text-decoration: line-through;
}
.serie-inline-stock-in,
.serie-inline-stock-out {
  align-self: flex-start;
  display: inline-block;
  font-size: 10.5px;
  font-weight: 600;
  padding: 2px 7px;
  border-radius: 4px;
  margin-top: 2px;
}
.serie-inline-stock-in  { background: #ecfdf5; color: #047857; }
.serie-inline-stock-out { background: #fef3c7; color: #92400e; }


/* v10 (5/15 客户) — 列标题 + bientôt 徽章 */
/* v15 (5/21 client): column titles bold + uppercase, NO bottom underline */
.mm-uniform .mm-col-title {
  margin: 0 0 12px;
  padding: 0;
  border-bottom: 0;
  font-size: 13px;
  font-weight: 800;
  color: #1a1a1a;
  text-transform: uppercase;
  letter-spacing: .05em;
}
/* Clickable column titles (EXTÉRIEUR / INTÉRIEUR) — same bold style, no underline */
.mm-uniform .mm-col-title-link,
.mm-uniform .mm-col-title-link:hover,
.mm-uniform .mm-col-title-link:focus { color: inherit; text-decoration: none; font: inherit; }
.mm-uniform .mm-col-title-link:hover { color: #276B42; }
/* v15: sub-items NOT bold */
.mm-uniform .mega-menu__column .linklist__item a { font-weight: 400; }
.mm-uniform .mm-soon { opacity: .55; pointer-events: none; }
.mm-uniform .mm-soon-badge {
  display: inline-block;
  margin-left: 4px;
  padding: 1px 6px;
  font-size: 9.5px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .04em;
  color: #92400e;
  background: #fef3c7;
  border-radius: 4px;
  vertical-align: middle;
}


/* ---- 03.011 页面内联样式块
   来源：product.html:5014, account.html:5005, cart.html:5005, search.html:5005, contact.html:5005, magazine.html:5005, article.html:5005, fidelite.html:5005, ... 共 12 处
   说明：由页面 <style> 抽离，保持原有选择器和声明不变。
   ---- */
:root {
  --wc-radius: 16px;
  --wc-radius-sm: 10px;
  --wc-green: #276b42;
  --wc-green-soft: #e7f5ec;
  --wc-green-deep: #276b42;
  --wc-bg: #ffffff;
  --wc-bg-alt: #f7f9f7;
  --wc-bg-deep: #0f1611;
  --wc-text: #1b1b1b;
  --wc-text-soft: #555;
  --wc-border: #e6e6e6;
  --wc-shadow: 0 4px 22px rgba(15,22,17,0.08);
  --wc-section-pad: 32px 16px;
}
@media (min-width: 768px){ :root { --wc-section-pad: 64px 32px; } }
@media (min-width: 1024px){ :root { --wc-section-pad: 88px 40px; } }

.features-flow, .usecases-section, .techviz-section, .compare-section, .eco-strip, .reviews-section { font-family: Poppins, sans-serif; }/* ============== FEATURE DEEP-DIVES ============== */
.features-flow {
  background: var(--wc-bg);
  padding: var(--wc-section-pad);
  display: flex;
  flex-direction: column;
  gap: 56px;
}
.feature-row {
  display: grid;
  grid-template-columns: 1fr;
  gap: 22px;
  align-items: center;
  max-width: 1180px;
  margin: 0 auto;
  width: 100%;
}
.feature-media {
  position: relative;
  border-radius: var(--wc-radius);
  overflow: hidden;
  background: var(--wc-bg-alt);
  aspect-ratio: 4 / 3;
}
.feature-media img {
  width: 100%; height: 100%;
  object-fit: cover;
  display: block;
}
.feature-stat {
  position: absolute;
  left: 16px; bottom: 16px;
  background: rgba(255,255,255,0.96);
  padding: 12px 16px;
  border-radius: 12px;
  box-shadow: var(--wc-shadow);
  backdrop-filter: blur(8px);
}
.feature-stat-value {
  font-size: 28px;
  font-weight: 600;
  color: var(--wc-text);
  line-height: 1;
}
.feature-stat-value span {
  font-size: 14px;
  font-weight: 400;
  color: var(--wc-text-soft);
  margin-left: 4px;
}
.feature-stat-label {
  font-size: 11px;
  color: var(--wc-text-soft);
  margin-top: 4px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
/* v14 (5/20 客户) — features 标题字体/字号/间距对齐 lumihome.com 官网
   eyebrow 12px 大写 / title 30-32px weight 600 / body 15px line-height 1.65 */
.feature-eyebrow {
  display: inline-block;
  font-size: 12px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #276B42;
  font-weight: 700;
  margin-bottom: 12px;
}
.feature-title {
  font-size: 30px;
  line-height: 1.25;
  font-weight: 600;
  color: #1a1a1a;
  margin: 0 0 14px;
  letter-spacing: -0.005em;
}
.feature-body {
  font-size: 15px;
  line-height: 1.65;
  color: #555;
  margin: 0 0 16px;
}
.feature-bullets {
  list-style: none;
  margin: 0; padding: 0;
  display: flex; flex-direction: column;
  gap: 10px;
}
.feature-bullets li {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  font-size: 14.5px;
  color: var(--wc-text);
  line-height: 1.5;
}
.feature-bullets li svg { color: var(--wc-green); flex: 0 0 18px; margin-top: 2px; }
@media (min-width: 768px){
  .feature-row {
    grid-template-columns: 1fr 1fr;
    gap: 36px;
  }
  .feature-row.is-reversed .feature-media { order: 2; }
  /* v14: 桌面标题保持 ~31px — 与 lumihome.com 一致 */
  .feature-title { font-size: 31px; }
  .feature-body { font-size: 15px; }
  .feature-stat-value { font-size: 32px; }
}
@media (min-width: 1024px){
  /* v16: 留白收紧 */
  .feature-row { gap: 44px; }
  .feature-title { font-size: 32px; }
}

/* ============== USE CASES GRID ============== */
.usecases-section {
  background: var(--wc-bg-alt);
  padding: var(--wc-section-pad);
}
.usecases-wrap { max-width: 1200px; margin: 0 auto; }
.usecases-header { text-align: center; margin-bottom: 28px; }
.usecases-title {
  font-size: 26px;
  font-weight: 600;
  color: var(--wc-text);
  margin: 0 0 10px;
  letter-spacing: -0.01em;
}
.usecases-sub {
  font-size: 15px;
  color: var(--wc-text-soft);
  margin: 0 auto;
  max-width: 620px;
  line-height: 1.55;
}
.usecases-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}
.usecase-card {
  position: relative;
  margin: 0;
  border-radius: var(--wc-radius);
  overflow: hidden;
  aspect-ratio: 1 / 1;
  background: #ddd;
  cursor: pointer;
  transition: transform .25s ease, box-shadow .25s ease;
}
.usecase-card:hover { transform: translateY(-4px); box-shadow: var(--wc-shadow); }
.usecase-card img {
  width: 100%; height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .5s ease;
}
.usecase-card:hover img { transform: scale(1.05); }
/* v11 (5/16 客户) — P050: 图片上不需要文字，删除 figcaption 渐变遮罩 */
.usecase-card figcaption,
.usecase-label,
.usecase-desc { display: none !important; }
@media (min-width: 768px){
  .usecases-title { font-size: 32px; }
  .usecases-grid { grid-template-columns: repeat(4, 1fr); gap: 18px; }
  .usecase-card { aspect-ratio: 1 / 1; }
}

/* ============== TECH VISUALIZATION ============== */
.techviz-section {
  background: var(--wc-bg);
  padding: var(--wc-section-pad);
}
.techviz-wrap { max-width: 1200px; margin: 0 auto; }
.techviz-header { text-align: center; margin-bottom: 28px; }
.techviz-title { font-size: 26px; font-weight: 600; color: var(--wc-text); margin: 0 0 10px; }
.techviz-sub { font-size: 15px; color: var(--wc-text-soft); margin: 0 auto; max-width: 640px; line-height: 1.55; }
.techviz-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 18px;
}
.techviz-card {
  background: var(--wc-bg-alt);
  border: 1px solid var(--wc-border);
  border-radius: var(--wc-radius);
  padding: 22px;
}
.techviz-card-title { font-size: 17px; font-weight: 600; color: var(--wc-text); margin: 0 0 4px; }
.techviz-card-sub { font-size: 13.5px; color: var(--wc-text-soft); margin: 0 0 18px; line-height: 1.5; }

/* Autonomy bars */
.autonomy-bars { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 12px; }
.autonomy-row { display: grid; grid-template-columns: 64px 1fr 50px; align-items: center; gap: 10px; font-size: 13px; }
.autonomy-mode { font-weight: 600; color: var(--wc-text); }
.autonomy-track { height: 14px; background: #fff; border-radius: 999px; overflow: hidden; border: 1px solid var(--wc-border); }
.autonomy-fill { height: 100%; border-radius: 999px; transition: width .8s cubic-bezier(0.22, 1, 0.36, 1); }
.autonomy-hours { text-align: right; color: var(--wc-text-soft); font-variant-numeric: tabular-nums; }

/* Beam */
.beam-diagram-wrap { background: #fff; border-radius: var(--wc-radius-sm); padding: 8px; border: 1px solid var(--wc-border); }
.beam-svg { width: 100%; height: auto; display: block; }
.beam-stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin-top: 14px; text-align: center; }
.beam-stats > div { background: #fff; border: 1px solid var(--wc-border); border-radius: var(--wc-radius-sm); padding: 12px 6px; }
.beam-stats strong { display: block; font-size: 18px; color: var(--wc-green); font-weight: 600; }
.beam-stats span { font-size: 11px; color: var(--wc-text-soft); margin-top: 2px; display: block; }

@media (min-width: 768px){
  .techviz-title { font-size: 32px; }
  .techviz-grid { grid-template-columns: 1fr 1fr; gap: 24px; }
  .techviz-card { padding: 32px; }
  .techviz-card-title { font-size: 20px; }
  .beam-stats strong { font-size: 22px; }
  .beam-stats span { font-size: 12px; }
}

/* ============== COMPARISON TABLE ============== */
.compare-section {
  background: var(--wc-bg-alt);
  padding: var(--wc-section-pad);
}
.compare-wrap { max-width: 1200px; margin: 0 auto; }
/* v9: New 2-column comparison layout (ALTO 3000 vs Autres concurrents).
   Left = intro paragraph, Right = compact table. Avoids the CE PRODUIT
   badge-overlay bug present in the old 3-column layout. */
.compare-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 32px;
  align-items: start;
}
@media (min-width: 900px) {
  .compare-grid { grid-template-columns: 1fr 1.15fr; gap: 48px; }
}
.compare-intro { font-family: Poppins, sans-serif; }
.compare-title {
  font-size: clamp(22px, 3vw, 30px);
  font-weight: 700;
  color: var(--wc-text);
  margin: 0 0 18px;
  line-height: 1.25;
}
.compare-intro-p {
  font-size: 14.5px;
  line-height: 1.7;
  color: var(--wc-text-soft);
  margin: 0 0 14px;
}
.compare-table-wrap {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.compare-table-v2 {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  font-size: 14px;
  background: #fff;
  border-radius: var(--wc-radius);
  overflow: hidden;
  box-shadow: var(--wc-shadow);
}
.compare-table-v2 th,
.compare-table-v2 td {
  padding: 14px 16px;
  text-align: center;
  vertical-align: middle;
  border-bottom: 1px solid var(--wc-border);
}
.compare-table-v2 tbody tr:last-child th,
.compare-table-v2 tbody tr:last-child td {
  border-bottom: none;
}
.compare-table-v2 thead th {
  background: var(--wc-bg-alt);
  font-weight: 700;
  font-size: 15px;
  color: var(--wc-text);
  letter-spacing: 0.01em;
}
.compare-table-v2 thead th.col-self {
  background: var(--wc-green);
  color: #fff;
}
.compare-table-v2 thead th.col-others {
  background: var(--wc-bg-alt);
  color: var(--wc-text);
}
.compare-table-v2 .row-label {
  text-align: left;
  font-weight: 500;
  color: var(--wc-text);
  font-size: 13.5px;
  min-width: 200px;
  background: #fff;
}
.compare-table-v2 td.col-self {
  background: var(--wc-green-soft);
  color: var(--wc-green-deep);
  font-weight: 600;
}
.compare-table-v2 td.col-others {
  color: #999;
}
.compare-table-v2 .cmp-yes { color: var(--wc-green); }
.compare-table-v2 .cmp-no { color: #d04141; opacity: 0.85; }
.compare-table-v2 .cmp-val { font-weight: 600; }
@media (max-width: 600px) {
  .compare-table-v2 th, .compare-table-v2 td { padding: 10px 8px; font-size: 12.5px; }
  .compare-table-v2 .row-label { min-width: 120px; font-size: 12.5px; }
}/* ============== ECO STRIP ============== */
.eco-strip {
  background: linear-gradient(135deg, var(--wc-green-soft) 0%, #fff 100%);
  padding: var(--wc-section-pad);
}
.eco-wrap { max-width: 1200px; margin: 0 auto; text-align: center; }
.eco-title { font-size: 22px; font-weight: 600; color: var(--wc-green-deep); margin: 0 0 22px; }
.eco-grid {
  list-style: none; margin: 0; padding: 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}
.eco-stat {
  background: #fff;
  border-radius: var(--wc-radius);
  padding: 18px 12px;
  border: 1px solid var(--wc-border);
}
.eco-num {
  font-size: 28px;
  font-weight: 600;
  color: var(--wc-green-deep);
  line-height: 1;
}
.eco-num span { font-size: 14px; color: var(--wc-text-soft); margin-left: 3px; font-weight: 400; }
.eco-lbl { font-size: 12px; color: var(--wc-text-soft); margin-top: 8px; line-height: 1.4; }
@media (min-width: 768px){
  .eco-title { font-size: 28px; }
  .eco-grid { grid-template-columns: repeat(4, 1fr); gap: 16px; }
  .eco-stat { padding: 28px 18px; }
  .eco-num { font-size: 40px; }
  .eco-lbl { font-size: 13px; }
}

/* ============== IN-THE-BOX FLAT-LAY (Contenu tab) ============== */
.flatlay-intro { text-align: center; margin: 0 0 22px; }
.flatlay-intro h3 { font-size: 22px; font-weight: 600; color: var(--wc-text); margin: 0 0 8px; }
.flatlay-intro p { font-size: 14px; color: var(--wc-text-soft); margin: 0; }
/* v16 (5/22 客户) ⑧ — Contenu de la boîte 纯文本列表 */
.box-content-list { list-style: none; margin: 0; padding: 0; }
.box-content-list li {
    position: relative;
    padding: 0 0 0 22px;
    margin: 0 0 12px;
    font-size: 15px;
    color: #333;
    line-height: 1.55;
}
.box-content-list li:last-child { margin-bottom: 0; }
.box-content-list li::before {
    content: "";
    position: absolute;
    left: 2px;
    top: 8px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #276B42;
}
.flatlay-grid {
  list-style: none; margin: 0; padding: 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}
.flatlay-card {
  display: flex;
  flex-direction: column;
  background: var(--wc-bg-alt);
  border: 1px solid var(--wc-border);
  border-radius: var(--wc-radius);
  padding: 14px;
  text-align: center;
  transition: border-color .2s ease;
}
.flatlay-card:hover { border-color: var(--wc-green); }
.flatlay-thumb {
  background: #fff;
  border-radius: var(--wc-radius-sm);
  padding: 12px;
  margin-bottom: 12px;
  aspect-ratio: 1 / 1;
  display: flex; align-items: center; justify-content: center;
}
.flatlay-thumb img { max-width: 100%; max-height: 100%; object-fit: contain; }
.flatlay-meta { display: flex; flex-direction: column; gap: 4px; }
.flatlay-qty {
  display: inline-block;
  font-size: 11px;
  background: var(--wc-green-soft);
  color: var(--wc-green-deep);
  padding: 3px 10px;
  border-radius: 999px;
  margin: 0 auto;
  font-weight: 600;
}
.flatlay-name { font-size: 13px; color: var(--wc-text); line-height: 1.4; }
@media (min-width: 768px){
  .flatlay-grid { grid-template-columns: repeat(3, 1fr); gap: 18px; }
  .flatlay-card { padding: 22px; }
  .flatlay-name { font-size: 14px; }
}
@media (min-width: 1024px){
  .flatlay-grid { grid-template-columns: repeat(6, 1fr); }
}

/* ============== REVIEWS ============== */
.reviews-section {
  background: var(--wc-bg-alt);
  padding: var(--wc-section-pad);
}
.reviews-wrap { max-width: 1200px; margin: 0 auto; }
.reviews-header { text-align: center; margin-bottom: 28px; }
.reviews-title { font-size: 26px; font-weight: 600; color: var(--wc-text); margin: 0 0 10px; }
.reviews-sub { font-size: 14px; color: var(--wc-text-soft); margin: 0; }
.reviews-summary {
  background: #fff;
  border: 1px solid var(--wc-border);
  border-radius: var(--wc-radius);
  padding: 22px;
  display: grid;
  grid-template-columns: 1fr;
  gap: 22px;
  margin-bottom: 22px;
}
.reviews-score { text-align: center; }
.reviews-avg {
  font-size: 56px;
  font-weight: 600;
  color: var(--wc-text);
  line-height: 1;
  letter-spacing: -0.02em;
}
.reviews-avg span { font-size: 22px; color: var(--wc-text-soft); font-weight: 400; }
/* 0603 docx Léo P1: 评价星更大更鲜亮 22→32px, 加 drop-shadow 加强对比 */
.reviews-stars { font-size: 32px; color: #ffb800; margin-top: 8px; letter-spacing: 3px; text-shadow:0 1px 2px rgba(255,184,0,.25); }
.reviews-stars .r-star { opacity: 0.22; color:#e0e0e0 }
.reviews-stars .r-star.is-on { opacity: 1; color:#ffb800 }
.reviews-stars .r-star.is-half { opacity: 0.7; color:#ffb800 }
.reviews-count { font-size: 12px; color: var(--wc-text-soft); margin-top: 6px; }
.reviews-distrib { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.reviews-distrib li { display: grid; grid-template-columns: 50px 1fr 40px; gap: 10px; align-items: center; font-size: 12.5px; }
.rd-stars { color: #f6a429; font-weight: 600; }
.rd-track { height: 8px; background: #f0f0f0; border-radius: 999px; overflow: hidden; }
.rd-fill { height: 100%; background: #f6a429; border-radius: 999px; transition: width .8s; }
.rd-pct { color: var(--wc-text-soft); text-align: right; font-variant-numeric: tabular-nums; }
.reviews-highlights { font-size: 13px; }
.rh-label { display: block; color: var(--wc-text-soft); margin-bottom: 8px; }
.reviews-highlights ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 6px; }
.reviews-highlights li {
  background: var(--wc-green-soft);
  color: var(--wc-green-deep);
  padding: 5px 11px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 500;
}

.reviews-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 14px;
}
.review-card {
  background: #fff;
  border: 1px solid var(--wc-border);
  border-radius: var(--wc-radius);
  padding: 18px;
}
.review-head { display: flex; align-items: center; gap: 10px; margin-bottom: 8px; }
.review-avatar {
  width: 38px; height: 38px;
  background: var(--wc-green);
  color: #fff;
  border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  font-weight: 600;
  font-size: 16px;
}
.review-meta { flex: 1; display: flex; flex-direction: column; }
.review-name { font-size: 14px; font-weight: 600; color: var(--wc-text); }
.review-loc { font-size: 11.5px; color: var(--wc-text-soft); }
.review-verified {
  display: inline-flex; align-items: center; gap: 4px;
  background: var(--wc-green-soft);
  color: var(--wc-green-deep);
  font-size: 11px;
  font-weight: 600;
  padding: 4px 10px;
  border-radius: 999px;
}
.review-stars { font-size: 14px; color: #f6a429; margin: 6px 0; letter-spacing: 1px; }
.review-stars .r-star { opacity: 0.25; }
.review-stars .r-star.is-on { opacity: 1; }
.review-title { font-size: 14.5px; font-weight: 600; color: var(--wc-text); margin: 6px 0; }
.review-body { font-size: 13.5px; color: var(--wc-text-soft); line-height: 1.55; margin: 0; }

.reviews-cta { text-align: center; margin-top: 22px; }
.reviews-cta-btn {
  display: inline-block;
  background: var(--wc-text);
  color: #fff !important;
  padding: 12px 24px;
  border-radius: 999px;
  text-decoration: none;
  font-weight: 500;
  font-size: 14px;
  min-height: 44px;
  line-height: 20px;
}
.reviews-cta-btn:hover { background: #000; }

/* v16 (5/22 客户) ⑤ — Judge.me 经典版式 */
.jm-summary {
  display: flex;
  flex-direction: column;
  gap: 24px;
  background: #fff;
  border: 1px solid #e8ebe8;
  border-radius: 14px;
  padding: 26px 24px;
  margin-bottom: 24px;
}
.jm-score { text-align: center; }
.jm-score-num {
  font-size: 52px;
  font-weight: 800;
  line-height: 1;
  color: var(--wc-text);
}
.jm-score-stars { font-size: 22px; color: #f6a429; letter-spacing: 2px; margin: 6px 0 4px; }
.jm-score-stars .r-star { opacity: .25; }
.jm-score-stars .r-star.is-on { opacity: 1; }
.jm-score-stars .r-star.is-half { opacity: .6; }
.jm-score-base { font-size: 13px; color: var(--wc-text-soft); }
.jm-distrib { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 7px; }
.jm-distrib li { display: grid; grid-template-columns: 44px 1fr 30px; gap: 10px; align-items: center; }
.jm-d-label { font-size: 13px; color: var(--wc-text-soft); white-space: nowrap; }
.jm-d-star { color: #f6a429; }
.jm-d-track { height: 9px; background: #eef0ee; border-radius: 999px; overflow: hidden; }
.jm-d-fill { height: 100%; background: #f6a429; border-radius: 999px; }
.jm-d-count { font-size: 13px; color: var(--wc-text-soft); text-align: right; }
.jm-actions { display: flex; flex-direction: column; gap: 10px; }
.jm-btn {
  display: inline-flex; align-items: center; justify-content: center;
  padding: 11px 18px; border-radius: 8px; font-size: 14px; font-weight: 600;
  text-decoration: none; min-height: 44px; transition: all .15s;
}
.jm-btn--solid { background: #1a1a1a; color: #fff !important; }
.jm-btn--solid:hover { background: #276B42; }
.jm-btn--outline { background: #fff; color: #1a1a1a !important; border: 1.5px solid #1a1a1a; }
.jm-btn--outline:hover { background: #1a1a1a; color: #fff !important; }
/* v16 (5/22 客户) — Photos 左 + 徽章 右 同行 */
.jm-media-row { display: flex; gap: 36px; align-items: center; flex-wrap: wrap; margin-bottom: 8px; }
.jm-media { margin-bottom: 24px; flex: 1 1 340px; }
.jm-media-title { font-size: 15px; font-weight: 700; color: var(--wc-text); margin-bottom: 12px; }
.jm-media-grid { display: flex; gap: 10px; flex-wrap: wrap; }
.jm-media-thumb {
  width: 84px; height: 84px; border-radius: 10px; overflow: hidden;
  background: #f3f5f3; flex: 0 0 auto; border: 1px solid #e8ebe8;
}
.jm-media-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.jm-badges { display: flex; gap: 18px; flex-wrap: wrap; margin-bottom: 22px; align-items: center; }
/* v16 (5/22 客户) — Judge.me 官方认证徽章 (bronze.svg / diamond.svg 内联) */
.jm-medal svg { display: block; width: 120px; height: 120px; }
@media (max-width: 560px){ .jm-medal svg { width: 96px; height: 96px; } }

@media (min-width: 768px){
  .reviews-title { font-size: 32px; }
  .reviews-summary {
    grid-template-columns: 220px 1fr 1fr;
    align-items: center;
    padding: 32px;
  }
  .jm-summary { flex-direction: row; align-items: center; gap: 40px; padding: 30px 36px; }
  .jm-score { flex: 0 0 150px; border-right: 1px solid #e8ebe8; padding-right: 12px; }
  .jm-distrib { flex: 1; }
  .jm-actions { flex: 0 0 200px; }
  .reviews-grid { grid-template-columns: 1fr 1fr; gap: 18px; }
}
@media (min-width: 1024px){
  .reviews-grid { grid-template-columns: repeat(3, 1fr); }
}

/* ============== STICKY MOBILE BOTTOM BAR ============== */
.sticky-buy {
  position: fixed;
  left: 0; right: 0; bottom: 0;
  background: rgba(255,255,255,0.96);
  border-top: 1px solid var(--wc-border);
  box-shadow: 0 -8px 24px rgba(0,0,0,0.08);
  padding: 10px 14px calc(10px + env(safe-area-inset-bottom));
  display: flex;
  align-items: center;
  gap: 12px;
  z-index: 999;
  backdrop-filter: blur(10px);
  animation: stickyIn .25s ease both;
}
@keyframes stickyIn { from { transform: translateY(100%);} to { transform: translateY(0);} }
.sticky-buy[hidden] { display: none; }
.sb-thumb {
  width: 44px; height: 44px;
  object-fit: contain;
  background: var(--wc-bg-alt);
  border-radius: 8px;
  flex: 0 0 44px;
}
.sb-info { flex: 1; min-width: 0; display: flex; flex-direction: column; }
.sb-name {
  font-size: 12.5px;
  font-weight: 500;
  color: var(--wc-text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.25;
}
.sb-price { font-size: 14px; font-weight: 600; color: var(--wc-green); margin-top: 2px; }
.sb-compare {
  font-size: 11px;
  font-weight: 400;
  color: var(--wc-text-soft);
  text-decoration: line-through;
  margin-left: 6px;
}
.sb-cta {
  flex: 0 0 auto;
  background: var(--wc-green);
  color: #fff;
  border: 0;
  padding: 12px 20px;
  border-radius: 999px;
  font-size: 14px;
  font-weight: 600;
  min-height: 44px;
  cursor: pointer;
}
.sb-cta:hover { background: #2f8550; }
/* v15 (5/21): mobile sticky-buy now hides at ≥1000px so the new PC sticky bar takes over */
@media (min-width: 1000px){
  .sticky-buy { display: none !important; }
}

/* ============================================================
 *  v13 (5/18 客户) — Installation grid + FAQ contact bar (lampede.it style)
 * ============================================================ */
.v13-install { padding: clamp(28px, 5vw, 56px) clamp(16px, 3vw, 24px); background: #f7f9f7; }
.v13-install .lh-wrap { max-width: 1180px; margin: 0 auto; }
.v13-install .lh-section-title { font-size: clamp(22px, 3vw, 30px); font-weight: 700; color: #1a1a1a; margin: 0 0 8px; text-align: center; }
.v13-install-intro { text-align: center; color: #555; font-size: 14.5px; margin: 0 auto 28px; max-width: 640px; line-height: 1.55; }
.v13-install-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 18px;
}
.v13-install-card {
    background: #fff;
    border: 1px solid #ececec;
    border-radius: 14px;
    overflow: hidden;
    transition: box-shadow .25s ease, transform .25s ease;
}
.v13-install-card:hover { box-shadow: 0 8px 24px rgba(0,0,0,.07); transform: translateY(-2px); }
.v13-install-card-media {
    aspect-ratio: 1 / 1;
    background: #f4f4f4;
    overflow: hidden;
}
.v13-install-card-media img { width: 100%; height: 100%; object-fit: cover; display: block; }
.v13-install-card-body { padding: 14px 18px 20px; }
.v13-install-card-title {
    font-size: 14.5px;
    font-weight: 700;
    color: #1a1a1a;
    margin: 0 0 6px;
    letter-spacing: -0.005em;
}
.v13-install-card-desc {
    font-size: 13.5px;
    line-height: 1.55;
    color: #555;
    margin: 0;
}
@media (min-width: 768px) {
    .v13-install-grid { gap: 22px; }
    .v13-install-card-title { font-size: 15.5px; }
    .v13-install-card-desc { font-size: 14px; }
}

/* ---- FAQ 2 列布局（左 contact 卡 + 右 accordion） — 严格仿原 lumihome.com 详情页 ---- */
.v13-faq { background: #f7f9f7; padding: clamp(28px, 5vw, 56px) clamp(16px, 3vw, 32px); }
.v13-faq-wrap {
    max-width: 1240px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr;
    gap: 28px;
    align-items: start;
}
.v13-faq-aside {
    background: #fff;
    border: 1px solid #e5ebe5;
    border-radius: 14px;
    padding: 28px 28px 24px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    box-shadow: 0 2px 8px rgba(0,0,0,.025);
}
.v13-faq-title {
    font-size: 22px;
    line-height: 1.3;
    font-weight: 700;
    color: #1a1a1a;
    margin: 0 0 4px;
    letter-spacing: -0.005em;
}
.v13-faq-lead {
    font-size: 15px;
    color: #1a1a1a;
    margin: 0;
    line-height: 1.45;
}
.v13-faq-lead strong { color: #276B42; font-weight: 700; }
.v13-faq-sub { font-size: 13.5px; color: #5a5a5a; line-height: 1.55; margin: 2px 0 14px; }
.v13-faq-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 48px;
    border-radius: 999px;
    text-decoration: none;
    font-weight: 600;
    font-size: 15px;
    letter-spacing: 0.01em;
    transition: background .2s ease, color .2s ease, border-color .2s ease, transform .2s ease;
}
.v13-faq-btn:hover { transform: translateY(-1px); }
.v13-faq-btn--primary { background: #2f8550; color: #fff; }
.v13-faq-btn--primary:hover { background: #276B42; color: #fff; }
.v13-faq-btn--ghost { background: #fff; color: #276B42; border: 1.5px solid #276B42; }
.v13-faq-btn--ghost:hover { background: #f0f7f2; }
.v13-faq-list { flex: 1; min-width: 0; }
@media (min-width: 900px) {
    .v13-faq-wrap {
        grid-template-columns: 360px 1fr;
        gap: 40px;
    }
    .v13-faq-title { font-size: 26px; }
}
@media (min-width: 1200px) {
    .v13-faq-wrap { grid-template-columns: 400px 1fr; gap: 56px; }
}


/* v13 (5/18) ③ — Avis d'expert dans le rail d'achat (sous trust-badges) */
.v13-expert-rail {
    margin: 14px 0 20px;
    background: #f7f9f7;
    border: 1px solid #e5ebe5;
    border-radius: 12px;
    padding: 14px 16px;
}
.v13-expert-rail-head {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 8px;
}
.v13-expert-rail-avatar {
    width: 36px; height: 36px;
    border-radius: 50%;
    object-fit: cover;
    background: #fff;
    border: 1px solid #e5ebe5;
    flex: 0 0 36px;
}
.v13-expert-rail-meta { flex: 1; display: flex; flex-direction: column; line-height: 1.25; min-width: 0; }
.v13-expert-rail-name { font-weight: 700; font-size: 13.5px; color: #1a1a1a; }
.v13-expert-rail-role { font-size: 11px; letter-spacing: 0.08em; text-transform: uppercase; color: #b8862b; }
.v13-expert-rail-badge {
    display: inline-flex;
    align-items: center;
    background: #276B42;
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    padding: 5px 12px;
    border-radius: 999px;
    white-space: nowrap;
    flex: 0 0 auto;
}
.v13-expert-rail-quote {
    margin: 0;
    padding-left: 10px;
    border-left: 3px solid #276B42;
    font-style: italic;
    font-size: 13px;
    line-height: 1.55;
    color: #444;
}
@media (max-width: 480px){
    .v13-expert-rail-badge { font-size: 11px; padding: 4px 10px; }
}


/* ---- 03.012 页面内联样式块
   来源：product.html:5916, eclairage-solaire.html:5904, account.html:5907, cart.html:5907, search.html:5907, contact.html:5907, magazine.html:5907, article.html:5907, ... 共 14 处
   说明：由页面 <style> 抽离，保持原有选择器和声明不变。
   ---- */
.header__icon-wrapper[aria-controls="mini-cart"]{position:relative}
.lh-cart-count{position:absolute;top:-7px;right:-8px;min-width:17px;height:17px;padding:0 5px;border-radius:999px;background:#d8062f;color:#fff;font-size:10px;font-weight:800;line-height:17px;text-align:center;box-shadow:0 0 0 2px #fff}
#mini-cart.mini-cart{position:fixed !important;top:var(--mini-cart-top,86px) !important;left:var(--mini-cart-left,auto) !important;right:auto !important;width:var(--mini-cart-width,330px) !important;max-width:calc(100vw - 24px) !important;height:auto !important;max-height:calc(100vh - 110px) !important;transform:translateY(8px) !important;opacity:0 !important;visibility:hidden !important;border:1px solid #ececec !important;border-radius:4px !important;background:#fff !important;box-shadow:0 24px 55px rgba(20,25,30,.18) !important;overflow:visible !important;z-index:9999 !important;transition:opacity .16s ease,transform .16s ease,visibility .16s ease !important}
#mini-cart.mini-cart[open]{opacity:1 !important;visibility:visible !important;transform:translateY(0) !important}
#mini-cart::before{content:"";position:absolute;left:var(--mini-cart-arrow-x,285px);top:-9px;width:18px;height:18px;background:#fff;border-left:1px solid #ececec;border-top:1px solid #ececec;transform:translateX(-50%) rotate(45deg)}
#mini-cart .drawer__overlay{display:none !important}
#mini-cart .drawer__header{height:auto;max-height:none;padding:16px 16px 12px;border-bottom:1px solid #ececec;background:#fff}
#mini-cart .drawer__title{font-size:15px;font-weight:800;margin:0;text-align:center;width:100%}
#mini-cart .drawer__close-button{position:absolute;right:12px;top:12px;width:24px;height:24px}
#mini-cart .drawer__content{padding:0 16px 16px;background:#fff;display:block;text-align:left}
.lh-mini-empty{padding:22px 0;text-align:center;color:#666;font-size:13px}
.lh-mini-item{display:grid;grid-template-columns:50px 1fr auto;gap:12px;padding:15px 0;border-bottom:1px solid #ececec}
.lh-mini-item img{width:50px;height:50px;border-radius:6px;object-fit:cover;background:#f4f4f4}
.lh-mini-name{font-size:12.2px;font-weight:700;line-height:1.35;color:#151515;margin:0 0 5px}
.lh-mini-qty{font-size:11.5px;color:#555}
.lh-mini-remove{border:0;background:transparent;font-size:18px;line-height:1;color:#555;cursor:pointer;padding:0 0 0 6px}
.lh-mini-price{text-align:right;font-size:13px;font-weight:800;white-space:nowrap}
.lh-mini-old{display:block;margin-top:3px;font-size:10px;font-weight:400;color:#777;text-decoration:line-through}
.lh-mini-saving{display:flex;justify-content:space-between;gap:10px;margin:14px 0 10px;padding:9px 10px;border-radius:7px;background:#e8f6e7;color:#289344;font-size:12px}
.lh-mini-row{display:flex;justify-content:space-between;gap:12px;margin:9px 0;font-size:12.5px;color:#1c1c1c}
.lh-mini-total{font-size:14px;font-weight:800}
.lh-mini-tax{font-size:10.5px;color:#555;margin:-4px 0 14px}
.lh-mini-cart-btn{display:flex;align-items:center;justify-content:center;width:100%;height:46px;border-radius:999px;background:#d8062f;color:#fff;text-decoration:none;font-size:13px;font-weight:800;margin-top:14px}
.lh-mini-express{display:flex;align-items:center;gap:10px;margin:15px 0 12px;color:#777;font-size:9px;text-transform:uppercase}
.lh-mini-express::before,.lh-mini-express::after{content:"";height:1px;background:#d7d7d7;flex:1}
.lh-mini-checkout{display:block;text-align:center;color:#111;text-decoration:underline;font-size:12px}
@media (max-width:699px){#mini-cart.mini-cart{width:calc(100vw - 24px) !important;max-height:calc(100vh - 92px) !important}#mini-cart::before{display:none}}


/* ---- 03.013 页面内联样式块
   来源：product.html:6338, product.php:6988
   说明：由页面 <style> 抽离，保持原有选择器和声明不变。
   ---- */
/* Léo PDP fix #4 — Stock prominence */
            .ship-info-v16--prominent{display:flex;flex-direction:column;gap:10px;margin:14px 0 18px}
            .ship-stock{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;background:#f0f9f3;border:1px solid #cfe5d8;border-radius:12px}
            .ship-stock--prime{background:#fffbf0;border-color:#f5d99a}
            .ship-stock--preorder{background:#fff5e6;border-color:#f5c98a}
            .ship-stock__badge{flex:0 0 auto;width:32px;height:32px;border-radius:50%;background:#1d9c5a;color:#fff;display:grid;place-items:center;box-shadow:0 2px 6px rgba(29,156,90,.25)}
            .ship-stock--preorder .ship-stock__badge{background:#f59e0b}
            .ship-stock__badge--prime{background:#f59e0b !important;box-shadow:0 2px 6px rgba(245,158,11,.3) !important}
            .ship-stock__badge svg{width:18px;height:18px}
            .ship-stock__body{display:flex;flex-direction:column;gap:2px;line-height:1.4}
            .ship-stock__title{font-size:14.5px;font-weight:800;color:#1a1a1a;letter-spacing:.01em}
            .ship-stock__sub{font-size:13px;color:#4a524b}
            .ship-stock__sub strong{color:#1a1a1a;font-weight:700}


/* ---- 03.014 页面内联样式块
   来源：product.html:6772, product.php:7343
   说明：由页面 <style> 抽离，保持原有选择器和声明不变。
   ---- */
.v15-info-trio{display:flex;gap:0;margin-top:24px;padding-top:18px;border-top:1px solid #eef0ee;justify-content:space-around}
                            .v15-info-trio button{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;background:none;border:0;color:#1a1a1a;font-size:14px;font-weight:500;cursor:pointer;text-decoration:underline;text-underline-offset:3px;font-family:inherit}
                            .v15-info-trio button:hover{color:#276B42}
                            .v15-info-trio button svg{width:22px;height:22px;color:#666;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
                            .v15-info-trio button:hover svg{color:#276B42}
                            /* Backdrop */
                            .v15-drawer-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:998;opacity:0;visibility:hidden;transition:opacity .25s ease,visibility .25s ease}
                            .v15-drawer-backdrop.is-open{opacity:1;visibility:visible}
                            /* Right-side drawer */
                            .v15-drawer{position:fixed;top:0;right:0;width:min(540px,100vw);height:100dvh;background:#fff;z-index:999;box-shadow:-14px 0 40px -10px rgba(0,0,0,.18);transform:translateX(100%);transition:transform .3s cubic-bezier(.22,.61,.36,1);display:flex;flex-direction:column;overflow:hidden}
                            .v15-drawer.is-open{transform:translateX(0)}
                            .v15-drawer__head{position:sticky;top:0;background:#fff;display:flex;align-items:center;justify-content:space-between;padding:22px 28px;border-bottom:1px solid #eef0ee;z-index:2}
                            .v15-drawer__title{margin:0;font-size:18px;font-weight:700;color:#1a1a1a;display:flex;align-items:center;gap:10px}
                            .v15-drawer__title svg{width:22px;height:22px;color:#1a1a1a;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
                            .v15-drawer__close{width:38px;height:38px;border:0;background:transparent;cursor:pointer;color:#1a1a1a;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;font-size:24px;line-height:1;transition:background .15s}
                            .v15-drawer__close:hover{background:#f3f5f3}
                            .v15-drawer__body{flex:1;overflow-y:auto;padding:24px 28px 40px;font-size:14.5px;line-height:1.65;color:#444}
                            .v15-drawer__body p{margin:0 0 14px}
                            .v15-drawer__body strong{color:#1a1a1a;font-weight:700}
                            .v15-drawer__body h4{margin:18px 0 10px;font-size:15.5px;font-weight:700;color:#1a1a1a}
                            .v15-drawer__body ul{margin:8px 0 14px;padding-left:22px}
                            .v15-drawer__body li{margin-bottom:8px}
                            .v15-drawer__body li strong{font-weight:700}
                            .v15-drawer__body .v15-drawer__logos{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:14px 0}
                            .v15-drawer__body .v15-drawer__logos img{height:32px;background:#fff;border:1px solid #eef2ef;border-radius:6px;padding:4px 8px}
                            .v15-drawer__body .v15-flag{font-size:18px;margin-right:4px;vertical-align:-1px}
                            .v15-drawer__body a{color:#276B42;text-decoration:underline}
                            .v15-drawer__body .v15-fine{font-size:12.5px;color:#666;line-height:1.6;margin-top:14px;padding-top:14px;border-top:1px dashed #e5e7eb}
                            @media(max-width:560px){.v15-drawer{width:100vw}.v15-drawer__head{padding:18px 20px}.v15-drawer__body{padding:20px 20px 32px}}


/* ---- 03.015 页面内联样式块
   来源：product.html:8757, product.php:8875
   说明：由页面 <style> 抽离，保持原有选择器和声明不变。
   ---- */
.v15-pc-sticky{
  position:fixed;left:0;right:0;bottom:0;z-index:998;
  background:rgba(255,255,255,.98);
  border-top:1px solid #e5e7eb;
  box-shadow:0 -10px 30px -10px rgba(20,40,30,.18);
  padding:12px 24px;display:none;
  transform:translateY(100%);transition:transform .28s cubic-bezier(.22,.61,.36,1);
  backdrop-filter:saturate(180%) blur(8px);
}
.v15-pc-sticky.is-visible{transform:translateY(0)}
@media (min-width:1000px){.v15-pc-sticky{display:flex;align-items:center;gap:24px;max-width:none}}
.v15-pc-sticky__wrap{display:flex;align-items:center;gap:24px;width:100%;max-width:1400px;margin:0 auto}
/* Left side — thumb + name + stock + delivery */
.v15-pc-sticky__left{display:flex;align-items:center;gap:16px;flex:1;min-width:0}
.v15-pc-sticky__thumb{width:64px;height:64px;border-radius:8px;background:#f3f5f3;object-fit:cover;flex:0 0 64px}
.v15-pc-sticky__info{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}
.v15-pc-sticky__name{font-size:14.5px;font-weight:600;color:#1a1a1a;line-height:1.3;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:540px}
.v15-pc-sticky__meta{display:flex;align-items:center;gap:14px;font-size:12.5px;color:#666}
.v15-pc-sticky__stock{display:inline-flex;align-items:center;gap:5px;color:#276B42;font-weight:600}
.v15-pc-sticky__stock::before{content:"";width:8px;height:8px;border-radius:50%;background:#276b42}
.v15-pc-sticky__delivery{display:inline-flex;align-items:center;gap:5px}
.v15-pc-sticky__delivery svg{width:14px;height:14px;color:#666;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
/* Right side — qty + price + cta + heart */
.v15-pc-sticky__right{display:flex;align-items:center;gap:18px;flex-shrink:0}
.v15-pc-sticky__qty{display:inline-flex;align-items:center;border:1px solid #d8ddd8;border-radius:999px;height:44px;background:#fff;overflow:hidden}
.v15-pc-sticky__qty button{width:38px;height:42px;border:0;background:none;cursor:pointer;font-size:18px;font-weight:500;color:#555;display:inline-flex;align-items:center;justify-content:center;font-family:inherit}
.v15-pc-sticky__qty button:hover{color:#276B42;background:#f7faf7}
.v15-pc-sticky__qty input{width:42px;text-align:center;border:0;outline:0;font-size:15px;font-weight:700;color:#1a1a1a;background:transparent;-moz-appearance:textfield;font-family:inherit}
.v15-pc-sticky__qty input::-webkit-outer-spin-button,
.v15-pc-sticky__qty input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.v15-pc-sticky__price{display:flex;flex-direction:column;align-items:flex-end;line-height:1.1;min-width:90px}
.v15-pc-sticky__price-now{font-size:20px;font-weight:700;color:#1a1a1a}
.v15-pc-sticky__price-old{display:inline-flex;align-items:center;gap:6px;margin-top:2px;font-size:12.5px;color:#888}
.v15-pc-sticky__price-old del{text-decoration:line-through}
.v15-pc-sticky__price-old .pvc-tip{cursor:help;color:#999;font-size:13px}
.v15-pc-sticky__cta{display:inline-flex;align-items:center;justify-content:center;height:48px;padding:0 32px;border-radius:999px;background:#276B42;color:#fff;border:0;font-family:inherit;font-size:15px;font-weight:700;letter-spacing:.01em;cursor:pointer;transition:background .15s,transform .15s,box-shadow .15s}
.v15-pc-sticky__cta:hover{background:#1e5333;transform:translateY(-1px);box-shadow:0 6px 14px -4px rgba(39,107,66,.4)}
.v15-pc-sticky__cta:active{transform:translateY(0)}
.v15-pc-sticky__fav{width:44px;height:44px;border:1px solid #d8ddd8;background:#fff;border-radius:50%;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;color:#555;transition:.15s}
.v15-pc-sticky__fav:hover{color:#276B42;border-color:#276B42}
.v15-pc-sticky__fav.is-active{color:#e60023;border-color:#e60023}
.v15-pc-sticky__fav svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.v15-pc-sticky__fav.is-active svg{fill:currentColor}


/* ---- 03.016 页面内联样式块
   来源：product.html:8964, eclairage-solaire.html:8431, account.html:6229, cart.html:6396, search.html:6238, contact.html:6292, magazine.html:6358, article.html:6265, ... 共 14 处
   说明：由页面 <style> 抽离，保持原有选择器和声明不变。
   ---- */
.v15-trust-strip{background:#fff;padding:48px 24px;border-top:1px solid #e5e7eb;border-bottom:1px solid #e5e7eb}
.v15-trust-inner{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:1.1fr 1.1fr 1fr;gap:48px;align-items:start}
@media(max-width:900px){.v15-trust-inner{grid-template-columns:1fr;gap:32px}}
.v15-trust-col h3{margin:0 0 16px;font-size:16px;font-weight:700;color:#1a1a1a;letter-spacing:.02em}
.v15-trust-logos{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.v15-trust-logos img{height:32px;width:auto;object-fit:contain;background:#fff;border:1px solid #eef2ef;border-radius:6px;padding:4px 8px;transition:border-color .15s,box-shadow .15s}
.v15-trust-logos img:hover{border-color:#276B42;box-shadow:0 2px 8px rgba(39,107,66,.12)}
.v15-trust-col--shipping img{height:36px}
.v15-trust-eco{display:inline-flex;align-items:center;gap:8px;margin-top:12px;padding:6px 12px;background:#e8f5e9;border-radius:6px;font-size:12.5px;color:#1b5e20;font-weight:600}
.v15-trust-eco img{height:24px;border:0;padding:0;background:none}
.v15-trust-rating{display:flex;align-items:center;gap:14px}
.v15-trust-rating-stars{display:flex;gap:3px}
.v15-trust-rating-stars svg{width:24px;height:24px;background:#00b67a;padding:3px;color:#fff;fill:#fff}
.v15-trust-rating-score{font-size:14px;color:#444}
.v15-trust-rating-score strong{color:#1a1a1a;font-weight:700;font-size:16px}
.v15-trust-rating-score a{color:#276B42;text-decoration:underline}
.v15-trust-rating-logo{margin-top:8px;display:inline-flex;align-items:center;gap:6px;font-size:13px;color:#444;font-weight:600}
.v15-trust-rating-logo svg{width:18px;height:18px;color:#00b67a;fill:#00b67a}


/* ---- 03.017 页面内联样式块
   来源：product.html:9669, account.html:6467, cart.html:6634, search.html:6476, contact.html:6530, magazine.html:6596, article.html:6503, fidelite.html:6581, ... 共 12 处
   说明：由页面 <style> 抽离，保持原有选择器和声明不变。
   ---- */
.v15-cat-scenes{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:24px 0}
@media(max-width:900px){.v15-cat-scenes{grid-template-columns:repeat(2,1fr)}}
.v15-cat-scene{position:relative;border-radius:14px;overflow:hidden;aspect-ratio:4/3;display:block;text-decoration:none;color:inherit;cursor:pointer;transition:transform .25s ease,box-shadow .25s ease}
.v15-cat-scene:hover{transform:translateY(-3px);box-shadow:0 14px 30px -10px rgba(0,0,0,.18)}
.v15-cat-scene img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s}
.v15-cat-scene:hover img{transform:scale(1.05)}
.v15-cat-scene__label{position:absolute;bottom:14px;left:14px;background:rgba(255,255,255,.95);color:#1a1a1a;padding:6px 14px;border-radius:30px;font-size:13.5px;font-weight:600;letter-spacing:.01em;backdrop-filter:saturate(180%) blur(4px)}
.v15-cat-filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:18px 0;padding:14px 16px;background:#fff;border:1px solid #e5e7eb;border-radius:14px}
.v15-cat-filter{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;background:#fff;border:1px solid #d8ddd8;border-radius:999px;color:#1a1a1a;font-size:13.5px;font-weight:500;cursor:pointer;transition:.18s;text-decoration:none}
.v15-cat-filter:hover{border-color:#276B42;color:#276B42}
.v15-cat-filter.is-active{background:#276B42;color:#fff;border-color:#276B42}
.v15-cat-filter svg{width:14px;height:14px}
.v15-cat-filter--more{margin-left:auto;background:#fff;border:1.5px solid #1a1a1a;color:#1a1a1a}
.v15-cat-filter--more:hover{background:#1a1a1a;color:#fff}
.v15-cat-filter-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.v15-cat-filters[data-expanded="true"] .v15-cat-filter-row{max-height:none}
.v15-cat-filter-extra{display:none}
.v15-cat-filters[data-expanded="true"] .v15-cat-filter-extra{display:inline-flex}
.v15-cat-bc{font-size:13px;color:#666;margin-bottom:8px}
.v15-cat-bc a{color:#666;text-decoration:none}
.v15-cat-title{font-size:clamp(28px,4vw,40px);font-weight:600;margin:0 0 18px;color:#1a1a1a}


/* ---- 03.018 页面内联样式块
   来源：eclairage-solaire.html:18, eclairage-solaire.php:97
   说明：由页面 <style> 抽离，保持原有选择器和声明不变。
   ---- */
/* ============================================================================
   ✅ CSS DE BASE (hérité de la page promo) - Conservé tel quel pour la cohérence
============================================================================ */
:root {
--heading-color: 27, 27, 27;
--text-color: 51, 51, 51;
--background: 255, 255, 255;
--secondary-background: 247, 249, 247;
--border-color: 224, 224, 224;
--border-color-darker: 173, 173, 173;
--success-color: 27, 27, 27;
--success-background: 209, 209, 209;
--error-color: 222, 42, 42;
--error-background: 253, 240, 240;
--primary-button-background: 58, 157, 95;
--primary-button-text-color: 255, 255, 255;
--secondary-button-background: 40, 40, 40;
--secondary-button-text-color: 255, 255, 255;
--product-star-rating: 246, 164, 41;
--product-on-sale-accent: 16, 16, 16;
--product-sold-out-accent: 111, 113, 155;
--product-custom-label-background: 64, 93, 230;
--product-custom-label-text-color: 255, 255, 255;
--product-custom-label-2-background: 243, 255, 52;
--product-custom-label-2-text-color: 0, 0, 0;
--product-low-stock-text-color: 11, 11, 13;
--product-in-stock-text-color: 11, 11, 13;
--loading-bar-background: 51, 51, 51;
--root-heading-color: 27, 27, 27;
--root-text-color: 51, 51, 51;
--root-background: 255, 255, 255;
--root-border-color: 224, 224, 224;
--root-primary-button-background: 58, 157, 95;
--root-primary-button-text-color: 255, 255, 255;
--base-font-size: 15px;
--heading-font-family: Poppins, sans-serif;
--heading-font-weight: 500;
--heading-font-style: normal;
--heading-text-transform: normal;
--text-font-family: Poppins, sans-serif;
--text-font-weight: 400;
--text-font-style: normal;
--text-font-bold-weight: 600;
--heading-xxsmall-font-size: 10px;
--heading-xsmall-font-size: 10px;
--heading-small-font-size: 11px;
--heading-large-font-size: 32px;
--heading-h1-font-size: 32px;
--heading-h2-font-size: 28px;
--heading-h3-font-size: 26px;
--heading-h4-font-size: 22px;
--heading-h5-font-size: 18px;
--heading-h6-font-size: 16px;
--button-border-radius: 30px;
--block-border-radius: 8px;
--block-border-radius-reduced: 4px;
--color-swatch-border-radius: 100%;
--button-height: 48px;
--button-small-height: 40px;
--form-input-field-height: 48px;
--form-input-gap: 16px;
--form-submit-margin: 24px;
--product-list-block-spacing: 32px;
--vertical-breather: 48px;
--vertical-breather-tight: 48px;
--container-max-width: 1600px;
--container-gutter: 24px;
--container-max-width-minus-gutters: calc(var(--container-max-width) - (var(--container-gutter)) * 2);
--container-outer-width: max(calc((100vw - var(--container-max-width-minus-gutters)) / 2), var(--container-gutter));
--container-inner-width: calc(100vw - var(--container-outer-width) * 2);
--grid-column-count: 10;
--grid-gap: 24px;
--grid-column-width: calc((100vw - var(--container-outer-width) * 2 - var(--grid-gap) * (var(--grid-column-count) - 1)) / var(--grid-column-count));
--transform-logical-flip: 1;
--transform-origin-start: left;
--transform-origin-end: right;
--zoom-cursor-svg-url: url(./catalog/zoom-cursor-cb5cdb4630e5.svg);
--arrow-right-svg-url: url(./catalog/arrow-right-2a115713352b.svg);
--arrow-left-svg-url: url(./catalog/arrow-left-6062eca54cd3.svg);
}
@media screen and (min-width: 741px) {
:root {
--container-gutter: 40px;
--grid-column-count: 20;
--vertical-breather: 64px;
--vertical-breather-tight: 64px;
--heading-xsmall-font-size: 11px;
--heading-small-font-size: 12px;
--heading-large-font-size: 48px;
--heading-h1-font-size: 48px;
--heading-h2-font-size: 36px;
--heading-h3-font-size: 30px;
--heading-h4-font-size: 22px;
--heading-h5-font-size: 18px;
--heading-h6-font-size: 16px;
--form-input-field-height: 52px;
--form-submit-margin: 32px;
--button-height: 52px;
--button-small-height: 44px;
}
}
@media screen and (min-width: 1200px) {
:root {
--vertical-breather: 80px;
--vertical-breather-tight: 64px;
--product-list-block-spacing: 48px;
--heading-large-font-size: 58px;
--heading-h1-font-size: 50px;
--heading-h2-font-size: 44px;
--heading-h3-font-size: 32px;
--heading-h4-font-size: 26px;
--heading-h5-font-size: 22px;
--heading-h6-font-size: 16px;
}
}
@media screen and (min-width: 1600px) {
:root {
--vertical-breather: 90px;
--vertical-breather-tight: 64px;
}
}
/* Typography */
@font-face {
font-family: Poppins;
font-weight: 500;
font-style: normal;
font-display: swap;
src: url("./fonts/poppins-medium.woff2") format("woff2"),
url("./fonts/poppins-medium.woff2") format("woff2");
}
@font-face {
font-family: Poppins;
font-weight: 500;
font-style: italic;
font-display: swap;
src: url("./fonts/poppins-medium.woff2") format("woff2"),
url("./fonts/poppins-medium.woff2") format("woff2");
}
@font-face {
font-family: Poppins;
font-weight: 400;
font-style: normal;
font-display: swap;
src: url("./fonts/poppins-regular.woff2") format("woff2"),
url("./fonts/poppins-regular.woff2") format("woff2");
}
@font-face {
font-family: Poppins;
font-weight: 400;
font-style: italic;
font-display: swap;
src: url("./fonts/poppins-regular.woff2") format("woff2"),
url("./fonts/poppins-regular.woff2") format("woff2");
}
@font-face {
font-family: Poppins;
font-weight: 600;
font-style: normal;
font-display: swap;
src: url("./fonts/poppins-semibold.woff2") format("woff2"),
url("./fonts/poppins-semibold.woff2") format("woff2");
}
@font-face {
font-family: Poppins;
font-weight: 600;
font-style: italic;
font-display: swap;
src: url("./fonts/poppins-semibold.woff2") format("woff2"),
url("./fonts/poppins-semibold.woff2") format("woff2");
}
html {
scroll-behavior: smooth;
}
/* Header & Navigation Styles */
.header__linklist-link {
position: relative;
display: inline-block;
}
.header__linklist-link::after {
content: '';
position: absolute;
left: 0;
right: 100%;
bottom: -3px;
background: #276b42;
height: 1px;
transition-property: right;
transition-duration: 0.4s;
transition-timing-function: ease-out;
}
.header__linklist-link:hover::after {
right: 0;
}
.header__linklist a[href="/collections/promos"] {
color: white;
background: #276B42;
padding: 1px 10px;
font-weight: 500;
border-radius: 4px;
}
/* =========================================================
 * LUMIHOME V3 — Multi-Style Mega-Menu (8 categories)
 *  - Style A · Solaire: editorial 3-col + hero card + filter pills
 *  - Style B · 230V:    split sub-cats + ambiance hero + chips
 *  - Style C · Basse tension: dual card panels w/ accent icons
 *  - Style D · Par espace: indoor/outdoor visual room mosaic
 *  - Style E · Accessoires: compact icon strip + conditional sub
 *  - Style F · PROMOS:    red attention pill (link)
 *  - Style G · BON PLAN: amber/gold attention pill (link)
 *  - Style H · Plus:      tight dropdown card
 * ========================================================= */
.mega-menu{
--mega-menu-column-gap:40px;
--mega-menu-image-gap:20px;
--mm-accent:#276B42;
--mm-accent-soft:#e8f3ec;
--mm-accent-dark:#1e5333;
--mm-amber:#d97706;
--mm-amber-soft:#fff4e0;
--mm-red:#e60023;
--mm-radius:14px;
--mm-radius-sm:10px;
visibility:hidden;opacity:0;pointer-events:none;
background:#fff;color:#1a1a1a;width:100%;
display:block;position:absolute;top:100%;left:0;z-index:10;
transition:opacity .28s ease,visibility .28s ease,transform .28s ease;
transform:translateY(8px);
box-shadow:0 18px 40px -12px rgba(20,40,30,.18),0 6px 14px -8px rgba(20,40,30,.10);
border-top:1px solid rgba(39,107,66,.10);
border-radius:0 0 var(--mm-radius) var(--mm-radius);
}
.header__linklist-item.has-dropdown:hover .mega-menu,
.header__linklist-item.has-dropdown:focus-within .mega-menu{
visibility:visible;opacity:1;pointer-events:auto;transform:translateY(0);
}
.mega-menu__inner{
justify-content:center;column-gap:var(--mega-menu-column-gap);
max-height:calc(100vh - var(--header-height,0px) - var(--announcement-bar-height,0px) - 60px);
z-index:1;grid-auto-flow:column;
padding:40px 0 44px;display:grid;position:relative;overflow:auto;
}
.mega-menu__column{margin:calc(var(--mega-menu-column-gap)/2);min-width:200px;}
.mega-menu__title{
margin:0 0 14px;font-weight:700;font-size:.92rem;letter-spacing:.02em;
color:var(--mm-accent-dark);display:inline-flex;align-items:center;gap:8px;
text-decoration:none;
}
.mega-menu__title::before{
content:"";width:18px;height:2px;background:var(--mm-accent);border-radius:2px;
}
.mega-menu__title:hover{color:var(--mm-accent);}
.mega-menu__image-wrapper{
border-radius:var(--mm-radius);z-index:0;margin-block-end:14px;overflow:hidden;
position:relative;aspect-ratio:4/3;background:#f4f7f5;
}
.mega-menu__image{
border-radius:inherit;width:100%;height:100%;display:block;object-fit:cover;
transition:transform .55s ease;
}
.mega-menu__image-push:hover .mega-menu__image{transform:scale(1.05);}
.mega-menu__heading{
font-size:.88rem;font-weight:600;color:#1a1a1a;margin:0;
display:inline-flex;align-items:center;gap:6px;
}
.mega-menu__image-push:hover .mega-menu__heading{color:var(--mm-accent);}
.linklist__item a{
word-break:break-word;display:inline-flex;align-items:center;gap:6px;
text-decoration:none;color:#4a5568;padding:5px 0;font-size:.9rem;
transition:color .2s,transform .2s;position:relative;
}
.linklist__item a::before{
content:"";width:0;height:1px;background:var(--mm-accent);
transition:width .25s ease;margin-right:0;
}
.linklist__item a:hover{color:var(--mm-accent);transform:translateX(2px);}
.linklist__item a:hover::before{width:14px;margin-right:6px;}

/* ---------- Style A · Solaire: 2-col list + hero (per Excel) ---------- */
.mm-solaire .mega-menu__inner{
grid-template-columns:1fr 1fr 1.35fr;grid-auto-flow:row;
padding:36px 0 36px;
}
.mm-solaire .mega-menu__images-wrapper{
margin:calc(var(--mega-menu-column-gap)/2);
display:flex;flex-direction:column;justify-content:flex-start;gap:14px;
position:relative;
}
.mm-solaire .mega-menu__image-push{
display:block;text-decoration:none;color:inherit;
border-radius:var(--mm-radius);overflow:hidden;
position:relative;background:linear-gradient(135deg,#1e5333,#276B42);
}
.mm-solaire .mega-menu__image-wrapper{aspect-ratio:16/10;margin:0;}
.mm-solaire .mega-menu__image-push .mega-menu__heading{
position:absolute;left:16px;bottom:14px;color:#fff;font-weight:600;
text-shadow:0 2px 8px rgba(0,0,0,.45);font-size:.95rem;
}
.mm-filter-row{
grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:10px;align-items:center;
margin:8px calc(var(--mega-menu-column-gap)/2) 0;
padding-top:18px;border-top:1px dashed #d6e3da;
}
.mm-filter-label{
font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
color:var(--mm-accent-dark);margin-right:6px;
}
.mm-chip{
display:inline-flex;align-items:center;gap:4px;font-size:.78rem;
padding:5px 11px;border-radius:999px;
background:var(--mm-accent-soft);color:var(--mm-accent-dark);
border:1px solid transparent;cursor:pointer;font-weight:500;
transition:all .2s;text-decoration:none;
}
.mm-chip:hover{background:var(--mm-accent);color:#fff;transform:translateY(-1px);}
.mm-chip--ip{background:#eef4f7;color:#2c5777;}
.mm-chip--ip:hover{background:#2c5777;color:#fff;}
/* SVG icons via CSS mask (inherit chip text color, support hover color change) */
.mm-chip--solar::before,
.mm-chip--detect::before,
.mm-chip--remote::before,
.mm-chip--usb::before,
.mm-chip--head::before,
.mm-chip--plug::before{
content:"";display:inline-block;width:12px;height:12px;
background-color:currentColor;flex-shrink:0;
-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;
-webkit-mask-position:center;mask-position:center;
-webkit-mask-size:contain;mask-size:contain;
}
.mm-chip--solar::before{
-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='4'/><path d='M12 2v2M12 20v2M4.93 4.93l1.41 1.41M17.66 17.66l1.41 1.41M2 12h2M20 12h2M4.93 19.07l1.41-1.41M17.66 6.34l1.41-1.41'/></svg>");
mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='4'/><path d='M12 2v2M12 20v2M4.93 4.93l1.41 1.41M17.66 17.66l1.41 1.41M2 12h2M20 12h2M4.93 19.07l1.41-1.41M17.66 6.34l1.41-1.41'/></svg>");
}
.mm-chip--detect::before{
-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M12 17a5 5 0 0 0 0-10'/><path d='M12 21a9 9 0 0 0 0-18'/><circle cx='12' cy='12' r='1.5' fill='black'/></svg>");
mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M12 17a5 5 0 0 0 0-10'/><path d='M12 21a9 9 0 0 0 0-18'/><circle cx='12' cy='12' r='1.5' fill='black'/></svg>");
}
.mm-chip--remote::before{
-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><rect x='6' y='2' width='12' height='20' rx='2'/><circle cx='12' cy='7' r='1.2' fill='black'/><line x1='9' y1='12' x2='15' y2='12'/><line x1='9' y1='16' x2='15' y2='16'/></svg>");
mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><rect x='6' y='2' width='12' height='20' rx='2'/><circle cx='12' cy='7' r='1.2' fill='black'/><line x1='9' y1='12' x2='15' y2='12'/><line x1='9' y1='16' x2='15' y2='16'/></svg>");
}
.mm-chip--usb::before{
-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><polygon points='13 2 4 14 11 14 10 22 20 9 13 9 13 2'/></svg>");
mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><polygon points='13 2 4 14 11 14 10 22 20 9 13 9 13 2'/></svg>");
}
.mm-chip--head::before{
-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'><line x1='6' y1='18' x2='18' y2='6'/><polyline points='9 6 18 6 18 15'/></svg>");
mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'><line x1='6' y1='18' x2='18' y2='6'/><polyline points='9 6 18 6 18 15'/></svg>");
}
.mm-chip--plug::before{
-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M9 2v6M15 2v6M6 8h12v3a6 6 0 0 1-12 0V8z'/><path d='M12 17v5'/></svg>");
mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M9 2v6M15 2v6M6 8h12v3a6 6 0 0 1-12 0V8z'/><path d='M12 17v5'/></svg>");
}

/* ---------- Style B · 230V: split panes w/ ambiance hero ---------- */
.mm-230v .mega-menu__inner{
grid-template-columns:1.05fr 1.05fr 1.5fr;grid-auto-flow:row;padding:36px 0 36px;
}
.mm-230v .mega-menu__column{
background:linear-gradient(180deg,#fbfdfc,#f4f7f5);
border:1px solid #e5ede8;border-radius:var(--mm-radius);
padding:18px 20px;margin:calc(var(--mega-menu-column-gap)/2);
}
.mm-230v .mega-menu__column .mega-menu__title{
display:flex;font-size:.95rem;color:var(--mm-accent-dark);margin-bottom:10px;
padding-bottom:10px;border-bottom:1px solid #dbe6de;
}
.mm-230v .mega-menu__images-wrapper{
margin:calc(var(--mega-menu-column-gap)/2);
display:grid;grid-template-rows:auto 1fr;gap:14px;
}
.mm-230v .mm-hero{
position:relative;border-radius:var(--mm-radius);overflow:hidden;min-height:240px;
display:flex;flex-direction:column;justify-content:flex-end;padding:24px;
background:#222;color:#fff;isolation:isolate;
}
.mm-230v .mm-hero img{
position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-1;
transition:transform .6s ease;
}
.mm-230v .mm-hero:hover img{transform:scale(1.05);}
.mm-230v .mm-hero::after{
content:"";position:absolute;inset:0;z-index:-1;
background:linear-gradient(180deg,rgba(0,0,0,.1) 30%,rgba(0,0,0,.65) 100%);
}
.mm-230v .mm-hero-eyebrow{
font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;opacity:.85;
font-weight:600;margin-bottom:4px;
}
.mm-230v .mm-hero-title{font-size:1.25rem;font-weight:700;margin:0 0 4px;}
.mm-230v .mm-hero-cta{
display:inline-flex;align-items:center;gap:6px;font-size:.85rem;font-weight:600;
margin-top:8px;color:#fff;text-decoration:underline;text-underline-offset:3px;
}

/* ---------- Style C · Basse tension: dual card panels ---------- */
.mm-bt .mega-menu__inner{
grid-template-columns:1fr 1fr;grid-auto-flow:row;padding:36px 0 36px;gap:24px;
}
.mm-bt .mm-card{
margin:calc(var(--mega-menu-column-gap)/2);
border-radius:var(--mm-radius);padding:24px 26px;
background:#fff;border:1px solid #e5ede8;
position:relative;overflow:hidden;transition:box-shadow .25s;
}
.mm-bt .mm-card:hover{box-shadow:0 8px 20px -8px rgba(39,107,66,.18);}
.mm-bt .mm-card::before{
content:"";position:absolute;top:0;left:0;right:0;height:4px;
background:linear-gradient(90deg,var(--mm-accent),#3a855a,#79c094);
}
.mm-bt .mm-card-head{display:flex;align-items:center;gap:12px;margin-bottom:14px;}
.mm-bt .mm-card-icon{
width:44px;height:44px;border-radius:12px;background:var(--mm-accent-soft);
color:var(--mm-accent-dark);display:grid;place-items:center;font-size:1.25rem;
flex-shrink:0;
}
.mm-bt .mm-card-title{font-size:1rem;font-weight:700;color:#1a1a1a;margin:0;}
.mm-bt .mm-card-sub{font-size:.78rem;color:#6b7280;margin:2px 0 0;}
.mm-bt .mm-card .linklist__item a{font-size:.91rem;padding:6px 0;}

/* ---------- Style D · Par espace: room mosaic ---------- */
.mm-espace .mega-menu__inner{
grid-template-columns:1fr;grid-auto-flow:row;padding:32px 0 36px;gap:18px;
}
.mm-espace .mm-group{margin:0 calc(var(--mega-menu-column-gap)/2);}
.mm-espace .mm-group-head{
display:flex;align-items:center;gap:10px;margin:6px 0 14px;
font-size:.8rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;
color:var(--mm-accent-dark);
}
.mm-espace .mm-group-head::before{
content:"";display:inline-block;width:24px;height:2px;background:var(--mm-accent);
border-radius:2px;
}
.mm-espace .mm-group-head .mm-group-tail{
flex:1;height:1px;background:#e2e8f0;margin-left:6px;
}
.mm-espace .mm-grid{
display:grid;grid-template-columns:repeat(5,1fr);gap:14px;
}
.mm-espace .mm-tile{
display:block;text-decoration:none;color:#1a1a1a;
border-radius:var(--mm-radius);overflow:hidden;position:relative;
background:#f4f7f5;aspect-ratio:5/4;transition:transform .25s,box-shadow .25s;
}
.mm-espace .mm-tile:hover{transform:translateY(-3px);box-shadow:0 10px 22px -10px rgba(39,107,66,.30);}
.mm-espace .mm-tile img{
position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
transition:transform .55s ease;
}
.mm-espace .mm-tile:hover img{transform:scale(1.08);}
.mm-espace .mm-tile::after{
content:"";position:absolute;inset:0;
background:linear-gradient(180deg,rgba(0,0,0,0) 40%,rgba(0,0,0,.65) 100%);
}
.mm-espace .mm-tile-label{
position:absolute;left:12px;right:12px;bottom:10px;color:#fff;font-size:.85rem;
font-weight:600;text-shadow:0 2px 6px rgba(0,0,0,.45);z-index:1;
display:flex;align-items:center;justify-content:space-between;gap:6px;
}
.mm-espace .mm-tile-label::after{content:"›";font-weight:400;font-size:1.1rem;}
.mm-espace .mm-tile--soft{
background:linear-gradient(135deg,#e8f3ec,#d6e3da);
}
.mm-espace .mm-tile--soft .mm-tile-label{color:var(--mm-accent-dark);text-shadow:none;}
.mm-espace .mm-tile--soft::after{display:none;}

/* ---------- Style E · Accessoires: compact icon strip ---------- */
.mm-acc .mega-menu__inner{
grid-template-columns:1fr;grid-auto-flow:row;padding:30px 0 30px;gap:14px;
}
.mm-acc .mm-acc-grid{
display:grid;grid-template-columns:repeat(5,1fr);gap:14px;
margin:0 calc(var(--mega-menu-column-gap)/2);
}
.mm-acc .mm-acc-tile{
display:flex;flex-direction:column;align-items:center;text-align:center;
text-decoration:none;color:#1a1a1a;padding:18px 12px 16px;border-radius:var(--mm-radius);
background:linear-gradient(180deg,#fff,#f7faf8);border:1px solid #e5ede8;
transition:all .25s;position:relative;overflow:hidden;
}
.mm-acc .mm-acc-tile:hover{
transform:translateY(-3px);border-color:var(--mm-accent);
box-shadow:0 12px 22px -12px rgba(39,107,66,.25);
}
.mm-acc .mm-acc-tile img{
width:78px;height:78px;object-fit:contain;margin-bottom:10px;
transition:transform .3s;
}
.mm-acc .mm-acc-tile:hover img{transform:scale(1.08);}
.mm-acc .mm-acc-tile-name{font-size:.92rem;font-weight:600;margin:0 0 2px;}
.mm-acc .mm-acc-tile-sub{font-size:.72rem;color:#6b7280;margin:0;}
.mm-acc .mm-acc-cond{
margin:6px calc(var(--mega-menu-column-gap)/2) 0;padding:14px 18px;
background:#fbfdfc;border:1px dashed #d6e3da;border-radius:var(--mm-radius-sm);
display:flex;flex-wrap:wrap;gap:10px;align-items:center;
font-size:.8rem;color:#4a5568;
}
.mm-acc .mm-acc-cond-label{
font-size:.7rem;font-weight:700;color:var(--mm-accent-dark);
text-transform:uppercase;letter-spacing:.08em;margin-right:6px;
}

/* ---------- v10 (5/15 client) PROMOS/BONS PLANS — 完全照官网纯文字 + 红圆点 ---------- */
.nav-text-bold {
  font-weight: 600;
  font-size: inherit;
  color: inherit;
  letter-spacing: 0;
  text-transform: none;
}
.promos-pct-dot {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  margin-left: 6px;
  border-radius: 50%;
  background: #e60023;
  color: #fff;
  font-size: 10px;
  font-weight: 700;
  line-height: 1;
  vertical-align: middle;
}
/* v10 旧 pill 残留 — 全失效 */
.mm-pill, .mm-pill--promos, .mm-pill--bonplan, .mm-pill--new { all: unset; }
.mm-pill--promos::before, .mm-pill--bonplan::before, .mm-pill--new::after { content: none !important; display: none !important; }

/* ---------- Style H · Plus: tight dropdown card (v10 修正: 去 ● 圆点 + 左对齐) ---------- */
.mm-plus .nav-dropdown{
background:#fff;border-radius:var(--mm-radius);
box-shadow:0 18px 40px -12px rgba(20,40,30,.18),0 6px 14px -8px rgba(20,40,30,.10);
padding:8px 0;min-width:200px;border:1px solid rgba(39,107,66,.10);
}
.mm-plus .nav-dropdown__item a{
display:block;
padding:7px 18px;
font-size:13.5px;
color:#1a1a1a;
text-decoration:none;
text-align:left !important;
line-height:1.5;
transition:color .15s ease, background .15s ease;
}
.mm-plus .nav-dropdown__item a::before,
.mm-plus .nav-dropdown__item a::after { content:none !important; display:none !important; }
.mm-plus .nav-dropdown__item a:hover{
background:#f7faf7;
color:#276B42;
}

/* ---------- Responsive guards ---------- */
@media (max-width:1199px){
.mm-espace .mm-grid{grid-template-columns:repeat(3,1fr);}
.mm-acc .mm-acc-grid{grid-template-columns:repeat(3,1fr);}
.mm-230v .mega-menu__inner{grid-template-columns:1fr 1fr;}
.mm-230v .mega-menu__images-wrapper{grid-column:1 / -1;}
}

/* Brand-link special look — v11 (5/16): 600 to match PROMOS/BONS PLANS */
.header__linklist-link{font-weight:600;}
.header__linklist-item .mm-pill{padding-top:3px;padding-bottom:3px;}

/* Product Grid Styles */
.product-item {
position: relative;
overflow: hidden;
transition: box-shadow 0.3s ease;
border-radius: 12px;
background-color: white;
margin-bottom: 20px;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
}
.product-item:hover {
box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08);
}
/* Footer Styles */
#shopify-section-sections--25458834145659__footer .footer {
--background: 39, 107, 66;
--heading-color: 255, 255, 255;
--text-color: 255, 255, 255;
--border-color: 71, 129, 94;
}
#shopify-section-sections--25458834145659__text-with-icons {
--heading-color: 27, 27, 27;
--text-color: 51, 51, 51;
--section-background: 247, 249, 247;
--vertical-breather: 40px;
}
/* ============================================================================
🎨 LUMIHOME - STYLES AMP PERSONNALISÉS
============================================================================ */
:root {
--brand-black: #1a1a1a;
--brand-dark: #2d3748;
--brand-medium: #4a5568;
--brand-light: #718096;
--accent-blue: #276B42;
--accent-blue-dark: #1e5333;
--accent-blue-light: #3a855a;
--accent-blue-gradient: linear-gradient(135deg, #1e5333 0%, #276B42 50%, #3a855a 100%);
--footer-bg: #276B42;
--footer-dark: #1e5333;
--footer-light: #3a855a;
--footer-gradient: linear-gradient(135deg, #1e5333 0%, #276B42 50%, #3a855a 100%);
--gold: #ffd700;
--amber: #ffb347;
--light-amber: #ffcc80;
--gold-gradient: linear-gradient(135deg, #ffd700 0%, #ffb347 50%, #ffd700 100%);
--warm-white: #f8f4e9;
--pure-white: #ffffff;
--off-white: #f7fafc;
--light-gray: #e2e8f0;
--gradient-brand: linear-gradient(135deg, #1a1a1a 0%, #2d3748 30%, #4a5568 70%, #718096 100%);
--gradient-accent: linear-gradient(135deg, #1e5333 0%, #276B42 30%, #3a855a 70%, #4ca06b 100%);
--gradient-footer: linear-gradient(135deg, #1e5333 0%, #276B42 50%, #3a855a 100%);
--gradient-gold: linear-gradient(135deg, #ffd700 0%, #ffb347 50%, #ffd700 100%);
--gradient-light: linear-gradient(135deg, #f8f4e9 0%, #ffffff 100%);
--shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.08);
--shadow-md: 0 6px 20px rgba(0, 0, 0, 0.12);
--shadow-lg: 0 12px 32px rgba(0, 0, 0, 0.15);
--shadow-xl: 0 20px 50px rgba(0, 0, 0, 0.18);
--shadow-accent: 0 4px 20px rgba(39, 107, 66, 0.3);
--shadow-footer: 0 4px 20px rgba(39, 107, 66, 0.3);
--shadow-gold: 0 4px 20px rgba(255, 215, 0, 0.4);
--border-brand: #2d3748;
--border-accent: #276B42;
--border-footer: #276B42;
--border-light: #e2e8f0;
--btn-brand: #1a1a1a;
--btn-brand-hover: #2d3748;
--btn-brand-active: #4a5568;
--btn-accent: #276B42;
--btn-accent-hover: #1e5333;
--btn-accent-active: #153d25;
--btn-footer: #276B42;
--btn-footer-hover: #1e5333;
--btn-footer-active: #153d25;
--font-primary: 'Poppins', sans-serif;
--fw-light: 300;
--fw-regular: 400;
--fw-medium: 500;
--fw-semibold: 600;
--fw-bold: 700;
--fw-extrabold: 800;
--fs-h1: 3rem;
--fs-h2: 2.25rem;
--fs-h3: 1.25rem;
--fs-h4: 1rem;
--fs-body-lg: 1.125rem;
--fs-body: 1rem;
--fs-small: 0.875rem;
--fs-caption: 0.75rem;
--lh-tight: 1.2;
--lh-normal: 1.5;
--lh-relaxed: 1.6;
--ls-tight: -0.02em;
--ls-normal: 0;
--ls-wide: 0.05em;
--ls-wider: 0.08em;
--color-heading: #1A1A1A;
--color-body: #4A5568;
--color-muted: #6B7280;
--color-white: #FFFFFF;
--color-accent-blue: #276B42;
--color-footer-green: #276B42;
--color-gold: #FFD700;
}
/* 公共区块 */
.section {
margin: 0 auto;
}
.section-title {
text-align: center;
color: var(--brand-black);
font-size: 2.2rem;
margin-bottom: 15px;
font-weight: 800;
letter-spacing: -0.3px;
position: relative;
display: inline-block;
left: 50%;
transform: translateX(-50%);
padding-bottom: 10px;
}
.section-title::after {
content: '';
display: block;
width: 80px;
height: 3px;
background: var(--accent-blue-gradient);
margin: 10px auto 0;
border-radius: 2px;
box-shadow: 0 2px 4px rgba(97,176,207,0.3);
}
.section-subtitle {
text-align: center;
color: var(--brand-medium);
font-size: 1.1rem;
margin-bottom: 50px;
max-width: 700px;
margin-left: auto;
margin-right: auto;
font-weight: 400;
}
/* 页脚 */
.footer {
background-color: var(--footer-bg);
color: var(--pure-white);
padding: 70px 20px 30px;
position: relative;
}
.footer::before {
content: '';
position: absolute;
top: 0; left: 0; width: 100%; height: 3px;
background: var(--gradient-gold);
}
.footer-content {
max-width: 1200px;
margin: 0 auto;
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 50px;
margin-bottom: 50px;
}
.footer-section h3 {
color: var(--pure-white);
margin-bottom: 20px;
font-size: 1.2rem;
font-weight: 700;
position: relative;
padding-bottom: 10px;
}
.footer-section h3::after {
content: '';
position: absolute;
bottom: 0; left: 0;
width: 40px; height: 2px;
background: var(--gold);
}
.footer-description {
opacity: 0.9;
line-height: 1.5;
margin-bottom: 20px;
font-size: 0.9rem;
}
.footer-links {
display: flex;
flex-direction: column;
gap: 12px;
}
.footer-links a {
color: rgba(255,255,255,0.9);
text-decoration: none;
transition: all 0.3s ease;
font-size: 0.9rem;
display: flex;
align-items: center;
padding: 4px 0;
}
.footer-links a:hover {
color: var(--gold);
padding-left: 8px;
}
.footer-links a::before {
content: '→';
margin-right: 5px;
opacity: 0;
transition: all 0.3s ease;
}
.footer-links a:hover::before { opacity: 1; }
.social-icons {
display: flex;
gap: 10px;
margin-top: 20px;
flex-wrap: wrap;
}
.social-icon {
display: inline-flex;
align-items: center;
justify-content: center;
width: 40px; height: 40px;
background: rgba(255,255,255,0.1);
border-radius: 50%;
color: var(--pure-white);
text-decoration: none;
transition: all 0.3s ease;
}
.social-icon:hover {
background: var(--gold);
color: var(--footer-bg);
transform: translateY(-3px);
box-shadow: var(--shadow-gold);
}
.social-icon svg { width: 18px; height: 18px; fill: currentColor; }
.footer-bottom {
text-align: center;
padding-top: 30px;
border-top: 1px solid rgba(255,255,255,0.15);
opacity: 0.8;
font-size: 0.85rem;
max-width: 1200px;
margin: 0 auto;
}
/* 英雄区域 - 简化版用于详情页不展示 */
.hero { display: none; }
/* 设备自适应图片 */
.pc-img, .pc-only { display: block; }
.pad-img, .pad-only { display: none; }
.h5-img, .h5-only { display: none; }
@media (max-width:1200px) and (min-width:769px) {
.pc-img, .pc-only { display: none; }
.pad-img, .pad-only { display: block; }
.h5-img, .h5-only { display: none; }
}
@media (max-width:768px) {
.pc-img, .pc-only { display: none; }
.pad-img, .pad-only { display: none; }
.h5-img, .h5-only { display: block; }
}
/* 动画 */
.animate-fade-in-up { animation: fadeInUp 0.6s ease-out; }
@keyframes fadeInUp {
from { opacity:0; transform:translateY(30px); }
to { opacity:1; transform:translateY(0); }
}
/* 移动端优化 */
@media (max-width: 768px) {
.section,
.featured-products,
.testimonials,
.partners,
.media,
.faq {
padding: 30px 15px ;
}
.section-title {
font-size: 1.6rem ;
margin-bottom: 10px;
}
.section-subtitle {
font-size: 0.9rem !important;
margin-bottom: 30px;
padding: 0 10px;
}
.footer-content {
grid-template-columns: 2fr !important;
gap: 30px;
margin-bottom: 30px;
}
.footer-section h3::after {
left: 50%;
transform: translateX(-50%);
}
.social-icons {
justify-content: center;
}
}
a {
cursor: pointer;
}

/* ============================================================================
   🎨 PRODUCT PAGE SPECIFIC STYLES (optimisé et aligné)
   ============================================================================ */
:root {
    --product-text-color: #333;
    --product-bg-color: #fff;
    --accent-green: #276B42;
    --accent-green-hover: #1e5333;
    --border-light: #e5e5e5;
}

/* Layout Grid for Product Top Section */
.product-layout-container {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
    gap: clamp(24px, 4vw, 56px);
    max-width: 1320px;
    margin: 0 auto;
    padding: clamp(20px, 3vw, 40px) clamp(16px, 3vw, 28px);
    align-items: start;
    box-sizing: border-box;
}

/* --- LEFT: Sticky Gallery --- */
.product-gallery-wrapper {
    position: sticky;
    top: 120px;
    width: 100%;
    min-width: 0; /* prevent grid overflow */
}

.main-image-container {
    position: relative;
    width: 100%;
    aspect-ratio: 1 / 1;
    background: #f9f9f9;
    border-radius: 12px;
    overflow: hidden;
    margin-bottom: 20px;
    box-shadow: var(--shadow-sm);
}

.main-image-container img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: opacity 0.3s ease;
}

/* Day/Night Toggle Overlay Button */
.day-night-toggle {
    position: absolute;
    bottom: 20px;
    right: 20px;
    background: rgba(255,255,255,0.95);
    border: 1px solid var(--border-light);
    padding: 10px 18px;
    border-radius: 40px;
    cursor: pointer;
    font-weight: 600;
    font-size: 14px;
    display: flex;
    align-items: center;
    gap: 8px;
    box-shadow: var(--shadow-md);
    z-index: 10;
    transition: all 0.2s ease;
}
.day-night-toggle:hover {
    background: #fff;
    transform: translateY(-2px);
}

/* v13-2 (5/18 客户) ⑨ — 缩略图调大：从 4 列 → 2 列（同原 lumihome.com 详情页）*/
.thumbnail-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 14px;
}
.thumb-item {
    aspect-ratio: 1/1;
    border-radius: 10px;
    overflow: hidden;
    cursor: pointer;
    border: 2px solid transparent;
    transition: all 0.2s;
    background: #f7f9f7;
}
.thumb-item.active {
    border-color: var(--accent-green);
    transform: scale(0.98);
}
/* v14 (5/20 客户) — 默认只显示前 4 张缩略图，展开/收起切换 */
.thumb-hidden {
    display: none;
}
.thumbnail-grid.is-expanded .thumb-hidden {
    display: block;
}
.thumb-more-btn {
    display: block;
    margin: 14px auto 0;
    padding: 10px 22px;
    background: #fff;
    color: #276B42;
    border: 1px solid #cfd8d2;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
}
.thumb-more-btn:hover {
    border-color: #276B42;
    background: #f4f8f5;
}
.thumb-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    /* v13-2 ⑩: gallery 换色时的淡入淡出 */
    transition: opacity 0.25s ease;
}
.swatch-v2 { cursor: pointer; /* v13-2 ⑪: 强化可点击视觉 */ }

/* --- RIGHT: Product Info --- */
.product-info-wrapper {
    padding-top: 0;
    min-width: 0; /* prevent grid overflow */
    width: 100%;
}

.breadcrumb-nav {
    font-size: 13px;
    color: #666;
    margin-bottom: 20px;
}
.breadcrumb-nav a {
    color: #666;
    text-decoration: none;
}
.breadcrumb-nav a:hover {
    color: var(--accent-green);
}
.breadcrumb-nav span {
    margin: 0 5px;
}

.product-title {
    font-family: var(--heading-font-family);
    font-size: 2.2rem;
    font-weight: 700;
    color: var(--brand-black);
    margin-bottom: 12px;
    line-height: 1.2;
}

.product-rating {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 0;
    font-size: 14px;
}
.stars {
    color: #FFD700;
    letter-spacing: 2px;
}

.product-price-block {
    margin-bottom: 24px;
    padding-bottom: 24px;
    border-bottom: 1px solid var(--border-light);
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px 12px;
}
.current-price {
    font-size: clamp(1.6rem, 4vw, 2rem);
    font-weight: 700;
    color: var(--accent-green);
    line-height: 1;
}
.compare-price {
    font-size: clamp(1rem, 2.4vw, 1.2rem);
    text-decoration: line-through;
    color: #999;
}
.badge-save {
    background: #ffebee;
    color: #c62828;
    padding: 4px 10px;
    border-radius: 30px;
    font-size: 12px;
    font-weight: 700;
    vertical-align: middle;
    white-space: nowrap;
}

/* v16 (5/22 客户): 3 specs pills — alignées sur lumihome.com */
.spec-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0 0 14px;
}
.spec-pill {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    background: #fff;
    border: 1.5px solid #e2e6e2;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 600;
    color: #33392f;
}
.spec-pill svg { width: 14px; height: 14px; flex: 0 0 auto; }
.spec-pill--solaire svg { color: #f6a429; }
.spec-pill--lumens svg,
.spec-pill--remote svg { color: #276B42; }

/* v11 (5/16 客户): 紧行距 — 客户截图标红 "行距太大"，最多 5 行 */
.short-desc-list {
    list-style: none;
    padding: 0;
    margin-bottom: 20px;
}
.short-desc-list li {
    position: relative;
    padding-left: 24px;
    margin-bottom: 6px;
    font-size: 14.5px;
    line-height: 1.4;
    color: #333;
}
.short-desc-list li::before {
    content: '✓';
    position: absolute;
    left: 0;
    top: 1px;
    color: var(--accent-green);
    font-weight: bold;
    font-size: 16px;
}

/* Variant Selector */
.variant-selector {
    margin-bottom: 24px;
}
.variant-label {
    font-weight: 600;
    margin-bottom: 10px;
    display: block;
}
.color-swatches {
    display: flex;
    gap: 12px;
}
.swatch {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: 2px solid #ddd;
    cursor: pointer;
    transition: all 0.2s;
}
.swatch.active {
    border-color: var(--accent-green);
    transform: scale(1.1);
    box-shadow: 0 0 0 2px rgba(39,107,66,0.3);
}

/* v9: Actions row — quantity + add-to-cart aligned, fixed equal 52px height */
.add-to-cart-form {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    gap: 12px;
    margin-bottom: 20px;
}
.quantity-input {
    display: inline-flex;
    align-items: stretch;
    border: 1.5px solid #d8ddd8;
    border-radius: 999px;
    width: 140px;
    height: 52px;
    flex: 0 0 auto;
    background: #fff;
    overflow: hidden;
}
.qty-btn {
    background: none;
    border: none;
    width: 44px;
    height: 100%;
    cursor: pointer;
    font-size: 20px;
    font-weight: 500;
    color: #555;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    transition: background .15s, color .15s;
}
.qty-btn:hover { background: #f3f5f3; color: var(--accent-green); }
.qty-val {
    flex: 1;
    width: 100%;
    text-align: center;
    border: none;
    outline: none;
    font-size: 16px;
    font-weight: 700;
    color: #1a1a1a;
    background: transparent;
    padding: 0;
    -moz-appearance: textfield;
}
.qty-val::-webkit-outer-spin-button,
.qty-val::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.btn-add-cart {
    flex: 1 1 220px;
    height: 52px;
    background: var(--accent-green);
    color: white;
    border: none;
    border-radius: 999px;
    font-weight: 700;
    font-size: 14.5px;
    letter-spacing: 0.04em;
    cursor: pointer;
    transition: background 0.25s ease, transform 0.2s ease, box-shadow 0.2s ease;
    text-transform: uppercase;
    padding: 0 24px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}
.btn-add-cart:hover {
    background: var(--accent-green-hover);
    transform: translateY(-1px);
    box-shadow: 0 6px 16px rgba(39,107,66,.25);
}
.btn-add-cart:active { transform: translateY(0); }
/* v16 (5/22 客户) — bouton paiement express, 与 "Ajouter au panier" 等宽对齐 */
.buy-now-row {
    display: flex;
    gap: 12px;
    margin-bottom: 20px;
}
.buy-now-spacer { flex: 0 0 140px; }
.btn-buy-now {
    flex: 1 1 220px; height: 52px;
    background: #1a1a1a; color: #fff; border: none; border-radius: 999px;
    font-weight: 700; font-size: 14px; letter-spacing: .04em; text-transform: uppercase;
    cursor: pointer; display: inline-flex; align-items: center; justify-content: center; gap: 8px;
    transition: background .2s ease, transform .15s ease;
}
.btn-buy-now:hover { background: #000; transform: translateY(-1px); }
.btn-buy-now:active { transform: translateY(0); }

/* v16 (5/22 客户) ③ — 信任条紧凑：缩小内边距/间距，字号 +2px */
.trust-badges {
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
    background: #f8f9fa;
    padding: 9px 12px;
    border-radius: 12px;
    margin-top: 16px;
    gap: 4px 6px;
}
.trust-item {
    text-align: center;
    font-size: 13.5px;
    font-weight: 500;
    color: #555;
    flex: 1 1 30%;
    min-width: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
}
.trust-item svg {
    width: 19px;
    height: 19px;
    margin-bottom: 0;
    flex: 0 0 auto;
    fill: var(--accent-green);
}

/* v16 (5/22 客户) ① — 动态配送信息 */
.ship-info-v16 {
    /* v16 (5/22 客户) — 配送行移到购买按钮上方 */
    margin-top: 2px;
    margin-bottom: 14px;
    display: flex;
    flex-direction: column;
    gap: 3px;
}
.ship-line {
    font-size: 13px;
    color: #444;
    display: flex;
    align-items: center;
    gap: 7px;
    line-height: 1.4;
}
.ship-line strong { color: var(--accent-green); font-weight: 700; }
.ship-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--accent-green);
    box-shadow: 0 0 0 3px rgba(39,107,66,.15);
    flex: 0 0 auto;
}
.ship-line--prime {
    font-size: 12px;
    color: #777;
    padding-left: 15px;
}

/* --- SECTIONS BELOW FOLD --- */

/* ============================================================================
   ✨ At a Glance — Carousel horizontal (Swiper) avec titre + flèches
============================================================================ */
.at-a-glance-bar {
    background: linear-gradient(180deg, #f7faf7 0%, #ffffff 100%);
    border-top: 1px solid var(--border-light);
    border-bottom: 1px solid var(--border-light);
    padding: clamp(32px, 5vw, 56px) clamp(16px, 3vw, 24px);
    margin-top: 24px;
}
.glance-wrapper {
    max-width: 1280px;
    margin: 0 auto;
    text-align: center;
}
.glance-title {
    font-family: var(--heading-font-family);
    font-size: clamp(1.6rem, 3vw, 2.1rem);
    font-weight: 700;
    color: var(--brand-black);
    margin: 0 0 28px;
    letter-spacing: -0.01em;
}
.glance-carousel {
    position: relative;
    padding: 0 56px; /* room for arrow buttons */
}
.glance-swiper {
    overflow: hidden;
    padding: 4px 2px 8px; /* prevent shadow clipping */
}
.glance-swiper .swiper-wrapper {
    align-items: stretch;
}
.glance-item {
    text-align: center;
    background: #fff;
    border: 1px solid #eef2ef;
    border-radius: 14px;
    padding: 22px 14px 20px;
    box-sizing: border-box;
    min-width: 0;
    height: auto;
    transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}
.glance-item:hover {
    transform: translateY(-3px);
    box-shadow: var(--shadow-md);
    border-color: rgba(39, 107, 66, 0.25);
}
.glance-item .icon-box {
    width: 56px;
    height: 56px;
    margin: 0 auto 14px;
    background: #e8f2ec;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--accent-green);
}
.glance-item .icon-box svg {
    width: 26px;
    height: 26px;
    color: var(--accent-green);
}
.glance-item h4 {
    font-size: 11px;
    color: #777;
    margin: 0 0 6px;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    font-weight: 600;
    line-height: 1.3;
}
.glance-item p {
    font-weight: 700;
    font-size: 14px;
    color: var(--brand-black);
    margin: 0;
    line-height: 1.35;
    word-break: break-word;
}

/* --- Boutons flèche style lumihome --- */
.glance-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 44px;
    height: 44px;
    border-radius: 50%;
    border: none;
    background: var(--accent-green);
    color: #fff;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 12px rgba(39, 107, 66, 0.25);
    transition: background 0.2s ease, transform 0.2s ease, opacity 0.2s ease;
    z-index: 5;
}
.glance-nav:hover {
    background: var(--accent-green-hover);
    transform: translateY(-50%) scale(1.06);
}
.glance-nav:disabled,
.glance-nav.swiper-button-disabled {
    opacity: 0.35;
    cursor: not-allowed;
    transform: translateY(-50%);
}
.glance-nav-prev { left: 0; }
.glance-nav-next { right: 0; }

/* --- Pagination dots --- */
.glance-pagination {
    margin-top: 20px;
    display: flex;
    justify-content: center;
    gap: 6px;
}
.glance-pagination .swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #cdd5cf;
    opacity: 1;
    transition: background 0.2s ease, width 0.2s ease;
    cursor: pointer;
}
.glance-pagination .swiper-pagination-bullet-active {
    background: var(--accent-green);
    width: 22px;
    border-radius: 4px;
}

/* 视频模块样式 */
.video-section {
    max-width: 1280px;
    margin: 40px auto;
    padding: 0 clamp(16px, 3vw, 24px);
}
.video-container {
    position: relative;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: var(--shadow-lg);
    cursor: pointer;
    background: #000;
}
.video-cover {
    width: 100%;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    display: block;
}
.play-button {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 80px;
    height: 80px;
    background: rgba(0,0,0,0.7);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s;
}
.play-button svg {
    width: 40px;
    height: 40px;
    fill: white;
    margin-left: 5px;
}
.video-container:hover .play-button {
    background: var(--accent-green);
    transform: translate(-50%, -50%) scale(1.05);
}
.video-iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
}

/* ============================================================
   Product Accordion (style solarversand) — sections repliables
   Remplace l'ancien Tabs + standalone sections.
============================================================ */
.product-accordion-section {
    padding: clamp(36px, 5vw, 64px) 0;
    background: #fff;
}
.product-accordion-section .acc-wrap {
    /* v16 (5/22 客户) ⑫ — 宽度对齐 At a glance (.glance-wrapper = 1280px) */
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 clamp(16px, 3vw, 24px);
}
.acc-section-title {
    text-align: center;
    font-size: clamp(1.5rem, 3vw, 2rem);
    font-weight: 700;
    color: var(--brand-black, #1a1a1a);
    margin: 0 0 28px;
    letter-spacing: -0.01em;
}
/* v16 (5/22 客户) ⑦ — 白天/黑夜对比图块 */
.daynight-compare {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    margin: 0 0 32px;
}
.daynight-cell {
    position: relative;
    margin: 0;
    border-radius: 16px;
    overflow: hidden;
    aspect-ratio: 4 / 3;
    background: #f3f5f3;
}
.daynight-cell img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.daynight-tag {
    position: absolute;
    top: 12px;
    left: 12px;
    padding: 5px 14px;
    border-radius: 999px;
    font-size: 12.5px;
    font-weight: 700;
    letter-spacing: .02em;
    color: #fff;
    backdrop-filter: blur(4px);
}
.daynight-tag--day   { background: rgba(39,107,66,.92); }
.daynight-tag--night { background: rgba(26,26,26,.82); }
@media (max-width: 640px) {
    .daynight-compare { grid-template-columns: 1fr; gap: 12px; }
}
.acc-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.acc-item {
    background: #eff3fa;
    border: 1px solid transparent;
    border-radius: 10px;
    overflow: hidden;
    transition: background 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}
.acc-item.open {
    background: #ffffff;
    border-color: #e2e8f0;
    box-shadow: 0 2px 14px rgba(0,0,0,0.05);
}
.acc-head {
    width: 100%;
    padding: 16px 20px;
    background: none;
    border: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 14px;
    font-family: inherit;
    font-size: 1rem;
    font-weight: 500;
    color: #1a1a1a;
    text-align: left;
    transition: color 0.2s ease;
}
.acc-head:hover {
    color: var(--accent-green, #276B42);
}
.acc-head:focus-visible {
    outline: 2px solid var(--accent-green, #276B42);
    outline-offset: -2px;
}
.acc-icon {
    flex-shrink: 0;
    width: 24px;
    height: 24px;
    color: #4a5568;
    opacity: 0.85;
    display: flex;
    align-items: center;
    justify-content: center;
}
.acc-icon svg {
    width: 22px;
    height: 22px;
}
.acc-item.open .acc-icon {
    color: var(--accent-green, #276B42);
    opacity: 1;
}
.acc-label {
    flex: 1;
    min-width: 0;
    overflow-wrap: anywhere;
}
.acc-chevron {
    flex-shrink: 0;
    width: 22px;
    height: 22px;
    color: #6b7280;
    transition: transform 0.3s ease, color 0.2s ease;
}
.acc-chevron svg {
    width: 100%;
    height: 100%;
    display: block;
}
.acc-item.open .acc-chevron {
    transform: rotate(180deg);
    color: var(--accent-green, #276B42);
}
.acc-body {
    max-height: 0;
    overflow: hidden;
    background: #ffffff;
    transition: max-height 0.45s cubic-bezier(0.4, 0, 0.2, 1);
}
.acc-item.open .acc-body {
    max-height: 6000px;
}
.acc-inner {
    padding: 8px 24px 28px;
}
.acc-inner > h3:first-child,
.acc-inner > .install-intro > h3 {
    margin-top: 0;
}

/* Inside accordion: tweak nested grids so they look balanced in the constrained width */
.acc-inner .specs-grid {
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 18px;
}
.acc-inner .install-steps-grid {
    margin-top: 18px;
}

/* v10 (5/15 client): Avis d'expert (Christophe C. — Fondateur Lumihome) */
.expert-review { padding: clamp(24px, 4vw, 40px) clamp(16px, 3vw, 24px); background: #fff; }
.expert-review-wrap { max-width: 900px; margin: 0 auto; }
.expert-review-card {
    background: #f8faf8;
    border: 1px solid #e6ebe8;
    border-radius: 16px;
    padding: 22px 26px;
    position: relative;
}
.expert-review-head {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 14px;
}
.expert-avatar {
    width: 48px; height: 48px;
    border-radius: 50%;
    object-fit: cover;
    background: #fff;
    border: 1px solid #e6ebe8;
}
.expert-meta { flex: 1; display: flex; flex-direction: column; line-height: 1.3; }
.expert-name { font-weight: 700; color: #1a1a1a; font-size: 15px; }
.expert-role {
    color: #666;
    font-size: 11.5px;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}
.expert-badge {
    background: #276B42;
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    padding: 6px 14px;
    border-radius: 999px;
    white-space: nowrap;
}
.expert-quote {
    margin: 0;
    font-size: 14.5px;
    line-height: 1.7;
    color: #333;
    font-style: italic;
    border-left: 3px solid #276B42;
    padding-left: 14px;
}
@media (max-width: 540px) {
    .expert-review-head { flex-wrap: wrap; }
    .expert-badge { order: -1; margin-left: auto; }
}

/* v10 (5/15 client): Description = LEFT text + RIGHT video (esotec layout) */
.desc-video-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 24px;
    align-items: start;
}
@media (min-width: 860px) {
    .desc-video-grid { grid-template-columns: 1.05fr 1fr; gap: 32px; }
}
.desc-video-text {
    min-width: 0;
}
.desc-video-text h3 {
    font-size: clamp(1.05rem, 2.2vw, 1.25rem);
    color: #1a1a1a;
    margin: 0 0 10px;
    line-height: 1.3;
}
.desc-video-text h3:not(:first-child) { margin-top: 18px; }
.desc-video-text p {
    color: #555;
    font-size: 14.5px;
    line-height: 1.65;
    margin: 0 0 12px;
}
.desc-video-media { min-width: 0; }
/* Inline variant of videos-section when nested in Description */
.videos-section--inline { background: transparent !important; padding: 0 !important; }
.videos-section--inline .videos-wrap { max-width: none !important; padding: 0 !important; }
.videos-section--inline .videos-header { margin: 0 0 12px; text-align: left; }
.videos-section--inline .videos-title { font-size: 1.1rem; font-weight: 700; color: #1a1a1a; margin: 0 0 4px; text-align: left; }
.videos-section--inline .videos-subtitle { font-size: 13px; color: #666; margin: 0; text-align: left; }
/* v10 (5/15 client): tabs moved BELOW player → margin reversed */
.videos-section--inline .videos-tabs { gap: 6px; flex-wrap: wrap; margin: 12px 0 0; justify-content: flex-start; }
.videos-section--inline .videos-tab-btn { padding: 6px 12px; font-size: 12.5px; border-radius: 999px; }
.videos-section--inline .vt-duration { display: none !important; } /* v10 5/15: 不显示时长 */
.videos-section--inline .vt-label { font-size: 12.5px; } /* short label only */
.videos-section--inline .vt-player { border-radius: 12px; overflow: hidden; }
.videos-section--inline .vt-meta { padding: 10px 4px 0; }
.videos-section--inline .vt-title { font-size: 14px; font-weight: 600; margin: 0 0 4px; }
.videos-section--inline .vt-desc { font-size: 12.5px; color: #666; margin: 0; }
@media (max-width: 860px) {
    .videos-section--inline .videos-header { display: none; }
}

/* v10 (5/15 client) : Prix HT (gros) + PVC TTC + remises sur quantité */
/* v11 (5/16 客户): 评分链接全程 no underline (客户要求红箭头标记) */
.product-rating--link,
.product-rating--link:hover,
.product-rating--link:focus,
.product-rating--link:active { text-decoration: none !important; color: inherit; cursor: pointer; }
.product-rating--link span { text-decoration: none !important; }
.price-v2 {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 14px;
    padding: 0 0 12px;
    border-bottom: 1px solid #e5e7eb;
    margin: 0 0 12px;
}
.price-v2-left { min-width: 0; }
.price-v2-now {
    /* v16 (5/22 客户) — 价格字号缩小 2 号（之前偏大） */
    font-size: clamp(30px, 4.6vw, 38px);
    font-weight: 900;
    color: #1a1a1a;
    line-height: 1.05;
    letter-spacing: -0.015em;
}
.price-v2-tax {
    display: inline-block;
    margin-left: 6px;
    font-size: 14px;
    color: #666;
    font-weight: 600;
    vertical-align: middle;
}
.price-v2-pvc {
    font-size: 13.5px;
    color: #666;
    margin-top: 4px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
/* v11 (5/16) — product subtitle / rating row / SKU / eco line */
.product-subtitle {
    margin: -8px 0 12px;
    font-size: 14px;
    color: #555;
    line-height: 1.4;
    font-weight: 400;
}
.product-rating-row {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 6px;
    margin-bottom: 16px;
}
.product-sku-ref {
    font-size: 12px;
    color: #888;
    letter-spacing: .02em;
    font-family: ui-monospace, Menlo, Consolas, monospace;
}
/* v16 (5/22 客户) ⑬ — 分享 + 收藏按钮（标题同行，标题占主空间避免重叠） */
.product-title-row {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px;
}
.pdp-actions-v16 {
    display: flex;
    gap: 8px;
    flex-shrink: 0;
    margin-top: 3px;
}
.product-info-wrapper { position: relative; }
.pdp-action-btn {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    border: 1.5px solid #e2e6e2;
    background: #fff;
    color: #276B42;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: background .15s, border-color .15s, transform .1s;
}
.pdp-action-btn:hover { background: #f3f7f4; border-color: #276B42; }
.pdp-action-btn:active { transform: scale(.92); }
.pdp-action-btn svg { width: 18px; height: 18px; }
.pdp-action-btn.is-fav { color: #d83b3b; border-color: #f0c2c2; }
.pdp-action-btn.is-fav svg { fill: #d83b3b; stroke: #d83b3b; }
.price-v2-eco {
    font-size: 12px;
    color: #888;
    margin-top: 4px;
    font-style: italic;
}
/* v11 (5/16 客户) — PVC -X% 动态徽章（点 pill 后会更新） */
/* v11 (5/16 客户) — Dimensions PDF 下载行（"图纸在 PDF 里面"） */
.schemas-pdf-row {
    display: flex; align-items: center; gap: 14px;
    margin-top: 22px; padding: 14px 18px;
    background: #fff; border: 1px solid rgba(39,107,66,.18); border-radius: 10px;
    text-decoration: none; color: inherit;
    transition: border-color .15s, box-shadow .15s, transform .15s;
}
.schemas-pdf-row:hover {
    border-color: #276B42;
    box-shadow: 0 6px 18px -6px rgba(39,107,66,.2);
    transform: translateY(-1px);
}
.schemas-pdf-icon {
    display: inline-block; padding: 4px 9px;
    background: #d83b3b; color: #fff;
    font-size: 11px; font-weight: 700; letter-spacing: .04em;
    border-radius: 4px;
}
.schemas-pdf-label { flex: 1; display: flex; flex-direction: column; gap: 2px; }
.schemas-pdf-label strong { font-size: 14px; font-weight: 600; color: #1a1a1a; }
.schemas-pdf-label small { font-size: 12px; color: #888; }
.schemas-pdf-cta {
    display: inline-flex; align-items: center; gap: 6px;
    padding: 7px 14px; background: #276B42; color: #fff;
    border-radius: 999px; font-size: 13px; font-weight: 600;
}

.pvc-badge {
    display: inline-flex;
    align-items: center;
    padding: 8px 16px;
    background: #e85a2c;
    color: #fff;
    border-radius: 999px;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .02em;
    white-space: nowrap;
    box-shadow: 0 4px 10px -3px rgba(232,90,44,.4);
    transition: transform .15s ease, box-shadow .15s ease;
}
.pvc-badge.is-flash {
    animation: pvcFlash .35s ease;
}
@keyframes pvcFlash {
    0%   { transform: scale(1); }
    50%  { transform: scale(1.08); box-shadow: 0 6px 14px -3px rgba(232,90,44,.6); }
    100% { transform: scale(1); }
}
/* ════════════════════════════════════════════════════ */
/* v11 (5/16 客户) — Avant / Après slider (clip-path)    */
/*   两张图同尺寸同位置 absolute，clip-path 控制 BEFORE 可见 */
/*   保证场景角度 100% 对齐                                */
/* ════════════════════════════════════════════════════ */
.ba-section { padding: 60px 24px; background: #f7faf7; }
.ba-wrap { max-width: 1100px; margin: 0 auto; }
.ba-title { text-align: center; font-size: 26px; font-weight: 700; margin: 0 0 8px; color: #1a1a1a; }
.ba-sub { text-align: center; font-size: 15px; color: #555; margin: 0 0 32px; line-height: 1.5; }
.ba-compare {
    position: relative; max-width: 900px; margin: 0 auto;
    aspect-ratio: 16/9; border-radius: 14px; overflow: hidden;
    box-shadow: 0 16px 40px -12px rgba(20,40,30,.25);
    cursor: ew-resize; user-select: none;
    background: #000;
    --ba-pos: 50%;
}
.ba-compare .ba-img {
    position: absolute; inset: 0;
    width: 100%; height: 100%;
    object-fit: cover; object-position: center;
    display: block;
}
/* AFTER → bottom layer (always full, visible right of handle) */
.ba-compare .ba-img--after { z-index: 1; }
/* BEFORE → top layer, clipped from right via clip-path
   inset(top right bottom left) — right = 100% - pos, so left half stays visible */
.ba-compare .ba-img--before {
    z-index: 2;
    clip-path: inset(0 calc(100% - var(--ba-pos)) 0 0);
    -webkit-clip-path: inset(0 calc(100% - var(--ba-pos)) 0 0);
}
.ba-label {
    position: absolute; top: 16px; padding: 5px 12px; border-radius: 999px;
    background: rgba(255,255,255,.92); color: #1a1a1a; font-size: 12px; font-weight: 700;
    letter-spacing: .04em; text-transform: uppercase; box-shadow: 0 2px 6px rgba(0,0,0,.2);
    z-index: 4;
}
.ba-label--left  { left: 16px; }
.ba-label--right { right: 16px; }
.ba-handle {
    position: absolute; top: 50%;
    left: var(--ba-pos);
    width: 44px; height: 44px; border-radius: 50%;
    background: #fff; color: #1a1a1a;
    display: flex; align-items: center; justify-content: center;
    box-shadow: 0 4px 14px rgba(0,0,0,.3);
    transform: translate(-50%,-50%); cursor: ew-resize;
    transition: box-shadow .15s ease;
    z-index: 5;
}
.ba-handle::before, .ba-handle::after {
    content: ""; position: absolute; top: 50%; left: 50%;
    transform: translate(-50%,-50%);
    width: 2px; height: 9999px; background: #fff;
    box-shadow: 0 0 6px rgba(0,0,0,.25);
    z-index: -1;
}
.ba-handle:hover { box-shadow: 0 6px 18px rgba(0,0,0,.4); }
@media (max-width: 640px){
    .ba-section { padding: 40px 16px; }
    .ba-title { font-size: 22px; }
    .ba-compare { aspect-ratio: 4/5; }
}

/* ════════════════════════════════════════════════════ */
/* v11 (5/16 客户) — Sticky cart bottom bar              */
/* ════════════════════════════════════════════════════ */
.cw-cart-bar {
    position: fixed; bottom: 0; left: 0; right: 0;
    background: #1a1a1a; color: #fff;
    transform: translateY(100%); transition: transform .25s ease;
    z-index: 99998; box-shadow: 0 -8px 24px rgba(0,0,0,.2);
}
/* v15 (5/21): hide on desktop — the new PC sticky add-to-cart bar takes its place ≥1000px */
@media (min-width: 1000px){ .cw-cart-bar { display: none !important; } }
.cw-cart-bar.is-visible { transform: translateY(0); }
.cw-cart-bar-inner {
    max-width: 1200px; margin: 0 auto; padding: 12px 20px;
    display: flex; align-items: center; gap: 16px;
}
.cw-cart-bar-info { display: flex; align-items: center; gap: 10px; flex: 1; font-size: 14px; }
.cw-cart-icon { display: inline-flex; }
.cw-cart-count { display: inline-block; min-width: 22px; padding: 2px 7px;
    background: #d83b3b; color: #fff; border-radius: 999px; text-align: center;
    font-weight: 700; }
.cw-cart-btn {
    background: #fff; color: #1a1a1a; padding: 10px 22px; border-radius: 999px;
    text-decoration: none; font-weight: 600; font-size: 14px;
    transition: background .15s, transform .15s;
}
.cw-cart-btn:hover { background: #f3f4f6; transform: translateY(-1px); }
.cw-cart-close {
    background: none; border: 0; color: #fff; font-size: 24px; cursor: pointer;
    padding: 4px 8px; opacity: .7; transition: opacity .15s;
}
.cw-cart-close:hover { opacity: 1; }
@media (max-width: 640px){
    .cw-cart-bar-inner { padding: 10px 12px; gap: 8px; flex-wrap: wrap; }
    .cw-cart-bar-info { font-size: 12.5px; }
    .cw-cart-btn { padding: 8px 14px; font-size: 13px; }
}

/* ════════════════════════════════════════════════════ */
/* v11 (5/16 客户) — Trust strip (paiement / livraison)  */
/* ════════════════════════════════════════════════════ */
.cw-trust-strip { background: #f7faf7; padding: 40px 24px; border-top: 1px solid rgba(39,107,66,.1); }
.cw-trust-inner {
    max-width: 1200px; margin: 0 auto;
    display: grid; grid-template-columns: repeat(4,1fr); gap: 24px;
}
.cw-trust-col { display: flex; flex-direction: column; gap: 4px; }
.cw-trust-col strong { color: #276B42; font-size: 14px; font-weight: 700; }
.cw-trust-col span { color: #555; font-size: 13px; line-height: 1.4; }
.cw-trust-col em { color: #d83b3b; font-style: normal; font-weight: 600; }
@media (max-width: 900px){
    .cw-trust-inner { grid-template-columns: repeat(2,1fr); }
}
@media (max-width: 500px){
    .cw-trust-inner { grid-template-columns: 1fr; }
}

/* v11 (5/16 客户) PVC ⓘ tooltip — 小白卡 + 箭头（照客户参考），干净不出框 */
.pvc-info-icon {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    font-size: 13px;
    color: #6b7280;
    cursor: help;
    border-radius: 50%;
    transition: color .15s, background .15s;
}
.pvc-info-icon:hover,
.pvc-info-icon:focus {
    color: #1a1a1a;
    background: #f3f4f6;
    outline: none;
}
.pvc-tooltip {
    position: absolute;
    top: calc(100% + 10px);
    left: 50%;
    transform: translateX(-50%);
    width: max-content;
    max-width: 220px;
    padding: 10px 12px;
    font-size: 12px;
    font-weight: 400;
    line-height: 1.45;
    color: #1a1a1a;
    background: #fff;
    border: 1px solid rgba(0,0,0,.08);
    border-radius: 10px;
    text-align: left;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity .15s ease, visibility .15s ease, transform .15s ease;
    z-index: 1000;
    box-shadow: 0 10px 24px -6px rgba(20,40,30,.18), 0 4px 8px -4px rgba(0,0,0,.08);
}
/* 三角箭头指向 ⓘ */
.pvc-tooltip::before {
    content: "";
    position: absolute;
    bottom: 100%;
    left: 50%;
    transform: translateX(-50%);
    border: 6px solid transparent;
    border-bottom-color: #fff;
    filter: drop-shadow(0 -1px 0 rgba(0,0,0,.08));
}
.pvc-info-icon:hover .pvc-tooltip,
.pvc-info-icon:focus .pvc-tooltip {
    opacity: 1;
    visibility: visible;
    transform: translateX(-50%) translateY(0);
}
.price-v2-right {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 6px;
}
.price-v2-badge {
    background: #e85a2c;
    color: #fff;
    padding: 6px 14px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.02em;
    white-space: nowrap;
}
.price-v2-badge--alt {
    background: #d83b3b;
    font-size: 12px;
    opacity: 0.95;
}
.price-v2-pay {
    font-size: 12.5px;
    color: #555;
    margin: -4px 0 14px;
    padding: 6px 10px;
    background: #f7faf7;
    border-radius: 6px;
}
/* v16 (5/22 客户) ⑨ — Alma 小字（加购按钮下方） */
.alma-note-v16 {
    font-size: 12.5px;
    color: #555;
    text-align: center;
    margin: 10px 0 0;
}

/* Multi-buy pills */
/* v16 (5/22 客户) — 外框保留、去掉背景填充；标题放大；卡片去背景、字体放大 */
.multi-buy {
    margin: 0 0 18px;
    padding: 14px 16px;
    background: transparent;
    border: 1px solid #e8ece8;
    border-radius: 12px;
}
.multi-buy-title { font-size: 16.5px; font-weight: 700; color: #1a1a1a; margin: 0 0 12px; }
.multi-buy-pills { display: flex; flex-wrap: wrap; gap: 8px; }
.mb-pill {
    background: transparent;
    border: 1.5px solid #d8ddd8;
    border-radius: 10px;
    padding: 9px 15px;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-family: inherit;
    transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;
}
.mb-pill:hover { border-color: #276B42; }
/* v16 (5/22 客户) ⑩ — 选中卡：绿色边框 + 浅绿背景 + 绿色徽章 */
.mb-pill.is-active {
    border-color: #276B42;
    border-width: 2px;
    background: transparent;
    box-shadow: 0 0 0 3px rgba(39,107,66,.12);
}
.mb-pct {
    color: #888;
    font-weight: 800;
    font-size: 14.5px;
}
/* v16 (5/22 客户) — 选中徽章改成圆角矩形（与外框同形状），不要椭圆形 */
.mb-pill.is-active .mb-pct:not(.mb-pct--zero) {
    color: #fff;
    background: #276B42;
    padding: 3px 9px;
    border-radius: 6px;
    font-size: 13.5px;
}
.mb-pct--zero { color: #999; }
.mb-line { font-size: 15px; color: #1a1a1a; }
.mb-pill.is-active .mb-line { font-weight: 700; }

@media (max-width: 540px) {
    .price-v2 { flex-direction: column; }
    .price-v2-right { flex-direction: row; align-items: center; }
}

/* v10 (5/15 client) : swatch 小图 + 颜色形式 */
.color-swatches--v2 { display: flex; gap: 10px; flex-wrap: wrap; }
.swatch-v2 {
    background: #fff;
    border: 2px solid transparent;
    border-radius: 12px;
    padding: 4px 4px 6px;
    cursor: pointer;
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    transition: border-color .2s ease, box-shadow .2s ease;
}
.swatch-v2:hover { border-color: #d3ddd5; }
.swatch-v2.active { border-color: #276B42; box-shadow: 0 4px 12px rgba(39,107,66,.15); }
.swatch-v2-thumb {
    width: 52px; height: 52px;
    border-radius: 8px;
    overflow: hidden;
    background: #f8faf8;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.swatch-v2-thumb img { width: 100%; height: 100%; object-fit: contain; padding: 3px; }
.swatch-v2-dot {
    /* v10 修正 (5/15 client) : 色点彻底删除，只保留小图 */
    display: none !important;
}
.variant-current { font-weight: 700; color: #1a1a1a; }

/* v10 (5/15 client) : Reco cards — hover 切换白天/黑夜图 + 同系列模块 */
.reco-section { padding: clamp(28px, 4vw, 40px) clamp(16px, 3vw, 24px); background: #fff; }
.reco-section--alt { background: #f8faf8; }
.reco-wrap { max-width: 1100px; margin: 0 auto; }
.reco-title { text-align: center; font-size: clamp(1.4rem, 2.6vw, 1.8rem); font-weight: 700; color: #1a1a1a; margin: 0 0 8px; }
.reco-sub { text-align: center; color: #666; font-size: 14.5px; max-width: 540px; margin: 0 auto 24px; line-height: 1.55; }
.reco-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 16px;
}
.reco-card {
    background: #fff;
    border: 1px solid #eef0ee;
    border-radius: 14px;
    overflow: hidden;
    color: inherit;
    text-decoration: none;
    display: flex;
    flex-direction: column;
    transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
    position: relative;
}
.reco-card:hover { transform: translateY(-3px); box-shadow: 0 6px 18px rgba(0,0,0,.08); border-color: #d3ddd5; }
.reco-card.is-current { border-color: #276B42; border-width: 2px; }
.reco-badge {
    position: absolute; top: 10px; left: 10px; z-index: 2;
    background: #276B42; color: #fff;
    padding: 4px 10px; border-radius: 999px;
    font-size: 11px; font-weight: 700; letter-spacing: 0.04em;
}
.reco-badge--save { background: #d83b3b; }
.reco-media {
    position: relative;
    aspect-ratio: 1 / 1;
    background: #f8faf8;
    overflow: hidden;
}
.reco-img-day, .reco-img-night {
    position: absolute; inset: 0;
    width: 100%; height: 100%;
    object-fit: cover;
    transition: opacity .4s ease;
}
.reco-img-night { opacity: 0; }
.reco-card:hover .reco-img-day   { opacity: 0; }
.reco-card:hover .reco-img-night { opacity: 1; }
.reco-body { padding: 14px 16px 18px; }
.reco-name { font-size: 15px; font-weight: 600; color: #1a1a1a; margin: 0 0 4px; line-height: 1.3; }
.reco-tag { font-size: 12px; color: #888; margin: 0 0 8px; }
.reco-price-row { display: flex; align-items: baseline; gap: 8px; margin: 6px 0 8px; flex-wrap: wrap; }
.reco-price { font-size: 16px; font-weight: 700; color: #276B42; }
.reco-price-old { font-size: 13px; color: #aaa; }
.reco-cta { font-size: 13px; color: #276B42; font-weight: 600; }
.reco-card:hover .reco-cta { text-decoration: underline; }

/* v10 (5/15 client) : 收紧 sections 之间留白 */
.at-a-glance-bar { padding: clamp(24px, 3vw, 36px) clamp(16px, 3vw, 24px) !important; margin-top: 0 !important; }
.product-accordion-section { padding: clamp(20px, 3vw, 32px) 0 !important; }
/* v14 (5/20 客户): features 版块上下间距统一到 ~48-64px */
/* v16 (5/22 客户): 留白收紧 — padding/行间距进一步压缩 */
.features-flow { padding: clamp(24px, 3vw, 36px) 0 !important; gap: clamp(18px, 2.4vw, 28px) !important; }
.lh-section { padding: clamp(20px, 3vw, 32px) 0 !important; }
.usecases-section, .techviz-section, .compare-section, .eco-strip,
.bom-section, .reviews-section, .faq-section {
    padding-top: clamp(20px, 3vw, 32px) !important;
    padding-bottom: clamp(20px, 3vw, 32px) !important;
}
.acc-section-title { margin: 0 0 16px !important; }
.bom-title { margin: 0 0 16px !important; }
.compare-title { margin: 0 0 14px !important; }
.product-layout-container { padding-bottom: clamp(16px, 3vw, 28px) !important; }

/* v10 (5/15 client) — Mega-menu intégral cleanup */
/* 1) Cacher toutes les rangées de filtres dans le mega-menu (FONCTIONS / IP / Avec détecteur 等) */
.mm-filter-row { display: none !important; }

/* 2) Cacher icônes ☀️ / ⚡ avant les grandes catégories dans la nav top-level */
.header__linklist-item > .header__linklist-link > span > svg:first-child,
.header__linklist-item > .header__linklist-link > span.mm-toplink-icon,
.header__linklist-item > a.header__linklist-link > svg:first-child { display: none !important; }

/* 3) Top-level desktop nav: v11 (5/16 客户): 全部一级菜单 bold, 对齐 PROMOS/BONS PLANS */
.header__linklist-link {
    font-weight: 600 !important;
    font-size: 14px;
    letter-spacing: 0;
    text-transform: none;
    color: #1a1a1a;
}
.header__linklist-link > span { gap: 0 !important; }

/* 4) Mega-menu interne: pas d'images grandes bannières (5/15 client : "取消以下图片") */
.mega-menu__images-wrapper { display: none !important; }
.mega-menu__image-wrapper { display: none !important; }

/* 5) Lignes de liste compactes, alignées à gauche, sans icône / sans sous-description
      (5/15 client : "导航栏不需要图标，不需要小字描述，行距过大，需左端对齐") */
.mega-menu__column { margin: 0 32px 0 0 !important; }
.mega-menu .linklist__item { margin: 0 0 6px 0 !important; padding: 0 !important; line-height: 1.45 !important; }
.mega-menu .linklist__item a {
    color: #1a1a1a !important;
    font-size: 13.5px !important;
    text-decoration: none;
    text-align: left !important;
    padding: 0 !important;
    transition: color 0.15s ease;
}
.mega-menu .linklist__item a:hover { color: #276B42 !important; }
/* Hide inline "bientôt" / sub-description spans */
.mega-menu .linklist__item a > span[style*="background:#fef3c7"],
.mega-menu .linklist__item a > span[style*="color:#9ca3af"] { display: none !important; }

/* 6) Mega-menu column header (gras + maj + couleur) — pour bien séparer les groupes */
.mega-menu__title,
.mega-menu .heading--small {
    text-transform: uppercase !important;
    font-weight: 700 !important;
    color: #1a1a1a !important;
    font-size: 12px !important;
    letter-spacing: 0.06em !important;
    margin: 0 0 12px 0 !important;
    padding-bottom: 6px;
    border-bottom: 1px solid #eef0ee;
}

/* 7) Inner padding du mega-menu plus compact */
.mega-menu__inner { padding: 24px 16px !important; gap: 32px !important; }

/* v10 修正 (5/15 client) — Toutes les mega-menus uniformisées :
   pas d'images, 2 colonnes texte, sans soulignement, avec ›, grand titre majuscule. */

/* --- A) Par espace tiles → texte pur, SANS soulignement (5/15 retour client) --- */
.mm-espace .mm-tile img,
.mm-espace .mm-tile::before,
.mm-espace .mm-tile-label::after,
.mm-espace .mm-tile-label::before { display: none !important; content: none !important; }
.mm-espace .mm-tile {
    all: unset;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    background: transparent !important;
    border: none !important;
    border-bottom: none !important;
    border-radius: 0 !important;
    padding: 6px 4px !important;
    aspect-ratio: auto !important;
    height: auto !important;
    min-height: 0 !important;
    color: #1a1a1a !important;
    font-size: 13.5px !important;
    text-align: left !important;
    text-decoration: none !important;
    overflow: visible !important;
    box-shadow: none !important;
    cursor: pointer;
    transition: color .15s ease, padding-left .15s ease !important;
    position: relative !important;
}
.mm-espace .mm-tile:hover {
    color: #276B42 !important;
    background: transparent !important;
    transform: none !important;
    padding-left: 6px !important;
}
.mm-espace .mm-tile-label {
    position: static !important;
    inset: auto !important;
    background: transparent !important;
    color: inherit !important;
    padding: 0 !important;
    margin: 0 !important;
    font-weight: 400 !important;
    font-size: 13.5px !important;
    line-height: 1.5 !important;
    text-shadow: none !important;
    z-index: auto !important;
    display: inline !important;
    flex: 1 !important;
}
.mm-espace .mm-tile::after {
    content: "›" !important;
    display: inline !important;
    position: static !important;
    inset: auto !important;
    background: none !important;
    color: #bbb !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    margin-left: 6px !important;
}
.mm-espace .mm-tile:hover::after { color: #276B42 !important; }
.mm-espace .mm-tile--soft {
    background: transparent !important;
    aspect-ratio: auto !important;
    min-height: 0 !important;
}
.mm-espace .mm-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    column-gap: 32px !important;
    row-gap: 0 !important;
    flex-direction: unset !important;
}
@media (max-width: 600px) {
    .mm-espace .mm-grid { grid-template-columns: 1fr !important; }
}
.mm-espace .mm-group-head {
    text-transform: uppercase !important;
    font-weight: 700 !important;
    color: #1a1a1a !important;
    font-size: 12px !important;
    letter-spacing: 0.06em !important;
    margin: 0 0 10px 0 !important;
    padding-bottom: 6px !important;
    border-bottom: 1px solid #eef0ee !important;
}
.mm-espace .mm-group-tail { display: none !important; }

/* --- B) Tous les autres mega-menus (Éclairage solaire, 230V, 12V & nomade, Accessoires)
       → même rendu : 2 colonnes, › à droite, hover vert, sans soulignement de ligne. --- */
.mega-menu .linklist__item {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border-bottom: none !important;
}
.mega-menu .linklist__item a {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 6px 4px !important;
    font-size: 13.5px !important;
    color: #1a1a1a !important;
    text-decoration: none !important;
    text-align: left !important;
    line-height: 1.5 !important;
    transition: color .15s ease, padding-left .15s ease !important;
}
.mega-menu .linklist__item a::after {
    content: "›";
    color: #bbb;
    font-size: 14px;
    margin-left: 6px;
    transition: color .15s ease;
}
.mega-menu .linklist__item a:hover {
    color: #276B42 !important;
    padding-left: 6px !important;
    background: transparent !important;
}
.mega-menu .linklist__item a:hover::after { color: #276B42; }

/* --- C) Titre de groupe (grand titre majuscule, sous-trait fin)
       Le markup actuel n'a pas de heading dans certains menus — on ajoute via le bloc parent --- */
.mega-menu__column > .heading,
.mega-menu__column > h3,
.mega-menu__column > .mega-menu__column-title {
    text-transform: uppercase !important;
    font-weight: 700 !important;
    color: #1a1a1a !important;
    font-size: 12px !important;
    letter-spacing: 0.06em !important;
    margin: 0 0 10px 0 !important;
    padding-bottom: 6px !important;
    border-bottom: 1px solid #eef0ee !important;
}

/* 8) v10 修正 — Plus 下拉菜单 (.nav-dropdown) 完全按 lumihome 原版（无 ● 圆点 / 紧凑 / 13.5px） */
.nav-dropdown,
.nav-dropdown__item,
.linklist,
.linklist__item,
.mega-menu ul,
.mega-menu li {
    list-style: none !important;
    list-style-type: none !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
}
.nav-dropdown::before,
.nav-dropdown__item::before,
.linklist::before,
.linklist__item::before,
.mega-menu li::before { content: none !important; }
.nav-dropdown__item::marker,
.linklist__item::marker,
.mega-menu li::marker { content: '' !important; color: transparent !important; }

/* v16 (5/22 客户) ⑭ — 页脚链接列行距收窄 */
.footer .footer__item-content .linklist { line-height: 1.3; }
.footer .footer__item-content .linklist__item { margin: 0; padding: 0; }
.footer .footer__item-content .linklist__item a {
    display: inline-block;
    padding: 2px 0;
    line-height: 1.35;
}

/* Plus 下拉菜单容器样式 */
.nav-dropdown {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 4px;
    box-shadow: 0 6px 20px rgba(0,0,0,.08);
    min-width: 200px;
    padding: 8px 0 !important;
    margin: 0 !important;
}
.nav-dropdown__item {
    margin: 0 !important;
    padding: 0 !important;
}
.nav-dropdown__link {
    display: block;
    padding: 6px 18px !important;
    color: #1a1a1a !important;
    font-size: 13.5px !important;
    font-weight: 400 !important;
    text-decoration: none;
    text-align: left !important;
    line-height: 1.5 !important;
    transition: color .15s ease, background .15s ease;
}
.nav-dropdown__link:hover {
    color: #276B42 !important;
    background: #f7faf7;
}

/* Mega-menu list items — 紧凑行距 + 左对齐 + lumihome 字号 */
.mega-menu .linklist__item {
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.5 !important;
}
.mega-menu .linklist__item a {
    display: block !important;
    padding: 4px 0 !important;
    font-size: 13.5px !important;
    text-align: left !important;
}

/* v9: Photos client dans les cards review (5/14 client : "应该有图片") */
.review-photos {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 12px;
}
.review-photo {
    display: block;
    width: 64px;
    height: 64px;
    border-radius: 8px;
    overflow: hidden;
    border: 1px solid #e6ebe8;
    background: #f8faf8;
    transition: transform .2s ease, box-shadow .2s ease;
}
.review-photo:hover { transform: translateY(-2px); box-shadow: 0 4px 12px rgba(0,0,0,.08); }
.review-photo img { width: 100%; height: 100%; object-fit: cover; display: block; }

/* v9: Bill-of-Materials horizontal list (Accessoires & Complémentaires, esotec style) */
.bom-section { padding: clamp(32px, 5vw, 56px) clamp(16px, 3vw, 24px); background: #fff; }
.bom-section--alt { background: #f8faf8; }
.bom-wrap { max-width: 1100px; margin: 0 auto; }
.bom-title { text-align: center; font-size: clamp(1.4rem, 2.6vw, 1.8rem); font-weight: 700; color: #1a1a1a; margin: 0 0 24px; }
.bom-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.bom-row {
    display: grid;
    grid-template-columns: 64px 1fr auto auto auto;
    align-items: center;
    gap: 16px;
    background: #fff;
    border: 1px solid #eef0ee;
    border-radius: 12px;
    padding: 12px 16px 12px 12px;
    transition: border-color .2s, box-shadow .2s;
}
.bom-row:hover { border-color: #d3ddd5; box-shadow: 0 2px 10px rgba(0,0,0,.04); }
.bom-thumb {
    width: 56px; height: 56px;
    border-radius: 8px;
    overflow: hidden;
    background: #f8faf8;
    display: inline-flex; align-items: center; justify-content: center;
    flex-shrink: 0;
}
.bom-thumb img { width: 100%; height: 100%; object-fit: contain; padding: 4px; }
.bom-info { min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.bom-sku { font-size: 11px; color: #888; letter-spacing: 0.02em; }
.bom-name { color: #1a1a1a; font-weight: 500; text-decoration: none; font-size: 14px; line-height: 1.35; }
.bom-name:hover { color: #276B42; }
.bom-stock { font-size: 11.5px; color: #276b42; display: inline-flex; align-items: center; gap: 5px; }
.bom-dot { width: 8px; height: 8px; border-radius: 50%; background: #276b42; display: inline-block; }
.bom-price { font-weight: 700; color: #1a1a1a; font-size: 15px; white-space: nowrap; }
.bom-qty { display: inline-flex; align-items: center; background: #f8faf8; border-radius: 999px; padding: 2px; gap: 0; }
.bom-qty-btn {
    width: 26px; height: 26px;
    border: none; background: transparent;
    color: #555; cursor: pointer; font-size: 16px; line-height: 1;
    border-radius: 50%;
}
.bom-qty-btn:hover { background: #e9efe9; color: #276B42; }
.bom-qty-input {
    width: 36px; text-align: center; border: none; background: transparent;
    font-size: 14px; font-weight: 600; color: #1a1a1a;
    -moz-appearance: textfield;
}
.bom-qty-input::-webkit-outer-spin-button,
.bom-qty-input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.bom-cart {
    width: 38px; height: 38px; border-radius: 50%;
    background: #2C5DC9; color: #fff; border: none; cursor: pointer;
    display: inline-flex; align-items: center; justify-content: center;
    transition: background .2s, transform .15s;
}
.bom-cart:hover { background: #1f47a3; transform: scale(1.05); }
/* v11 (5/16 客户): 点击后视觉反馈 — 绿色闪烁 + 缩放 */
.bom-cart.is-added { background: #22c55e !important; transform: scale(1.15); }
.bom-cart.is-added svg { animation: bomCartPop .4s ease; }
@keyframes bomCartPop { 0%,100% { transform: scale(1); } 50% { transform: scale(1.25); } }
.bom-discover {
    color: #276B42;
    font-size: 13px;
    font-weight: 600;
    text-decoration: none;
    border: 1px solid #276B42;
    border-radius: 999px;
    padding: 8px 16px;
    white-space: nowrap;
    transition: background .2s, color .2s;
}
.bom-discover:hover { background: #276B42; color: #fff; }

/* Mobile : stacker prix + actions sous le nom */
@media (max-width: 640px) {
    .bom-row {
        grid-template-columns: 56px 1fr auto;
        grid-template-areas: "thumb info price" "thumb info qty"  "thumb info cart";
        gap: 8px 12px;
    }
    .bom-thumb { grid-area: thumb; }
    .bom-info { grid-area: info; }
    .bom-price { grid-area: price; justify-self: end; font-size: 14px; }
    .bom-qty { grid-area: qty; justify-self: end; }
    .bom-cart, .bom-discover { grid-area: cart; justify-self: end; }
}

/* v9: Schemas (4 line drawings horizontal grid, esotec style) */
.schemas-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 14px;
    margin-bottom: 18px;
}
@media (min-width: 720px) {
    .schemas-grid { grid-template-columns: repeat(4, 1fr); }
}
.schema-card {
    margin: 0;
    background: #f8faf8;
    border: 1px solid #e6ebe8;
    border-radius: 10px;
    overflow: hidden;
    cursor: pointer;
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
    display: flex;
    flex-direction: column;
}
.schema-card:hover {
    border-color: #276B42;
    box-shadow: 0 4px 14px rgba(0,0,0,.08);
    transform: translateY(-2px);
}
.schema-img {
    position: relative;
    aspect-ratio: 1 / 1;
    background: #fff;
    overflow: hidden;
}
.schema-img img { width: 100%; height: 100%; object-fit: contain; padding: 12px; }
.schema-zoom {
    position: absolute;
    top: 8px; right: 8px;
    background: rgba(255,255,255,.92);
    color: #276B42;
    border: 1px solid #d3ddd5;
    border-radius: 50%;
    width: 26px; height: 26px;
    display: inline-flex; align-items: center; justify-content: center;
}
.schema-label {
    text-align: center;
    font-size: 12.5px;
    color: #444;
    padding: 8px 10px 10px;
    background: #fff;
    border-top: 1px solid #eef0ee;
}

/* v9: PDF chip (esotec style — red PDF badge + filename + size) */
.schema-pdf-row { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 4px; }
.pdf-chip {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: #fff;
    border: 1px solid #e6ebe8;
    border-radius: 8px;
    padding: 8px 14px 8px 8px;
    text-decoration: none;
    color: #1a1a1a;
    font-size: 13px;
    transition: border-color .2s, box-shadow .2s;
}
.pdf-chip:hover { border-color: #c62828; box-shadow: 0 2px 8px rgba(198,40,40,.12); }
.pdf-icon-red {
    background: #c62828;
    color: #fff;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.04em;
    padding: 4px 6px;
    border-radius: 3px;
    line-height: 1;
}
.pdf-name { font-weight: 500; }
.pdf-size { color: #888; font-size: 12px; }
/* v10: lang badge + multi-row wrap */
.schema-pdf-row--multi { display: flex; flex-wrap: wrap; gap: 10px; }
.pdf-lang {
    background: #f3f5f3;
    color: #276B42;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.02em;
    padding: 3px 6px;
    border-radius: 4px;
    border: 1px solid #d3ddd5;
}
.acc-back-note { font-size: 12px; color: #888; margin: 12px 0 0; font-style: italic; }
.acc-back-note code { background: #f3f5f3; padding: 2px 6px; border-radius: 4px; font-size: 11.5px; color: #276B42; }

.acc-inner .downloads-container {
    display: flex;
    gap: 18px;
    flex-wrap: wrap;
}
.acc-inner .downloads-container .download-card {
    flex: 1 1 240px;
}

@media (max-width: 768px) {
    .acc-head { padding: 14px 16px; font-size: 0.95rem; gap: 12px; }
    .acc-inner { padding: 4px 16px 22px; }
    .acc-icon { width: 22px; height: 22px; }
    .acc-icon svg { width: 20px; height: 20px; }
}
@media (max-width: 480px) {
    .acc-head { padding: 12px 14px; font-size: 0.92rem; }
    .acc-inner { padding: 4px 14px 20px; }
}
/* Description Tab Specifics */
.desc-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: clamp(24px, 4vw, 48px);
    align-items: center;
}
.desc-text h3 {
    font-size: 1.6rem;
    margin-bottom: 16px;
    color: var(--brand-black);
}
.desc-text p {
    line-height: 1.6;
    color: #555;
    margin-bottom: 20px;
}
.desc-image-box {
    position: relative;
    border-radius: 16px;
    overflow: hidden;
    aspect-ratio: 4/3;
    box-shadow: var(--shadow-md);
}
.desc-image-box img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Specs Table */
.specs-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 32px;
}
.spec-card {
    background: #f9fbf9;
    padding: 0 0 20px 0;
    border-radius: 16px;
    border: 1px solid #eee;
    overflow: hidden;
}
.spec-card h4 {
    background: var(--accent-green);
    color: white;
    padding: 14px 20px;
    margin: 0 0 20px 0;
    font-size: 18px;
}
.spec-row {
    display: flex;
    justify-content: space-between;
    padding: 10px 20px;
    border-bottom: 1px dashed #ddd;
    font-size: 14px;
}
.spec-row:last-child {
    border-bottom: none;
}
.spec-key {
    font-weight: 600;
    color: #555;
}
.spec-val {
    color: #333;
    text-align: right;
}

/* Installation Steps */
.install-steps-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
    margin-top: 20px;
}
.step-card {
    text-align: center;
}
.step-img {
    width: 100%;
    aspect-ratio: 1/1;
    object-fit: cover;
    border-radius: 16px;
    margin-bottom: 16px;
    border: 1px solid #eee;
    box-shadow: var(--shadow-sm);
}
.step-num {
    display: inline-block;
    background: var(--accent-green);
    color: white;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    font-size: 13px;
    line-height: 28px;
    margin-bottom: 8px;
}
.step-title {
    font-weight: 700;
    margin-bottom: 6px;
}
.step-desc {
    font-size: 13px;
    color: #666;
}

/* Cross-sell Sections */
.cross-sell-section {
    background: #f8faf8;
    padding: clamp(40px, 6vw, 60px) clamp(16px, 3vw, 24px);
    margin-top: 40px;
}
.section-title-center {
    text-align: center;
    font-size: clamp(20px, 3vw, 28px);
    margin-bottom: clamp(24px, 4vw, 40px);
    color: var(--brand-black);
    font-weight: 700;
}
.product-carousel-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: clamp(16px, 2vw, 30px);
    max-width: 1280px;
    margin: 0 auto;
}
.mini-product-card {
    background: white;
    border-radius: 16px;
    padding: 20px;
    transition: all 0.3s ease;
    border: 1px solid #eee;
    text-align: center;
}
.mini-product-card:hover {
    transform: translateY(-6px);
    box-shadow: var(--shadow-lg);
}
.mini-prod-img {
    width: 100%;
    aspect-ratio: 1/1;
    object-fit: contain;
    margin-bottom: 16px;
}
.mini-prod-title {
    font-size: 15px;
    font-weight: 600;
    margin-bottom: 8px;
    min-height: 42px;
}
.mini-prod-price {
    color: var(--accent-green);
    font-weight: 700;
    font-size: 18px;
}
.btn-small {
    display: block;
    width: 100%;
    text-align: center;
    padding: 10px;
    background: #fff;
    border: 1px solid var(--accent-green);
    color: var(--accent-green);
    border-radius: 48px;
    margin-top: 16px;
    text-decoration: none;
    font-size: 14px;
    font-weight: 600;
    transition: all 0.2s;
}
.btn-small:hover {
    background: var(--accent-green);
    color: white;
}

/* 说明书下载 & 线描图模块样式 */
.downloads-container {
    display: flex;
    gap: 30px;
    justify-content: center;
    flex-wrap: wrap;
}
.download-card {
    flex: 1;
    min-width: 240px;
    background: #f9fbf9;
    border-radius: 20px;
    padding: 25px;
    text-align: center;
    transition: all 0.3s;
    border: 1px solid #eef2f0;
    cursor: pointer;
}
.download-card:hover {
    transform: translateY(-5px);
    box-shadow: var(--shadow-md);
    border-color: var(--accent-green);
}
.download-icon {
    width: 60px;
    height: 60px;
    margin: 0 auto 15px;
    background: var(--accent-green);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
}
.download-icon svg {
    width: 30px;
    height: 30px;
    fill: currentColor;
}
.download-title {
    font-weight: 700;
    font-size: 18px;
    margin-bottom: 8px;
}
.download-size {
    font-size: 13px;
    color: #777;
    margin-bottom: 15px;
}
.download-btn {
    display: inline-block;
    padding: 10px 20px;
    background: white;
    border: 1px solid var(--accent-green);
    color: var(--accent-green);
    border-radius: 40px;
    font-weight: 600;
    font-size: 14px;
    transition: all 0.2s;
}
.download-card:hover .download-btn {
    background: var(--accent-green);
    color: white;
}

/* ============================================================================
   📱 Responsive (Refined) - Breakpoints: 1199 / 992 / 768 / 480
============================================================================ */

/* Large desktop fine-tuning */
@media (max-width: 1199px) {
    .product-layout-container {
        gap: 32px;
        padding: 28px 24px;
    }
    .product-gallery-wrapper {
        top: 100px;
    }
    .install-steps-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 20px;
    }
}

/* Tablet -- Stack into single column */
@media (max-width: 992px) {
    .product-layout-container {
        grid-template-columns: 1fr;
        gap: 32px;
        padding: 24px 20px;
    }
    .product-gallery-wrapper {
        position: static;
        max-width: 720px;
        margin: 0 auto;
    }
    .product-info-wrapper {
        max-width: 720px;
        margin: 0 auto;
    }
    .glance-carousel {
        padding: 0 50px;
    }
    .desc-layout {
        grid-template-columns: 1fr;
    }
    .install-steps-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .product-title {
        font-size: 1.9rem;
    }
    .at-a-glance-bar {
        padding: 32px 20px;
    }
}

/* Tablet portrait / Large phones -- Accordion mode */
@media (max-width: 768px) {
    .product-layout-container {
        padding: 16px 16px 8px;
        gap: 24px;
    }
    .breadcrumb-nav {
        font-size: 12px;
    }
    .product-title {
        font-size: 1.5rem;
    }
    .product-rating {
        gap: 8px;
        font-size: 13px;
        margin-bottom: 16px;
    }
    .product-price-block {
        padding-bottom: 18px;
        margin-bottom: 18px;
    }
    .short-desc-list {
        margin-bottom: 22px;
    }
    .short-desc-list li {
        font-size: 14px;
        padding-left: 24px;
        margin-bottom: 10px;
    }
    .variant-selector {
        margin-bottom: 18px;
    }
    .swatch {
        width: 32px;
        height: 32px;
    }
    .glance-title {
        margin-bottom: 20px;
    }
    .glance-carousel {
        padding: 0 44px;
    }
    .glance-nav {
        width: 38px;
        height: 38px;
    }
    .glance-item {
        padding: 18px 12px 16px;
    }
    .glance-item .icon-box {
        width: 48px;
        height: 48px;
        margin-bottom: 10px;
    }
    .glance-item .icon-box svg {
        width: 22px;
        height: 22px;
    }
    .glance-item h4 {
        font-size: 10px;
    }
    .glance-item p {
        font-size: 13px;
    }
    .at-a-glance-bar {
        padding: 32px 12px;
    }
    /* ---- Tabs → Accordion ---- */

    .install-steps-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 16px;
    }
    .step-img { margin-bottom: 10px; }
    .specs-grid {
        grid-template-columns: 1fr;
        gap: 14px;
    }
    .spec-card h4 { font-size: 16px; padding: 12px 16px; }
    .spec-row { padding: 8px 16px; font-size: 13px; }
    .product-carousel-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 14px;
    }
    .mini-product-card { padding: 14px; }
    .mini-prod-title { font-size: 13px; min-height: 36px; }
    .mini-prod-price { font-size: 16px; }
    .add-to-cart-form {
        gap: 12px;
    }
    .quantity-input { width: 130px; }
    .btn-add-cart { flex: 1 1 auto; min-width: 200px; }
    .buy-now-spacer { flex-basis: 130px; }
    .btn-buy-now { flex: 1 1 auto; min-width: 200px; }
    .trust-badges {
        flex-wrap: wrap;
        gap: 12px 8px;
        padding: 14px 12px;
    }
    .trust-item { flex: 1 1 30%; min-width: 80px; }
    .video-section {
        margin: 24px auto;
        padding: 0 16px;
    }
    .play-button { width: 60px; height: 60px; }
    .play-button svg { width: 28px; height: 28px; }
    .downloads-container {
        flex-direction: column;
        gap: 14px;
    }
    .download-card { padding: 20px; min-width: 0; }
    .desc-image-box { aspect-ratio: 16 / 10; }
    .desc-text h3 { font-size: 1.3rem; }
    .cross-sell-section { margin-top: 24px; }
}

/* Small phones */
@media (max-width: 480px) {
    .product-title { font-size: 1.35rem; }
    .current-price { font-size: 1.5rem; }
    .compare-price { font-size: 0.95rem; }
    .badge-save { font-size: 11px; padding: 3px 8px; }
    .glance-carousel {
        padding: 0 40px;
    }
    .glance-nav {
        width: 34px;
        height: 34px;
    }
    .glance-item {
        padding: 16px 10px 14px;
    }
    .install-steps-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }
    .product-carousel-grid {
        grid-template-columns: 1fr;
        gap: 12px;
    }
    /* v13-2: 移动端也用 2 列大缩略图 */
    .thumbnail-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
    }
    .day-night-toggle {
        bottom: 12px;
        right: 12px;
        padding: 8px 12px;
        font-size: 12px;
    }
    .add-to-cart-form { flex-direction: column; }
    .quantity-input { width: 100%; }
    .btn-add-cart { width: 100%; min-width: 0; }
    .buy-now-spacer { display: none; }
    .btn-buy-now { width: 100%; min-width: 0; }
    .trust-item {
        flex: 1 1 30%;
        font-size: 11px;
    }
    .trust-item svg { width: 20px; height: 20px; }
}

@keyframes fadeIn {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}

/* v6: fix .link--faded color (Shopify theme class that ships from theme.css
   isn't available on this template — links were rendering almost invisible). */
.footer .link--faded,
.site-footer .link--faded,
footer .link--faded {
    color: rgba(255,255,255,0.92) !important;
    opacity: 1 !important;
    text-decoration: none;
    transition: color 0.2s ease;
}
.footer .link--faded:hover,
.site-footer .link--faded:hover,
footer .link--faded:hover {
    color: #FFD700 !important;
}

/* v7: Independent sections (Installation / Documents / Garantie) — extracted
   from the accordion per 5/14 customer feedback. */
.lh-section {
    padding: clamp(36px, 5vw, 64px) 0;
    background: #ffffff;
}
.lh-section.lh-section--alt {
    background: #f8faf8;
}
.lh-section .lh-wrap {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 clamp(16px, 3vw, 24px);
}
.lh-section-title {
    text-align: center;
    font-size: clamp(1.5rem, 3vw, 2rem);
    font-weight: 700;
    color: #1a1a1a;
    letter-spacing: -0.01em;
    margin: 0 0 28px;
}
.lh-section-body {
    /* let nested grids breathe */
}
.lh-section-body > .install-intro,
.lh-section-body > .downloads-container,
.lh-section-body > h3:first-child {
    margin-top: 0;
}

/* ════════════════════════════════════════════════════════════ */
/* v10 (5/15 client) — 所有 mega-menu 完全统一模板 .mm-uniform   */
/* ════════════════════════════════════════════════════════════ */
.mm-uniform { background:#fff; border-top:1px solid rgba(0,0,0,.06);
              box-shadow:0 18px 40px -12px rgba(20,40,30,.18); }
.mm-uniform .container { max-width:1200px; margin:0 auto; padding:28px 32px; }
.mm-uniform .mega-menu__inner {
  display:grid;
  grid-template-columns:1fr 1fr 1.1fr;
  column-gap:40px;
  align-items:start;
}
.mm-uniform .mega-menu__column { margin:0; min-width:0; }
.mm-uniform .mega-menu__column .linklist { padding:0; margin:0; }
.mm-uniform .mega-menu__column .linklist__item { list-style:none; margin:0; padding:0; }
.mm-uniform .mega-menu__column .linklist__item a {
  display:block;
  padding:7px 0;
  font-size:14px;
  font-weight:500;
  color:#1a1a1a;
  text-decoration:none;
  border:none;
  background:none;
  transition:color .15s ease, padding-left .15s ease;
}
.mm-uniform .mega-menu__column .linklist__item a::before,
.mm-uniform .mega-menu__column .linklist__item a::after { content:none !important; display:none !important; }
.mm-uniform .mega-menu__column .linklist__item a:hover {
  color:#276B42;
  padding-left:4px;
}
.mm-uniform .mega-menu__column .linklist__item a strong { font-weight:600; color:#276B42; }
/* 右图卡 */
.mm-uniform .mega-menu__images-wrapper { margin:0; }
.mm-uniform .mega-menu__image-push {
  display:block;
  text-decoration:none;
  border-radius:10px;
  overflow:hidden;
  background:#f6f9f7;
  transition:transform .25s ease, box-shadow .25s ease;
}
.mm-uniform .mega-menu__image-push:hover {
  transform:translateY(-2px);
  box-shadow:0 10px 24px -8px rgba(20,40,30,.18);
}
.mm-uniform .mega-menu__image-wrapper {
  aspect-ratio:16/10;
  overflow:hidden;
  margin:0;
}
.mm-uniform .mega-menu__image {
  width:100%; height:100%; object-fit:cover;
  transition:transform .35s ease;
}
.mm-uniform .mega-menu__image-push:hover .mega-menu__image { transform:scale(1.04); }
.mm-uniform .mega-menu__heading {
  margin:10px 14px 14px;
  font-size:14.5px;
  font-weight:600;
  color:#1a1a1a;
}
.mm-uniform .mega-menu__image-push:hover .mega-menu__heading { color:#276B42; }

/* 响应式：≤1199px 把图卡换行到下方 */
@media (max-width:1199px){
  .mm-uniform .mega-menu__inner { grid-template-columns:1fr 1fr; }
  .mm-uniform .mega-menu__images-wrapper { grid-column:1 / -1; max-width:520px; }
}

/* 旧的 mm-solaire / mm-230v / mm-bt / mm-espace / mm-acc 规则 — 全部失效 */
.mm-solaire, .mm-230v, .mm-bt, .mm-espace, .mm-acc { all: unset; display: block; }
.mm-solaire *, .mm-230v *, .mm-bt *, .mm-espace *, .mm-acc * { background: none; }


/* ════════════════════════════════════════════════════════════ */
/* v11 (5/16 客户) — 同系列 inline card：上图下文 + 2 列并排     */
/* 参考 lumihome PRODUITS COMPLÉMENTAIRES 风格                   */
/* ════════════════════════════════════════════════════════════ */
.serie-inline {
  margin-top: 18px;
  padding: 16px;
  background: #f7faf7;
  border: 1px solid rgba(39,107,66,.15);
  border-radius: 12px;
}
.serie-inline-head {
  margin: 0 0 14px;
  padding-bottom: 8px;
  border-bottom: 1px solid rgba(0,0,0,.06);
}
.serie-inline-title {
  font-size: 13px;
  font-weight: 700;
  color: #1a1a1a;
  text-transform: uppercase;
  letter-spacing: .04em;
}
/* v11: 2 列并排 grid */
.serie-inline-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}
@media (max-width: 480px) {
  .serie-inline-list { grid-template-columns: 1fr; }
}
/* v11: 卡片改为纵向 — 上图下文 */
.serie-inline-card {
  display: flex;
  flex-direction: column;
  padding: 0;
  background: #fff;
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 10px;
  text-decoration: none;
  color: inherit;
  overflow: hidden;
  transition: border-color .15s, box-shadow .15s, transform .15s;
}
.serie-inline-card:hover {
  border-color: #276B42;
  box-shadow: 0 6px 16px -6px rgba(39,107,66,.18);
  transform: translateY(-2px);
}
/* v11: 图片在顶部，全宽 */
.serie-inline-thumb {
  width: 100%;
  aspect-ratio: 1 / 1;
  background: #f3f4f6;
  overflow: hidden;
}
.serie-inline-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .3s ease;
}
.serie-inline-card:hover .serie-inline-thumb img {
  transform: scale(1.04);
}
/* v11: 文字部分在下方 */
.serie-inline-info {
  padding: 10px 12px 12px;
  display: flex;
  flex-direction: column;
  gap: 3px;
}
.serie-inline-name {
  font-size: 13px;
  font-weight: 600;
  color: #1a1a1a;
  line-height: 1.3;
  margin: 0;
}
.serie-inline-tag {
  font-size: 11.5px;
  color: #6b7280;
  margin: 0;
  line-height: 1.3;
}
.serie-inline-price {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 6px;
  margin: 4px 0 2px;
}
.serie-inline-price-now {
  font-size: 14px;
  font-weight: 700;
  color: #276B42;
}
.serie-inline-price-old {
  font-size: 11.5px;
  color: #9ca3af;
  text-decoration: line-through;
}
.serie-inline-stock-in,
.serie-inline-stock-out {
  align-self: flex-start;
  display: inline-block;
  font-size: 10.5px;
  font-weight: 600;
  padding: 2px 7px;
  border-radius: 4px;
  margin-top: 2px;
}
.serie-inline-stock-in  { background: #ecfdf5; color: #047857; }
.serie-inline-stock-out { background: #fef3c7; color: #92400e; }


/* v10 (5/15 客户) — 列标题 + bientôt 徽章 */
/* v15 (5/21 client): column titles bold + uppercase, NO bottom underline */
.mm-uniform .mm-col-title {
  margin: 0 0 12px;
  padding: 0;
  border-bottom: 0;
  font-size: 13px;
  font-weight: 800;
  color: #1a1a1a;
  text-transform: uppercase;
  letter-spacing: .05em;
}
/* Clickable column titles (EXTÉRIEUR / INTÉRIEUR) — same bold style, no underline */
.mm-uniform .mm-col-title-link,
.mm-uniform .mm-col-title-link:hover,
.mm-uniform .mm-col-title-link:focus { color: inherit; text-decoration: none; font: inherit; }
.mm-uniform .mm-col-title-link:hover { color: #276B42; }
/* v15: sub-items NOT bold */
.mm-uniform .mega-menu__column .linklist__item a { font-weight: 400; }
.mm-uniform .mm-soon { opacity: .55; pointer-events: none; }
.mm-uniform .mm-soon-badge {
  display: inline-block;
  margin-left: 4px;
  padding: 1px 6px;
  font-size: 9.5px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .04em;
  color: #92400e;
  background: #fef3c7;
  border-radius: 4px;
  vertical-align: middle;
}


/* ---- 03.019 页面内联样式块
   来源：eclairage-solaire.html:6111, eclairage-solaire.php:6189
   说明：由页面 <style> 抽离，保持原有选择器和声明不变。
   ---- */
/* ===== test-liste-v16 — page liste Éclairage solaire (style lumihome.com) ===== */
.ls-wrap{max-width:1320px;margin:0 auto;padding:24px clamp(16px,3vw,32px) 64px;
  font-family:Poppins,-apple-system,Segoe UI,sans-serif;color:#1a1a1a;box-sizing:border-box}
.ls-wrap *{box-sizing:border-box}
.ls-bc{font-size:13px;color:#8a908a;margin-bottom:16px}
.ls-bc a{color:#8a908a;text-decoration:none}
.ls-bc a:hover{color:#276B42}
.ls-bc strong{color:#1a1a1a;font-weight:600}

/* ---- header (centré, comme lumihome.com) ---- */
.ls-head{text-align:center;max-width:760px;margin:0 auto 22px}
.ls-title{font-size:clamp(26px,3.2vw,36px);font-weight:700;margin:0 0 12px;letter-spacing:-.01em;color:#1a1a1a}
.ls-intro{font-size:14.5px;line-height:1.65;color:#5b615a;margin:0}

/* ---- menu collection chips ---- */
/* 0603 docx Cat #2: 小标改成单行横向滑动 (参考 luminaire) + lumihome 绿色 */
.ls-chiprow{display:flex;flex-wrap:nowrap;gap:10px;justify-content:flex-start;margin:0 0 26px;
  overflow-x:auto;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;
  padding:2px 2px 8px;scrollbar-width:none;-ms-overflow-style:none}
.ls-chiprow::-webkit-scrollbar{display:none}
.ls-catchip{display:inline-flex;align-items:center;flex:0 0 auto;white-space:nowrap;scroll-snap-align:start;
  padding:10px 18px;border:1.5px solid #cfe6d6;
  border-radius:999px;font-size:13px;font-weight:600;color:#276B42;text-decoration:none;
  background:#eaf5ee;transition:background .15s,border-color .15s,color .15s}
.ls-catchip:hover{background:#dceee3;border-color:#276B42;color:#1e5333}
.ls-catchip.is-active{background:#276B42;border-color:#276B42;color:#fff}

/* ---- toolbar ---- */
.ls-toolbar{display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:space-between;
  padding:14px 0;border-top:1px solid #e6e9e6;border-bottom:1px solid #e6e9e6}
.ls-filters{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.ls-fdrop{position:relative}
.ls-fbtn{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;background:#fff;
  border:1.5px solid #d8ddd8;border-radius:999px;font:600 13.5px/1 Poppins,sans-serif;color:#1a1a1a;
  cursor:pointer;transition:border-color .15s,background .15s}
.ls-fbtn:hover{border-color:#276B42}
.ls-fbtn svg{width:13px;height:13px;transition:transform .2s}
.ls-fdrop.is-open .ls-fbtn{border-color:#276B42;background:#f3f7f4}
.ls-fdrop.is-open .ls-fbtn svg{transform:rotate(180deg)}
.ls-fbtn-count{background:#276B42;color:#fff;font-size:11px;font-weight:700;border-radius:999px;
  min-width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;padding:0 5px}
.ls-fpanel{position:absolute;top:calc(100% + 8px);left:0;z-index:60;min-width:252px;background:#fff;
  border:1px solid #e2e6e2;border-radius:14px;box-shadow:0 18px 44px -14px rgba(0,0,0,.26);
  padding:14px 16px;display:none}
.ls-fdrop.is-open .ls-fpanel{display:block}
.ls-check{display:flex;align-items:center;gap:10px;padding:7px 2px;font-size:13.5px;cursor:pointer;color:#33392f}
.ls-check:hover{color:#276B42}
.ls-check input{width:17px;height:17px;accent-color:#276B42;cursor:pointer;flex:0 0 auto;margin:0}
.ls-check>span:first-of-type{flex:1}
.ls-check-n{color:#aab0a8;font-size:12px;font-variant-numeric:tabular-nums}
.ls-fpanel-clear{margin-top:8px;border:none;background:none;color:#888;font-size:12.5px;
  cursor:pointer;text-decoration:underline;padding:4px 0}
.ls-fpanel-clear:hover{color:#276B42}
.ls-sort{display:flex;align-items:center;gap:9px}
.ls-sort label{font-size:13px;color:#7a8079;font-weight:600}
.ls-sort select{font:600 13.5px Poppins,sans-serif;color:#1a1a1a;padding:10px 36px 10px 15px;
  border:1.5px solid #d8ddd8;border-radius:999px;background:#fff;cursor:pointer;
  -webkit-appearance:none;appearance:none;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%231a1a1a' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");
  background-repeat:no-repeat;background-position:right 13px center}
.ls-sort select:hover{border-color:#276B42}

/* ---- result bar ---- */
.ls-resultbar{display:flex;flex-wrap:wrap;gap:10px 14px;align-items:center;margin:18px 0 6px}
.ls-count{font-size:14px;color:#666}
.ls-count strong{color:#1a1a1a;font-size:17px;font-weight:700}
.ls-chips{display:flex;flex-wrap:wrap;gap:8px}
.ls-chip{display:inline-flex;align-items:center;gap:7px;background:#f0f7f2;border:1px solid #cfe5d8;
  color:#276B42;font-size:12.5px;font-weight:600;padding:5px 8px 5px 11px;border-radius:999px}
.ls-chip button{border:none;background:none;color:#276B42;cursor:pointer;font-size:11px;line-height:1;
  padding:2px;display:inline-flex}
.ls-chip button:hover{color:#1a4a2c}
.ls-clear{border:none;background:none;color:#999;font-size:13px;cursor:pointer;text-decoration:underline}
.ls-clear:hover{color:#276B42}

/* ---- product grid ---- */
.ls-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:14px}
.ls-card{position:relative;background:#fff;border:1px solid #e9ece9;border-radius:14px;overflow:hidden;
  display:flex;flex-direction:column;transition:box-shadow .2s ease,transform .2s ease,border-color .2s}
.ls-card:hover{box-shadow:0 16px 34px -16px rgba(0,0,0,.22);transform:translateY(-3px);border-color:#dde3dd}
.ls-card.is-hidden{display:none}
.ls-card-link{text-decoration:none;color:inherit;display:flex;flex-direction:column;flex:1}
.ls-card-media{position:relative;aspect-ratio:1/1;background:#f4f5f4;overflow:hidden}
.ls-card-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:opacity .35s ease}
.ls-img--night{opacity:0}
.ls-card:hover .ls-img--night{opacity:1}

/* badges (角标) — empilés en haut à gauche, comme lumihome.com */
.ls-badges{position:absolute;top:9px;left:9px;z-index:2;display:flex;flex-direction:column;
  gap:5px;align-items:flex-start}
.ls-bdg{font-size:11px;font-weight:700;line-height:1;padding:5px 8px;border-radius:5px;
  letter-spacing:.01em;white-space:nowrap}
.ls-bdg--disc{background:#e4322b;color:#fff}
.ls-bdg--promo{background:#f6a429;color:#fff}
/* 0603 docx Cat #3: 产品标签移到图片底部 (与 lumihome 一致) */
.ls-bdg--solar{position:absolute;bottom:10px;left:10px;z-index:2;background:rgba(255,255,255,.96);
  color:#276B42;border:1px solid #cfe5d8;font-size:9.5px;font-weight:700;padding:5px 10px;
  border-radius:999px;text-transform:uppercase;letter-spacing:.05em;box-shadow:0 1px 4px rgba(0,0,0,.08)}
.ls-oos{position:absolute;inset:0;z-index:3;background:rgba(247,248,247,.66);
  display:flex;align-items:center;justify-content:center}
.ls-oos span{background:#1a1a1a;color:#fff;font-size:12px;font-weight:700;padding:8px 18px;
  border-radius:999px;letter-spacing:.05em;text-transform:uppercase}

.ls-card-body{padding:13px 13px 15px;display:flex;flex-direction:column;gap:6px;flex:1}
.ls-card-name{font-size:13.5px;font-weight:600;line-height:1.4;margin:0;color:#1a1a1a;
  min-height:38px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ls-card-rating{display:flex;align-items:center;gap:6px;font-size:11.5px;color:#9aa09a}
.ls-stars{color:#f6a429;letter-spacing:1.5px;font-size:12px}
.ls-card-price{display:flex;align-items:baseline;gap:8px;margin-top:auto;padding-top:5px}
.ls-price-now{font-size:18px;font-weight:800;color:#1a1a1a}
.ls-price-was{font-size:13px;color:#b4b8b1;text-decoration:line-through}
.ls-stock{font-size:11.5px;font-weight:600;display:inline-flex;align-items:center;gap:6px}
.ls-stock--in{color:#276B42}
.ls-stock--out{color:#c0392b}
.ls-stock-dot{width:7px;height:7px;border-radius:50%;background:currentColor;flex:0 0 auto}
/* 0603 docx Cat #3: 收货预测 chip */
.ls-stock-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:6px}
.ls-eta{display:inline-flex;align-items:center;gap:5px;font-size:11px;color:#555;background:#f7f9f7;border:1px solid #e5e7eb;border-radius:999px;padding:3px 10px;font-weight:500;white-space:nowrap}
.ls-eta svg{flex:0 0 auto;color:#276B42}
.ls-eta strong{color:#1a1a1a;font-weight:700}
.ls-empty{display:block;text-align:center;padding:60px 20px;color:#888;font-size:15px}
.ls-empty[hidden]{display:none}

/* ---- SEO + FAQ ---- */
.ls-seo{margin:58px auto 12px;max-width:920px}
.ls-seo h2{font-size:clamp(19px,2.2vw,23px);font-weight:700;color:#1a1a1a;margin:30px 0 10px;letter-spacing:-.005em}
.ls-seo h2:first-child{margin-top:0}
.ls-seo p{font-size:14.5px;line-height:1.72;color:#555;margin:0 0 8px}
.ls-faq{margin:46px auto 0;max-width:920px}
.ls-faq h2{font-size:clamp(20px,2.4vw,26px);font-weight:700;color:#1a1a1a;margin:0 0 16px}
.ls-faq-item{border:1px solid #e6e9e6;border-radius:12px;margin-bottom:10px;background:#fff;overflow:hidden}
.ls-faq-item summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;
  gap:14px;padding:16px 18px;font-size:14.5px;font-weight:600;color:#1a1a1a}
.ls-faq-item summary::-webkit-details-marker{display:none}
.ls-faq-item summary svg{width:18px;height:18px;flex:0 0 auto;color:#276B42;transition:transform .2s}
.ls-faq-item[open] summary svg{transform:rotate(180deg)}
.ls-faq-item[open] summary{border-bottom:1px solid #eef1ee}
.ls-faq-a{padding:4px 18px 18px}
.ls-faq-a p{font-size:14px;line-height:1.7;color:#555;margin:8px 0 0}

@media(max-width:1080px){.ls-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){
  .ls-grid{grid-template-columns:repeat(2,1fr);gap:12px}
  .ls-toolbar{gap:10px}
  .ls-sort{width:100%;justify-content:flex-end}
  .ls-fpanel{min-width:210px}
}
@media(max-width:430px){
  .ls-card-name{font-size:12.5px;min-height:34px}
  .ls-fbtn{padding:9px 13px;font-size:12.5px}
  .ls-catchip{padding:8px 13px;font-size:12px}
}


/* ---- 03.020 页面内联样式块
   来源：eclairage-solaire.html:8284, eclairage-solaire.php:6434
   说明：由页面 <style> 抽离，保持原有选择器和声明不变。
   ---- */
/* 0603 docx Cat #4: 图文模块 CSS — 左文右图交替 + M端上图下文 */
.lh-imgtext{max-width:1200px;margin:60px auto 20px;padding:0 24px;display:flex;flex-direction:column;gap:48px}
.lh-imgtext__row{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.lh-imgtext__row--reverse{direction:rtl}
.lh-imgtext__row--reverse > *{direction:ltr}
.lh-imgtext__media{aspect-ratio:4/3;background:#f4f5f4;border-radius:16px;overflow:hidden}
.lh-imgtext__media img{width:100%;height:100%;object-fit:cover;display:block}
.lh-imgtext__body h3{font-size:clamp(22px,2.6vw,28px);font-weight:800;color:#1a1a1a;margin:0 0 14px;letter-spacing:-.01em;line-height:1.2}
.lh-imgtext__body p{font-size:15px;line-height:1.7;color:#4a524b;margin:0 0 18px}
.lh-imgtext__cta{display:inline-flex;color:#276B42;font-weight:700;font-size:14.5px;text-decoration:none;align-items:center;gap:4px}
.lh-imgtext__cta:hover{text-decoration:underline}
@media(max-width:760px){
  .lh-imgtext{gap:36px;margin:40px auto 12px}
  .lh-imgtext__row,.lh-imgtext__row--reverse{grid-template-columns:1fr;direction:ltr;gap:18px}
  .lh-imgtext__row--reverse > *{direction:ltr}
}


/* ---- 03.021 页面内联样式块
   来源：account.html:6115
   说明：由页面 <style> 抽离，保持原有选择器和声明不变。
   ---- */
/* 0603 docx Account: M端 左右变上下 */
.acct-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}
@media(max-width:760px){.acct-grid{grid-template-columns:1fr;gap:20px}}


/* ---- 03.022 页面内联样式块
   来源：cart.html:6115
   说明：由页面 <style> 抽离，保持原有选择器和声明不变。
   ---- */
/* === Cart page — luminaire.fr inspired === */
.cart-grid{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:32px;align-items:start}
@media(max-width:960px){.cart-grid{grid-template-columns:1fr}}
.cart-items{min-width:0}
.cart-row{display:grid;grid-template-columns:108px minmax(0,1fr) auto;grid-template-rows:auto auto auto;
  grid-template-areas:"img title price" "img variant price" "img controls remove";
  gap:6px 18px;padding:18px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;margin-bottom:12px;align-items:start}
.cart-row__img{grid-area:img;width:108px;height:108px;object-fit:cover;border-radius:8px;background:#f3f5f3}
.cart-row__title{grid-area:title;font-size:15px;font-weight:700;color:#1a1a1a;margin:0;line-height:1.3;overflow-wrap:anywhere}
.cart-row__variant{grid-area:variant;font-size:13px;color:#888;margin:0}
.cart-row__controls{grid-area:controls;display:inline-flex;align-items:center;border:1px solid #d8ddd8;border-radius:999px;background:#fff;overflow:hidden;align-self:end;width:max-content}
.cart-row__controls button{width:36px;height:36px;border:0;background:none;cursor:pointer;font-size:16px;color:#555}
.cart-row__controls button:hover{background:#f7f9f7}
.cart-row__qty{width:36px;text-align:center;font-weight:700;font-size:14px}
.cart-row__remove{grid-area:remove;background:none;border:0;color:#888;font-size:12px;cursor:pointer;text-decoration:underline;align-self:center;justify-self:end;padding:0}
.cart-row__remove:hover{color:#c01230}
.cart-row__price{grid-area:price;text-align:right;align-self:start}
.cart-row__price b{display:block;font-size:18px;font-weight:800;color:#1a1a1a;line-height:1.1}
.cart-row__price del{font-size:13px;color:#999}
@media(max-width:560px){
  .cart-row{grid-template-columns:84px minmax(0,1fr);grid-template-areas:"img title" "img variant" "img price" "controls controls" "remove remove";gap:4px 14px}
  .cart-row__img{width:84px;height:84px}
  .cart-row__price{text-align:left}
  .cart-row__remove{justify-self:start;margin-top:8px}
  .cart-row__controls{margin-top:8px}
}
.cart-summary{background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:24px;position:sticky;top:120px}
@media(max-width:960px){.cart-summary{position:static}}


/* ---- 03.023 页面内联样式块
   来源：cart.html:6263
   说明：由页面 <style> 抽离，保持原有选择器和声明不变。
   ---- */
@media(max-width:960px){.cart-recos__grid{grid-template-columns:1fr 1fr !important}}


/* ---- 03.024 页面内联样式块
   来源：magazine.html:6138
   说明：由页面 <style> 抽离，保持原有选择器和声明不变。
   ---- */
@media(max-width:760px){.lh-mag-feat{grid-template-columns:1fr}}


/* ============================================================
   04. 0603 需求修复层：assets/0603-fixes.css

   作用：商品页、分类页、搜索页、账户页、购物车等 0603 文档对应修复。
   注意：加载顺序在页面内联样式之后、最终兜底之前。
   ============================================================ */
/* ============================================================
   LUMIHOME 需求修复层：0603-fixes.css

   作用：
   1. 承接 0603 文件夹里的跨页面修复：导航、Accessoires 下拉、商品详情、
      列表页、账户/搜索/购物车等。
   2. 保留原站 footer 绿色，不在这里改成其他主题色。
   3. 本文件是“需求修复层”，不是最终兜底层。

   加载关系：
   - site.css：基础样式
   - 0603-fixes.css：0603 需求修复
   - final-fixes.css：最终验收兜底，加载在最后，优先级最高

   修改提醒：
   - 如果是首页最终视觉、全站宽度、页脚白字等问题，优先改 final-fixes.css。
   - 本文件保留 0603 需求来源，避免后续不知道规则为什么存在。
   ============================================================ */
:root{
  --lh-0603-green:#276B42;
  --lh-0603-text:#1a1f1b;
  --lh-0603-muted:#7f8780;
  --lh-0603-container:min(1280px, calc(100vw - 48px));
}

/* 头部导航：桌面端一级菜单保持一行，避免 PROMOS 和红色百分号换行或挤压。 */
@media (min-width:1000px){
  .header__wrapper{
    grid-template-columns:150px minmax(0,1fr) 142px !important;
    column-gap:22px !important;
  }
  .header__inline-navigation{min-width:0 !important}
  .header__linklist{
    display:flex !important;
    flex-wrap:nowrap !important;
    align-items:center !important;
    gap:clamp(18px,2vw,30px) !important;
    white-space:nowrap !important;
  }
  .header__linklist-link{
    display:inline-flex !important;
    align-items:center !important;
    gap:7px !important;
    white-space:nowrap !important;
    font-size:14px !important;
    line-height:1 !important;
  }
  .promos-pct-dot{flex:0 0 auto !important}
}

/* Accessoires 下拉菜单：按照 Lumihome 原站做图片横排入口，而不是纯文字列表。 */
.mega-menu.mm-accessoires-strip .container{
  max-width:1040px !important;
}
.mega-menu.mm-accessoires-strip .mega-menu__inner{
  display:grid !important;
  grid-template-columns:repeat(5,minmax(112px,1fr)) !important;
  gap:30px !important;
  align-items:end !important;
  justify-items:center !important;
  padding:34px 20px 30px !important;
}
.mm-accessoires-card{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  gap:12px !important;
  color:#1b1f1d !important;
  text-decoration:none !important;
  font-size:11px !important;
  font-weight:800 !important;
  letter-spacing:.09em !important;
  text-transform:uppercase !important;
  text-align:center !important;
}
.mm-accessoires-card__pic{
  height:94px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}
.mm-accessoires-card img{
  max-width:128px !important;
  max-height:88px !important;
  object-fit:contain !important;
  display:block !important;
}
.mm-accessoires-card:hover img{transform:translateY(-2px)}
.mega-menu .mm-accessory-strip{
  display:grid !important;
  grid-template-columns:repeat(5,minmax(112px,1fr)) !important;
  gap:30px !important;
  align-items:end !important;
  justify-items:center !important;
  width:min(1040px,100%) !important;
  margin-inline:auto !important;
}
.mega-menu .mm-accessory-card{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  gap:12px !important;
  color:#1b1f1d !important;
  text-decoration:none !important;
  font-size:11px !important;
  font-weight:800 !important;
  letter-spacing:.09em !important;
  text-transform:uppercase !important;
  text-align:center !important;
}
.mega-menu .mm-accessory-img{
  height:94px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}
.mega-menu .mm-accessory-img img{
  max-width:128px !important;
  max-height:88px !important;
  object-fit:contain !important;
  display:block !important;
}

/* Footer 修复：只移除多余第一条白线，保留客户要求的原绿色背景。 */
.footer,
#shopify-section-sections--25458834145659__footer .footer,
#shopify-section-sections--25458834178427__footer .footer{
  background-color:#276B42 !important;
}
.footer::before,
.footer__inner::before,
.footer .container::before{
  display:none !important;
}
.footer__inner{
  border-top:0 !important;
}

/* 首页 Hero：去掉误加的深色遮罩，保留图片和文字层级。 */
.hp-hero::before,
.hp-hero-bg::after,
.hero-section::before{
  opacity:.08 !important;
}
.hp-hero img,
.hp-hero-bg img{
  filter:none !important;
}

/* 首页中段公共规则：锁住 0528 已验过的比例，防止后续覆盖把分类/标题挤乱。 */
#main .lh-circats{
  padding:clamp(34px,4.5vw,58px) 0 clamp(24px,3vw,42px) !important;
}
#main .lh-circats__wrap{
  width:var(--lh-0603-container) !important;
  max-width:var(--lh-0603-container) !important;
  margin-inline:auto !important;
  padding-inline:0 !important;
}
#main .lh-circats__head h2,
#main .hp-title,
#main .section-title{
  font-size:clamp(28px,3vw,44px) !important;
  line-height:1.12 !important;
  letter-spacing:0 !important;
}
#main .lh-circats__sub,
#main .hp-sub{
  margin-top:10px !important;
  font-size:clamp(13px,1.05vw,16px) !important;
  line-height:1.45 !important;
}
#main .lh-circats__viewport{
  overflow:hidden !important;
  margin-top:clamp(24px,3vw,36px) !important;
}
#main .lh-circats__track{
  display:flex !important;
  flex-wrap:nowrap !important;
  gap:22px !important;
  justify-content:center !important;
  overflow-x:auto !important;
  scroll-snap-type:x proximity !important;
  scrollbar-width:none !important;
}
#main .lh-circats__track::-webkit-scrollbar{display:none !important}
#main .lh-circats__i{
  flex:0 0 calc((100% - 110px) / 6) !important;
  min-width:0 !important;
  text-align:center !important;
  scroll-snap-align:center !important;
}
#main .lh-circats__pic{
  width:min(100%,164px) !important;
  aspect-ratio:1/1 !important;
  margin:0 auto 12px !important;
  border-radius:50% !important;
}
#main .lh-circats__pic img{
  width:78% !important;
  height:78% !important;
  object-fit:contain !important;
}
#main .lh-circats__name{
  font-size:13px !important;
  line-height:1.25 !important;
  font-weight:700 !important;
}
#main .lh-circats__lbl{
  display:block !important;
  margin-top:9px !important;
  font-size:13px !important;
  line-height:1.25 !important;
  font-weight:500 !important;
  color:#202622 !important;
}

/* 首页热卖商品：恢复老官网节奏，桌面端 4 个商品，角标精致且不遮挡图片。 */
#main .hp-sec--best .hp-wrap{
  width:var(--lh-0603-container) !important;
  max-width:var(--lh-0603-container) !important;
  margin-inline:auto !important;
}
#main .hp-sec--best .hp-track{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:clamp(22px,2.3vw,34px) !important;
  overflow:visible !important;
  align-items:stretch !important;
  padding-top:22px !important;
}
#main .hp-sec--best .hp-card{
  width:auto !important;
  min-width:0 !important;
  height:100% !important;
  border:1px solid #e8ece8 !important;
  border-radius:8px !important;
  overflow:visible !important;
  box-shadow:0 10px 26px rgba(18,30,22,.06) !important;
}
#main .hp-sec--best .hp-card-media{
  aspect-ratio:4/3 !important;
  height:auto !important;
  overflow:hidden !important;
  border-radius:8px 8px 0 0 !important;
  background:#f5f7f5 !important;
}
#main .hp-sec--best .hp-card-media img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  border-radius:8px 8px 0 0 !important;
  transform:none !important;
  filter:none !important;
}
#main .hp-sec--best .hp-card:hover .hp-card-media img{
  transform:none !important;
  filter:none !important;
}
#main .hp-sec--best .hp-badge-top{
  top:-12px !important;
  left:0 !important;
  right:auto !important;
  height:28px !important;
  padding:0 14px !important;
  border-radius:4px 4px 4px 0 !important;
  font-size:12px !important;
  line-height:28px !important;
  font-weight:800 !important;
  box-shadow:none !important;
}
#main .hp-sec--best .hp-badge-solar{
  left:12px !important;
  bottom:12px !important;
  height:25px !important;
  padding:0 12px !important;
  border-radius:999px !important;
  font-size:10px !important;
  line-height:25px !important;
}
#main .hp-sec--best .hp-fav{
  width:36px !important;
  height:36px !important;
  right:12px !important;
  bottom:12px !important;
}
#main .hp-sec--best .hp-card-body{
  min-height:212px !important;
  padding:18px 18px 20px !important;
  display:flex !important;
  flex-direction:column !important;
  gap:9px !important;
}
#main .hp-sec--best .hp-name{
  min-height:42px !important;
  max-height:42px !important;
  display:-webkit-box !important;
  -webkit-line-clamp:2 !important;
  -webkit-box-orient:vertical !important;
  overflow:hidden !important;
  font-size:15px !important;
  line-height:1.4 !important;
  font-weight:800 !important;
}
#main .hp-sec--best .hp-rating,
#main .hp-sec--best .hp-stock{
  font-size:12px !important;
}
#main .hp-sec--best .hp-price{
  font-size:20px !important;
  line-height:1.15 !important;
}

/* 首页热卖商品 DOM 锁定：index.html 使用 hp-pcard / hp-pc-*，这里针对真实类名兜底。 */
@media (min-width:761px){
  #main .lh-circats__wrap,
  #main .hp-sec--best .hp-wrap,
  #main .hp-sec--best .hp-bv-wrap{
    width:min(1120px, calc(100vw - 80px)) !important;
    max-width:1120px !important;
    margin-inline:auto !important;
    padding-inline:0 !important;
  }
  #main .lh-circats{
    padding:28px 0 22px !important;
  }
  #main .lh-circats__head{
    margin-bottom:18px !important;
  }
  #main .lh-circats__track{
    display:flex !important;
    flex-wrap:nowrap !important;
    justify-content:flex-start !important;
    gap:22px !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    padding:4px 0 12px !important;
    scroll-snap-type:x proximity !important;
    scrollbar-width:none !important;
  }
  #main .lh-circats__i,
  #main .lh-circats__i:nth-child(n+6){
    flex:0 0 calc((100% - 110px) / 6) !important;
    width:calc((100% - 110px) / 6) !important;
    max-width:calc((100% - 110px) / 6) !important;
    min-width:0 !important;
    scroll-snap-align:center !important;
  }
  #main .lh-circats__pic{
    width:min(100%,156px) !important;
    max-width:156px !important;
    aspect-ratio:1/1 !important;
    margin:0 auto !important;
  }
  #main .lh-circats__arrow{
    width:34px !important;
    height:34px !important;
    top:56% !important;
  }
  #main .lh-circats__arrow--prev{left:-42px !important;}
  #main .lh-circats__arrow--next{right:-42px !important;}

  #main .hp-sec--best{
    padding-top:34px !important;
    padding-bottom:52px !important;
  }
  #main .hp-sec--best .hp-track{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:26px !important;
    width:min(1120px, calc(100vw - 80px)) !important;
    max-width:1120px !important;
    margin-inline:auto !important;
    padding:0 !important;
    overflow:visible !important;
    scroll-snap-type:none !important;
  }
  #main .hp-sec--best .hp-track > .hp-pcard{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    height:auto !important;
    border:1px solid #e7ebe7 !important;
    border-radius:8px !important;
    box-shadow:0 10px 24px rgba(20,30,22,.055) !important;
    overflow:visible !important;
  }
  #main .hp-sec--best .hp-track > .hp-pcard:nth-child(n+5){
    display:none !important;
  }
  #main .hp-sec--best .hp-pcard a{
    display:flex !important;
    flex-direction:column !important;
    height:100% !important;
    min-height:0 !important;
    overflow:visible !important;
  }
  #main .hp-sec--best .hp-pc-media{
    aspect-ratio:4/3 !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    border-radius:8px 8px 0 0 !important;
    overflow:visible !important;
    background:#f6f8f6 !important;
  }
  #main .hp-sec--best .hp-pc-media img{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    object-position:center center !important;
    border-radius:8px 8px 0 0 !important;
    transform:none !important;
    filter:none !important;
  }
  #main .hp-sec--best .hp-pcard:hover,
  #main .hp-sec--best .hp-pcard:hover .day,
  #main .hp-sec--best .hp-pcard:hover .night,
  #main .hp-sec--best .hp-pc-media:hover img{
    transform:none !important;
    filter:none !important;
  }
  #main .hp-sec--best .hp-bdgs{
    left:0 !important;
    top:-12px !important;
    right:auto !important;
  }
  #main .hp-sec--best .hp-bdgs .hp-bdg,
  #main .hp-sec--best .hp-bdgs .hp-bdg.hp-bdg--remises{
    height:24px !important;
    line-height:24px !important;
    padding:0 10px !important;
    border-radius:4px 4px 4px 0 !important;
    font-size:11px !important;
    font-weight:800 !important;
    background:#df5a34 !important;
  }
  #main .hp-sec--best .hp-bdg--solar{
    height:20px !important;
    padding:0 10px !important;
    border-radius:999px !important;
    font-size:9px !important;
    line-height:20px !important;
  }
  #main .hp-sec--best .hp-pc-fav{
    width:30px !important;
    height:30px !important;
    right:10px !important;
    bottom:10px !important;
  }
  #main .hp-sec--best .hp-pc-body{
    display:flex !important;
    flex-direction:column !important;
    min-height:176px !important;
    padding:13px 14px 15px !important;
    gap:7px !important;
    overflow:hidden !important;
  }
  #main .hp-sec--best .hp-pc-pvc{
    align-self:flex-start !important;
    height:24px !important;
    line-height:24px !important;
    padding:0 10px !important;
    margin:0 !important;
    font-size:11px !important;
  }
  #main .hp-sec--best .hp-pc-name{
    min-height:36px !important;
    max-height:36px !important;
    margin:0 !important;
    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;
    overflow:hidden !important;
    font-size:13px !important;
    line-height:18px !important;
    font-weight:700 !important;
  }
  #main .hp-sec--best .hp-pc-rate,
  #main .hp-sec--best .hp-pc-stock{
    min-height:18px !important;
    margin:0 !important;
    font-size:11px !important;
    line-height:18px !important;
  }
  #main .hp-sec--best .hp-pc-price{
    min-height:38px !important;
    margin:0 !important;
  }
  #main .hp-sec--best .hp-pc-price b{
    font-size:18px !important;
    line-height:22px !important;
  }
  #main .hp-sec--best .hp-pc-oldprice{
    font-size:11px !important;
    line-height:16px !important;
  }
}

/* 分类列表页：统一商品卡片、图片文字模块、角标和 hover 效果。 */
.ls-wrap{
  max-width:1320px !important;
  width:min(1320px, calc(100vw - 48px)) !important;
  padding-left:0 !important;
  padding-right:0 !important;
}
.ls-card{
  border-radius:8px !important;
  overflow:visible !important;
  transform:none !important;
}
.ls-card:hover{
  transform:none !important;
  box-shadow:0 14px 30px rgba(20,30,22,.10) !important;
}
.ls-card-media{
  aspect-ratio:4/3 !important;
  border-radius:8px 8px 0 0 !important;
  overflow:hidden !important;
}
.ls-card-media img{
  border-radius:8px 8px 0 0 !important;
  transform:none !important;
  filter:none !important;
}
.ls-card:hover .ls-card-media img{
  transform:none !important;
  filter:none !important;
}
.ls-badges{
  top:-10px !important;
  left:0 !important;
  gap:4px !important;
}
.ls-bdg--disc,
.ls-bdg--promo{
  border-radius:4px 4px 4px 0 !important;
  font-size:11px !important;
  padding:6px 10px !important;
}
.ls-bdg--solar{
  left:10px !important;
  bottom:10px !important;
  top:auto !important;
  right:auto !important;
  background:#f6ad3b !important;
  color:#fff !important;
  border:0 !important;
  font-size:9.5px !important;
  letter-spacing:.06em !important;
  box-shadow:0 4px 10px rgba(0,0,0,.12) !important;
}
.ls-card-body{
  min-height:218px !important;
  padding:18px 16px 17px !important;
  gap:8px !important;
}
.ls-card-name{
  min-height:40px !important;
  max-height:40px !important;
  -webkit-line-clamp:2 !important;
  font-weight:800 !important;
}
.ls-stock-row{
  margin-top:auto !important;
}
.lh-imgtext{
  max-width:1200px !important;
  width:min(1200px, calc(100vw - 48px)) !important;
  padding-inline:0 !important;
}
.lh-imgtext__media{
  border-radius:10px !important;
}
.lh-imgtext__body h3{
  font-size:clamp(20px,2vw,26px) !important;
}

/* 商品详情页：调整首屏信息层级、评分、关键参数和笔记本尺寸下的图片区。 */
.product-rating .stars{
  color:#f6a429 !important;
  font-size:20px !important;
  letter-spacing:1.6px !important;
  line-height:1 !important;
}
.product-rating{
  gap:8px !important;
  align-items:center !important;
}
.pdp-key-specs{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px 12px;
  margin:18px 0 16px;
  padding:16px;
  border:1px solid #e3e9e3;
  border-radius:12px;
  background:#f7faf8;
}
.pdp-key-specs span{
  display:flex;
  flex-direction:column;
  gap:2px;
  min-width:0;
  font-size:13px;
  line-height:1.35;
  color:#334036;
}
.pdp-key-specs strong{
  color:var(--lh-0603-green);
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.04em;
}
@media (min-width:1024px) and (max-width:1440px){
  .product-layout-container{
    grid-template-columns:minmax(420px,540px) minmax(0,1fr) !important;
    gap:36px !important;
  }
  .main-image-container{
    max-height:560px !important;
  }
  .main-image-container img{
    max-height:560px !important;
    object-fit:contain !important;
  }
}

/* 账户 / 搜索 / 购物车：统一页面容器宽度、卡片阴影和基础间距。 */
.acct-grid > div{
  box-shadow:0 16px 34px rgba(25,36,30,.06) !important;
}
.acct-grid button[type="submit"],
.acct-grid a[style*="Créer"]{
  min-height:54px !important;
}
.cart-grid,
.search-page,
.account-page{
  width:var(--lh-0603-container) !important;
  max-width:var(--lh-0603-container) !important;
  margin-inline:auto !important;
}

@media (max-width:760px){
  /* 手机端：收窄容器、改为横向滑动商品卡、列表页两列，避免内容被压成一团。 */
  :root{--lh-0603-container:calc(100vw - 32px)}
  .header__wrapper{
    grid-template-columns:56px 1fr 104px !important;
  }
  #main .lh-circats__track{
    justify-content:flex-start !important;
    gap:14px !important;
  }
  #main .lh-circats__i{
    flex:0 0 42vw !important;
  }
  #main .lh-circats__pic{
    width:132px !important;
  }
  #main .hp-sec--best .hp-track{
    display:flex !important;
    overflow-x:auto !important;
    gap:14px !important;
    padding:18px 16px 8px !important;
    scroll-snap-type:x proximity !important;
  }
  #main .hp-sec--best .hp-card{
    flex:0 0 78vw !important;
    scroll-snap-align:center !important;
  }
  .ls-wrap{
    width:calc(100vw - 32px) !important;
  }
  .ls-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:14px !important;
  }
  .ls-card-body{
    min-height:190px !important;
    padding:14px 12px 14px !important;
  }
  .ls-card-name{
    font-size:12.5px !important;
  }
  .ls-bdg--disc,
  .ls-bdg--promo{
    font-size:9.5px !important;
    padding:5px 8px !important;
  }
  .lh-imgtext{
    width:calc(100vw - 32px) !important;
  }
  .lh-imgtext__row,
  .lh-imgtext__row--reverse{
    grid-template-columns:1fr !important;
    direction:ltr !important;
    gap:16px !important;
  }
  .pdp-key-specs{
    grid-template-columns:1fr !important;
  }
}


/* ============================================================
   05. 最终验收兜底层：assets/final-fixes.css

   作用：统一导航、Mega menu、首页模块、热卖卡片、footer 白字等最终验收规则。
   注意：这里是主维护区，后续视觉问题优先在本区块追加或修正。
   ============================================================ */
/* ============================================================
   LUMIHOME 最终验收兜底样式：final-fixes.css

   作用：
   1. 本文件加载在所有页面内联样式、site.css、0603-fixes.css 之后。
   2. 用于锁定 0528 / 0529 / 0603 / 0604 已确认的最终视觉效果。
   3. 首页宽度、分类圆圈、Nos meilleures ventes、应用场景、footer 绿底白字、
      博客/会员页面、移动端适配，最终都以这里为准。

   修改原则：
   - 页面看起来“又被改坏”时，优先检查这里后半段是否覆盖了前面的规则。
   - 不要随意删除 !important；这些规则用于压住模板里大量旧样式和远程主题样式。
   - 如果要调视觉，尽量在对应中文模块内修改，避免同一个模块在多处反复覆盖。
   ============================================================ */

:root{
  /* 最终版统一宽度：桌面端恢复老官网宽度，窄容器用于内页和博客。 */
  --lh-final-green:#276B42;
  --lh-final-green-dark:#276B42;
  --lh-final-container:min(calc(100vw - 96px), 1520px);
  --lh-final-narrow:min(calc(100vw - 96px), 1280px);
}

/* ============================================================
   0529/0603/0604 审计收尾补丁
   ------------------------------------------------------------
   这一段只补齐审计中明确缺失的页面结构样式，放在文件末尾是为了
   压过历史版本里分散的 !important 规则，避免首页两块反复被改坏。
   ============================================================ */

/* 0529：Mega menu 右侧图文模块恢复显示。
   前四个一级菜单使用正文列 + 右侧图片卡；Par espace 使用室内/室外双图。 */
@media (min-width:1000px){
  .mm-uniform .mega-menu__inner{
    display:grid !important;
    grid-template-columns:minmax(190px,.78fr) minmax(190px,.78fr) minmax(280px,374px) !important;
    align-items:start !important;
    gap:clamp(34px,4vw,72px) !important;
  }
  .mm-uniform .mega-menu__images-wrapper{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:18px !important;
    width:100% !important;
    max-width:374px !important;
  }
  .mm-uniform .mega-menu__image-wrapper{
    display:block !important;
    width:100% !important;
    aspect-ratio:374/427 !important;
    overflow:hidden !important;
    border-radius:8px !important;
    background:#f6f8f6 !important;
  }
  .mm-uniform .mega-menu__image{
    display:block !important;
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
  }
  .mm-uniform .mega-menu__image-promo{
    margin-top:12px !important;
    font-size:14px !important;
    font-weight:800 !important;
    letter-spacing:.06em !important;
    text-align:center !important;
    color:var(--lh-green) !important;
    text-transform:uppercase !important;
  }
  #desktop-menu-4.mm-uniform .mega-menu__inner{
    grid-template-columns:minmax(180px,.62fr) minmax(180px,.62fr) minmax(520px,748px) !important;
  }
  #desktop-menu-4.mm-uniform .mega-menu__images-wrapper{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    max-width:748px !important;
    gap:22px !important;
  }
  #desktop-menu-5.mm-uniform .mega-menu__inner{
    display:block !important;
  }
}

/* ============================================================
   头部最终兜底：
   - 公告栏配送文案 PC 端不换行。
   - mega menu 带 hidden 属性时，hover 仍然正常弹出。
   - PROMOS 的百分号必须是红底白字，不能被导航 span 黑色规则覆盖。
   ============================================================ */
@media screen and (min-width:1000px){
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
    display:grid !important;
    grid-template-columns:44px minmax(0,1fr) 44px !important;
    align-items:center !important;
    min-height:34px !important;
    padding:0 40px !important;
  }
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__list{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:100% !important;
    min-width:0 !important;
    overflow:hidden !important;
  }
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message,
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message p{
    display:block !important;
    max-width:100% !important;
    margin:0 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    line-height:1 !important;
  }
  .header__linklist-item.has-dropdown > .mega-menu[hidden]{
    display:block !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
    transform:translateY(8px) !important;
  }
  .header__linklist-item.has-dropdown:hover > .mega-menu[hidden],
  .header__linklist-item.has-dropdown:focus-within > .mega-menu[hidden],
  .header__linklist-item.has-dropdown:hover > .mega-menu,
  .header__linklist-item.has-dropdown:focus-within > .mega-menu{
    display:block !important;
    visibility:visible !important;
    opacity:1 !important;
    pointer-events:auto !important;
    transform:translateY(0) !important;
  }
  .header__inline-navigation .header__linklist-link .promos-pct-dot,
  .header__linklist-link .promos-pct-dot,
  .promos-pct-dot{
    display:inline-grid !important;
    place-items:center !important;
    width:22px !important;
    height:22px !important;
    min-width:22px !important;
    border-radius:50% !important;
    background:#e00023 !important;
    color:#fff !important;
    font-size:12px !important;
    font-weight:800 !important;
    line-height:1 !important;
    text-align:center !important;
  }
}

/* 0529：热卖区域桌面端保留 4 张可视宽度，同时恢复横向多产品滑动。
   旧规则曾把第 5 个之后强制 display:none，这里统一覆盖。 */
@media (min-width:761px){
  #main .hp-sec--best .hp-bv-wrap{
    width:min(1120px,calc(100vw - 80px)) !important;
    max-width:1120px !important;
    margin-inline:auto !important;
    overflow:visible !important;
  }
  #main .hp-sec--best [data-scroller]{
    overflow:hidden !important;
    padding-top:18px !important;
    margin-top:-18px !important;
  }
  #main .hp-sec--best .hp-track{
    display:flex !important;
    flex-wrap:nowrap !important;
    align-items:stretch !important;
    gap:26px !important;
    width:100% !important;
    max-width:none !important;
    overflow-x:auto !important;
    overflow-y:visible !important;
    scroll-snap-type:x mandatory !important;
    scroll-padding-left:0 !important;
    padding:18px 0 10px !important;
    scrollbar-width:none !important;
  }
  #main .hp-sec--best .hp-track::-webkit-scrollbar{
    display:none !important;
  }
  #main .hp-sec--best .hp-track > .hp-pcard,
  #main .hp-sec--best .hp-track > .hp-pcard:nth-child(n+5){
    display:flex !important;
    flex:0 0 calc((100% - 78px)/4) !important;
    width:calc((100% - 78px)/4) !important;
    max-width:calc((100% - 78px)/4) !important;
    min-width:0 !important;
    scroll-snap-align:start !important;
  }
}

/* 热卖产品卡片最终锁定：必须放在文件最末尾，压过前面所有旧规则。 */
@media (min-width:761px){
  body #main .hp-sec--best .hp-track{
    align-items:start !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard{
    display:block !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    overflow:visible !important;
    border-radius:8px !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard > a{
    display:grid !important;
    grid-template-rows:auto 236px !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media{
    position:relative !important;
    display:block !important;
    width:100% !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    aspect-ratio:1 / 1 !important;
    overflow:visible !important;
    border-radius:8px 8px 0 0 !important;
    background:#f4f5f4 !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media img,
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media .day,
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media .night{
    position:absolute !important;
    inset:0 !important;
    display:block !important;
    width:100% !important;
    height:100% !important;
    min-width:100% !important;
    min-height:100% !important;
    max-width:none !important;
    max-height:none !important;
    object-fit:cover !important;
    object-position:center center !important;
    border-radius:8px 8px 0 0 !important;
    transform:none !important;
    filter:none !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard:hover,
  body #main .hp-sec--best .hp-track > article.hp-pcard:hover img,
  body #main .hp-sec--best .hp-track > article.hp-pcard:hover .day,
  body #main .hp-sec--best .hp-track > article.hp-pcard:hover .night{
    transform:none !important;
    filter:none !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-body{
    display:flex !important;
    flex-direction:column !important;
    height:236px !important;
    min-height:236px !important;
    max-height:236px !important;
    padding:14px 14px 16px !important;
    gap:7px !important;
    overflow:hidden !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-name{
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    height:40px !important;
    min-height:40px !important;
    max-height:40px !important;
    overflow:hidden !important;
    line-height:20px !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-price{
    min-height:42px !important;
    margin:0 !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-rate{
    min-height:20px !important;
    margin:0 !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-stock{
    margin-top:auto !important;
  }
}

/* 102. 全站头部移动端最终修复
   说明：
   1. CSS 合并后，通用的 .header__icon-wrapper display:flex 覆盖了 hidden-phone / hidden-pocket，
      导致移动端邮件、桌面搜索、移动搜索、账户、购物车一起显示。
   2. 这里作为真正 EOF 锁定层，明确移动端只保留：汉堡菜单、居中 logo、一个搜索、购物车。
   3. 公告栏移动端不再让左右箭头占据空间，文字使用整行宽度，避免只露出半句。 */
@media (max-width:999px){
  /* 公告栏：移动端隐藏左右切换箭头，文案完整居中显示一行。 */
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-height:44px !important;
    padding:0 14px !important;
    overflow:hidden !important;
  }
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar > .tap-area,
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar > button[data-action]{
    display:none !important;
  }
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__list{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    overflow:hidden !important;
    text-align:center !important;
  }
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__item:not([hidden]),
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message,
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message p{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    color:#fff !important;
    text-align:center !important;
    line-height:44px !important;
  }

  /* Header：移动端三栏布局固定，避免图标挤出或重复。 */
  #shopify-section-sections--25458834178427__header .header__wrapper{
    display:grid !important;
    grid-template-columns:44px minmax(0,1fr) auto !important;
    align-items:center !important;
    column-gap:10px !important;
    min-height:72px !important;
    padding:0 !important;
  }
  #shopify-section-sections--25458834178427__header .header__inline-navigation{
    grid-column:1 !important;
    display:flex !important;
    justify-content:flex-start !important;
  }
  #shopify-section-sections--25458834178427__header .header__logo{
    grid-column:2 !important;
    justify-self:center !important;
  }
  #shopify-section-sections--25458834178427__header .header__secondary-links{
    grid-column:3 !important;
    display:flex !important;
    justify-self:end !important;
  }
  #shopify-section-sections--25458834178427__header .header__icon-list{
    display:flex !important;
    align-items:center !important;
    gap:14px !important;
  }

  /* 只显示移动端搜索和购物车；隐藏邮件、账户、桌面搜索。 */
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper{
    display:none !important;
  }
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper.hidden-desk,
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper[aria-controls="mini-cart"]{
    display:inline-flex !important;
  }
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper.hidden-pocket,
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper.hidden-lap,
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper.hidden-phone,
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper[aria-controls="newsletter-popup"],
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper[aria-label="Compte"]{
    display:none !important;
  }
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper svg{
    width:24px !important;
    height:24px !important;
  }
}

@media (min-width:1000px){
  /* PC 端恢复桌面搜索、账户、购物车；隐藏移动搜索，避免出现第二个放大镜。 */
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper.hidden-desk{
    display:none !important;
  }
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper.hidden-pocket.hidden-lap,
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper.hidden-phone,
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper[aria-controls="mini-cart"]{
    display:inline-flex !important;
  }
}

/* ============================================================
   0604 页脚颜色最终兜底
   目的：
   1. 绿色页脚区域不允许再出现黑字。
   2. 上方支付/配送/评价 trust strip 与下方 footer 统一白字。
   3. 保留支付、物流、评分 logo 原图颜色，仅覆盖文字颜色。
   ============================================================ */
.v15-trust-strip,
#shopify-section-sections--25458834145659__footer .footer,
.shopify-section--footer .footer,
footer.footer{
  color:rgba(255,255,255,.86) !important;
}

.v15-trust-strip h1,
.v15-trust-strip h2,
.v15-trust-strip h3,
.v15-trust-strip h4,
.v15-trust-strip h5,
.v15-trust-strip h6,
.v15-trust-strip strong,
.v15-trust-strip b,
.v15-trust-strip .heading,
.v15-trust-strip .v15-trust-rating-score,
.v15-trust-strip .v15-trust-rating-score strong,
#shopify-section-sections--25458834145659__footer .footer .heading,
#shopify-section-sections--25458834145659__footer .footer .footer__item-title,
#shopify-section-sections--25458834145659__footer .footer strong,
#shopify-section-sections--25458834145659__footer .footer b,
.shopify-section--footer .footer .heading,
.shopify-section--footer .footer .footer__item-title,
.shopify-section--footer .footer strong,
.shopify-section--footer .footer b,
footer.footer .heading,
footer.footer .footer__item-title,
footer.footer strong,
footer.footer b{
  color:#fff !important;
}

.v15-trust-strip p,
.v15-trust-strip span,
.v15-trust-strip .text--subdued,
.v15-trust-strip .v15-trust-rating-logo,
.v15-trust-strip .v15-trust-col > span,
#shopify-section-sections--25458834145659__footer .footer p,
#shopify-section-sections--25458834145659__footer .footer span,
#shopify-section-sections--25458834145659__footer .footer .text--subdued,
#shopify-section-sections--25458834145659__footer .footer .link--faded,
#shopify-section-sections--25458834145659__footer .footer .footer__copyright,
#shopify-section-sections--25458834145659__footer .footer .footer__payment-methods-label,
.shopify-section--footer .footer p,
.shopify-section--footer .footer span,
.shopify-section--footer .footer .text--subdued,
.shopify-section--footer .footer .link--faded,
.shopify-section--footer .footer .footer__copyright,
.shopify-section--footer .footer .footer__payment-methods-label,
footer.footer p,
footer.footer span,
footer.footer .text--subdued,
footer.footer .link--faded,
footer.footer .footer__copyright,
footer.footer .footer__payment-methods-label{
  color:rgba(255,255,255,.82) !important;
}

.v15-trust-strip a,
.v15-trust-strip a span,
#shopify-section-sections--25458834145659__footer .footer a,
#shopify-section-sections--25458834145659__footer .footer a span,
.shopify-section--footer .footer a,
.shopify-section--footer .footer a span,
footer.footer a,
footer.footer a span{
  color:#fff !important;
}

.v15-trust-strip svg,
#shopify-section-sections--25458834145659__footer .footer svg,
.shopify-section--footer .footer svg,
footer.footer svg{
  color:currentColor !important;
}

/* ============================================================
   110. 2026-06-22 最终文件末尾锁定
   说明：本文件历史上存在多段重复 CSS。这里必须放在文件最后，
   用更普通的选择器覆盖所有前文规则，保证截图审计结果稳定。
============================================================ */

/* 110-1 首页分类：一行 6 个，版心跟热卖模块一致，文字不拆行。 */
@media (min-width:1000px){
  #main .lh-circats{
    overflow:hidden !important;
  }

  #main .lh-circats__viewport{
    width:min(1520px, calc(100% - 96px)) !important;
    max-width:1520px !important;
    margin-inline:auto !important;
    overflow:visible !important;
  }

  #main .lh-circats__track{
    display:grid !important;
    grid-template-columns:repeat(6, minmax(0, 1fr)) !important;
    gap:22px !important;
    align-items:start !important;
  }

  #main .lh-circats__i{
    min-width:0 !important;
    width:auto !important;
  }

  #main .lh-circats__lbl{
    max-width:none !important;
    white-space:nowrap !important;
    overflow:visible !important;
    text-overflow:clip !important;
    font-size:14px !important;
    line-height:1.15 !important;
    letter-spacing:0 !important;
  }
}

/* 110-2 首页热卖：四张卡片图片同宽高、内容同高度、长标题省略。 */
@media (min-width:1000px){
  #main .hp-products .hp-pc-grid{
    grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
    gap:36px !important;
    align-items:stretch !important;
  }

  #main .hp-products .hp-pc-card{
    height:584px !important;
    display:grid !important;
    grid-template-rows:330px 254px !important;
    overflow:visible !important;
  }

  #main .hp-products .hp-pc-media{
    height:330px !important;
    aspect-ratio:auto !important;
    overflow:visible !important;
    border-radius:8px 8px 0 0 !important;
  }

  #main .hp-products .hp-pc-media img,
  #main .hp-products .hp-pc-media .day,
  #main .hp-products .hp-pc-media .night{
    width:100% !important;
    height:100% !important;
    display:block !important;
    object-fit:cover !important;
    border-radius:8px 8px 0 0 !important;
    transform:none !important;
    filter:none !important;
  }

  #main .hp-products .hp-pc-card:hover .hp-pc-media img,
  #main .hp-products .hp-pc-card:hover .hp-pc-media .day,
  #main .hp-products .hp-pc-card:hover .hp-pc-media .night{
    transform:none !important;
    filter:none !important;
  }

  #main .hp-products .hp-pc-body{
    height:254px !important;
    min-height:254px !important;
    display:flex !important;
    flex-direction:column !important;
    justify-content:flex-start !important;
    gap:8px !important;
    padding:32px 18px 18px !important;
  }

  #main .hp-products .hp-pc-title{
    min-height:42px !important;
    max-height:42px !important;
    overflow:hidden !important;
    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;
  }
}

/* ============================================================
   112. 2026-06-22 全站截图验收锁定层（真正文件末尾）

   为什么又放一层：
   - 本 CSS 是由旧 theme.css、页面内联样式、0528/0529/0603/0604 多轮补丁合并而来；
   - 文件中部虽然已有 111 层，但后面又拼进了旧规则，导致浏览器最终仍吃到旧样式；
   - 所以这里放在真实文件末尾，只处理用户截图反复指出的验收问题。

   对应需求：
   1. 顶部黑色公告栏一行显示，不换行、不被截断；
   2. 移动端头部只保留一个搜索图标和购物车，避免两个放大镜；
   3. 一级导航 hover 必须弹出二级导航；
   4. PROMOS 的 % 必须红底白字；
   5. 首页 Nos meilleures ventes 四张产品卡同宽、同高、图片高度一致；
   6. 产品图左上角角标与图片左边对齐，半露在图片外，左下角直角；
   7. hover 只允许切换夜景/压暗，不允许模糊、放大；
   8. footer 和 footer 上方 trust strip 保持原绿色背景，所有文字必须是白字。
   ============================================================ */

/* 112-1 顶部公告栏：桌面和大屏强制一行，左右箭头不挤占文字。 */
#shopify-section-sections--25458834178427__announcement-bar,
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
  --announcement-bar-height:38px !important;
  background:#282828 !important;
}

#shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
  display:grid !important;
  grid-template-columns:46px minmax(0,1fr) 46px !important;
  align-items:center !important;
  min-height:38px !important;
  height:38px !important;
  max-height:38px !important;
  padding:0 38px !important;
  overflow:hidden !important;
}

#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__list{
  grid-column:2 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  min-width:0 !important;
  height:38px !important;
  overflow:hidden !important;
}

#shopify-section-sections--25458834178427__announcement-bar announcement-bar-item,
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__item{
  flex:0 0 100% !important;
  width:100% !important;
  min-width:0 !important;
  height:38px !important;
}

#shopify-section-sections--25458834178427__announcement-bar announcement-bar-item[hidden],
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__item[hidden]{
  display:none !important;
  flex-basis:0 !important;
  width:0 !important;
}

#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message,
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message p{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  margin:0 !important;
  color:#fff !important;
  font-size:13px !important;
  font-weight:800 !important;
  line-height:38px !important;
  letter-spacing:0 !important;
  text-align:center !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:clip !important;
}

/* 112-2 PROMOS 百分号：保持官网红圆白字，不允许继承黑字。 */
.header__linklist-link .promos-pct-dot,
.header__inline-navigation .promos-pct-dot,
.promos-pct-dot{
  display:inline-grid !important;
  place-items:center !important;
  width:22px !important;
  height:22px !important;
  min-width:22px !important;
  min-height:22px !important;
  margin-left:7px !important;
  border-radius:50% !important;
  background:#e00023 !important;
  color:#fff !important;
  font-size:12px !important;
  font-weight:900 !important;
  line-height:1 !important;
  text-align:center !important;
  vertical-align:middle !important;
}

/* 112-3 桌面一级导航：hover / focus 时显示对应二级菜单。 */
@media (min-width:1000px){
  .header__linklist{
    overflow:visible !important;
  }

  .header__linklist-item.has-dropdown > .mega-menu,
  .header__linklist-item.has-dropdown > .mega-menu[hidden],
  .header__linklist-item.has-dropdown > .nav-dropdown,
  .header__linklist-item.has-dropdown > .nav-dropdown[hidden]{
    display:block !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
    transform:translateY(6px) !important;
    transition:opacity .14s ease, transform .14s ease !important;
  }

  .header__linklist-item.has-dropdown:hover > .mega-menu,
  .header__linklist-item.has-dropdown:focus-within > .mega-menu,
  .header__linklist-item.has-dropdown:hover > .mega-menu[hidden],
  .header__linklist-item.has-dropdown:focus-within > .mega-menu[hidden],
  .header__linklist-item.has-dropdown:hover > .nav-dropdown,
  .header__linklist-item.has-dropdown:focus-within > .nav-dropdown,
  .header__linklist-item.has-dropdown:hover > .nav-dropdown[hidden],
  .header__linklist-item.has-dropdown:focus-within > .nav-dropdown[hidden]{
    visibility:visible !important;
    opacity:1 !important;
    pointer-events:auto !important;
    transform:translateY(0) !important;
  }
}

/* 112-4 移动端头部：公告栏不截字，右侧只显示搜索 + 购物车。 */
@media (max-width:999px){
  #shopify-section-sections--25458834178427__announcement-bar,
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
    --announcement-bar-height:36px !important;
  }

  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
    grid-template-columns:1fr !important;
    min-height:36px !important;
    height:36px !important;
    max-height:36px !important;
    padding:0 8px !important;
  }

  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar > button,
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar > .tap-area{
    display:none !important;
  }

  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__list,
  #shopify-section-sections--25458834178427__announcement-bar announcement-bar-item,
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__item,
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message,
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message p{
    min-height:36px !important;
    height:36px !important;
    max-height:36px !important;
    line-height:36px !important;
  }

  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message p{
    font-size:10px !important;
    font-weight:800 !important;
    white-space:nowrap !important;
  }

  #shopify-section-sections--25458834178427__header .header__wrapper{
    display:grid !important;
    grid-template-columns:44px minmax(0,1fr) auto !important;
    align-items:center !important;
    gap:10px !important;
    min-height:72px !important;
    padding:0 16px !important;
  }

  #shopify-section-sections--25458834178427__header .header__logo{
    grid-column:2 !important;
    justify-self:center !important;
  }

  #shopify-section-sections--25458834178427__header .header__logo-image{
    width:150px !important;
    max-width:42vw !important;
    height:auto !important;
  }

  #shopify-section-sections--25458834178427__header .header__secondary-links{
    grid-column:3 !important;
    justify-self:end !important;
  }

  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-list{
    display:flex !important;
    align-items:center !important;
    gap:16px !important;
  }

  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper{
    display:none !important;
  }

  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper.hidden-desk[aria-label="Recherche"],
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper[aria-controls="mini-cart"]{
    display:inline-flex !important;
  }
}

/* 112-5 首页热卖：4 个产品卡片严格同宽同高，图片和文字区域固定。 */
@media (min-width:1000px){
  body #main .hp-sec--best .hp-wrap,
  body #main .hp-sec--best .hp-bv-wrap{
    width:min(1520px,calc(100% - 96px)) !important;
    max-width:1520px !important;
    margin-inline:auto !important;
    overflow:visible !important;
  }

  body #main .hp-sec--best .hp-track{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:34px !important;
    align-items:stretch !important;
    width:100% !important;
    max-width:1520px !important;
    margin:0 !important;
    padding:24px 0 10px !important;
    overflow:visible !important;
  }

  body #main .hp-sec--best .hp-track > .hp-pcard,
  body #main .hp-sec--best .hp-track > article.hp-pcard{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    height:586px !important;
    min-height:586px !important;
    max-height:586px !important;
    border:1px solid #e5e9e5 !important;
    border-radius:8px !important;
    background:#fff !important;
    box-shadow:0 12px 32px rgba(25,39,31,.06) !important;
    overflow:visible !important;
  }

  body #main .hp-sec--best .hp-track > .hp-pcard:nth-child(n+5){
    display:none !important;
  }

  body #main .hp-sec--best .hp-track > .hp-pcard > a{
    display:grid !important;
    grid-template-rows:332px 252px !important;
    width:100% !important;
    height:586px !important;
    min-height:586px !important;
    max-height:586px !important;
    overflow:visible !important;
    color:inherit !important;
    text-decoration:none !important;
  }

  body #main .hp-sec--best .hp-pc-media{
    position:relative !important;
    width:100% !important;
    height:332px !important;
    min-height:332px !important;
    max-height:332px !important;
    aspect-ratio:auto !important;
    border-radius:8px 8px 0 0 !important;
    background:#f5f7f5 !important;
    overflow:visible !important;
  }

  body #main .hp-sec--best .hp-pc-media img,
  body #main .hp-sec--best .hp-pc-media .day,
  body #main .hp-sec--best .hp-pc-media .night{
    position:absolute !important;
    inset:0 !important;
    display:block !important;
    width:100% !important;
    height:100% !important;
    min-width:100% !important;
    min-height:100% !important;
    object-fit:cover !important;
    object-position:center center !important;
    border-radius:8px 8px 0 0 !important;
    transform:none !important;
    filter:none !important;
  }

  body #main .hp-sec--best .hp-pcard:hover .hp-pc-media img,
  body #main .hp-sec--best .hp-pcard:hover .hp-pc-media .day,
  body #main .hp-sec--best .hp-pcard:hover .hp-pc-media .night{
    transform:none !important;
  }

  body #main .hp-sec--best .hp-pcard:hover .hp-pc-media .night{
    filter:brightness(.78) !important;
  }

  body #main .hp-sec--best .hp-bdgs{
    position:absolute !important;
    left:0 !important;
    top:-16px !important;
    z-index:6 !important;
    display:flex !important;
    align-items:flex-start !important;
    pointer-events:none !important;
  }

  body #main .hp-sec--best .hp-bdgs .hp-bdg,
  body #main .hp-sec--best .hp-bdgs .hp-bdg.hp-bdg--remises{
    height:32px !important;
    padding:0 14px !important;
    border-radius:5px 5px 5px 0 !important;
    background:#d75f3b !important;
    color:#fff !important;
    font-size:13px !important;
    font-weight:800 !important;
    line-height:32px !important;
    letter-spacing:0 !important;
    white-space:nowrap !important;
  }

  body #main .hp-sec--best .hp-bdg--solar{
    left:18px !important;
    bottom:18px !important;
    height:28px !important;
    padding:0 15px !important;
    border-radius:999px !important;
    font-size:12px !important;
    font-weight:800 !important;
    line-height:28px !important;
  }

  body #main .hp-sec--best .hp-pc-fav{
    right:18px !important;
    bottom:18px !important;
    width:38px !important;
    height:38px !important;
    border-radius:50% !important;
  }

  body #main .hp-sec--best .hp-pc-body{
    display:grid !important;
    grid-template-rows:30px 42px 44px 22px 24px !important;
    gap:8px !important;
    height:252px !important;
    min-height:252px !important;
    max-height:252px !important;
    padding:20px 18px 18px !important;
    overflow:hidden !important;
  }

  body #main .hp-sec--best .hp-pc-pvc,
  body #main .hp-sec--best .hp-pc-price,
  body #main .hp-sec--best .hp-pc-name,
  body #main .hp-sec--best .hp-pc-rate,
  body #main .hp-sec--best .hp-pc-stock{
    margin:0 !important;
    overflow:hidden !important;
  }

  body #main .hp-sec--best .hp-pc-name{
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    height:44px !important;
    min-height:44px !important;
    max-height:44px !important;
    font-size:16px !important;
    font-weight:800 !important;
    line-height:22px !important;
    color:#17211b !important;
  }
}

/* 112-6 移动端首页热卖：横滑，不把卡片压成细条。 */
@media (max-width:999px){
  body #main .hp-sec--best .hp-track{
    display:flex !important;
    flex-wrap:nowrap !important;
    gap:16px !important;
    overflow-x:auto !important;
    overflow-y:visible !important;
    padding:22px 24px 14px !important;
    scroll-snap-type:x mandatory !important;
  }

  body #main .hp-sec--best .hp-track > .hp-pcard,
  body #main .hp-sec--best .hp-track > article.hp-pcard,
  body #main .hp-sec--best .hp-track > .hp-pcard:nth-child(n+5){
    display:block !important;
    flex:0 0 282px !important;
    width:282px !important;
    min-width:282px !important;
    max-width:282px !important;
    height:492px !important;
    min-height:492px !important;
    max-height:492px !important;
    overflow:visible !important;
    scroll-snap-align:start !important;
  }

  body #main .hp-sec--best .hp-track > .hp-pcard > a{
    display:grid !important;
    grid-template-rows:262px 228px !important;
    height:492px !important;
    overflow:visible !important;
  }

  body #main .hp-sec--best .hp-pc-media{
    height:262px !important;
    min-height:262px !important;
    max-height:262px !important;
  }
}

/* 112-7 Footer：绿色背景不改，但所有文字、链接、图标统一白色系。 */
.v15-trust-strip,
.v15-trust-strip *,
.v15-trust-strip [style],
.shopify-section-group-footer-group,
.shopify-section-group-footer-group *,
.shopify-section-group-footer-group [style],
.shopify-section--footer,
.shopify-section--footer *,
.shopify-section--footer [style],
footer.footer,
footer.footer *,
footer.footer [style]{
  color:rgba(255,255,255,.86) !important;
}

.v15-trust-strip h1,
.v15-trust-strip h2,
.v15-trust-strip h3,
.v15-trust-strip h4,
.v15-trust-strip strong,
.v15-trust-strip b,
.v15-trust-strip .heading,
.v15-trust-strip .v15-trust-rating-score,
.v15-trust-strip .v15-trust-rating-score *,
.shopify-section-group-footer-group h1,
.shopify-section-group-footer-group h2,
.shopify-section-group-footer-group h3,
.shopify-section-group-footer-group h4,
.shopify-section-group-footer-group strong,
.shopify-section-group-footer-group b,
.shopify-section-group-footer-group .heading,
.shopify-section-group-footer-group .footer__item-title,
.shopify-section--footer h1,
.shopify-section--footer h2,
.shopify-section--footer h3,
.shopify-section--footer h4,
.shopify-section--footer strong,
.shopify-section--footer b,
.shopify-section--footer .heading,
.shopify-section--footer .footer__item-title,
footer.footer h1,
footer.footer h2,
footer.footer h3,
footer.footer h4,
footer.footer strong,
footer.footer b,
footer.footer .heading,
footer.footer .footer__item-title{
  color:#fff !important;
}

.v15-trust-strip a,
.v15-trust-strip a *,
.shopify-section-group-footer-group a,
.shopify-section-group-footer-group a *,
.shopify-section--footer a,
.shopify-section--footer a *,
footer.footer a,
footer.footer a *{
  color:#fff !important;
}

/* ==========================================================================
   119. 2026-06-23 真正 EOF 最终覆盖层
   说明：本段放在文件真实末尾，专门修复最新截图暴露的问题。
   覆盖范围：头部配送条、桌面 mega menu、PROMOS 百分号、移动端头部图标、
   首页热卖四卡、首页中段图片、footer 白字。
   ========================================================================== */

/* 119-1 顶部配送条：强制一行居中，不换行、不被左侧截掉。 */
.shopify-section--announcement-bar,
.shopify-section--announcement-bar .announcement-bar,
#shopify-section-sections--25458834178427__announcement-bar,
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
  height:42px !important;
  min-height:42px !important;
  max-height:42px !important;
  overflow:hidden !important;
}
.shopify-section--announcement-bar .announcement-bar,
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
  display:grid !important;
  grid-template-columns:52px minmax(0,1fr) 52px !important;
  align-items:center !important;
  padding:0 28px !important;
  background:#242424 !important;
}
.shopify-section--announcement-bar .announcement-bar__list,
.shopify-section--announcement-bar .announcement-bar__item,
.shopify-section--announcement-bar .announcement-bar__message,
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__list,
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__item,
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message{
  width:100% !important;
  min-width:0 !important;
  height:42px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  overflow:hidden !important;
}
.shopify-section--announcement-bar .announcement-bar__message p,
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message p{
  display:block !important;
  width:100% !important;
  max-width:1120px !important;
  margin:0 auto !important;
  color:#fff !important;
  font-size:13px !important;
  font-weight:800 !important;
  line-height:42px !important;
  letter-spacing:.02em !important;
  text-align:center !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
.shopify-section--announcement-bar .announcement-bar > button,
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar > button{
  width:42px !important;
  height:42px !important;
  color:#fff !important;
}
@media (max-width:760px){
  .shopify-section--announcement-bar .announcement-bar,
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
    grid-template-columns:34px minmax(0,1fr) 34px !important;
    padding:0 8px !important;
  }
  .shopify-section--announcement-bar .announcement-bar__message p,
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message p{
    max-width:calc(100vw - 92px) !important;
    font-size:11px !important;
    letter-spacing:.01em !important;
  }
}

/* 119-2 桌面一级导航：hover / focus 时二级菜单必须出现。 */
@media (min-width:1000px){
  .header__linklist{
    display:flex !important;
    align-items:center !important;
    gap:28px !important;
    flex-wrap:nowrap !important;
  }
  .header__linklist-item{
    position:relative !important;
    flex:0 0 auto !important;
  }
  .header__linklist-link{
    display:inline-flex !important;
    align-items:center !important;
    gap:8px !important;
    white-space:nowrap !important;
    color:#171717 !important;
    font-weight:700 !important;
  }
  .header__linklist-item.has-dropdown > .mega-menu,
  .header__linklist-item.has-dropdown > .mega-menu[hidden]{
    display:block !important;
    position:absolute !important;
    left:50% !important;
    top:calc(100% + 24px) !important;
    z-index:80 !important;
    width:min(1180px,calc(100vw - 96px)) !important;
    transform:translateX(-50%) translateY(10px) !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
  }
  .header__linklist-item.has-dropdown:hover > .mega-menu,
  .header__linklist-item.has-dropdown:focus-within > .mega-menu,
  .header__linklist-item.has-dropdown:hover > .mega-menu[hidden],
  .header__linklist-item.has-dropdown:focus-within > .mega-menu[hidden]{
    transform:translateX(-50%) translateY(0) !important;
    visibility:visible !important;
    opacity:1 !important;
    pointer-events:auto !important;
  }
  .header__linklist-item.has-dropdown > .nav-dropdown,
  .header__linklist-item.has-dropdown > .nav-dropdown[hidden]{
    display:block !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
  }
  .header__linklist-item.has-dropdown:hover > .nav-dropdown,
  .header__linklist-item.has-dropdown:focus-within > .nav-dropdown,
  .header__linklist-item.has-dropdown:hover > .nav-dropdown[hidden],
  .header__linklist-item.has-dropdown:focus-within > .nav-dropdown[hidden]{
    visibility:visible !important;
    opacity:1 !important;
    pointer-events:auto !important;
  }
  .mega-menu.mm-uniform{
    background:#fff !important;
    border:1px solid rgba(0,0,0,.08) !important;
    box-shadow:0 22px 54px rgba(0,0,0,.14) !important;
  }
}

/* 119-3 PROMOS 百分号：红底白字。 */
.promos-pct-dot,
.promos-pct-dot *,
.header__linklist-link .promos-pct-dot,
.header__linklist-link .promos-pct-dot *{
  color:#fff !important;
  fill:#fff !important;
}
.promos-pct-dot,
.header__linklist-link .promos-pct-dot{
  display:inline-grid !important;
  place-items:center !important;
  width:24px !important;
  height:24px !important;
  min-width:24px !important;
  border-radius:999px !important;
  background:#e00023 !important;
  font-size:12px !important;
  font-weight:900 !important;
  line-height:1 !important;
  vertical-align:middle !important;
}

/* 119-4 移动端头部：隐藏邮件图标和桌面搜索，只保留一个搜索入口。 */
@media (max-width:999px){
  .header__secondary-links .header__icon-wrapper[aria-controls="newsletter-popup"],
  .header__secondary-links .header__icon-wrapper.hidden-pocket.hidden-lap[aria-label="Recherche"]{
    display:none !important;
  }
  .header__secondary-links .header__icon-wrapper.hidden-desk[aria-label="Recherche"]{
    display:inline-grid !important;
  }
  .header__secondary-links .header__icon-list{
    display:flex !important;
    align-items:center !important;
    gap:16px !important;
  }
}
@media (min-width:1000px){
  .header__secondary-links .header__icon-wrapper.hidden-desk[aria-label="Recherche"]{
    display:none !important;
  }
}

/* 119-5 首页热卖：桌面端 4 卡严格等宽等高，图片、正文、角标全部对齐。 */
@media (min-width:1000px){
  #main .hp-sec--best{
    overflow:hidden !important;
  }
  #main .hp-sec--best .hp-wrap,
  #main .hp-sec--best .hp-bv-wrap{
    width:min(1220px,calc(100% - 96px)) !important;
    max-width:1220px !important;
    margin-inline:auto !important;
    overflow:visible !important;
  }
  #main .hp-sec--best [data-scroller]{
    overflow:visible !important;
  }
  #main .hp-sec--best .hp-track{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:32px !important;
    align-items:stretch !important;
    width:100% !important;
    margin:0 auto !important;
    padding:32px 0 10px !important;
    overflow:visible !important;
  }
  #main .hp-sec--best .hp-track > .hp-pcard{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    height:548px !important;
    min-height:548px !important;
    max-height:548px !important;
    overflow:visible !important;
  }
  #main .hp-sec--best .hp-track > .hp-pcard:nth-child(n+5){
    display:none !important;
  }
  #main .hp-sec--best .hp-pcard > a{
    display:grid !important;
    grid-template-rows:294px 254px !important;
    height:548px !important;
    min-height:548px !important;
    max-height:548px !important;
    overflow:visible !important;
    border-radius:8px !important;
    border:1px solid #e6ebe7 !important;
    background:#fff !important;
    box-shadow:0 14px 30px rgba(23,34,27,.04) !important;
  }
  #main .hp-sec--best .hp-pc-media{
    position:relative !important;
    height:294px !important;
    min-height:294px !important;
    max-height:294px !important;
    border-radius:8px 8px 0 0 !important;
    overflow:hidden !important;
    background:#f5f7f4 !important;
  }
  #main .hp-sec--best .hp-pc-media img,
  #main .hp-sec--best .hp-pc-media .day{
    position:absolute !important;
    inset:0 !important;
    z-index:1 !important;
    display:block !important;
    width:100% !important;
    height:100% !important;
    max-width:none !important;
    max-height:none !important;
    object-fit:cover !important;
    object-position:center center !important;
    border-radius:8px 8px 0 0 !important;
    opacity:1 !important;
    visibility:visible !important;
    transform:none !important;
    filter:none !important;
  }
  #main .hp-sec--best .hp-pc-media .night{
    display:none !important;
  }
  #main .hp-sec--best .hp-pcard:hover .hp-pc-media img,
  #main .hp-sec--best .hp-pcard:hover .hp-pc-media .day{
    transform:none !important;
    filter:brightness(.88) !important;
  }
  #main .hp-sec--best .hp-bdgs{
    position:absolute !important;
    left:0 !important;
    top:-17px !important;
    z-index:6 !important;
    display:flex !important;
    align-items:flex-start !important;
    pointer-events:none !important;
  }
  #main .hp-sec--best .hp-bdg--remises{
    height:34px !important;
    padding:0 15px !important;
    border-radius:5px 5px 5px 0 !important;
    background:#d55e38 !important;
    color:#fff !important;
    font-size:14px !important;
    font-weight:800 !important;
    line-height:34px !important;
    white-space:nowrap !important;
    box-shadow:none !important;
  }
  #main .hp-sec--best .hp-bdg--solar{
    position:absolute !important;
    left:16px !important;
    bottom:18px !important;
    z-index:5 !important;
    height:28px !important;
    min-width:88px !important;
    padding:0 14px !important;
    border-radius:999px !important;
    background:#f4ad3d !important;
    color:#fff !important;
    font-size:12px !important;
    font-weight:800 !important;
    line-height:28px !important;
    letter-spacing:.04em !important;
  }
  #main .hp-sec--best .hp-bdg--solar::before{
    content:"" !important;
    display:inline-block !important;
    width:8px !important;
    height:8px !important;
    margin-right:7px !important;
    border:2px solid #fff !important;
    border-radius:50% !important;
    vertical-align:middle !important;
  }
  #main .hp-sec--best .hp-pc-fav{
    position:absolute !important;
    right:16px !important;
    bottom:16px !important;
    z-index:7 !important;
    width:42px !important;
    height:42px !important;
    border-radius:50% !important;
    background:#fff !important;
    box-shadow:0 5px 14px rgba(0,0,0,.14) !important;
  }
  #main .hp-sec--best .hp-pc-body{
    display:grid !important;
    grid-template-rows:34px 50px 26px 48px 28px !important;
    gap:6px !important;
    height:254px !important;
    min-height:254px !important;
    max-height:254px !important;
    padding:18px 18px 16px !important;
    overflow:hidden !important;
  }
  #main .hp-sec--best .hp-pc-pvc{
    align-self:start !important;
    width:max-content !important;
    max-width:100% !important;
    height:30px !important;
    padding:0 16px !important;
    border-radius:999px !important;
    background:#d85f39 !important;
    color:#fff !important;
    font-size:14px !important;
    font-weight:800 !important;
    line-height:30px !important;
  }
  #main .hp-sec--best .hp-pc-name{
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    height:48px !important;
    max-height:48px !important;
    overflow:hidden !important;
    color:#18201b !important;
    font-size:17px !important;
    font-weight:800 !important;
    line-height:24px !important;
  }
  #main .hp-sec--best .hp-pc-rate{
    display:flex !important;
    align-items:center !important;
    gap:8px !important;
    height:24px !important;
    margin:0 !important;
    color:#89908a !important;
    font-size:14px !important;
    line-height:24px !important;
  }
  #main .hp-sec--best .hp-stars{
    color:#f5a623 !important;
    font-size:16px !important;
    line-height:1 !important;
    letter-spacing:1px !important;
  }
  #main .hp-sec--best .hp-pc-price{
    display:block !important;
    height:46px !important;
    color:#18201b !important;
    line-height:1.18 !important;
  }
  #main .hp-sec--best .hp-pc-price b{
    display:block !important;
    color:#101814 !important;
    font-size:24px !important;
    font-weight:900 !important;
    line-height:28px !important;
  }
  #main .hp-sec--best .hp-pc-oldprice{
    display:block !important;
    margin-top:2px !important;
    color:#a3a7a3 !important;
    font-size:14px !important;
    line-height:16px !important;
  }
  #main .hp-sec--best .hp-pc-stock{
    display:flex !important;
    align-items:center !important;
    gap:8px !important;
    height:26px !important;
    color:#2f7445 !important;
    font-size:14px !important;
    font-weight:800 !important;
  }
  #main .hp-sec--best .hp-pc-stock::before{
    content:"✓" !important;
    display:grid !important;
    place-items:center !important;
    width:19px !important;
    height:19px !important;
    border-radius:50% !important;
    background:#5aac5c !important;
    color:#fff !important;
    font-size:13px !important;
    font-weight:900 !important;
    line-height:1 !important;
  }
}

/* 119-6 首页中段图片：应用场景、能量、媒体、文章卡不允许灰块、错位或文字压图。 */
#main .hp-space-mosaic{
  align-items:start !important;
  margin-bottom:44px !important;
}
#main .hp-space-tile{
  display:grid !important;
  grid-template-rows:auto 24px !important;
  gap:10px !important;
  text-decoration:none !important;
}
#main .hp-space-tile img,
#main .hp-space-tile--large img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  border-radius:8px !important;
  opacity:1 !important;
  visibility:visible !important;
  filter:none !important;
  transform:none !important;
}
#main .hp-space-tile b{
  display:block !important;
  height:24px !important;
  margin:0 !important;
  color:#1d251f !important;
  font-size:13px !important;
  font-weight:700 !important;
  line-height:24px !important;
  text-align:center !important;
}
#main .hp-room-title{
  margin:30px 0 28px !important;
  text-align:center !important;
}
#main .hp-en-media,
#main .hp-md-media,
#main .hp-post-media{
  position:relative !important;
  overflow:hidden !important;
  background:#eef2ef !important;
}
#main .hp-en-media::before,
#main .hp-en-media::after,
#main .hp-md-media::before,
#main .hp-md-media::after,
#main .hp-post-media::before,
#main .hp-post-media::after{
  display:none !important;
  content:none !important;
}
#main .hp-en-media img,
#main .hp-md-media img,
#main .hp-post-media img{
  position:absolute !important;
  inset:0 !important;
  z-index:1 !important;
  display:block !important;
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  max-height:none !important;
  object-fit:cover !important;
  object-position:center center !important;
  opacity:1 !important;
  visibility:visible !important;
  filter:none !important;
  transform:none !important;
  mix-blend-mode:normal !important;
}
#main .hp-md-tag,
#main .hp-md-play{
  z-index:2 !important;
}
@media (min-width:1000px){
  #main .hp-space-mosaic{
    grid-template-columns:2fr 1fr 1fr !important;
    grid-auto-rows:184px !important;
    gap:14px !important;
  }
  #main .hp-space-tile--large{
    grid-row:span 2 !important;
  }
}
@media (max-width:760px){
  #main .hp-space-mosaic{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:18px !important;
  }
  #main .hp-space-tile,
  #main .hp-space-tile--large{
    grid-column:auto !important;
    grid-row:auto !important;
  }
  #main .hp-space-tile img,
  #main .hp-space-tile--large img{
    height:auto !important;
    aspect-ratio:1.28 / 1 !important;
  }
  #main .hp-room-title{
    margin:28px 0 20px !important;
    font-size:34px !important;
    line-height:1.08 !important;
  }
}

/* 119-7 Footer：绿底保持原色，但 footer 与上方信任条文字全部转白色系。 */
.v15-trust-strip,
.v15-trust-strip *,
.v15-trust-strip [style],
.shopify-section-group-footer-group,
.shopify-section-group-footer-group *,
.shopify-section-group-footer-group [style],
.shopify-section--footer,
.shopify-section--footer *,
.shopify-section--footer [style],
footer,
footer *,
footer [style]{
  color:rgba(255,255,255,.84) !important;
}
.v15-trust-strip h1,
.v15-trust-strip h2,
.v15-trust-strip h3,
.v15-trust-strip h4,
.v15-trust-strip strong,
.v15-trust-strip b,
.v15-trust-strip .heading,
.shopify-section-group-footer-group h1,
.shopify-section-group-footer-group h2,
.shopify-section-group-footer-group h3,
.shopify-section-group-footer-group h4,
.shopify-section-group-footer-group strong,
.shopify-section-group-footer-group b,
.shopify-section-group-footer-group .heading,
.shopify-section-group-footer-group .footer__item-title,
.shopify-section--footer h1,
.shopify-section--footer h2,
.shopify-section--footer h3,
.shopify-section--footer h4,
.shopify-section--footer strong,
.shopify-section--footer b,
.shopify-section--footer .heading,
.shopify-section--footer .footer__item-title,
footer h1,
footer h2,
footer h3,
footer h4,
footer strong,
footer b,
footer .heading,
footer .footer__item-title{
  color:#fff !important;
}
.v15-trust-strip a,
.v15-trust-strip a *,
.shopify-section-group-footer-group a,
.shopify-section-group-footer-group a *,
.shopify-section--footer a,
.shopify-section--footer a *,
footer a,
footer a *{
  color:#fff !important;
}

/* ==========================================================================
   129. 0623 全站最终锁定层
   说明：
   1. 这一段放在文件最后，用来压住前面历史版本遗留的 0528/0529/0603/0604 覆盖规则。
   2. 不改 HTML 结构，只锁定客户反复指出的公共问题：公告栏、导航 hover、PROMOS 圆点、
      首页热卖卡片、图片 hover、footer 白字、移动端头部。
   3. 所有页面继续只引用这一个统一 CSS 文件，避免多 CSS 文件互相覆盖。
   ========================================================================== */

:root{
  /* 老官网主内容区接近 1520px；首页中段、热卖、应用场景统一用这个宽度。 */
  --lh-final-content:1520px;
  --lh-final-green:#276b42;
  --lh-final-footer:#286f43;
  --lh-final-text:#18221b;
  --lh-final-muted:#8a928b;
  --lh-final-orange:#d85f39;
  --lh-final-yellow:#f4ad3d;
}

/* 公告栏：PC 一行居中，不换行；移动端允许两行但不截字。 */
body .announcement-bar,
body .announcement-bar--multiple,
body #shopify-section-sections--25458834178427__announcement-bar,
body #shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
  background:#262626 !important;
  color:#fff !important;
  height:42px !important;
  min-height:42px !important;
  overflow:hidden !important;
}
body .announcement-bar__list,
body .announcement-bar__item:not([hidden]),
body announcement-bar-item.announcement-bar__item:not([hidden]),
body .announcement-bar__message,
body .announcement-bar__message p{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  max-width:none !important;
  min-width:0 !important;
  height:42px !important;
  margin:0 !important;
  padding:0 !important;
  color:#fff !important;
  font-size:14px !important;
  font-weight:800 !important;
  line-height:42px !important;
  text-align:center !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:clip !important;
}
body .announcement-bar__list{
  padding:0 72px !important;
}
body .announcement-bar .tap-area{
  top:0 !important;
  height:42px !important;
}

/* 头部导航：一级菜单不换行；hover/focus 必须弹出二级菜单。 */
@media (min-width:1000px){
  body .header,
  body .header__wrapper{
    overflow:visible !important;
  }
  body .header__inline-navigation,
  body .header__linklist{
    display:flex !important;
    align-items:center !important;
    flex-wrap:nowrap !important;
    white-space:nowrap !important;
    min-width:0 !important;
  }
  body .header__linklist-link{
    display:inline-flex !important;
    align-items:center !important;
    gap:8px !important;
    white-space:nowrap !important;
    color:#1b1d1c !important;
    font-weight:700 !important;
    line-height:1 !important;
  }
  body .header__linklist-item.has-dropdown > .mega-menu,
  body .header__linklist-item.mm-plus > .nav-dropdown,
  body .header__linklist-item.has-dropdown > .mega-menu[hidden]{
    display:block !important;
    position:fixed !important;
    top:124px !important;
    left:50% !important;
    right:auto !important;
    width:min(1180px, calc(100vw - 80px)) !important;
    max-width:calc(100vw - 80px) !important;
    min-width:0 !important;
    padding-left:40px !important;
    padding-right:40px !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
    transform:translateX(-50%) translateY(8px) !important;
    z-index:120 !important;
    overflow:visible !important;
    box-sizing:border-box !important;
  }
  body .header__linklist-item.has-dropdown:hover > .mega-menu,
  body .header__linklist-item.has-dropdown:focus-within > .mega-menu,
  body .header__linklist-item.mm-plus:hover > .nav-dropdown,
  body .header__linklist-item.mm-plus:focus-within > .nav-dropdown,
  body .header__linklist-item.has-dropdown:hover > .mega-menu[hidden],
  body .header__linklist-item.has-dropdown:focus-within > .mega-menu[hidden]{
    display:block !important;
    visibility:visible !important;
    opacity:1 !important;
    pointer-events:auto !important;
    transform:translateX(-50%) translateY(0) !important;
  }
}

/* PROMOS 百分号：红底白字，禁止继承黑色。 */
body .promos-pct-dot,
body .promos-pct-dot *,
body .header__linklist-link .promos-pct-dot,
body .header__linklist-link .promos-pct-dot *{
  color:#fff !important;
}
body .promos-pct-dot,
body .header__linklist-link .promos-pct-dot{
  display:inline-grid !important;
  place-items:center !important;
  width:24px !important;
  height:24px !important;
  min-width:24px !important;
  border-radius:999px !important;
  background:#df2638 !important;
  font-size:13px !important;
  font-weight:900 !important;
  line-height:1 !important;
  text-align:center !important;
  vertical-align:middle !important;
}

/* 移动端头部：隐藏邮件图标和重复的桌面搜索，只保留一个搜索图标。 */
@media (max-width:999px){
  body .announcement-bar,
  body .announcement-bar--multiple,
  body #shopify-section-sections--25458834178427__announcement-bar,
  body #shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
    height:54px !important;
    min-height:54px !important;
  }
  body .announcement-bar__list,
  body .announcement-bar__item:not([hidden]),
  body announcement-bar-item.announcement-bar__item:not([hidden]),
  body .announcement-bar__message,
  body .announcement-bar__message p{
    height:54px !important;
    min-height:54px !important;
    font-size:10px !important;
    line-height:14px !important;
    white-space:normal !important;
    overflow:visible !important;
  }
  body .announcement-bar__list{
    padding:0 34px !important;
  }
  body .announcement-bar .tap-area{
    width:34px !important;
    height:54px !important;
  }
  body .announcement-bar .tap-area[data-action="prev"]{ left:4px !important; }
  body .announcement-bar .tap-area[data-action="next"]{ right:4px !important; }
  body .header__icon-list [aria-controls="newsletter-popup"],
  body .header__icon-list a[aria-label="Newsletter"],
  body .header__icon-list a[aria-label="Recherche"].hidden-pocket,
  body .header__icon-list a[aria-label="Recherche"].hidden-lap,
  body .header__icon-list a[aria-label="Recherche"].hidden-pocket.hidden-lap{
    display:none !important;
  }
  body .header__icon-list a[aria-label="Recherche"].hidden-desk{
    display:inline-grid !important;
  }
}

/* 首页分类：容器跟下面热卖一致，圆圈紧凑但不挤压。 */
@media (min-width:1000px){
  body #main .lh-circats,
  body #main .lh-circats__wrap,
  body #main .lh-circats__viewport{
    width:min(var(--lh-final-content), calc(100% - 120px)) !important;
    max-width:var(--lh-final-content) !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
  body #main .lh-circats__track{
    display:flex !important;
    align-items:flex-start !important;
    justify-content:center !important;
    gap:34px !important;
  }
  body #main .lh-circats__item{
    flex:0 0 142px !important;
    width:142px !important;
  }
  body #main .lh-circats__circle{
    width:138px !important;
    height:138px !important;
  }
}

/* 首页热卖：桌面端固定 4 个卡片，卡片、图片、文字区完全等宽等高。 */
@media (min-width:1000px){
  body #main .hp-sec--best{
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-wrap,
  body #main .hp-sec--best .hp-bv-wrap{
    width:min(var(--lh-final-content), calc(100% - 120px)) !important;
    max-width:var(--lh-final-content) !important;
    margin-left:auto !important;
    margin-right:auto !important;
    padding-left:0 !important;
    padding-right:0 !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best [data-scroller]{
    width:100% !important;
    overflow:visible !important;
    padding-top:28px !important;
  }
  body #main .hp-sec--best .hp-track{
    display:grid !important;
    grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
    gap:34px !important;
    align-items:stretch !important;
    width:100% !important;
    max-width:100% !important;
    margin:0 auto !important;
    padding:0 !important;
    overflow:visible !important;
    scroll-snap-type:none !important;
  }
  body #main .hp-sec--best .hp-track > .hp-pcard{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    height:584px !important;
    min-height:584px !important;
    max-height:584px !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-track > .hp-pcard:nth-child(n+5){
    display:none !important;
  }
  body #main .hp-sec--best .hp-pcard > a{
    display:grid !important;
    grid-template-rows:330px 254px !important;
    width:100% !important;
    height:584px !important;
    min-height:584px !important;
    max-height:584px !important;
    overflow:visible !important;
    border:1px solid #e6ebe7 !important;
    border-radius:10px !important;
    background:#fff !important;
    box-shadow:0 14px 30px rgba(23,34,27,.045) !important;
  }
  body #main .hp-sec--best .hp-pc-media{
    position:relative !important;
    width:100% !important;
    height:330px !important;
    min-height:330px !important;
    max-height:330px !important;
    overflow:visible !important;
    border-radius:10px 10px 0 0 !important;
    background:#f5f7f4 !important;
  }
  body #main .hp-sec--best .hp-pc-media img,
  body #main .hp-sec--best .hp-pc-media .day,
  body #main .hp-sec--best .hp-pc-media .night{
    position:absolute !important;
    inset:0 !important;
    display:block !important;
    width:100% !important;
    height:330px !important;
    min-width:100% !important;
    min-height:330px !important;
    max-width:none !important;
    max-height:330px !important;
    border-radius:10px 10px 0 0 !important;
    object-fit:cover !important;
    object-position:center center !important;
    opacity:1 !important;
    filter:none !important;
    transform:none !important;
    transition:visibility .18s ease, opacity .18s ease !important;
  }
  body #main .hp-sec--best .hp-pc-media .day{
    visibility:visible !important;
  }
  body #main .hp-sec--best .hp-pc-media .night{
    visibility:hidden !important;
  }
  body #main .hp-sec--best .hp-pcard:hover .hp-pc-media .day{
    visibility:hidden !important;
    opacity:0 !important;
    filter:none !important;
    transform:none !important;
  }
  body #main .hp-sec--best .hp-pcard:hover .hp-pc-media .night{
    visibility:visible !important;
    opacity:1 !important;
    filter:none !important;
    transform:none !important;
  }
  body #main .hp-sec--best .hp-pcard:hover,
  body #main .hp-sec--best .hp-pcard:hover img{
    transform:none !important;
    filter:none !important;
  }
  body #main .hp-sec--best .hp-bdgs{
    position:absolute !important;
    left:0 !important;
    top:-16px !important;
    z-index:8 !important;
    pointer-events:none !important;
  }
  body #main .hp-sec--best .hp-bdg--remises{
    position:static !important;
    height:32px !important;
    padding:0 14px !important;
    border-radius:5px 5px 5px 0 !important;
    background:var(--lh-final-orange) !important;
    color:#fff !important;
    font-size:13px !important;
    font-weight:800 !important;
    line-height:32px !important;
    white-space:nowrap !important;
  }
  body #main .hp-sec--best .hp-bdg--solar{
    position:absolute !important;
    left:16px !important;
    bottom:18px !important;
    z-index:6 !important;
    height:26px !important;
    padding:0 13px !important;
    border-radius:999px !important;
    background:var(--lh-final-yellow) !important;
    color:#fff !important;
    font-size:11px !important;
    font-weight:800 !important;
    line-height:26px !important;
    letter-spacing:.02em !important;
    text-transform:uppercase !important;
  }
  body #main .hp-sec--best .hp-bdg--solar::before{
    content:"" !important;
    display:inline-block !important;
    width:8px !important;
    height:8px !important;
    margin-right:7px !important;
    border:2px solid #fff !important;
    border-radius:50% !important;
    vertical-align:middle !important;
  }
  body #main .hp-sec--best .hp-pc-fav{
    position:absolute !important;
    right:14px !important;
    bottom:14px !important;
    z-index:7 !important;
    width:38px !important;
    height:38px !important;
    border-radius:50% !important;
    background:#fff !important;
    box-shadow:0 5px 14px rgba(0,0,0,.13) !important;
  }
  body #main .hp-sec--best .hp-pc-body{
    display:grid !important;
    grid-template-rows:30px 44px 24px 46px 26px !important;
    gap:7px !important;
    height:254px !important;
    min-height:254px !important;
    max-height:254px !important;
    padding:18px 18px 16px !important;
    overflow:hidden !important;
  }
  body #main .hp-sec--best .hp-pc-pvc{
    align-self:start !important;
    justify-self:start !important;
    height:30px !important;
    padding:0 16px !important;
    border-radius:999px !important;
    background:var(--lh-final-orange) !important;
    color:#fff !important;
    font-size:14px !important;
    font-weight:800 !important;
    line-height:30px !important;
    white-space:nowrap !important;
  }
  body #main .hp-sec--best .hp-pc-name{
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    height:44px !important;
    min-height:44px !important;
    max-height:44px !important;
    margin:0 !important;
    overflow:hidden !important;
    color:var(--lh-final-text) !important;
    font-size:16px !important;
    font-weight:800 !important;
    line-height:22px !important;
  }
  body #main .hp-sec--best .hp-pc-rate{
    display:flex !important;
    align-items:center !important;
    gap:8px !important;
    height:24px !important;
    color:#909790 !important;
    font-size:13px !important;
    line-height:24px !important;
    overflow:hidden !important;
  }
  body #main .hp-sec--best .hp-stars{
    color:#f5a623 !important;
    font-size:15px !important;
    letter-spacing:1px !important;
    white-space:nowrap !important;
  }
  body #main .hp-sec--best .hp-pc-price{
    display:flex !important;
    flex-direction:column !important;
    justify-content:center !important;
    height:46px !important;
    margin:0 !important;
    overflow:hidden !important;
  }
  body #main .hp-sec--best .hp-pc-price b{
    color:#111 !important;
    font-size:21px !important;
    font-weight:900 !important;
    line-height:24px !important;
  }
  body #main .hp-sec--best .hp-pc-oldprice{
    color:#a8ada8 !important;
    font-size:14px !important;
    line-height:18px !important;
  }
  body #main .hp-sec--best .hp-pc-stock{
    display:flex !important;
    align-items:center !important;
    gap:8px !important;
    height:26px !important;
    margin:0 !important;
    color:#397c46 !important;
    font-size:14px !important;
    font-weight:800 !important;
    line-height:26px !important;
  }
  body #main .hp-sec--best .hp-pc-stock::before{
    content:"✓" !important;
    display:inline-grid !important;
    place-items:center !important;
    width:18px !important;
    height:18px !important;
    border-radius:50% !important;
    background:#61af5d !important;
    color:#fff !important;
    font-size:12px !important;
    font-weight:900 !important;
    line-height:1 !important;
  }
}

/* 手机热卖：横向滑动，不把卡片挤成细条；图片和文字仍保持固定比例。 */
@media (max-width:999px){
  body #main .hp-sec--best .hp-wrap,
  body #main .hp-sec--best .hp-bv-wrap{
    width:100% !important;
    max-width:100% !important;
    padding-left:0 !important;
    padding-right:0 !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best [data-scroller]{
    overflow-x:auto !important;
    overflow-y:visible !important;
    padding:24px 18px 8px !important;
    scroll-snap-type:x mandatory !important;
    scrollbar-width:none !important;
  }
  body #main .hp-sec--best [data-scroller]::-webkit-scrollbar{ display:none !important; }
  body #main .hp-sec--best .hp-track{
    display:flex !important;
    flex-wrap:nowrap !important;
    gap:16px !important;
    width:max-content !important;
    max-width:none !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-track > .hp-pcard,
  body #main .hp-sec--best .hp-track > .hp-pcard:nth-child(n+5){
    display:block !important;
    flex:0 0 min(78vw, 318px) !important;
    width:min(78vw, 318px) !important;
    height:500px !important;
    min-height:500px !important;
    max-height:500px !important;
    scroll-snap-align:start !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-pcard > a{
    display:grid !important;
    grid-template-rows:255px 245px !important;
    height:500px !important;
    border:1px solid #e6ebe7 !important;
    border-radius:10px !important;
    background:#fff !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-pc-media{
    position:relative !important;
    height:255px !important;
    overflow:visible !important;
    border-radius:10px 10px 0 0 !important;
  }
  body #main .hp-sec--best .hp-pc-media img,
  body #main .hp-sec--best .hp-pc-media .day{
    position:absolute !important;
    inset:0 !important;
    width:100% !important;
    height:255px !important;
    object-fit:cover !important;
    object-position:center center !important;
    border-radius:10px 10px 0 0 !important;
    transform:none !important;
    filter:none !important;
  }
  body #main .hp-sec--best .hp-pc-media .night{
    visibility:hidden !important;
    opacity:1 !important;
  }
  body #main .hp-sec--best .hp-pc-body{
    display:grid !important;
    grid-template-rows:28px 42px 22px 44px 24px !important;
    gap:7px !important;
    height:245px !important;
    padding:16px 16px 14px !important;
    overflow:hidden !important;
  }
  body #main .hp-sec--best .hp-pc-name{
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    height:42px !important;
    overflow:hidden !important;
    line-height:21px !important;
  }
}

/* 应用场景：图片和文字分开排版，避免标题压到图片上。 */
body #main .hp-space-mosaic{
  width:min(var(--lh-final-content), calc(100% - 120px)) !important;
  max-width:var(--lh-final-content) !important;
  margin:0 auto 56px !important;
  align-items:start !important;
}
body #main .hp-space-tile{
  display:grid !important;
  grid-template-rows:minmax(0,1fr) 24px !important;
  gap:10px !important;
  overflow:visible !important;
}
body #main .hp-space-tile img,
body #main .hp-space-tile--large img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  border-radius:8px !important;
  object-fit:cover !important;
  object-position:center center !important;
  opacity:1 !important;
  visibility:visible !important;
  filter:none !important;
  transform:none !important;
}
body #main .hp-space-tile b{
  display:block !important;
  height:24px !important;
  margin:0 !important;
  color:#1d251f !important;
  font-size:13px !important;
  font-weight:700 !important;
  line-height:24px !important;
  text-align:center !important;
}

/* Footer：保留原来的绿色背景，只把所有文字、链接、标题统一成白色系。 */
body .v15-trust-strip,
body .v15-trust-strip *,
body .v15-trust-strip [style],
body .shopify-section-group-footer-group,
body .shopify-section-group-footer-group *,
body .shopify-section-group-footer-group [style],
body .shopify-section--footer,
body .shopify-section--footer *,
body .shopify-section--footer [style],
body footer,
body footer *,
body footer [style]{
  color:rgba(255,255,255,.84) !important;
}
body .v15-trust-strip h1,
body .v15-trust-strip h2,
body .v15-trust-strip h3,
body .v15-trust-strip h4,
body .v15-trust-strip h5,
body .v15-trust-strip h6,
body .v15-trust-strip strong,
body .v15-trust-strip b,
body .v15-trust-strip .heading,
body .v15-trust-strip .v15-trust-rating-score,
body .v15-trust-strip .v15-trust-rating-score strong,
body .shopify-section-group-footer-group h1,
body .shopify-section-group-footer-group h2,
body .shopify-section-group-footer-group h3,
body .shopify-section-group-footer-group h4,
body .shopify-section-group-footer-group h5,
body .shopify-section-group-footer-group h6,
body .shopify-section-group-footer-group strong,
body .shopify-section-group-footer-group b,
body .shopify-section-group-footer-group .heading,
body .shopify-section-group-footer-group .footer__item-title,
body .shopify-section--footer h1,
body .shopify-section--footer h2,
body .shopify-section--footer h3,
body .shopify-section--footer h4,
body .shopify-section--footer h5,
body .shopify-section--footer h6,
body .shopify-section--footer strong,
body .shopify-section--footer b,
body .shopify-section--footer .heading,
body .shopify-section--footer .footer__item-title,
body footer h1,
body footer h2,
body footer h3,
body footer h4,
body footer h5,
body footer h6,
body footer strong,
body footer b,
body footer .heading,
body footer .footer__item-title{
  color:#fff !important;
}
body .v15-trust-strip a,
body .v15-trust-strip a *,
body .shopify-section-group-footer-group a,
body .shopify-section-group-footer-group a *,
body .shopify-section--footer a,
body .shopify-section--footer a *,
body footer a,
body footer a *{
  color:#fff !important;
}

/* ============================================================
   2026-06-24 最终兜底：PC 端二级导航下拉片区
   ------------------------------------------------------------
   这段必须放在 CSS 文件最末尾。前面历史版本里存在多套 mega-menu
   定位规则，会把菜单压成居中的圆角大卡片，甚至让右侧图片露出白底外面。
   这里统一成原站逻辑：下拉片区全屏宽白底，内容容器居中，文字列和图片
   模块在同一网格内，Accessoires 保持五个配件图标一排。
   ============================================================ */
@media (min-width:1000px){
  html body .header__linklist-item.has-dropdown{
    position:static !important;
  }

  html body .header__linklist-item.has-dropdown:hover::before,
  html body .header__linklist-item.has-dropdown:focus-within::before,
  html body .mega-menu::before,
  html body .mega-menu::after{
    display:none !important;
    content:none !important;
  }

  html body .header__linklist-item.has-dropdown > .mega-menu,
  html body .header__linklist-item.has-dropdown > .mega-menu[hidden]{
    display:block !important;
    position:fixed !important;
    top:124px !important;
    left:0 !important;
    right:0 !important;
    width:100vw !important;
    max-width:none !important;
    min-width:0 !important;
    height:auto !important;
    min-height:0 !important;
    max-height:calc(100vh - 124px) !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:#fff !important;
    box-shadow:0 18px 34px rgba(21,31,24,.10) !important;
    clip-path:none !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
    transform:none !important;
    overflow:hidden !important;
    z-index:130 !important;
    box-sizing:border-box !important;
  }

  html body .header__linklist-item.has-dropdown:hover > .mega-menu,
  html body .header__linklist-item.has-dropdown:focus-within > .mega-menu,
  html body .header__linklist-item.has-dropdown:hover > .mega-menu[hidden],
  html body .header__linklist-item.has-dropdown:focus-within > .mega-menu[hidden]{
    visibility:visible !important;
    opacity:1 !important;
    pointer-events:auto !important;
  }

  html body .mega-menu.mm-uniform > .container{
    width:min(1180px, calc(100vw - 96px)) !important;
    max-width:1180px !important;
    margin:0 auto !important;
    padding:42px 0 44px !important;
    box-sizing:border-box !important;
  }

  html body .mm-uniform .mega-menu__inner{
    display:grid !important;
    grid-template-columns:minmax(220px,.78fr) minmax(220px,.78fr) minmax(300px,374px) !important;
    align-items:start !important;
    gap:56px !important;
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
    overflow:visible !important;
  }

  html body .mm-uniform .mega-menu__column{
    min-width:0 !important;
    margin:0 !important;
    padding:0 !important;
  }

  html body .mm-uniform .linklist{
    display:grid !important;
    gap:12px !important;
    margin:0 !important;
    padding:0 !important;
  }

  html body .mm-uniform .linklist__item{
    margin:0 !important;
    padding:0 !important;
    list-style:none !important;
  }

  html body .mm-uniform .linklist__item a{
    color:#252927 !important;
    font-size:15px !important;
    line-height:1.36 !important;
    font-weight:500 !important;
    letter-spacing:0 !important;
    text-decoration:none !important;
  }

  html body .mm-uniform .mm-col-title,
  html body .mm-uniform .mm-col-title-link{
    margin:0 0 14px !important;
    color:#276B42 !important;
    font-size:12px !important;
    line-height:1.2 !important;
    font-weight:800 !important;
    letter-spacing:.12em !important;
    text-transform:uppercase !important;
    text-decoration:none !important;
  }

  html body .mm-uniform .mega-menu__images-wrapper{
    display:grid !important;
    grid-template-columns:1fr !important;
    justify-self:end !important;
    gap:14px !important;
    width:100% !important;
    max-width:374px !important;
    margin:0 !important;
    padding:0 !important;
    overflow:visible !important;
  }

  html body .mm-uniform .mega-menu__image-push{
    display:block !important;
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
    text-decoration:none !important;
  }

  html body .mm-uniform .mega-menu__image-wrapper{
    display:block !important;
    width:100% !important;
    aspect-ratio:374 / 427 !important;
    margin:0 !important;
    border-radius:8px !important;
    overflow:hidden !important;
    background:#f6f8f6 !important;
  }

  html body .mm-uniform .mega-menu__image{
    display:block !important;
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    object-position:center center !important;
    transform:none !important;
    filter:none !important;
  }

  html body .mm-uniform .mega-menu__heading{
    display:block !important;
    margin:12px 0 0 !important;
    color:#276B42 !important;
    font-size:13px !important;
    line-height:1.2 !important;
    font-weight:800 !important;
    letter-spacing:.08em !important;
    text-align:center !important;
    text-transform:uppercase !important;
  }

  html body #desktop-menu-4.mm-uniform > .container{
    width:min(1240px, calc(100vw - 96px)) !important;
    max-width:1240px !important;
  }

  html body #desktop-menu-4.mm-uniform .mega-menu__inner{
    grid-template-columns:minmax(160px,.55fr) minmax(160px,.55fr) minmax(520px,748px) !important;
    gap:42px !important;
  }

  html body #desktop-menu-4.mm-uniform .mega-menu__images-wrapper{
    grid-template-columns:repeat(2, minmax(0,1fr)) !important;
    max-width:748px !important;
    gap:22px !important;
  }

  html body #desktop-menu-5.mm-uniform > .container{
    width:min(980px, calc(100vw - 96px)) !important;
    max-width:980px !important;
    padding:36px 0 38px !important;
  }

  html body #desktop-menu-5.mm-uniform .mega-menu__inner{
    display:block !important;
  }

  html body #desktop-menu-5 .mm-accessory-strip{
    display:grid !important;
    grid-template-columns:repeat(5, minmax(0,1fr)) !important;
    align-items:end !important;
    justify-items:center !important;
    gap:34px !important;
    width:100% !important;
    margin:0 auto !important;
    padding:0 !important;
  }

  html body #desktop-menu-5 .mm-accessory-card{
    display:grid !important;
    justify-items:center !important;
    gap:12px !important;
    min-width:0 !important;
    color:#111 !important;
    text-decoration:none !important;
  }

  html body #desktop-menu-5 .mm-accessory-img{
    display:grid !important;
    place-items:center !important;
    width:132px !important;
    height:102px !important;
  }

  html body #desktop-menu-5 .mm-accessory-img img{
    display:block !important;
    width:100% !important;
    height:100% !important;
    object-fit:contain !important;
    transform:none !important;
  }

  html body #desktop-menu-5 .mm-accessory-label{
    color:#1d251f !important;
    font-size:11px !important;
    line-height:1.2 !important;
    font-weight:800 !important;
    letter-spacing:.08em !important;
    text-align:center !important;
    text-transform:uppercase !important;
  }
}

/* ============================================================
   2026-06-24 EOF 最终覆盖：PC 二级菜单片区
   ------------------------------------------------------------
   这一段必须放在文件末尾：旧版 CSS 有多处 mega-menu 规则，前面的规则
   会把下拉做成居中大白框并让右侧图片溢出。这里强制恢复为：
   1. 外层白底全宽贴住 header；
   2. 内部内容与页面容器同宽居中；
   3. 普通菜单两列文字 + 一张图片，Par espace 两张图片，Accessoires 五个图标。
   ============================================================ */
@media (min-width:1000px){
  html body .header__linklist-item.has-dropdown{ position:static !important; }

  html body .header__linklist-item.has-dropdown:hover::before,
  html body .header__linklist-item.has-dropdown:focus-within::before,
  html body .mega-menu::after{
    display:none !important;
    content:none !important;
  }

  html body .header__linklist-item.has-dropdown > .mega-menu,
  html body .header__linklist-item.has-dropdown > .mega-menu[hidden]{
    display:block !important;
    position:fixed !important;
    top:124px !important;
    left:0 !important;
    right:0 !important;
    width:100vw !important;
    max-width:none !important;
    min-width:0 !important;
    height:auto !important;
    min-height:0 !important;
    max-height:calc(100vh - 124px) !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:#fff !important;
    box-shadow:0 18px 34px rgba(21,31,24,.10) !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
    transform:none !important;
    overflow:hidden !important;
    z-index:130 !important;
    box-sizing:border-box !important;
  }

  html body .header__linklist-item.has-dropdown:hover > .mega-menu,
  html body .header__linklist-item.has-dropdown:focus-within > .mega-menu,
  html body .header__linklist-item.has-dropdown:hover > .mega-menu[hidden],
  html body .header__linklist-item.has-dropdown:focus-within > .mega-menu[hidden]{
    visibility:visible !important;
    opacity:1 !important;
    pointer-events:auto !important;
  }

  html body .mega-menu.mm-uniform > .container{
    width:min(1180px, calc(100vw - 96px)) !important;
    max-width:1180px !important;
    margin:0 auto !important;
    padding:42px 0 44px !important;
    box-sizing:border-box !important;
  }

  html body .mm-uniform .mega-menu__inner{
    display:grid !important;
    grid-template-columns:minmax(220px,.78fr) minmax(220px,.78fr) minmax(300px,374px) !important;
    align-items:start !important;
    gap:56px !important;
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
    overflow:visible !important;
  }

  html body .mm-uniform .mega-menu__column{
    min-width:0 !important;
    margin:0 !important;
    padding:0 !important;
  }

  html body .mm-uniform .linklist{
    display:grid !important;
    gap:12px !important;
    margin:0 !important;
    padding:0 !important;
  }

  html body .mm-uniform .linklist__item{
    margin:0 !important;
    padding:0 !important;
    list-style:none !important;
  }

  html body .mm-uniform .linklist__item a{
    color:#252927 !important;
    font-size:15px !important;
    line-height:1.36 !important;
    font-weight:500 !important;
    letter-spacing:0 !important;
    text-decoration:none !important;
  }

  html body .mm-uniform .mm-col-title,
  html body .mm-uniform .mm-col-title-link{
    margin:0 0 14px !important;
    color:#276B42 !important;
    font-size:12px !important;
    line-height:1.2 !important;
    font-weight:800 !important;
    letter-spacing:.12em !important;
    text-transform:uppercase !important;
    text-decoration:none !important;
  }

  html body .mm-uniform .mega-menu__images-wrapper{
    display:grid !important;
    grid-template-columns:1fr !important;
    justify-self:end !important;
    gap:14px !important;
    width:100% !important;
    max-width:374px !important;
    margin:0 !important;
    padding:0 !important;
    overflow:visible !important;
  }

  html body .mm-uniform .mega-menu__image-push{
    display:block !important;
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
    text-decoration:none !important;
  }

  html body .mm-uniform .mega-menu__image-wrapper{
    display:block !important;
    width:100% !important;
    aspect-ratio:374 / 427 !important;
    margin:0 !important;
    border-radius:8px !important;
    overflow:hidden !important;
    background:#f6f8f6 !important;
  }

  html body .mm-uniform .mega-menu__image{
    display:block !important;
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    object-position:center center !important;
    transform:none !important;
    filter:none !important;
  }

  html body .mm-uniform .mega-menu__heading{
    display:block !important;
    margin:12px 0 0 !important;
    color:#276B42 !important;
    font-size:13px !important;
    line-height:1.2 !important;
    font-weight:800 !important;
    letter-spacing:.08em !important;
    text-align:center !important;
    text-transform:uppercase !important;
  }

  html body #desktop-menu-4.mm-uniform > .container{
    width:min(1240px, calc(100vw - 96px)) !important;
    max-width:1240px !important;
  }

  html body #desktop-menu-4.mm-uniform .mega-menu__inner{
    grid-template-columns:minmax(160px,.55fr) minmax(160px,.55fr) minmax(520px,748px) !important;
    gap:42px !important;
  }

  html body #desktop-menu-4.mm-uniform .mega-menu__images-wrapper{
    grid-template-columns:repeat(2, minmax(0,1fr)) !important;
    max-width:748px !important;
    gap:22px !important;
  }

  html body #desktop-menu-5.mm-uniform > .container{
    width:min(980px, calc(100vw - 96px)) !important;
    max-width:980px !important;
    padding:36px 0 38px !important;
  }

  html body #desktop-menu-5.mm-uniform .mega-menu__inner{ display:block !important; }

  html body #desktop-menu-5 .mm-accessory-strip{
    display:grid !important;
    grid-template-columns:repeat(5, minmax(0,1fr)) !important;
    align-items:end !important;
    justify-items:center !important;
    gap:34px !important;
    width:100% !important;
    margin:0 auto !important;
    padding:0 !important;
  }

  html body #desktop-menu-5 .mm-accessory-card{
    display:grid !important;
    justify-items:center !important;
    gap:12px !important;
    min-width:0 !important;
    color:#111 !important;
    text-decoration:none !important;
  }

  html body #desktop-menu-5 .mm-accessory-img{
    display:grid !important;
    place-items:center !important;
    width:132px !important;
    height:102px !important;
  }

  html body #desktop-menu-5 .mm-accessory-img img{
    display:block !important;
    width:100% !important;
    height:100% !important;
    object-fit:contain !important;
    transform:none !important;
  }

  html body #desktop-menu-5 .mm-accessory-label{
    color:#1d251f !important;
    font-size:11px !important;
    line-height:1.2 !important;
    font-weight:800 !important;
    letter-spacing:.08em !important;
    text-align:center !important;
    text-transform:uppercase !important;
  }
}

/* ============================================================
   2026-06-24 下拉二级菜单最终整理
   ------------------------------------------------------------
   之前同一个文件里残留了多套 mega-menu 覆盖规则，部分规则把菜单
   写成居中的巨大卡片，右侧图片还会跑出白色面板。这里作为最后一层
   兜底：外层只负责全宽白底，内层 container 负责与页面内容同宽居中；
   普通菜单、Par espace 双图菜单、Accessoires 图标条分别排版。
   ============================================================ */
@media (min-width:1000px){
  html body .header__linklist-item.has-dropdown{
    position:static !important;
  }

  html body .header__linklist-item.has-dropdown:hover::before,
  html body .header__linklist-item.has-dropdown:focus-within::before,
  html body .mega-menu::after{
    display:none !important;
    content:none !important;
  }

  html body .header__linklist-item.has-dropdown > .mega-menu,
  html body .header__linklist-item.has-dropdown > .mega-menu[hidden]{
    display:block !important;
    position:fixed !important;
    top:124px !important;
    left:0 !important;
    right:0 !important;
    width:100vw !important;
    max-width:none !important;
    min-width:0 !important;
    height:auto !important;
    min-height:0 !important;
    max-height:calc(100vh - 124px) !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:#fff !important;
    box-shadow:0 18px 34px rgba(21,31,24,.10) !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
    transform:none !important;
    overflow:hidden !important;
    z-index:130 !important;
    box-sizing:border-box !important;
  }

  html body .header__linklist-item.has-dropdown:hover > .mega-menu,
  html body .header__linklist-item.has-dropdown:focus-within > .mega-menu,
  html body .header__linklist-item.has-dropdown:hover > .mega-menu[hidden],
  html body .header__linklist-item.has-dropdown:focus-within > .mega-menu[hidden]{
    visibility:visible !important;
    opacity:1 !important;
    pointer-events:auto !important;
    transform:none !important;
  }

  html body .mega-menu.mm-uniform > .container{
    width:min(1180px, calc(100vw - 96px)) !important;
    max-width:1180px !important;
    margin:0 auto !important;
    padding:42px 0 44px !important;
    box-sizing:border-box !important;
  }

  html body .mm-uniform .mega-menu__inner{
    display:grid !important;
    grid-template-columns:minmax(220px,.78fr) minmax(220px,.78fr) minmax(300px,374px) !important;
    align-items:start !important;
    justify-content:center !important;
    gap:56px !important;
    width:100% !important;
    min-height:0 !important;
    margin:0 !important;
    padding:0 !important;
    overflow:visible !important;
  }

  html body .mm-uniform .mega-menu__column{
    min-width:0 !important;
    margin:0 !important;
    padding:0 !important;
  }

  html body .mm-uniform .linklist{
    display:grid !important;
    gap:12px !important;
    margin:0 !important;
    padding:0 !important;
  }

  html body .mm-uniform .linklist__item{
    margin:0 !important;
    padding:0 !important;
    list-style:none !important;
  }

  html body .mm-uniform .linklist__item a,
  html body .mm-uniform .mm-col-title,
  html body .mm-uniform .mm-col-title-link{
    color:#252927 !important;
    font-size:15px !important;
    line-height:1.36 !important;
    font-weight:500 !important;
    letter-spacing:0 !important;
    text-decoration:none !important;
    white-space:normal !important;
  }

  html body .mm-uniform .mm-col-title,
  html body .mm-uniform .mm-col-title-link{
    margin:0 0 14px !important;
    color:#276B42 !important;
    font-size:12px !important;
    line-height:1.2 !important;
    font-weight:800 !important;
    letter-spacing:.12em !important;
    text-transform:uppercase !important;
  }

  html body .mm-uniform .mega-menu__images-wrapper{
    display:grid !important;
    grid-template-columns:1fr !important;
    align-items:start !important;
    justify-self:end !important;
    gap:14px !important;
    width:100% !important;
    max-width:374px !important;
    margin:0 !important;
    padding:0 !important;
    overflow:visible !important;
  }

  html body .mm-uniform .mega-menu__image-push{
    display:block !important;
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
    text-decoration:none !important;
    overflow:visible !important;
  }

  html body .mm-uniform .mega-menu__image-wrapper{
    display:block !important;
    width:100% !important;
    aspect-ratio:374 / 427 !important;
    margin:0 !important;
    border-radius:8px !important;
    overflow:hidden !important;
    background:#f6f8f6 !important;
  }

  html body .mm-uniform .mega-menu__image{
    display:block !important;
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    object-position:center center !important;
    transform:none !important;
    filter:none !important;
  }

  html body .mm-uniform .mega-menu__heading{
    display:block !important;
    margin:12px 0 0 !important;
    color:#276B42 !important;
    font-size:13px !important;
    line-height:1.2 !important;
    font-weight:800 !important;
    letter-spacing:.08em !important;
    text-align:center !important;
    text-transform:uppercase !important;
  }

  html body #desktop-menu-4.mm-uniform > .container{
    width:min(1240px, calc(100vw - 96px)) !important;
    max-width:1240px !important;
  }

  html body #desktop-menu-4.mm-uniform .mega-menu__inner{
    grid-template-columns:minmax(160px,.55fr) minmax(160px,.55fr) minmax(520px,748px) !important;
    gap:42px !important;
  }

  html body #desktop-menu-4.mm-uniform .mega-menu__images-wrapper{
    grid-template-columns:repeat(2, minmax(0,1fr)) !important;
    max-width:748px !important;
    gap:22px !important;
  }

  html body #desktop-menu-5.mm-uniform > .container{
    width:min(980px, calc(100vw - 96px)) !important;
    max-width:980px !important;
    padding:36px 0 38px !important;
  }

  html body #desktop-menu-5.mm-uniform .mega-menu__inner{
    display:block !important;
  }

  html body #desktop-menu-5 .mm-accessory-strip{
    display:grid !important;
    grid-template-columns:repeat(5, minmax(0,1fr)) !important;
    align-items:end !important;
    justify-items:center !important;
    gap:34px !important;
    width:100% !important;
    margin:0 auto !important;
    padding:0 !important;
  }

  html body #desktop-menu-5 .mm-accessory-card{
    display:grid !important;
    justify-items:center !important;
    gap:12px !important;
    min-width:0 !important;
    color:#111 !important;
    text-decoration:none !important;
  }

  html body #desktop-menu-5 .mm-accessory-img{
    display:grid !important;
    place-items:center !important;
    width:132px !important;
    height:102px !important;
  }

  html body #desktop-menu-5 .mm-accessory-img img{
    display:block !important;
    width:100% !important;
    height:100% !important;
    object-fit:contain !important;
    transform:none !important;
    filter:none !important;
  }

  html body #desktop-menu-5 .mm-accessory-label{
    color:#1d251f !important;
    font-size:11px !important;
    line-height:1.2 !important;
    font-weight:800 !important;
    letter-spacing:.08em !important;
    text-align:center !important;
    text-transform:uppercase !important;
  }

  html body .header__linklist-item.mm-plus{
    position:relative !important;
  }

  html body .header__linklist-item.mm-plus > .nav-dropdown,
  html body .header__linklist-item.mm-plus > .nav-dropdown[hidden]{
    position:absolute !important;
    top:100% !important;
    right:0 !important;
    left:auto !important;
    width:220px !important;
    max-width:220px !important;
    min-width:180px !important;
    transform:none !important;
    border-radius:0 0 8px 8px !important;
    background:#fff !important;
    box-shadow:0 14px 28px rgba(20,28,24,.12) !important;
    z-index:140 !important;
  }
}

/* ==========================================================================
   132. 0623 全站最终验收锁定
   --------------------------------------------------------------------------
   这一段必须放在 CSS 文件最后。前面保留了历史调整与原主题样式，本段只处理
   客户反复指出的“会一眼看坏”的问题：
   1. 顶部黑色配送条：PC 一行不换行；手机允许两行但不能截字。
   2. 手机头部：邮件图标隐藏，只保留一个搜索图标。
   3. PROMOS 百分号：红底白字。
   4. 首页热卖：桌面端固定 4 个产品，卡片、图片、正文区全部等高等宽。
   5. Footer：保留原绿色背景，所有文字统一白色系。
   ========================================================================== */

/* 顶部公告条：PC 宽度足够时强制一行，避免“FRANCE / CONTINENTALE”断行。 */
@media (min-width:1000px){
  body .announcement-bar,
  body .announcement-bar--multiple,
  body .shopify-section--announcement-bar,
  body .shopify-section--announcement-bar .announcement-bar,
  body #shopify-section-sections--25458834178427__announcement-bar,
  body #shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
    height:42px !important;
    min-height:42px !important;
    overflow:hidden !important;
    background:#262626 !important;
  }
  body .announcement-bar__list,
  body .announcement-bar__item:not([hidden]),
  body announcement-bar-item.announcement-bar__item:not([hidden]),
  body .announcement-bar__message,
  body .announcement-bar__message p{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
    height:42px !important;
    margin:0 !important;
    padding:0 !important;
    color:#fff !important;
    font-size:14px !important;
    font-weight:800 !important;
    line-height:42px !important;
    text-align:center !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:clip !important;
  }
  body .announcement-bar__list{ padding:0 76px !important; }
}

/* 手机公告条：句子较长时用两行居中显示，增高到 64px 防止顶部/底部被裁。 */
@media (max-width:999px){
  body .announcement-bar,
  body .announcement-bar--multiple,
  body .shopify-section--announcement-bar,
  body .shopify-section--announcement-bar .announcement-bar,
  body #shopify-section-sections--25458834178427__announcement-bar,
  body #shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
    height:64px !important;
    min-height:64px !important;
    overflow:hidden !important;
    background:#262626 !important;
  }
  body .announcement-bar__list,
  body .announcement-bar__item:not([hidden]),
  body announcement-bar-item.announcement-bar__item:not([hidden]),
  body .announcement-bar__message{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
    height:64px !important;
    min-height:64px !important;
    margin:0 !important;
    color:#fff !important;
    text-align:center !important;
    overflow:hidden !important;
  }
  body .announcement-bar__list{ padding:0 46px !important; }
  body .announcement-bar__message p{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    height:auto !important;
    min-height:0 !important;
    max-height:48px !important;
    margin:0 !important;
    padding:0 !important;
    color:#fff !important;
    font-size:11px !important;
    font-weight:800 !important;
    line-height:16px !important;
    letter-spacing:.01em !important;
    text-align:center !important;
    white-space:normal !important;
    overflow:visible !important;
    text-overflow:clip !important;
  }
  body .announcement-bar .tap-area{
    top:0 !important;
    width:42px !important;
    height:64px !important;
    color:#fff !important;
  }
  body .announcement-bar .tap-area[data-action="prev"]{ left:4px !important; }
  body .announcement-bar .tap-area[data-action="next"]{ right:4px !important; }
}

/* 手机头部图标：隐藏邮件入口和桌面搜索，只保留一个移动搜索图标。 */
@media (max-width:999px){
  body .header__icon-list [aria-controls="newsletter-popup"],
  body .header__icon-list .header__icon-wrapper:has(.icon--header-email),
  body .header__icon-list a[aria-label="Recherche"]{
    display:none !important;
  }
  body .header__icon-list a[aria-label="Recherche"].hidden-desk{
    display:inline-grid !important;
    place-items:center !important;
  }
}
@media (min-width:1000px){
  body .header__icon-list a[aria-label="Recherche"].hidden-desk{
    display:none !important;
  }
}

/* PC 二级导航：鼠标放一级导航时必须弹出。hidden 属性也要被 hover 状态盖掉。 */
@media (min-width:1000px){
  body .shopify-section--header,
  body .header,
  body .header__wrapper,
  body desktop-navigation{
    overflow:visible !important;
  }
  body .header__linklist-item.has-dropdown > .mega-menu,
  body .header__linklist-item.has-dropdown > .mega-menu[hidden],
  body .header__linklist-item.mm-plus > .nav-dropdown,
  body .header__linklist-item.mm-plus > .nav-dropdown[hidden]{
    display:block !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
  }
  body .header__linklist-item.has-dropdown:hover > .mega-menu,
  body .header__linklist-item.has-dropdown:focus-within > .mega-menu,
  body .header__linklist-item.has-dropdown:hover > .mega-menu[hidden],
  body .header__linklist-item.has-dropdown:focus-within > .mega-menu[hidden],
  body .header__linklist-item.mm-plus:hover > .nav-dropdown,
  body .header__linklist-item.mm-plus:focus-within > .nav-dropdown,
  body .header__linklist-item.mm-plus:hover > .nav-dropdown[hidden],
  body .header__linklist-item.mm-plus:focus-within > .nav-dropdown[hidden]{
    display:block !important;
    visibility:visible !important;
    opacity:1 !important;
    pointer-events:auto !important;
  }
}

/* PROMOS 百分号：白字锁死，避免继承导航黑色。 */
body .promos-pct-dot,
body .promos-pct-dot *,
body .header__linklist-link .promos-pct-dot,
body .header__linklist-link .promos-pct-dot *{
  color:#fff !important;
  fill:#fff !important;
}
body .promos-pct-dot,
body .header__linklist-link .promos-pct-dot{
  display:inline-grid !important;
  place-items:center !important;
  width:24px !important;
  height:24px !important;
  min-width:24px !important;
  border-radius:999px !important;
  background:#df2638 !important;
  font-size:13px !important;
  font-weight:900 !important;
  line-height:1 !important;
}

/* 首页热卖：桌面端严格 4 卡，卡片高度、图片高度、正文高度完全一致。 */
@media (min-width:1000px){
  body #main .hp-sec--best .hp-wrap,
  body #main .hp-sec--best .hp-bv-wrap{
    width:min(1220px, calc(100% - 96px)) !important;
    max-width:1220px !important;
    margin-left:auto !important;
    margin-right:auto !important;
    padding-left:0 !important;
    padding-right:0 !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best [data-scroller]{
    width:100% !important;
    overflow:visible !important;
    padding-top:20px !important;
  }
  body #main .hp-sec--best .hp-track{
    display:grid !important;
    grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
    gap:28px !important;
    width:100% !important;
    max-width:100% !important;
    margin:0 !important;
    padding:0 !important;
    overflow:visible !important;
    align-items:stretch !important;
  }
  body #main .hp-sec--best .hp-track > .hp-pcard{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    height:552px !important;
    min-height:552px !important;
    max-height:552px !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-track > .hp-pcard:nth-child(n+5){
    display:none !important;
  }
  body #main .hp-sec--best .hp-pcard > a{
    display:grid !important;
    grid-template-rows:300px 252px !important;
    width:100% !important;
    height:552px !important;
    min-height:552px !important;
    max-height:552px !important;
    overflow:visible !important;
    border:1px solid #e6ebe7 !important;
    border-radius:10px !important;
    background:#fff !important;
    box-shadow:0 14px 30px rgba(23,34,27,.045) !important;
  }
  body #main .hp-sec--best .hp-pc-media{
    position:relative !important;
    width:100% !important;
    height:300px !important;
    min-height:300px !important;
    max-height:300px !important;
    overflow:hidden !important;
    border-radius:10px 10px 0 0 !important;
    background:#f5f7f4 !important;
  }
  body #main .hp-sec--best .hp-pc-media img,
  body #main .hp-sec--best .hp-pc-media .day,
  body #main .hp-sec--best .hp-pc-media .night{
    position:absolute !important;
    inset:0 !important;
    display:block !important;
    width:100% !important;
    height:300px !important;
    min-width:100% !important;
    min-height:300px !important;
    max-width:none !important;
    max-height:300px !important;
    border-radius:10px 10px 0 0 !important;
    object-fit:cover !important;
    object-position:center center !important;
    opacity:1 !important;
    filter:none !important;
    transform:none !important;
  }
  body #main .hp-sec--best .hp-pc-body{
    display:grid !important;
    grid-template-rows:36px 52px 24px 26px 30px !important;
    gap:8px !important;
    width:100% !important;
    height:252px !important;
    min-height:252px !important;
    max-height:252px !important;
    padding:16px 18px 16px !important;
    overflow:hidden !important;
  }
  body #main .hp-sec--best .hp-pc-name{
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    height:52px !important;
    min-height:52px !important;
    max-height:52px !important;
    margin:0 !important;
    overflow:hidden !important;
    color:#18221b !important;
    font-size:17px !important;
    font-weight:800 !important;
    line-height:26px !important;
  }
  body #main .hp-sec--best .hp-pc-price,
  body #main .hp-sec--best .hp-pc-rate,
  body #main .hp-sec--best .hp-pc-stock{
    margin:0 !important;
  }
  body #main .hp-sec--best .hp-bdgs{
    position:absolute !important;
    left:0 !important;
    top:-16px !important;
    z-index:8 !important;
    pointer-events:none !important;
  }
  body #main .hp-sec--best .hp-bdg--remises{
    height:32px !important;
    padding:0 14px !important;
    border-radius:5px 5px 5px 0 !important;
    background:#d85f39 !important;
    color:#fff !important;
    font-size:13px !important;
    font-weight:800 !important;
    line-height:32px !important;
    white-space:nowrap !important;
  }
}

/* Footer：绿底里的所有标题、段落、链接、内联 style 都改成白色系。 */
body .v15-trust-strip,
body .v15-trust-strip *,
body .v15-trust-strip [style],
body .shopify-section-group-footer-group,
body .shopify-section-group-footer-group *,
body .shopify-section-group-footer-group [style],
body .shopify-section--footer,
body .shopify-section--footer *,
body .shopify-section--footer [style],
body footer,
body footer *,
body footer [style]{
  color:rgba(255,255,255,.84) !important;
}
body .v15-trust-strip h1,
body .v15-trust-strip h2,
body .v15-trust-strip h3,
body .v15-trust-strip h4,
body .v15-trust-strip h5,
body .v15-trust-strip h6,
body .v15-trust-strip strong,
body .v15-trust-strip b,
body .v15-trust-strip .heading,
body .v15-trust-strip .v15-trust-rating-score,
body .shopify-section-group-footer-group h1,
body .shopify-section-group-footer-group h2,
body .shopify-section-group-footer-group h3,
body .shopify-section-group-footer-group h4,
body .shopify-section-group-footer-group h5,
body .shopify-section-group-footer-group h6,
body .shopify-section-group-footer-group strong,
body .shopify-section-group-footer-group b,
body .shopify-section-group-footer-group .heading,
body .shopify-section-group-footer-group .footer__item-title,
body .shopify-section--footer h1,
body .shopify-section--footer h2,
body .shopify-section--footer h3,
body .shopify-section--footer h4,
body .shopify-section--footer h5,
body .shopify-section--footer h6,
body .shopify-section--footer strong,
body .shopify-section--footer b,
body .shopify-section--footer .heading,
body .shopify-section--footer .footer__item-title,
body footer h1,
body footer h2,
body footer h3,
body footer h4,
body footer h5,
body footer h6,
body footer strong,
body footer b,
body footer .heading,
body footer .footer__item-title,
body footer a,
body footer a *,
body .v15-trust-strip a,
body .v15-trust-strip a *{
  color:#fff !important;
}

/* ==========================================================================
   131. 0623 全站验收最终锁定
   --------------------------------------------------------------------------
   这里是文件真正最后的兜底层。前面保留了历史样式和迁移过来的主题代码，
   为了不再出现“改好了又被旧规则覆盖”，所有反复出问题的公共模块都在
   这里重新锁一次。

   对应客户明确反馈：
   1. 顶部黑色公告 PC 端必须单行；移动端可两行，但不能裁字。
   2. 移动端头部只保留一个搜索图标；信封入口和重复搜索都隐藏。
   3. PROMOS 的百分号必须红底白字。
   4. 一级导航 hover/focus 必须显示二级 mega menu。
   5. Footer 和 footer 上方支付/物流/评价区保留原绿色背景，所有文字白色。
   6. 首页热卖卡 4 个产品等宽等高，图片高度统一，标题两行省略。
   ========================================================================== */

/* PC 顶部公告：强制一行居中，避免 “FRANCE CONTINENTALE” 换行。 */
@media (min-width:1000px){
  html body .announcement-bar,
  html body .announcement-bar--multiple,
  html body #shopify-section-sections--25458834178427__announcement-bar,
  html body #shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
    height:40px !important;
    min-height:40px !important;
    max-height:40px !important;
    overflow:hidden !important;
    background:#262626 !important;
  }
  html body .announcement-bar__list,
  html body .announcement-bar__item:not([hidden]),
  html body announcement-bar-item.announcement-bar__item:not([hidden]),
  html body .announcement-bar__message,
  html body .announcement-bar__message p{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:100% !important;
    max-width:none !important;
    height:40px !important;
    min-height:40px !important;
    max-height:40px !important;
    margin:0 !important;
    padding:0 !important;
    overflow:hidden !important;
    color:#fff !important;
    font-size:13px !important;
    font-weight:800 !important;
    line-height:40px !important;
    text-align:center !important;
    white-space:nowrap !important;
  }
  html body .announcement-bar__message p{
    max-width:calc(100vw - 160px) !important;
    text-overflow:clip !important;
  }
}

/* 移动端公告：文字允许两行，左右箭头保留，但不再裁左边文字。 */
@media (max-width:999px){
  html body .announcement-bar,
  html body .announcement-bar--multiple,
  html body #shopify-section-sections--25458834178427__announcement-bar,
  html body #shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
    height:64px !important;
    min-height:64px !important;
    max-height:64px !important;
    overflow:hidden !important;
    background:#262626 !important;
  }
  html body .announcement-bar__list,
  html body .announcement-bar__item:not([hidden]),
  html body announcement-bar-item.announcement-bar__item:not([hidden]),
  html body .announcement-bar__message{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:100% !important;
    max-width:none !important;
    height:64px !important;
    min-height:64px !important;
    max-height:64px !important;
    margin:0 !important;
    padding:0 42px !important;
    overflow:visible !important;
  }
  html body .announcement-bar__message p{
    display:block !important;
    width:100% !important;
    max-width:calc(100vw - 92px) !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    margin:0 auto !important;
    padding:0 !important;
    overflow:visible !important;
    color:#fff !important;
    font-size:11px !important;
    font-weight:800 !important;
    line-height:16px !important;
    text-align:center !important;
    white-space:normal !important;
    word-break:normal !important;
  }
  html body .announcement-bar .tap-area{
    position:absolute !important;
    top:0 !important;
    width:38px !important;
    height:64px !important;
    color:#fff !important;
  }
  html body .announcement-bar .tap-area[data-action="prev"]{ left:6px !important; }
  html body .announcement-bar .tap-area[data-action="next"]{ right:6px !important; }
}

/* 移动端头部图标：信封隐藏；所有搜索先隐藏，只显示移动端那个搜索。 */
@media (max-width:999px){
  html body .header__icon-list [aria-controls="newsletter-popup"],
  html body .header__icon-list .header__icon-wrapper:has(.icon--header-email),
  html body .header__icon-list a[aria-label="Newsletter"],
  html body .header__icon-list a[aria-label="Recherche"]{
    display:none !important;
  }
  html body .header__icon-list a[aria-label="Recherche"].hidden-desk{
    display:inline-grid !important;
  }
  html body .header__secondary-links .header__icon-list{
    display:flex !important;
    align-items:center !important;
    gap:14px !important;
  }
}

/* PROMOS 百分号最终锁色：无论 span 内外继承什么，都必须白字。 */
html body .promos-pct-dot,
html body .promos-pct-dot *,
html body .header__linklist-link .promos-pct-dot,
html body .header__linklist-link .promos-pct-dot *{
  color:#fff !important;
  fill:#fff !important;
}
html body .promos-pct-dot,
html body .header__linklist-link .promos-pct-dot{
  display:inline-grid !important;
  place-items:center !important;
  width:24px !important;
  height:24px !important;
  min-width:24px !important;
  border-radius:50% !important;
  background:#df2638 !important;
  font-size:13px !important;
  font-weight:900 !important;
  line-height:1 !important;
}

/* 导航二级菜单：旧主题会给 hidden 元素 display:none，这里确保 hover 时一定弹出。 */
@media (min-width:1000px){
  html body .header,
  html body .header__wrapper,
  html body .header__inline-navigation,
  html body .shopify-section--header{
    overflow:visible !important;
  }
  html body .header__linklist-item.has-dropdown > .mega-menu,
  html body .header__linklist-item.has-dropdown > .mega-menu[hidden],
  html body .header__linklist-item.mm-plus > .nav-dropdown{
    display:block !important;
    position:fixed !important;
    top:122px !important;
    left:50% !important;
    right:auto !important;
    width:min(1180px, calc(100vw - 80px)) !important;
    max-width:calc(100vw - 80px) !important;
    min-width:0 !important;
    padding:34px 40px !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
    transform:translateX(-50%) translateY(8px) !important;
    z-index:300 !important;
  }
  html body .header__linklist-item.has-dropdown:hover > .mega-menu,
  html body .header__linklist-item.has-dropdown:focus-within > .mega-menu,
  html body .header__linklist-item.has-dropdown:hover > .mega-menu[hidden],
  html body .header__linklist-item.has-dropdown:focus-within > .mega-menu[hidden],
  html body .header__linklist-item.mm-plus:hover > .nav-dropdown,
  html body .header__linklist-item.mm-plus:focus-within > .nav-dropdown{
    display:block !important;
    visibility:visible !important;
    opacity:1 !important;
    pointer-events:auto !important;
    transform:translateX(-50%) translateY(0) !important;
  }
}

/* 首页热卖：4 卡等高等宽，图片高度统一，文字区固定，长标题两行省略。 */
@media (min-width:1000px){
  html body #main .hp-sec--best .hp-wrap,
  html body #main .hp-sec--best .hp-bv-wrap{
    width:min(1120px, calc(100% - 120px)) !important;
    max-width:1120px !important;
    margin-inline:auto !important;
    padding-inline:0 !important;
    overflow:visible !important;
  }
  html body #main .hp-sec--best [data-scroller]{
    width:100% !important;
    padding-top:26px !important;
    overflow:visible !important;
  }
  html body #main .hp-sec--best .hp-track{
    display:grid !important;
    grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
    gap:28px !important;
    width:100% !important;
    max-width:100% !important;
    margin:0 !important;
    padding:0 !important;
    align-items:stretch !important;
    overflow:visible !important;
  }
  html body #main .hp-sec--best .hp-track > .hp-pcard{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    height:520px !important;
    min-height:520px !important;
    max-height:520px !important;
    overflow:visible !important;
  }
  html body #main .hp-sec--best .hp-track > .hp-pcard:nth-child(n+5){
    display:none !important;
  }
  html body #main .hp-sec--best .hp-pcard > a{
    display:grid !important;
    grid-template-rows:284px 236px !important;
    width:100% !important;
    height:520px !important;
    min-height:520px !important;
    max-height:520px !important;
    border:1px solid #e6ebe7 !important;
    border-radius:8px !important;
    background:#fff !important;
    overflow:visible !important;
    box-shadow:0 12px 28px rgba(24,34,27,.05) !important;
  }
  html body #main .hp-sec--best .hp-pc-media{
    position:relative !important;
    width:100% !important;
    height:284px !important;
    min-height:284px !important;
    max-height:284px !important;
    border-radius:8px 8px 0 0 !important;
    overflow:visible !important;
    background:#f4f5f4 !important;
  }
  html body #main .hp-sec--best .hp-pc-media img,
  html body #main .hp-sec--best .hp-pc-media .day,
  html body #main .hp-sec--best .hp-pc-media .night{
    position:absolute !important;
    inset:0 !important;
    display:block !important;
    width:100% !important;
    height:284px !important;
    min-height:284px !important;
    max-height:284px !important;
    border-radius:8px 8px 0 0 !important;
    object-fit:cover !important;
    object-position:center center !important;
    opacity:1 !important;
    filter:none !important;
    transform:none !important;
  }
  html body #main .hp-sec--best .hp-pc-media .night{
    visibility:hidden !important;
  }
  html body #main .hp-sec--best .hp-pcard:hover,
  html body #main .hp-sec--best .hp-pcard:hover img{
    filter:none !important;
    transform:none !important;
  }
  html body #main .hp-sec--best .hp-pc-body{
    display:grid !important;
    grid-template-rows:30px 44px 22px 42px 24px !important;
    gap:7px !important;
    height:236px !important;
    min-height:236px !important;
    max-height:236px !important;
    padding:16px 16px 14px !important;
    overflow:hidden !important;
  }
  html body #main .hp-sec--best .hp-pc-name{
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    height:44px !important;
    min-height:44px !important;
    max-height:44px !important;
    overflow:hidden !important;
    font-size:15px !important;
    font-weight:800 !important;
    line-height:22px !important;
  }
  html body #main .hp-sec--best .hp-pc-price{
    height:42px !important;
    min-height:42px !important;
    max-height:42px !important;
    margin:0 !important;
    overflow:hidden !important;
  }
}

/* Footer 与 footer 上方信任区：背景不改，只锁文字为白色系。 */
html body .v15-trust-strip,
html body .v15-trust-strip *,
html body .v15-trust-strip [style],
html body .shopify-section-group-footer-group,
html body .shopify-section-group-footer-group *,
html body .shopify-section-group-footer-group [style],
html body .shopify-section--footer,
html body .shopify-section--footer *,
html body .shopify-section--footer [style],
html body footer,
html body footer *,
html body footer [style]{
  color:rgba(255,255,255,.84) !important;
}
html body .v15-trust-strip h1,
html body .v15-trust-strip h2,
html body .v15-trust-strip h3,
html body .v15-trust-strip h4,
html body .v15-trust-strip h5,
html body .v15-trust-strip h6,
html body .v15-trust-strip strong,
html body .v15-trust-strip b,
html body .v15-trust-strip .heading,
html body .v15-trust-strip .v15-trust-rating-score,
html body .v15-trust-strip .v15-trust-rating-score *,
html body .shopify-section-group-footer-group h1,
html body .shopify-section-group-footer-group h2,
html body .shopify-section-group-footer-group h3,
html body .shopify-section-group-footer-group h4,
html body .shopify-section-group-footer-group h5,
html body .shopify-section-group-footer-group h6,
html body .shopify-section-group-footer-group strong,
html body .shopify-section-group-footer-group b,
html body .shopify-section-group-footer-group .heading,
html body .shopify-section-group-footer-group .footer__item-title,
html body .shopify-section--footer h1,
html body .shopify-section--footer h2,
html body .shopify-section--footer h3,
html body .shopify-section--footer h4,
html body .shopify-section--footer h5,
html body .shopify-section--footer h6,
html body .shopify-section--footer strong,
html body .shopify-section--footer b,
html body .shopify-section--footer .heading,
html body .shopify-section--footer .footer__item-title,
html body footer h1,
html body footer h2,
html body footer h3,
html body footer h4,
html body footer h5,
html body footer h6,
html body footer strong,
html body footer b,
html body footer .heading,
html body footer .footer__item-title{
  color:#fff !important;
}
html body .v15-trust-strip a,
html body .v15-trust-strip a *,
html body .shopify-section-group-footer-group a,
html body .shopify-section-group-footer-group a *,
html body .shopify-section--footer a,
html body .shopify-section--footer a *,
html body footer a,
html body footer a *{
  color:#fff !important;
}

/* ==========================================================================
   128. 0604 最终一致性锁定层
   --------------------------------------------------------------------------
   这段必须放在文件最后，用来压住前面多轮修改留下的重复规则。
   目标：
   1. 公告栏 PC 一行显示，移动端不截字。
   2. 一级导航 hover 必须显示二级导航，并覆盖 HTML hidden 属性。
   3. PROMOS 的 % 必须红底白字。
   4. 移动端只保留一个搜索图标，隐藏邮件入口。
   5. 首页热卖 4 个产品卡等宽、等高、图片等高；角标左对齐且半露出。
   6. 首页分类圆圈与中段图片按 0528/0529 参考收紧。
   7. footer 和 trust strip 保留原绿色背景，所有文字统一白色系。
   ========================================================================== */

:root{
  --lh-final-green:#276B42;
  --lh-final-accent:#3a9d5f;
  --lh-final-text:#18201b;
  --lh-final-muted:#8b918b;
  --lh-final-content:1220px;
}

/* 128-1 公告栏：桌面绝不换行；移动端允许两行居中，避免只露半句。 */
body .shopify-section--announcement-bar,
body #shopify-section-sections--25458834178427__announcement-bar,
body .shopify-section--announcement-bar .announcement-bar,
body #shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
  height:42px !important;
  min-height:42px !important;
  max-height:42px !important;
  overflow:hidden !important;
  background:#262626 !important;
}
body .shopify-section--announcement-bar .announcement-bar,
body #shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
  display:grid !important;
  grid-template-columns:52px minmax(0,1fr) 52px !important;
  align-items:center !important;
  padding:0 24px !important;
}
body .announcement-bar__list,
body announcement-bar-item.announcement-bar__item:not([hidden]),
body .announcement-bar__item:not([hidden]),
body .announcement-bar__message{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  max-width:none !important;
  min-width:0 !important;
  height:42px !important;
  min-height:42px !important;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;
}
body .announcement-bar__item[hidden],
body announcement-bar-item[hidden]{
  display:none !important;
}
body .announcement-bar__message p{
  display:block !important;
  width:100% !important;
  max-width:none !important;
  min-width:0 !important;
  height:42px !important;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;
  color:#fff !important;
  font-size:14px !important;
  font-weight:800 !important;
  line-height:42px !important;
  letter-spacing:.01em !important;
  text-align:center !important;
  text-overflow:clip !important;
  white-space:nowrap !important;
}
body .announcement-bar .tap-area,
body .announcement-bar > button{
  top:0 !important;
  z-index:3 !important;
  display:grid !important;
  place-items:center !important;
  width:52px !important;
  height:42px !important;
  color:#fff !important;
}
body .announcement-bar .tap-area[data-action="prev"]{ left:0 !important; }
body .announcement-bar .tap-area[data-action="next"]{ right:0 !important; }
@media (max-width:999px){
  body .shopify-section--announcement-bar,
  body #shopify-section-sections--25458834178427__announcement-bar,
  body .shopify-section--announcement-bar .announcement-bar,
  body #shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
    height:54px !important;
    min-height:54px !important;
    max-height:54px !important;
  }
  body .shopify-section--announcement-bar .announcement-bar,
  body #shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
    grid-template-columns:34px minmax(0,1fr) 34px !important;
    padding:0 6px !important;
  }
  body .announcement-bar__list,
  body announcement-bar-item.announcement-bar__item:not([hidden]),
  body .announcement-bar__item:not([hidden]),
  body .announcement-bar__message{
    height:54px !important;
    min-height:54px !important;
  }
  body .announcement-bar__message p{
    height:auto !important;
    min-height:0 !important;
    max-height:42px !important;
    overflow:visible !important;
    font-size:10px !important;
    line-height:14px !important;
    letter-spacing:.01em !important;
    text-overflow:clip !important;
    white-space:normal !important;
  }
  body .announcement-bar .tap-area,
  body .announcement-bar > button{
    width:34px !important;
    height:54px !important;
  }
}

/* 128-2 桌面一级导航：不换行、不挤压；hover/focus 显示二级导航。 */
@media (min-width:1000px){
  body .shopify-section--header,
  body .header,
  body .header__wrapper,
  body desktop-navigation{
    overflow:visible !important;
  }
  body .header__linklist{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    flex-wrap:nowrap !important;
    gap:28px !important;
    white-space:nowrap !important;
  }
  body .header__linklist-link{
    display:inline-flex !important;
    align-items:center !important;
    gap:8px !important;
    color:#171b19 !important;
    font-size:16px !important;
    font-weight:800 !important;
    line-height:1 !important;
    white-space:nowrap !important;
  }
  body .header__linklist-item.has-dropdown > .mega-menu,
  body .header__linklist-item.has-dropdown > .mega-menu[hidden],
  body .header__linklist-item.mm-plus > .nav-dropdown,
  body .header__linklist-item.mm-plus > .nav-dropdown[hidden]{
    display:block !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
  }
  body .header__linklist-item.has-dropdown:hover > .mega-menu,
  body .header__linklist-item.has-dropdown:focus-within > .mega-menu,
  body .header__linklist-item.has-dropdown:hover > .mega-menu[hidden],
  body .header__linklist-item.has-dropdown:focus-within > .mega-menu[hidden],
  body .header__linklist-item.mm-plus:hover > .nav-dropdown,
  body .header__linklist-item.mm-plus:focus-within > .nav-dropdown,
  body .header__linklist-item.mm-plus:hover > .nav-dropdown[hidden],
  body .header__linklist-item.mm-plus:focus-within > .nav-dropdown[hidden]{
    visibility:visible !important;
    opacity:1 !important;
    pointer-events:auto !important;
  }
  body .header__linklist-item.has-dropdown > .mega-menu,
  body .header__linklist-item.has-dropdown > .mega-menu[hidden]{
    position:fixed !important;
    top:124px !important;
    left:50% !important;
    right:auto !important;
    width:min(1180px, calc(100vw - 80px)) !important;
    max-width:calc(100vw - 80px) !important;
    min-width:0 !important;
    transform:translateX(-50%) !important;
    z-index:160 !important;
    box-sizing:border-box !important;
    overflow:visible !important;
    padding:40px !important;
    background:#fff !important;
    border-top:1px solid #e7ebe7 !important;
    box-shadow:0 18px 36px rgba(16,24,20,.08) !important;
  }
}

/* 128-3 PROMOS 百分号：红底白字，覆盖服务器 theme.css 的黑字。 */
body .promos-pct-dot,
body .promos-pct-dot *,
body .header__linklist-link .promos-pct-dot,
body .header__linklist-link .promos-pct-dot *{
  color:#fff !important;
  fill:#fff !important;
}
body .promos-pct-dot,
body .header__linklist-link .promos-pct-dot{
  display:inline-grid !important;
  place-items:center !important;
  width:24px !important;
  height:24px !important;
  min-width:24px !important;
  border-radius:50% !important;
  background:#e00023 !important;
  font-size:12px !important;
  font-weight:900 !important;
  line-height:1 !important;
  text-align:center !important;
}

/* 128-4 移动端头部：隐藏邮件入口和重复搜索，保持 logo / 搜索 / 账户 / 购物车一行。 */
@media (max-width:999px){
  body .header__secondary-links .header__icon-wrapper[aria-controls="newsletter-popup"],
  body .header__secondary-links .header__icon-wrapper.hidden-phone,
  body .header__secondary-links .header__icon-wrapper.hidden-pocket.hidden-lap,
  body .header__secondary-links a[aria-label="Recherche"].hidden-pocket,
  body .header__secondary-links a[aria-label="Recherche"].hidden-pocket.hidden-lap{
    display:none !important;
  }
  body .header__secondary-links a[aria-label="Recherche"].hidden-desk,
  body .header__secondary-links .header__icon-wrapper[aria-label="Recherche"].hidden-desk{
    display:inline-grid !important;
    place-items:center !important;
  }
  body .header__secondary-links .header__icon-list{
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:14px !important;
  }
}
@media (min-width:1000px){
  body .header__secondary-links a[aria-label="Recherche"].hidden-desk,
  body .header__secondary-links .header__icon-wrapper[aria-label="Recherche"].hidden-desk{
    display:none !important;
  }
}

/* 128-5 首页分类圆圈：和下方容器等宽，圆圈更靠拢，不再左右散开。 */
body #main .lh-circats{
  padding-top:44px !important;
  padding-bottom:42px !important;
}
body #main .lh-circats__wrap{
  width:min(var(--lh-final-content), calc(100% - 96px)) !important;
  max-width:var(--lh-final-content) !important;
  margin-inline:auto !important;
}
body #main .lh-circats__track{
  display:flex !important;
  align-items:flex-start !important;
  justify-content:center !important;
  gap:28px !important;
  width:100% !important;
  padding:8px 48px 0 !important;
  overflow:hidden !important;
}
body #main .lh-circats__i{
  flex:0 0 128px !important;
  width:128px !important;
  min-width:128px !important;
  text-align:center !important;
}
body #main .lh-circats__pic{
  width:112px !important;
  height:112px !important;
  margin:0 auto 12px !important;
  border-radius:50% !important;
  background:#f7f8f6 !important;
}
body #main .lh-circats__pic img{
  width:78px !important;
  height:78px !important;
  object-fit:contain !important;
  object-position:center !important;
}
body #main .lh-circats__lbl{
  display:block !important;
  min-height:18px !important;
  color:#202520 !important;
  font-size:13px !important;
  font-weight:700 !important;
  line-height:18px !important;
}
@media (max-width:999px){
  body #main .lh-circats__wrap{
    width:100% !important;
    max-width:none !important;
  }
  body #main .lh-circats__track{
    justify-content:flex-start !important;
    gap:22px !important;
    padding:8px 24px 4px !important;
    overflow-x:auto !important;
    scroll-snap-type:x mandatory !important;
  }
  body #main .lh-circats__i{
    flex:0 0 124px !important;
    scroll-snap-align:center !important;
  }
}

/* 128-6 首页热卖：4 个产品严格等高，图片宽高一致，标题过长省略。 */
@media (min-width:1000px){
  body #main .hp-sec--best{
    padding-top:8px !important;
    overflow:hidden !important;
  }
  body #main .hp-sec--best .hp-wrap,
  body #main .hp-sec--best .hp-bv-wrap{
    width:min(var(--lh-final-content), calc(100% - 96px)) !important;
    max-width:var(--lh-final-content) !important;
    margin-inline:auto !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best [data-scroller]{
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-track{
    display:grid !important;
    grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
    align-items:stretch !important;
    gap:32px !important;
    width:100% !important;
    margin:0 auto !important;
    padding:34px 0 8px !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-track > .hp-pcard{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    height:548px !important;
    min-height:548px !important;
    max-height:548px !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-track > .hp-pcard:nth-child(n+5){
    display:none !important;
  }
  body #main .hp-sec--best .hp-pcard > a{
    display:grid !important;
    grid-template-rows:292px 256px !important;
    width:100% !important;
    height:548px !important;
    min-height:548px !important;
    max-height:548px !important;
    overflow:visible !important;
    border:1px solid #e6ebe7 !important;
    border-radius:10px !important;
    background:#fff !important;
    box-shadow:0 14px 30px rgba(23,34,27,.045) !important;
  }
  body #main .hp-sec--best .hp-pc-media{
    position:relative !important;
    width:100% !important;
    height:292px !important;
    min-height:292px !important;
    max-height:292px !important;
    aspect-ratio:auto !important;
    overflow:visible !important;
    border-radius:10px 10px 0 0 !important;
    background:#f5f7f4 !important;
  }
  body #main .hp-sec--best .hp-pc-media img,
  body #main .hp-sec--best .hp-pc-media .day,
  body #main .hp-sec--best .hp-pc-media .night{
    position:absolute !important;
    inset:0 !important;
    display:block !important;
    width:100% !important;
    height:292px !important;
    min-width:100% !important;
    min-height:292px !important;
    max-width:none !important;
    max-height:none !important;
    border-radius:10px 10px 0 0 !important;
    object-fit:cover !important;
    object-position:center center !important;
    opacity:1 !important;
    visibility:visible !important;
    filter:none !important;
    transform:none !important;
  }
  body #main .hp-sec--best .hp-pc-media .night{
    opacity:0 !important;
  }
  body #main .hp-sec--best .hp-pcard:hover .hp-pc-media .day{
    opacity:0 !important;
    filter:none !important;
    transform:none !important;
  }
  body #main .hp-sec--best .hp-pcard:hover .hp-pc-media .night{
    opacity:1 !important;
    filter:none !important;
    transform:none !important;
  }
  body #main .hp-sec--best .hp-bdgs{
    position:absolute !important;
    left:0 !important;
    top:-16px !important;
    z-index:8 !important;
    display:flex !important;
    align-items:flex-start !important;
    pointer-events:none !important;
  }
  body #main .hp-sec--best .hp-bdg--remises{
    position:static !important;
    height:32px !important;
    max-width:calc(100% - 14px) !important;
    padding:0 14px !important;
    border-radius:5px 5px 5px 0 !important;
    background:#d85f39 !important;
    color:#fff !important;
    font-size:13px !important;
    font-weight:800 !important;
    line-height:32px !important;
    white-space:nowrap !important;
    box-shadow:none !important;
  }
  body #main .hp-sec--best .hp-bdg--solar{
    position:absolute !important;
    left:16px !important;
    bottom:18px !important;
    z-index:6 !important;
    height:26px !important;
    min-width:82px !important;
    padding:0 13px !important;
    border-radius:999px !important;
    background:#f4ad3d !important;
    color:#fff !important;
    font-size:11px !important;
    font-weight:800 !important;
    line-height:26px !important;
    letter-spacing:.04em !important;
  }
  body #main .hp-sec--best .hp-pc-fav{
    position:absolute !important;
    right:14px !important;
    bottom:14px !important;
    z-index:7 !important;
    width:38px !important;
    height:38px !important;
    border-radius:50% !important;
    background:#fff !important;
    box-shadow:0 5px 14px rgba(0,0,0,.13) !important;
  }
  body #main .hp-sec--best .hp-pc-body{
    display:grid !important;
    grid-template-rows:30px 44px 24px 46px 26px !important;
    gap:7px !important;
    height:256px !important;
    min-height:256px !important;
    max-height:256px !important;
    padding:18px 18px 16px !important;
    overflow:hidden !important;
  }
  body #main .hp-sec--best .hp-pc-pvc{
    align-self:start !important;
    width:max-content !important;
    max-width:100% !important;
    height:30px !important;
    padding:0 15px !important;
    border-radius:999px !important;
    background:#d85f39 !important;
    color:#fff !important;
    font-size:14px !important;
    font-weight:800 !important;
    line-height:30px !important;
  }
  body #main .hp-sec--best .hp-pc-name{
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    width:100% !important;
    height:44px !important;
    max-height:44px !important;
    overflow:hidden !important;
    color:var(--lh-final-text) !important;
    font-size:16px !important;
    font-weight:800 !important;
    line-height:22px !important;
    white-space:normal !important;
    text-overflow:clip !important;
  }
  body #main .hp-sec--best .hp-pc-rate{
    display:flex !important;
    align-items:center !important;
    gap:8px !important;
    height:24px !important;
    margin:0 !important;
    overflow:hidden !important;
    color:var(--lh-final-muted) !important;
    font-size:13px !important;
    line-height:24px !important;
  }
  body #main .hp-sec--best .hp-stars{
    flex:0 0 auto !important;
    color:#f5a623 !important;
    font-size:15px !important;
    line-height:1 !important;
    letter-spacing:1px !important;
  }
  body #main .hp-sec--best .hp-pc-price{
    display:block !important;
    height:46px !important;
    margin:0 !important;
    overflow:hidden !important;
    color:var(--lh-final-text) !important;
    line-height:1.18 !important;
  }
  body #main .hp-sec--best .hp-pc-price b{
    display:block !important;
    color:#101814 !important;
    font-size:24px !important;
    font-weight:900 !important;
    line-height:28px !important;
  }
  body #main .hp-sec--best .hp-pc-oldprice{
    display:block !important;
    margin-top:2px !important;
    color:#a3a7a3 !important;
    font-size:14px !important;
    line-height:16px !important;
  }
  body #main .hp-sec--best .hp-pc-stock{
    display:flex !important;
    align-items:center !important;
    gap:8px !important;
    height:26px !important;
    margin:0 !important;
    color:#2f7445 !important;
    font-size:14px !important;
    font-weight:800 !important;
  }
}
@media (max-width:999px){
  body #main .hp-sec--best .hp-wrap,
  body #main .hp-sec--best .hp-bv-wrap{
    width:100% !important;
    max-width:none !important;
    overflow:hidden !important;
  }
  body #main .hp-sec--best [data-scroller]{
    overflow-x:auto !important;
    padding:0 24px 6px !important;
    scroll-snap-type:x mandatory !important;
  }
  body #main .hp-sec--best .hp-track{
    display:flex !important;
    gap:18px !important;
    width:max-content !important;
    padding:30px 0 8px !important;
  }
  body #main .hp-sec--best .hp-pcard{
    flex:0 0 min(78vw, 330px) !important;
    width:min(78vw, 330px) !important;
    height:520px !important;
    scroll-snap-align:center !important;
  }
  body #main .hp-sec--best .hp-pcard > a{
    display:grid !important;
    grid-template-rows:260px 260px !important;
    height:520px !important;
  }
  body #main .hp-sec--best .hp-pc-media,
  body #main .hp-sec--best .hp-pc-media img,
  body #main .hp-sec--best .hp-pc-media .day,
  body #main .hp-sec--best .hp-pc-media .night{
    height:260px !important;
  }
}

/* 128-7 首页应用场景与购物场景：文字和图片分开，不压图、不叠标题。 */
body #main .hp-space-mosaic{
  width:min(var(--lh-final-content), calc(100% - 96px)) !important;
  max-width:var(--lh-final-content) !important;
  margin:0 auto 56px !important;
  align-items:start !important;
}
body #main .hp-space-tile{
  display:grid !important;
  grid-template-rows:minmax(0,1fr) 24px !important;
  gap:10px !important;
  overflow:visible !important;
  text-decoration:none !important;
}
body #main .hp-space-tile img,
body #main .hp-space-tile--large img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  border-radius:8px !important;
  object-fit:cover !important;
  object-position:center center !important;
  opacity:1 !important;
  visibility:visible !important;
  filter:none !important;
  transform:none !important;
}
body #main .hp-space-tile b{
  display:block !important;
  height:24px !important;
  margin:0 !important;
  color:#1d251f !important;
  font-size:13px !important;
  font-weight:700 !important;
  line-height:24px !important;
  text-align:center !important;
}
@media (min-width:1000px){
  body #main .hp-space-mosaic{
    display:grid !important;
    grid-template-columns:2fr 1fr 1fr !important;
    grid-auto-rows:184px !important;
    gap:14px !important;
  }
  body #main .hp-space-tile--large{
    grid-row:span 2 !important;
  }
}

/* 128-8 footer / trust strip：不改绿底，只把所有文字压成白色系。 */
body .v15-trust-strip,
body .v15-trust-strip *,
body .v15-trust-strip [style],
body .shopify-section-group-footer-group,
body .shopify-section-group-footer-group *,
body .shopify-section-group-footer-group [style],
body .shopify-section--footer,
body .shopify-section--footer *,
body .shopify-section--footer [style],
body footer,
body footer *,
body footer [style]{
  color:rgba(255,255,255,.84) !important;
}
body .v15-trust-strip h1,
body .v15-trust-strip h2,
body .v15-trust-strip h3,
body .v15-trust-strip h4,
body .v15-trust-strip strong,
body .v15-trust-strip b,
body .v15-trust-strip .heading,
body .v15-trust-strip .v15-trust-rating-score,
body .v15-trust-strip .v15-trust-rating-score strong,
body .shopify-section-group-footer-group h1,
body .shopify-section-group-footer-group h2,
body .shopify-section-group-footer-group h3,
body .shopify-section-group-footer-group h4,
body .shopify-section-group-footer-group strong,
body .shopify-section-group-footer-group b,
body .shopify-section-group-footer-group .heading,
body .shopify-section-group-footer-group .footer__item-title,
body .shopify-section--footer h1,
body .shopify-section--footer h2,
body .shopify-section--footer h3,
body .shopify-section--footer h4,
body .shopify-section--footer strong,
body .shopify-section--footer b,
body .shopify-section--footer .heading,
body .shopify-section--footer .footer__item-title,
body footer h1,
body footer h2,
body footer h3,
body footer h4,
body footer strong,
body footer b,
body footer .heading,
body footer .footer__item-title{
  color:#fff !important;
}
body .v15-trust-strip a,
body .v15-trust-strip a *,
body .shopify-section-group-footer-group a,
body .shopify-section-group-footer-group a *,
body .shopify-section--footer a,
body .shopify-section--footer a *,
body footer a,
body footer a *{
  color:#fff !important;
}

/* ==========================================================================
   128. 2026-06-23 全站最终视觉校准层
   --------------------------------------------------------------------------
   这段必须放在文件最后，作用是压住旧模板中零散残留的宽度、颜色、卡片图片
   和移动端头部规则。需求文档里反复指出的问题包括：
   1. 顶部公告 PC 不能换行，M 端不能截断。
   2. M 端头部不能出现两个搜索图标，也不能出现多余邮件图标。
   3. 首页热卖产品 4 个卡片必须同宽、同高，图片区域同高，文字过长省略。
   4. 图片角标左侧与图片左边对齐，角标半露出图片外，左下角为直角。
   5. 鼠标 hover 只允许切到夜景/深色状态，不允许模糊、放大导致排版跳动。
   6. footer 保留原来的绿色背景，但所有文字必须是白色系。
   ========================================================================== */

/* 128-1 顶部公告栏：桌面一行居中，手机两行内完整显示。 */
@media (min-width:1000px){
  #shopify-section-sections--25458834178427__announcement-bar,
  #shopify-section-sections--25458834178427__announcement-bar section,
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar,
  .shopify-section--announcement-bar,
  .shopify-section--announcement-bar section,
  .shopify-section--announcement-bar .announcement-bar{
    height:42px !important;
    min-height:42px !important;
    overflow:hidden !important;
    background:#262626 !important;
  }
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__list,
  .shopify-section--announcement-bar .announcement-bar__list{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:100% !important;
    max-width:none !important;
    height:42px !important;
    padding:0 72px !important;
    overflow:hidden !important;
  }
  #shopify-section-sections--25458834178427__announcement-bar announcement-bar-item:not([hidden]),
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message,
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message p,
  .shopify-section--announcement-bar announcement-bar-item:not([hidden]),
  .shopify-section--announcement-bar .announcement-bar__message,
  .shopify-section--announcement-bar .announcement-bar__message p{
    display:block !important;
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
    height:42px !important;
    margin:0 !important;
    padding:0 !important;
    overflow:hidden !important;
    color:#fff !important;
    font-size:14px !important;
    font-weight:800 !important;
    line-height:42px !important;
    text-align:center !important;
    white-space:nowrap !important;
    text-overflow:clip !important;
  }
}

/* 128-2 移动端头部：隐藏桌面搜索和邮件按钮，只保留汉堡、Logo、一个搜索、账户、购物车。 */
@media (max-width:999px){
  body .header__icon-list > [aria-controls="newsletter-popup"],
  body .header__icon-list > a[aria-label="Recherche"].hidden-pocket.hidden-lap{
    display:none !important;
  }
  body .header__icon-list > a[aria-label="Recherche"].hidden-desk{
    display:inline-grid !important;
    place-items:center !important;
  }
  body .header__icon-list{
    display:flex !important;
    align-items:center !important;
    gap:14px !important;
  }
}

/* 128-3 一级导航：PROMOS 圆点固定红底白字，避免旧样式回到红底黑字。 */
body .header__linklist-link .promos-pct-dot,
body .promos-pct-dot,
body .promos-pct-dot *{
  color:#fff !important;
}
body .header__linklist-link .promos-pct-dot,
body .promos-pct-dot{
  display:inline-grid !important;
  place-items:center !important;
  width:24px !important;
  height:24px !important;
  min-width:24px !important;
  border-radius:50% !important;
  background:#df2638 !important;
  font-size:13px !important;
  font-weight:900 !important;
  line-height:1 !important;
}

/* 128-4 首页热卖产品：4 张卡片等宽等高；图片高度一致；多余产品隐藏。 */
@media (min-width:1000px){
  body #main .hp-sec--best .hp-wrap,
  body #main .hp-sec--best .hp-bv-wrap{
    width:min(1220px, calc(100vw - 96px)) !important;
    max-width:1220px !important;
    margin-left:auto !important;
    margin-right:auto !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best [data-scroller]{
    width:100% !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-track{
    display:grid !important;
    grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
    gap:30px !important;
    align-items:stretch !important;
    width:100% !important;
    margin:0 !important;
    padding:20px 0 8px !important;
    overflow:visible !important;
    scroll-snap-type:none !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    height:552px !important;
    min-height:552px !important;
    max-height:552px !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard:nth-child(n+5){
    display:none !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard > a{
    display:grid !important;
    grid-template-rows:292px 260px !important;
    width:100% !important;
    height:552px !important;
    min-height:552px !important;
    max-height:552px !important;
    overflow:visible !important;
    border:1px solid #e5e9e5 !important;
    border-radius:12px !important;
    background:#fff !important;
    box-shadow:0 14px 32px rgba(17,24,20,.045) !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media{
    position:relative !important;
    display:block !important;
    width:100% !important;
    height:292px !important;
    min-height:292px !important;
    max-height:292px !important;
    overflow:visible !important;
    border-radius:12px 12px 0 0 !important;
    background:#f5f7f5 !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media img,
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media .day,
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media .night{
    position:absolute !important;
    inset:0 !important;
    display:block !important;
    width:100% !important;
    height:292px !important;
    min-width:100% !important;
    min-height:292px !important;
    max-width:none !important;
    max-height:292px !important;
    border-radius:12px 12px 0 0 !important;
    object-fit:cover !important;
    object-position:center center !important;
    opacity:1 !important;
    visibility:visible !important;
    filter:none !important;
    transform:none !important;
    transition:opacity .2s ease !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard:hover,
  body #main .hp-sec--best .hp-track > article.hp-pcard:hover img,
  body #main .hp-sec--best .hp-track > article.hp-pcard:hover .day,
  body #main .hp-sec--best .hp-track > article.hp-pcard:hover .night{
    filter:none !important;
    transform:none !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-body{
    display:flex !important;
    flex-direction:column !important;
    height:260px !important;
    min-height:260px !important;
    max-height:260px !important;
    padding:18px 18px 16px !important;
    gap:7px !important;
    overflow:hidden !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-name{
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    height:42px !important;
    min-height:42px !important;
    max-height:42px !important;
    margin:0 !important;
    overflow:hidden !important;
    font-size:16px !important;
    font-weight:800 !important;
    line-height:21px !important;
    white-space:normal !important;
    text-overflow:ellipsis !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-rate{
    min-height:20px !important;
    margin:0 !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-stock{
    margin-top:auto !important;
  }
  body #main .hp-sec--best .hp-bdg--remises{
    position:absolute !important;
    left:0 !important;
    top:-15px !important;
    z-index:6 !important;
    height:34px !important;
    padding:0 15px !important;
    border-radius:4px 7px 7px 0 !important;
    background:#d85f39 !important;
    color:#fff !important;
    font-size:13px !important;
    font-weight:800 !important;
    line-height:34px !important;
    white-space:nowrap !important;
    box-shadow:0 10px 20px rgba(216,95,57,.18) !important;
  }
  body #main .hp-sec--best .hp-bdg--solar{
    left:14px !important;
    bottom:15px !important;
    z-index:5 !important;
  }
  body #main .hp-sec--best .hp-fav{
    right:14px !important;
    bottom:13px !important;
    z-index:5 !important;
    width:42px !important;
    height:42px !important;
  }
}

/* 128-5 首页空间图：标题与图片保持独立行，图片下沿对齐，避免压住下方 shopping 标题。 */
@media (min-width:1000px){
  body #main .hp-space-mosaic{
    width:min(1220px, calc(100vw - 96px)) !important;
    max-width:1220px !important;
    margin:0 auto 58px !important;
    display:grid !important;
    grid-template-columns:2fr 1fr 1fr !important;
    grid-auto-rows:184px !important;
    gap:14px !important;
    align-items:start !important;
  }
  body #main .hp-space-tile{
    display:grid !important;
    grid-template-rows:minmax(0, 1fr) 28px !important;
    gap:10px !important;
    overflow:visible !important;
  }
  body #main .hp-space-tile--large{
    grid-row:span 2 !important;
  }
  body #main .hp-space-tile img,
  body #main .hp-space-tile--large img{
    display:block !important;
    width:100% !important;
    height:100% !important;
    min-height:0 !important;
    border-radius:8px !important;
    object-fit:cover !important;
    object-position:center center !important;
    filter:none !important;
    transform:none !important;
  }
  body #main .hp-space-tile b{
    display:block !important;
    height:28px !important;
    margin:0 !important;
    color:#1f2521 !important;
    font-size:13px !important;
    font-weight:700 !important;
    line-height:28px !important;
    text-align:center !important;
  }
}

/* 128-6 Footer：绿底保持不变，文字、链接、标题全部转白，修掉上半段黑字。 */
body .shopify-section-group-footer-group,
body .shopify-section-group-footer-group *,
body .shopify-section-group-footer-group [style],
body .shopify-section--footer,
body .shopify-section--footer *,
body .shopify-section--footer [style],
body footer,
body footer *,
body footer [style]{
  color:rgba(255,255,255,.84) !important;
}
body .shopify-section-group-footer-group h1,
body .shopify-section-group-footer-group h2,
body .shopify-section-group-footer-group h3,
body .shopify-section-group-footer-group h4,
body .shopify-section-group-footer-group strong,
body .shopify-section-group-footer-group b,
body .shopify-section-group-footer-group .heading,
body .shopify-section-group-footer-group .footer__item-title,
body .shopify-section--footer h1,
body .shopify-section--footer h2,
body .shopify-section--footer h3,
body .shopify-section--footer h4,
body .shopify-section--footer strong,
body .shopify-section--footer b,
body .shopify-section--footer .heading,
body .shopify-section--footer .footer__item-title,
body footer h1,
body footer h2,
body footer h3,
body footer h4,
body footer strong,
body footer b,
body footer .heading,
body footer .footer__item-title{
  color:#fff !important;
}
body .shopify-section-group-footer-group a,
body .shopify-section-group-footer-group a *,
body .shopify-section--footer a,
body .shopify-section--footer a *,
body footer a,
body footer a *{
  color:#fff !important;
}

/* ==========================================================================
   124. EOF 最终锁定层
   --------------------------------------------------------------------------
   重要：前面文件中存在多份历史样式，122/123 曾被插在中间，后续 120 段仍会覆盖。
   因此本段放在真实文件末尾，作为浏览器最终生效的全站修复层。
   ========================================================================== */

/* 124-1 顶部公告：PC 单行完整；移动端清除 186px 宽度和省略号。 */
body .announcement-bar,
body .announcement-bar--multiple{
  height:42px !important;
  min-height:42px !important;
  overflow:hidden !important;
  background:#262626 !important;
}
body .announcement-bar__item[hidden],
body announcement-bar-item[hidden]{
  display:none !important;
}
body .announcement-bar__list,
body announcement-bar-item.announcement-bar__item:not([hidden]),
body .announcement-bar__message,
body .announcement-bar__message p{
  width:100% !important;
  max-width:none !important;
  min-width:0 !important;
  height:42px !important;
  margin:0 !important;
  overflow:hidden !important;
  text-overflow:clip !important;
  white-space:nowrap !important;
}
body .announcement-bar__list{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 72px !important;
}
body .announcement-bar__message{
  display:block !important;
  padding:0 !important;
}
body .announcement-bar__message p{
  display:block !important;
  padding:0 !important;
  color:#fff !important;
  font-size:14px !important;
  font-weight:800 !important;
  line-height:42px !important;
  letter-spacing:.015em !important;
  text-align:center !important;
}
body .announcement-bar .tap-area{
  position:absolute !important;
  top:0 !important;
  z-index:3 !important;
  display:grid !important;
  place-items:center !important;
  width:52px !important;
  height:42px !important;
  color:#fff !important;
}
body .announcement-bar .tap-area[data-action="prev"]{ left:22px !important; }
body .announcement-bar .tap-area[data-action="next"]{ right:22px !important; }
@media (max-width:999px){
  body .announcement-bar,
  body .announcement-bar--multiple,
  body .announcement-bar__list,
  body announcement-bar-item.announcement-bar__item:not([hidden]),
  body .announcement-bar__message,
  body .announcement-bar__message p{
    height:40px !important;
    min-height:40px !important;
  }
  body .announcement-bar__list{
    padding:0 36px !important;
  }
  body .announcement-bar__message p{
    font-size:9.5px !important;
    line-height:40px !important;
    letter-spacing:0 !important;
  }
  body .announcement-bar .tap-area{
    width:36px !important;
    height:40px !important;
  }
  body .announcement-bar .tap-area[data-action="prev"]{ left:6px !important; }
  body .announcement-bar .tap-area[data-action="next"]{ right:6px !important; }
}

/* 124-2 导航：二级菜单 hover 显示；PROMOS % 固定红底白字；移动端只保留一个搜索。 */
body .shopify-section--header,
body .header,
body .header__wrapper,
body desktop-navigation{
  overflow:visible !important;
}
body .header__linklist{
  display:flex !important;
  align-items:center !important;
  flex-wrap:nowrap !important;
  gap:30px !important;
  white-space:nowrap !important;
}
body .header__linklist-link{
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  color:#181c1a !important;
  font-size:16px !important;
  font-weight:800 !important;
  line-height:1 !important;
  white-space:nowrap !important;
}
body .header__linklist-item.has-dropdown:hover > .mega-menu,
body .header__linklist-item.has-dropdown:focus-within > .mega-menu,
body .header__linklist-item.mm-plus:hover > .nav-dropdown,
body .header__linklist-item.mm-plus:focus-within > .nav-dropdown{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:auto !important;
}
body .mega-menu{
  position:absolute !important;
  left:0 !important;
  right:0 !important;
  top:100% !important;
  z-index:80 !important;
  min-height:300px !important;
  padding:40px 0 !important;
  background:#fff !important;
  border-top:1px solid #e7ebe7 !important;
  box-shadow:0 18px 36px rgba(16,24,20,.08) !important;
}
body .promos-pct-dot{
  display:inline-grid !important;
  place-items:center !important;
  width:24px !important;
  height:24px !important;
  border-radius:999px !important;
  background:#df2638 !important;
  color:#fff !important;
  font-size:13px !important;
  font-weight:900 !important;
  line-height:1 !important;
}
@media (max-width:999px){
  body .header__icon-wrapper[aria-controls="newsletter-popup"],
  body .header__icon-wrapper.hidden-phone,
  body .header__icon-wrapper.hidden-pocket.hidden-lap{
    display:none !important;
  }
  body .header__icon-wrapper[aria-label="Recherche"].hidden-desk{
    display:inline-grid !important;
    place-items:center !important;
  }
}

/* 124-3 首页热卖：桌面 4 个，图片同高、卡片同高、文字不撑高；角标露出且左对齐。 */
@media (min-width:1000px){
  body #main .hp-sec--best .hp-wrap,
  body #main .hp-sec--best .hp-bv-wrap{
    width:min(1220px, calc(100% - 96px)) !important;
    max-width:1220px !important;
    margin-left:auto !important;
    margin-right:auto !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best [data-scroller]{
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-track{
    display:grid !important;
    grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
    gap:30px !important;
    width:100% !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-track > .hp-pcard{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    height:552px !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-track > .hp-pcard:nth-child(n+5){
    display:none !important;
  }
  body #main .hp-sec--best .hp-pcard > a{
    display:grid !important;
    grid-template-rows:292px 260px !important;
    height:552px !important;
    overflow:visible !important;
    border:1px solid #e5e9e5 !important;
    border-radius:12px !important;
    background:#fff !important;
    box-shadow:0 14px 32px rgba(17,24,20,.045) !important;
  }
  body #main .hp-sec--best .hp-pc-media{
    position:relative !important;
    width:100% !important;
    height:292px !important;
    overflow:visible !important;
    border-radius:12px 12px 0 0 !important;
    background:#f5f7f5 !important;
  }
  body #main .hp-sec--best .hp-pc-media img,
  body #main .hp-sec--best .hp-pc-media .day,
  body #main .hp-sec--best .hp-pc-media .night{
    display:block !important;
    width:100% !important;
    height:292px !important;
    border-radius:12px 12px 0 0 !important;
    object-fit:cover !important;
    object-position:center center !important;
    opacity:1 !important;
    visibility:visible !important;
    filter:none !important;
    transform:none !important;
  }
  body #main .hp-sec--best .hp-pcard:hover .hp-pc-media img,
  body #main .hp-sec--best .hp-pcard:hover .hp-pc-media .day,
  body #main .hp-sec--best .hp-pcard:hover .hp-pc-media .night{
    filter:none !important;
    transform:none !important;
  }
  body #main .hp-sec--best .hp-bdgs{
    position:absolute !important;
    inset:0 auto auto 0 !important;
    z-index:4 !important;
    pointer-events:none !important;
  }
  body #main .hp-sec--best .hp-bdg--remises{
    position:absolute !important;
    left:0 !important;
    top:-15px !important;
    height:34px !important;
    padding:0 15px !important;
    border-radius:4px 7px 7px 0 !important;
    background:#d85f39 !important;
    color:#fff !important;
    font-size:13px !important;
    font-weight:800 !important;
    line-height:34px !important;
    white-space:nowrap !important;
  }
  body #main .hp-sec--best .hp-bdg--solar{
    position:absolute !important;
    left:16px !important;
    bottom:18px !important;
    height:26px !important;
    padding:0 13px !important;
    border-radius:999px !important;
    background:#f6ad3f !important;
    color:#fff !important;
    font-size:11px !important;
    font-weight:800 !important;
    line-height:26px !important;
    letter-spacing:.05em !important;
  }
  body #main .hp-sec--best .hp-pc-fav{
    right:14px !important;
    bottom:18px !important;
    z-index:5 !important;
    width:40px !important;
    height:40px !important;
  }
  body #main .hp-sec--best .hp-pc-body{
    display:grid !important;
    grid-template-rows:34px 58px 26px 48px 28px !important;
    gap:7px !important;
    height:260px !important;
    padding:18px 18px 16px !important;
    overflow:hidden !important;
  }
  body #main .hp-sec--best .hp-pc-price{ grid-row:2 !important; margin:0 !important; }
  body #main .hp-sec--best .hp-pc-name{
    grid-row:3 !important;
    display:block !important;
    height:26px !important;
    max-height:26px !important;
    overflow:hidden !important;
    color:#18201b !important;
    font-size:15px !important;
    font-weight:800 !important;
    line-height:26px !important;
    white-space:nowrap !important;
    text-overflow:ellipsis !important;
  }
}

/* 124-4 首页中段与深层图片：固定比例，不压文字，不显示灰块。 */
body #main .hp-space-mosaic{
  width:min(1220px, calc(100% - 96px)) !important;
  max-width:1220px !important;
  margin:0 auto 54px !important;
  align-items:start !important;
}
body #main .hp-space-tile{
  display:grid !important;
  grid-template-rows:auto 26px !important;
  gap:12px !important;
  overflow:visible !important;
}
body #main .hp-space-tile img,
body #main .hp-space-tile--large img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  border-radius:8px !important;
  object-fit:cover !important;
  object-position:center center !important;
  opacity:1 !important;
  visibility:visible !important;
  filter:none !important;
  transform:none !important;
}
body #main .hp-space-tile b{
  display:block !important;
  height:26px !important;
  margin:0 !important;
  color:#1d251f !important;
  font-size:13px !important;
  font-weight:700 !important;
  line-height:26px !important;
  text-align:center !important;
}
@media (min-width:1000px){
  body #main .hp-space-mosaic{
    display:grid !important;
    grid-template-columns:2fr 1fr 1fr !important;
    grid-auto-rows:184px !important;
    gap:14px !important;
  }
  body #main .hp-space-tile--large{
    grid-row:span 2 !important;
  }
}
body #main .hp-en-media,
body #main .hp-md-media,
body .feature-media,
body .v13-install-card-media,
body .usecase-card{
  background-size:cover !important;
  background-position:center center !important;
  background-repeat:no-repeat !important;
}
body #main .hp-en:nth-child(1) .hp-en-media{ background-image:url("home-media/energie-solaire.webp") !important; }
body #main .hp-en:nth-child(2) .hp-en-media{ background-image:url("home-media/energie-230v.webp") !important; }
body #main .hp-en:nth-child(3) .hp-en-media{ background-image:url("home-media/energie-12v.webp") !important; }
body #main .hp-md:nth-child(1) .hp-md-media{ background-image:url("home-media/media-jean-marc.webp") !important; }
body #main .hp-md:nth-child(2) .hp-md-media{ background-image:url("home-media/media-cnews.webp") !important; }
body #main .hp-md:nth-child(3) .hp-md-media{ background-image:url("home-media/media-bfm.webp") !important; }
body #main .hp-en-media img,
body #main .hp-md-media img,
body .feature-media img,
body .v13-install-card-media img,
body .usecase-card img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center center !important;
  opacity:1 !important;
  visibility:visible !important;
  filter:none !important;
  transform:none !important;
}
body .usecase-card:hover,
body .usecase-card:hover img{
  transform:none !important;
  filter:none !important;
}

/* 124-5 Footer：保留原绿色，支付/物流/评价条与底部所有文字统一白色系。 */
body .v15-trust-strip,
body .shopify-section-group-footer-group,
body .shopify-section--footer,
body footer{
  background:#276b42 !important;
}
body .v15-trust-strip,
body .v15-trust-strip *,
body .v15-trust-strip [style],
body .shopify-section-group-footer-group,
body .shopify-section-group-footer-group *,
body .shopify-section-group-footer-group [style],
body .shopify-section--footer,
body .shopify-section--footer *,
body .shopify-section--footer [style],
body footer,
body footer *,
body footer [style]{
  color:rgba(255,255,255,.86) !important;
}
body .v15-trust-strip h1,
body .v15-trust-strip h2,
body .v15-trust-strip h3,
body .v15-trust-strip h4,
body .v15-trust-strip strong,
body .v15-trust-strip b,
body .v15-trust-strip .heading,
body .v15-trust-strip .v15-trust-rating-score,
body .shopify-section-group-footer-group h1,
body .shopify-section-group-footer-group h2,
body .shopify-section-group-footer-group h3,
body .shopify-section-group-footer-group h4,
body .shopify-section-group-footer-group strong,
body .shopify-section-group-footer-group b,
body .shopify-section-group-footer-group .heading,
body .shopify-section-group-footer-group .footer__item-title,
body .shopify-section--footer h1,
body .shopify-section--footer h2,
body .shopify-section--footer h3,
body .shopify-section--footer h4,
body .shopify-section--footer strong,
body .shopify-section--footer b,
body .shopify-section--footer .heading,
body .shopify-section--footer .footer__item-title,
body footer h1,
body footer h2,
body footer h3,
body footer h4,
body footer strong,
body footer b,
body footer .heading,
body footer .footer__item-title{
  color:#fff !important;
}
body .v15-trust-strip a,
body .v15-trust-strip a *,
body .shopify-section-group-footer-group a,
body .shopify-section-group-footer-group a *,
body .shopify-section--footer a,
body .shopify-section--footer a *,
body footer a,
body footer a *{
  color:#fff !important;
}

/* ==========================================================================
   122. 2026-06-23 全站最终验收锁定层
   --------------------------------------------------------------------------
   说明：
   1. 本段必须保留在 lumihome-unified.css 的最后，专门压住前面旧 theme.css、
      0603-fixes、final-fixes 合并后产生的重复规则。
   2. 用户最新反馈集中在：公告换行、一级导航不弹二级、PROMOS 百分号颜色、
      移动端双搜索、首页热卖卡片不等高、图片灰块、首页中段错位、footer 黑字。
   3. 本段只做最终视觉锁定，不再新增零散 CSS 文件。
   ========================================================================== */

/* 122-1 顶部公告：只显示当前第一条，强制单行居中，避免“FRANCE CONTINENTALE”掉到第二行。 */
body .announcement-bar,
body .announcement-bar--multiple{
  min-height:42px !important;
  height:42px !important;
  overflow:hidden !important;
  background:#262626 !important;
}
body .announcement-bar__list{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  min-width:0 !important;
  height:42px !important;
  overflow:hidden !important;
}
body .announcement-bar__item[hidden],
body announcement-bar-item[hidden]{
  display:none !important;
}
body .announcement-bar__item,
body announcement-bar-item.announcement-bar__item{
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  height:42px !important;
}
body .announcement-bar__message,
body .announcement-bar__message p{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  height:42px !important;
  margin:0 !important;
  padding:0 72px !important;
  overflow:hidden !important;
  color:#fff !important;
  font-size:14px !important;
  font-weight:800 !important;
  line-height:42px !important;
  letter-spacing:.015em !important;
  text-align:center !important;
  white-space:nowrap !important;
  text-overflow:clip !important;
}
body .announcement-bar .tap-area{
  position:absolute !important;
  top:0 !important;
  z-index:3 !important;
  display:grid !important;
  place-items:center !important;
  width:52px !important;
  height:42px !important;
  color:#fff !important;
}
body .announcement-bar .tap-area[data-action="prev"]{ left:22px !important; }
body .announcement-bar .tap-area[data-action="next"]{ right:22px !important; }

/* 122-2 全站头部：一级导航 hover 必须弹出二级；PROMOS 百分号红底白字；桌面导航不换行。 */
body .shopify-section--header,
body .header,
body .header__wrapper,
body desktop-navigation{
  overflow:visible !important;
}
body .header__linklist{
  display:flex !important;
  align-items:center !important;
  flex-wrap:nowrap !important;
  gap:30px !important;
  white-space:nowrap !important;
}
body .header__linklist-link{
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  color:#181c1a !important;
  font-size:16px !important;
  font-weight:800 !important;
  line-height:1 !important;
  white-space:nowrap !important;
}
body .header__linklist-item.has-dropdown:hover > .mega-menu,
body .header__linklist-item.has-dropdown:focus-within > .mega-menu,
body .header__linklist-item.mm-plus:hover > .nav-dropdown,
body .header__linklist-item.mm-plus:focus-within > .nav-dropdown{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:auto !important;
}
body .header__linklist-item.has-dropdown:hover > .mega-menu[hidden],
body .header__linklist-item.has-dropdown:focus-within > .mega-menu[hidden]{
  display:block !important;
}
body .header__linklist-item.mm-plus:hover > .nav-dropdown[hidden],
body .header__linklist-item.mm-plus:focus-within > .nav-dropdown[hidden]{
  display:block !important;
}
body .mega-menu{
  position:absolute !important;
  left:0 !important;
  right:0 !important;
  top:100% !important;
  z-index:80 !important;
  min-height:300px !important;
  padding:40px 0 !important;
  background:#fff !important;
  border-top:1px solid #e7ebe7 !important;
  box-shadow:0 18px 36px rgba(16,24,20,.08) !important;
}
body .promos-pct-dot{
  display:inline-grid !important;
  place-items:center !important;
  width:24px !important;
  height:24px !important;
  border-radius:999px !important;
  background:#df2638 !important;
  color:#fff !important;
  font-size:13px !important;
  font-weight:900 !important;
  line-height:1 !important;
}

/* 122-3 移动端头部：保留汉堡、LOGO、一个搜索、账户/购物车；隐藏邮件和重复搜索。 */
@media (max-width:999px){
  body .announcement-bar,
  body .announcement-bar--multiple,
  body .announcement-bar__list,
  body .announcement-bar__item,
  body announcement-bar-item.announcement-bar__item,
  body .announcement-bar__message,
  body .announcement-bar__message p{
    height:40px !important;
    min-height:40px !important;
  }
  body .announcement-bar__message,
  body .announcement-bar__message p{
    padding:0 48px !important;
    font-size:12px !important;
    line-height:40px !important;
    letter-spacing:0 !important;
  }
  body .announcement-bar .tap-area{
    width:40px !important;
    height:40px !important;
  }
  body .announcement-bar .tap-area[data-action="prev"]{ left:8px !important; }
  body .announcement-bar .tap-area[data-action="next"]{ right:8px !important; }
  body .header__icon-list{
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:16px !important;
  }
  body .header__icon-wrapper[aria-controls="newsletter-popup"],
  body .header__icon-wrapper.hidden-phone,
  body .header__icon-wrapper.hidden-pocket.hidden-lap{
    display:none !important;
  }
  body .header__icon-wrapper[aria-label="Recherche"].hidden-desk{
    display:inline-grid !important;
    place-items:center !important;
  }
  body .header__icon-list .header__icon-wrapper[aria-label="Recherche"].hidden-desk ~ .header__icon-wrapper[aria-label="Recherche"]{
    display:none !important;
  }
  body .header__logo,
  body .header__logo-link{
    min-width:132px !important;
    max-width:156px !important;
  }
}

/* 122-4 首页分类圆圈：容器与下方模块同宽；圆圈更大但间距收紧，避免散成两边。 */
body #main .lh-circats,
body #main .lh-circats__wrap{
  max-width:1220px !important;
  width:min(1220px, calc(100% - 96px)) !important;
  margin-left:auto !important;
  margin-right:auto !important;
}
body #main .lh-circats__track{
  display:grid !important;
  grid-template-columns:repeat(7, minmax(116px, 1fr)) !important;
  align-items:start !important;
  justify-items:center !important;
  gap:18px !important;
  overflow:visible !important;
}
body #main .lh-circats__i{
  width:132px !important;
  max-width:132px !important;
  text-align:center !important;
}
body #main .lh-circats__circle{
  width:118px !important;
  height:118px !important;
  margin:0 auto 12px !important;
  border-radius:50% !important;
  background:#f6f8f6 !important;
  border:1px solid #edf0ed !important;
}
body #main .lh-circats__circle img{
  display:block !important;
  width:76% !important;
  height:76% !important;
  object-fit:contain !important;
  margin:auto !important;
}
body #main .lh-circats__label{
  display:block !important;
  color:#202620 !important;
  font-size:13px !important;
  font-weight:700 !important;
  line-height:1.25 !important;
}

/* 122-5 首页热卖产品：桌面固定 4 个等宽等高；图片、文字、价格、库存全部对齐。 */
@media (min-width:1000px){
  body #main .hp-sec--best{
    overflow:hidden !important;
  }
  body #main .hp-sec--best .hp-wrap,
  body #main .hp-sec--best .hp-bv-wrap{
    width:min(1220px, calc(100% - 96px)) !important;
    max-width:1220px !important;
    margin-left:auto !important;
    margin-right:auto !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best [data-scroller]{
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-track{
    display:grid !important;
    grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
    gap:30px !important;
    width:100% !important;
    max-width:100% !important;
    margin:0 auto !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-track > .hp-pcard{
    display:block !important;
    min-width:0 !important;
    width:100% !important;
    height:552px !important;
    min-height:552px !important;
    max-height:552px !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-track > .hp-pcard:nth-child(n+5){
    display:none !important;
  }
  body #main .hp-sec--best .hp-pcard > a{
    display:grid !important;
    grid-template-rows:292px 260px !important;
    height:552px !important;
    min-height:552px !important;
    max-height:552px !important;
    overflow:visible !important;
    border:1px solid #e5e9e5 !important;
    border-radius:12px !important;
    background:#fff !important;
    box-shadow:0 14px 32px rgba(17,24,20,.045) !important;
    text-decoration:none !important;
  }
  body #main .hp-sec--best .hp-pc-media{
    position:relative !important;
    width:100% !important;
    height:292px !important;
    min-height:292px !important;
    max-height:292px !important;
    overflow:visible !important;
    border-radius:12px 12px 0 0 !important;
    background:#f5f7f5 !important;
  }
  body #main .hp-sec--best .hp-pc-media img,
  body #main .hp-sec--best .hp-pc-media .day,
  body #main .hp-sec--best .hp-pc-media .night{
    display:block !important;
    width:100% !important;
    height:292px !important;
    min-height:292px !important;
    max-height:292px !important;
    border-radius:12px 12px 0 0 !important;
    object-fit:cover !important;
    object-position:center center !important;
    opacity:1 !important;
    visibility:visible !important;
    filter:none !important;
    transform:none !important;
  }
  body #main .hp-sec--best .hp-pcard:hover .hp-pc-media img,
  body #main .hp-sec--best .hp-pcard:hover .hp-pc-media .day,
  body #main .hp-sec--best .hp-pcard:hover .hp-pc-media .night{
    filter:none !important;
    transform:none !important;
  }
  body #main .hp-sec--best .hp-bdgs{
    position:absolute !important;
    inset:0 auto auto 0 !important;
    z-index:4 !important;
    pointer-events:none !important;
  }
  body #main .hp-sec--best .hp-bdg--remises{
    position:absolute !important;
    left:0 !important;
    top:-15px !important;
    height:34px !important;
    padding:0 15px !important;
    border-radius:4px 7px 7px 0 !important;
    background:#d85f39 !important;
    color:#fff !important;
    font-size:13px !important;
    font-weight:800 !important;
    line-height:34px !important;
    white-space:nowrap !important;
    box-shadow:0 6px 12px rgba(216,95,57,.18) !important;
  }
  body #main .hp-sec--best .hp-bdg--solar{
    position:absolute !important;
    left:16px !important;
    bottom:18px !important;
    height:26px !important;
    padding:0 13px !important;
    border-radius:999px !important;
    background:#f6ad3f !important;
    color:#fff !important;
    font-size:11px !important;
    font-weight:800 !important;
    line-height:26px !important;
    letter-spacing:.05em !important;
  }
  body #main .hp-sec--best .hp-pc-fav{
    right:14px !important;
    bottom:18px !important;
    z-index:5 !important;
    width:40px !important;
    height:40px !important;
    border-radius:50% !important;
    background:#fff !important;
    box-shadow:0 4px 12px rgba(17,24,20,.16) !important;
  }
  body #main .hp-sec--best .hp-pc-body{
    display:grid !important;
    grid-template-rows:34px 58px 26px 48px 28px !important;
    gap:7px !important;
    height:260px !important;
    min-height:260px !important;
    max-height:260px !important;
    padding:18px 18px 16px !important;
    overflow:hidden !important;
  }
  body #main .hp-sec--best .hp-pc-pvc{
    align-self:start !important;
    width:max-content !important;
    max-width:100% !important;
    height:30px !important;
    margin:0 !important;
    padding:0 16px !important;
    border-radius:999px !important;
    background:#d85f39 !important;
    color:#fff !important;
    font-size:14px !important;
    font-weight:800 !important;
    line-height:30px !important;
  }
  body #main .hp-sec--best .hp-pc-price{
    grid-row:2 !important;
    display:block !important;
    height:58px !important;
    margin:0 !important;
    color:#18201b !important;
  }
  body #main .hp-sec--best .hp-pc-price b{
    display:block !important;
    color:#101814 !important;
    font-size:26px !important;
    font-weight:900 !important;
    line-height:30px !important;
  }
  body #main .hp-sec--best .hp-pc-oldprice{
    display:block !important;
    margin-top:4px !important;
    color:#a4aaa4 !important;
    font-size:15px !important;
    line-height:18px !important;
  }
  body #main .hp-sec--best .hp-pc-name{
    grid-row:3 !important;
    display:block !important;
    height:26px !important;
    max-height:26px !important;
    overflow:hidden !important;
    color:#18201b !important;
    font-size:15px !important;
    font-weight:800 !important;
    line-height:26px !important;
    white-space:nowrap !important;
    text-overflow:ellipsis !important;
  }
  body #main .hp-sec--best .hp-pc-rate{
    grid-row:4 !important;
    display:flex !important;
    align-items:center !important;
    gap:8px !important;
    height:48px !important;
    margin:0 !important;
    color:#8b928c !important;
    font-size:14px !important;
    line-height:24px !important;
  }
  body #main .hp-sec--best .hp-stars{
    color:#f5a623 !important;
    font-size:16px !important;
    line-height:1 !important;
    letter-spacing:1px !important;
  }
  body #main .hp-sec--best .hp-pc-stock{
    grid-row:5 !important;
    display:flex !important;
    align-items:center !important;
    gap:8px !important;
    height:28px !important;
    margin:0 !important;
    color:#2f7445 !important;
    font-size:14px !important;
    font-weight:800 !important;
  }
  body #main .hp-sec--best .hp-pc-stock::before{
    content:"✓" !important;
    display:grid !important;
    place-items:center !important;
    width:19px !important;
    height:19px !important;
    border-radius:50% !important;
    background:#5aac5c !important;
    color:#fff !important;
    font-size:13px !important;
    font-weight:900 !important;
    line-height:1 !important;
  }
}

/* 122-6 首页中段和深层模块：图片容器固定比例、文字与图片分离，防止压字/灰块。 */
body #main .hp-space-mosaic{
  width:min(1220px, calc(100% - 96px)) !important;
  max-width:1220px !important;
  margin:0 auto 54px !important;
  align-items:start !important;
}
body #main .hp-space-tile{
  display:grid !important;
  grid-template-rows:auto 26px !important;
  gap:12px !important;
  overflow:visible !important;
  text-decoration:none !important;
}
body #main .hp-space-tile img,
body #main .hp-space-tile--large img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  border-radius:8px !important;
  object-fit:cover !important;
  object-position:center center !important;
  opacity:1 !important;
  visibility:visible !important;
  filter:none !important;
  transform:none !important;
}
body #main .hp-space-tile b{
  display:block !important;
  height:26px !important;
  margin:0 !important;
  color:#1d251f !important;
  font-size:13px !important;
  font-weight:700 !important;
  line-height:26px !important;
  text-align:center !important;
}
@media (min-width:1000px){
  body #main .hp-space-mosaic{
    display:grid !important;
    grid-template-columns:2fr 1fr 1fr !important;
    grid-auto-rows:184px !important;
    gap:14px !important;
  }
  body #main .hp-space-tile--large{
    grid-row:span 2 !important;
  }
}
@media (max-width:760px){
  body #main .lh-circats,
  body #main .lh-circats__wrap,
  body #main .hp-space-mosaic{
    width:min(100% - 36px, 760px) !important;
  }
  body #main .lh-circats__track{
    display:flex !important;
    gap:18px !important;
    overflow-x:auto !important;
    scroll-snap-type:x mandatory !important;
    padding:2px 2px 10px !important;
  }
  body #main .lh-circats__i{
    flex:0 0 118px !important;
    width:118px !important;
  }
  body #main .lh-circats__circle{
    width:104px !important;
    height:104px !important;
  }
  body #main .hp-space-mosaic{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:18px !important;
  }
  body #main .hp-space-tile,
  body #main .hp-space-tile--large{
    grid-column:auto !important;
    grid-row:auto !important;
  }
  body #main .hp-space-tile img,
  body #main .hp-space-tile--large img{
    height:auto !important;
    aspect-ratio:1.28 / 1 !important;
  }
}

/* 122-7 图片灰块兜底：即使图片加载慢，也先用本地素材铺满容器。 */
body #main .hp-en-media,
body #main .hp-md-media,
body .feature-media,
body .v13-install-card-media,
body .usecase-card{
  background-size:cover !important;
  background-position:center center !important;
  background-repeat:no-repeat !important;
}
body #main .hp-en:nth-child(1) .hp-en-media{ background-image:url("home-media/energie-solaire.webp") !important; }
body #main .hp-en:nth-child(2) .hp-en-media{ background-image:url("home-media/energie-230v.webp") !important; }
body #main .hp-en:nth-child(3) .hp-en-media{ background-image:url("home-media/energie-12v.webp") !important; }
body #main .hp-md:nth-child(1) .hp-md-media{ background-image:url("home-media/media-jean-marc.webp") !important; }
body #main .hp-md:nth-child(2) .hp-md-media{ background-image:url("home-media/media-cnews.webp") !important; }
body #main .hp-md:nth-child(3) .hp-md-media{ background-image:url("home-media/media-bfm.webp") !important; }
body .feature-row:nth-of-type(1) .feature-media{ background-image:url("cat-modules/lampadaire-solaire-led-alto-3000-hauteur-2m-telecommandable-300-a-3000-lumens-257999.webp") !important; }
body .feature-row:nth-of-type(2) .feature-media{ background-image:url("cat-modules/borne-led-solaire-daytona-detecteur-de-mouvements-3-modes-declairages-100-a-1000-lumens-380520.webp") !important; }
body .feature-row:nth-of-type(3) .feature-media{ background-image:url("cat-modules/applique-led-solaire-genova-detecteur-de-mouvements-3-modes-declairage-75-a-600-lumens-328828.webp") !important; }
body .v13-install-card:nth-child(1) .v13-install-card-media,
body .usecase-card:nth-child(1){ background-image:url("scenes/jardin.webp") !important; }
body .v13-install-card:nth-child(2) .v13-install-card-media,
body .usecase-card:nth-child(2){ background-image:url("scenes/terrasse.webp") !important; }
body .v13-install-card:nth-child(3) .v13-install-card-media,
body .usecase-card:nth-child(3){ background-image:url("scenes/allee.webp") !important; }
body .v13-install-card:nth-child(4) .v13-install-card-media,
body .usecase-card:nth-child(4){ background-image:url("scenes/entree.webp") !important; }
body #main .hp-en-media img,
body #main .hp-md-media img,
body .feature-media img,
body .v13-install-card-media img,
body .usecase-card img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  min-width:100% !important;
  min-height:100% !important;
  object-fit:cover !important;
  object-position:center center !important;
  opacity:1 !important;
  visibility:visible !important;
  filter:none !important;
  transform:none !important;
  mix-blend-mode:normal !important;
}
body .usecase-card:hover,
body .usecase-card:hover img{
  transform:none !important;
  filter:none !important;
}

/* 122-8 Footer：保留原绿色背景，但所有文字强制白色系，包含上方支付/物流/评价条。 */
body .v15-trust-strip,
body .shopify-section-group-footer-group,
body .shopify-section--footer,
body footer{
  background:#276b42 !important;
}
body .v15-trust-strip,
body .v15-trust-strip *,
body .v15-trust-strip [style],
body .shopify-section-group-footer-group,
body .shopify-section-group-footer-group *,
body .shopify-section-group-footer-group [style],
body .shopify-section--footer,
body .shopify-section--footer *,
body .shopify-section--footer [style],
body footer,
body footer *,
body footer [style]{
  color:rgba(255,255,255,.86) !important;
}
body .v15-trust-strip h1,
body .v15-trust-strip h2,
body .v15-trust-strip h3,
body .v15-trust-strip h4,
body .v15-trust-strip strong,
body .v15-trust-strip b,
body .v15-trust-strip .heading,
body .v15-trust-strip .v15-trust-rating-score,
body .shopify-section-group-footer-group h1,
body .shopify-section-group-footer-group h2,
body .shopify-section-group-footer-group h3,
body .shopify-section-group-footer-group h4,
body .shopify-section-group-footer-group strong,
body .shopify-section-group-footer-group b,
body .shopify-section-group-footer-group .heading,
body .shopify-section-group-footer-group .footer__item-title,
body .shopify-section--footer h1,
body .shopify-section--footer h2,
body .shopify-section--footer h3,
body .shopify-section--footer h4,
body .shopify-section--footer strong,
body .shopify-section--footer b,
body .shopify-section--footer .heading,
body .shopify-section--footer .footer__item-title,
body footer h1,
body footer h2,
body footer h3,
body footer h4,
body footer strong,
body footer b,
body footer .heading,
body footer .footer__item-title{
  color:#fff !important;
}
body .v15-trust-strip a,
body .v15-trust-strip a *,
body .shopify-section-group-footer-group a,
body .shopify-section-group-footer-group a *,
body .shopify-section--footer a,
body .shopify-section--footer a *,
body footer a,
body footer a *{
  color:#fff !important;
}
body .v15-trust-strip .v15-trust-rating-stars span{
  color:#fff !important;
}

/* 123. 移动端公告补丁：清掉旧规则给 p 加的 186px 宽度和省略号。 */
@media (max-width:999px){
  body .announcement-bar{
    grid-template-columns:34px minmax(0, 1fr) 34px !important;
    padding:0 8px !important;
  }
  body .announcement-bar__list{
    width:100% !important;
    max-width:none !important;
    padding:0 34px !important;
    overflow:hidden !important;
  }
  body announcement-bar-item.announcement-bar__item:not([hidden]),
  body .announcement-bar__item:not([hidden]){
    width:100% !important;
    max-width:none !important;
    overflow:visible !important;
    text-overflow:clip !important;
  }
  body .announcement-bar__message{
    display:block !important;
    width:100% !important;
    max-width:none !important;
    padding:0 !important;
    overflow:visible !important;
    text-overflow:clip !important;
  }
  body .announcement-bar__message p{
    display:block !important;
    width:100% !important;
    max-width:none !important;
    padding:0 !important;
    overflow:hidden !important;
    color:#fff !important;
    font-size:9.5px !important;
    font-weight:800 !important;
    line-height:40px !important;
    letter-spacing:0 !important;
    text-align:center !important;
    white-space:nowrap !important;
    text-overflow:clip !important;
  }
}

/* ==========================================================================
   121. 2026-06-23 全站最终验收修复层

   这一段只处理用户截图里仍然存在的共性问题，并刻意放在 CSS 文件真实末尾：
   1. 顶部配送条必须一行显示，隐藏的轮播项必须真的 display:none；
   2. 桌面一级导航 hover 必须露出二级导航，不能被 hidden 属性或 header overflow 挡住；
   3. PROMOS 的百分号必须红底白字；
   4. 移动端头部不能出现邮件图标、两个搜索图标、账号图标，只保留菜单/Logo/搜索/购物车；
   5. 首页热卖卡片 4 个等宽等高，图片高度统一，标题两行省略，角标半露出且左下角直角；
   6. Footer 和 footer 上方信任条保持原绿色，所有文本/链接/行内 style 文案都变白色系。
   ========================================================================== */

/* 121-1 顶部配送公告：修复“第一行换行/只剩 CONTINENTALE”的问题。 */
.shopify-section--announcement-bar,
#shopify-section-sections--25458834178427__announcement-bar{
  height:42px !important;
  min-height:42px !important;
  max-height:42px !important;
  overflow:hidden !important;
  background:#242424 !important;
}
.shopify-section--announcement-bar .announcement-bar,
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
  display:grid !important;
  grid-template-columns:52px minmax(0,1fr) 52px !important;
  align-items:center !important;
  width:100% !important;
  height:42px !important;
  min-height:42px !important;
  max-height:42px !important;
  padding:0 30px !important;
  overflow:hidden !important;
  background:#242424 !important;
}
.shopify-section--announcement-bar announcement-bar-item[hidden],
.shopify-section--announcement-bar .announcement-bar__item[hidden],
#shopify-section-sections--25458834178427__announcement-bar announcement-bar-item[hidden],
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__item[hidden]{
  display:none !important;
  width:0 !important;
  min-width:0 !important;
  max-width:0 !important;
  flex:0 0 0 !important;
}
.shopify-section--announcement-bar .announcement-bar__list,
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__list{
  grid-column:2 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  min-width:0 !important;
  height:42px !important;
  overflow:hidden !important;
}
.shopify-section--announcement-bar announcement-bar-item:not([hidden]),
.shopify-section--announcement-bar .announcement-bar__item:not([hidden]),
#shopify-section-sections--25458834178427__announcement-bar announcement-bar-item:not([hidden]),
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__item:not([hidden]){
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  min-width:0 !important;
  height:42px !important;
  overflow:hidden !important;
}
.shopify-section--announcement-bar .announcement-bar__message,
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message{
  display:block !important;
  width:100% !important;
  min-width:0 !important;
  height:42px !important;
  overflow:hidden !important;
  text-align:center !important;
}
.shopify-section--announcement-bar .announcement-bar__message p,
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message p{
  display:block !important;
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  color:#fff !important;
  font-size:14px !important;
  font-weight:800 !important;
  line-height:42px !important;
  letter-spacing:.01em !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  text-align:center !important;
}
.shopify-section--announcement-bar .announcement-bar > button,
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar > button{
  width:42px !important;
  height:42px !important;
  color:#fff !important;
}
@media (max-width:760px){
  .shopify-section--announcement-bar .announcement-bar,
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
    grid-template-columns:34px minmax(0,1fr) 34px !important;
    padding:0 8px !important;
  }
  .shopify-section--announcement-bar .announcement-bar__message p,
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message p{
    font-size:10px !important;
    letter-spacing:0 !important;
  }
}

/* 121-2 桌面导航：二级菜单 hover 稳定显示。 */
.shopify-section--header,
#shopify-section-sections--25458834178427__header,
.header,
.header__wrapper,
.header__inline-navigation{
  overflow:visible !important;
}
@media (min-width:1000px){
  .header__linklist{
    display:flex !important;
    align-items:center !important;
    gap:26px !important;
    flex-wrap:nowrap !important;
  }
  .header__linklist-link{
    display:inline-flex !important;
    align-items:center !important;
    gap:8px !important;
    white-space:nowrap !important;
    color:#171717 !important;
    font-weight:700 !important;
  }
  .header__linklist-item.has-dropdown{
    position:relative !important;
  }
  .header__linklist-item.has-dropdown > .mega-menu,
  .header__linklist-item.has-dropdown > .mega-menu[hidden]{
    display:block !important;
    position:absolute !important;
    top:calc(100% + 20px) !important;
    left:50% !important;
    z-index:999 !important;
    width:min(1180px,calc(100vw - 96px)) !important;
    max-width:1180px !important;
    transform:translateX(-50%) translateY(8px) !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
    transition:opacity .16s ease, transform .16s ease !important;
  }
  .header__linklist-item.has-dropdown:hover > .mega-menu,
  .header__linklist-item.has-dropdown:focus-within > .mega-menu,
  .header__linklist-item.has-dropdown:hover > .mega-menu[hidden],
  .header__linklist-item.has-dropdown:focus-within > .mega-menu[hidden]{
    visibility:visible !important;
    opacity:1 !important;
    pointer-events:auto !important;
    transform:translateX(-50%) translateY(0) !important;
  }
}

/* 121-3 PROMOS 百分号：必须红底白字。 */
.promos-pct-dot,
.header__linklist-link .promos-pct-dot{
  display:inline-grid !important;
  place-items:center !important;
  width:24px !important;
  height:24px !important;
  min-width:24px !important;
  border-radius:999px !important;
  background:#e00023 !important;
  color:#fff !important;
  font-size:12px !important;
  font-weight:900 !important;
  line-height:1 !important;
}
.promos-pct-dot *,
.header__linklist-link .promos-pct-dot *{
  color:#fff !important;
  fill:#fff !important;
}

/* 121-4 移动端头部：去掉邮件、桌面搜索、账号，只保留一个搜索和购物车。 */
@media (max-width:999px){
  .header__icon-list > button[aria-controls="newsletter-popup"],
  .header__icon-list > .header__icon-wrapper[aria-controls="newsletter-popup"],
  .header__icon-list > a.hidden-pocket.hidden-lap[aria-controls="search-drawer"],
  .header__icon-list > .header__icon-wrapper.hidden-pocket.hidden-lap[aria-label="Recherche"],
  .header__icon-list > a[aria-label="Compte"],
  .header__icon-list > .header__icon-wrapper[aria-label="Compte"]{
    display:none !important;
  }
  .header__icon-list > a.hidden-desk[aria-controls="search-drawer"],
  .header__icon-list > .header__icon-wrapper.hidden-desk[aria-label="Recherche"]{
    display:inline-grid !important;
    place-items:center !important;
  }
  .header__secondary-links .header__icon-list{
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:18px !important;
  }
}

/* 121-5 首页热卖：恢复 0528 参考的 4 卡稳定排版，禁止图片高低不齐。 */
@media (min-width:1000px){
  body #main .hp-sec--best .hp-wrap,
  body #main .hp-sec--best .hp-bv-wrap{
    width:min(1220px,calc(100% - 96px)) !important;
    max-width:1220px !important;
    margin-inline:auto !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best [data-scroller]{
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-track{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:32px !important;
    align-items:stretch !important;
    width:100% !important;
    max-width:100% !important;
    margin:0 !important;
    padding:32px 0 10px !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    height:548px !important;
    min-height:548px !important;
    max-height:548px !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard:nth-child(n+5){
    display:none !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard > a{
    display:grid !important;
    grid-template-rows:294px 254px !important;
    width:100% !important;
    height:548px !important;
    min-height:548px !important;
    max-height:548px !important;
    border:1px solid #e5ebe6 !important;
    border-radius:8px !important;
    background:#fff !important;
    box-shadow:0 14px 30px rgba(23,34,27,.04) !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-pc-media{
    position:relative !important;
    display:block !important;
    width:100% !important;
    height:294px !important;
    min-height:294px !important;
    max-height:294px !important;
    aspect-ratio:auto !important;
    border-radius:8px 8px 0 0 !important;
    background:#f5f7f4 !important;
    overflow:hidden !important;
  }
  body #main .hp-sec--best .hp-pc-media img,
  body #main .hp-sec--best .hp-pc-media .day{
    position:absolute !important;
    inset:0 !important;
    display:block !important;
    width:100% !important;
    height:100% !important;
    max-width:none !important;
    max-height:none !important;
    object-fit:cover !important;
    object-position:center center !important;
    border-radius:8px 8px 0 0 !important;
    opacity:1 !important;
    visibility:visible !important;
    transform:none !important;
    filter:none !important;
  }
  body #main .hp-sec--best .hp-pc-media .night{
    display:none !important;
  }
  body #main .hp-sec--best .hp-pcard:hover .hp-pc-media img,
  body #main .hp-sec--best .hp-pcard:hover .hp-pc-media .day{
    transform:none !important;
    filter:brightness(.86) !important;
  }
  body #main .hp-sec--best .hp-bdgs{
    position:absolute !important;
    left:0 !important;
    top:-17px !important;
    z-index:8 !important;
    pointer-events:none !important;
  }
  body #main .hp-sec--best .hp-bdg--remises{
    height:34px !important;
    padding:0 15px !important;
    border-radius:5px 5px 5px 0 !important;
    background:#d55e38 !important;
    color:#fff !important;
    font-size:14px !important;
    font-weight:800 !important;
    line-height:34px !important;
    white-space:nowrap !important;
    box-shadow:none !important;
  }
  body #main .hp-sec--best .hp-bdg--solar{
    position:absolute !important;
    left:16px !important;
    bottom:18px !important;
    z-index:6 !important;
    height:28px !important;
    padding:0 14px !important;
    border-radius:999px !important;
    background:#f4ad3d !important;
    color:#fff !important;
    font-size:12px !important;
    font-weight:800 !important;
    line-height:28px !important;
    letter-spacing:.04em !important;
  }
  body #main .hp-sec--best .hp-pc-fav{
    position:absolute !important;
    right:16px !important;
    bottom:16px !important;
    z-index:7 !important;
    width:42px !important;
    height:42px !important;
    border-radius:50% !important;
    background:#fff !important;
    box-shadow:0 5px 14px rgba(0,0,0,.14) !important;
  }
  body #main .hp-sec--best .hp-pc-body{
    display:grid !important;
    grid-template-rows:30px 48px 24px 48px 26px !important;
    gap:7px !important;
    height:254px !important;
    min-height:254px !important;
    max-height:254px !important;
    padding:18px 18px 16px !important;
    overflow:hidden !important;
  }
  body #main .hp-sec--best .hp-pc-name{
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    height:48px !important;
    max-height:48px !important;
    overflow:hidden !important;
    font-size:17px !important;
    font-weight:800 !important;
    line-height:24px !important;
  }
  body #main .hp-sec--best .hp-pc-rate,
  body #main .hp-sec--best .hp-pc-price,
  body #main .hp-sec--best .hp-pc-stock{
    margin:0 !important;
    overflow:hidden !important;
  }
}

@media (max-width:999px){
  body #main .hp-sec--best .hp-track{
    display:flex !important;
    gap:16px !important;
    overflow-x:auto !important;
    overflow-y:visible !important;
    padding:28px 24px 10px !important;
    scroll-snap-type:x mandatory !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard{
    flex:0 0 280px !important;
    width:280px !important;
    min-width:280px !important;
    max-width:280px !important;
    height:500px !important;
    min-height:500px !important;
    max-height:500px !important;
    scroll-snap-align:start !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard > a{
    display:grid !important;
    grid-template-rows:260px 240px !important;
    height:500px !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-pc-media{
    height:260px !important;
    min-height:260px !important;
    max-height:260px !important;
  }
}

/* 121-6 Footer/trust strip：绿底保持，所有文字强制白色，覆盖行内 style。 */
body .v15-trust-strip,
body .v15-trust-strip *,
body .v15-trust-strip [style],
body .shopify-section-group-footer-group,
body .shopify-section-group-footer-group *,
body .shopify-section-group-footer-group [style],
body .shopify-section--footer,
body .shopify-section--footer *,
body .shopify-section--footer [style],
body footer,
body footer *,
body footer [style]{
  color:rgba(255,255,255,.84) !important;
}
body .v15-trust-strip,
body .shopify-section-group-footer-group,
body .shopify-section--footer,
body footer.footer{
  background:#276b42 !important;
}
body .v15-trust-strip h1,
body .v15-trust-strip h2,
body .v15-trust-strip h3,
body .v15-trust-strip h4,
body .v15-trust-strip strong,
body .v15-trust-strip b,
body .v15-trust-strip .heading,
body .v15-trust-strip .v15-trust-rating-score,
body .v15-trust-strip .v15-trust-rating-score *,
body .shopify-section-group-footer-group .heading,
body .shopify-section-group-footer-group .footer__item-title,
body .shopify-section-group-footer-group strong,
body .shopify-section-group-footer-group b,
body .shopify-section--footer .heading,
body .shopify-section--footer .footer__item-title,
body .shopify-section--footer strong,
body .shopify-section--footer b,
body footer .heading,
body footer .footer__item-title,
body footer strong,
body footer b{
  color:#fff !important;
}
body .v15-trust-strip a,
body .v15-trust-strip a *,
body .shopify-section-group-footer-group a,
body .shopify-section-group-footer-group a *,
body .shopify-section--footer a,
body .shopify-section--footer a *,
body footer a,
body footer a *{
  color:#fff !important;
}

/* ==========================================================================
   118. 2026-06-23 最终视觉修正层
   说明：前面 CSS 来自多轮需求，存在重复覆盖。这里集中修正用户最新指出的
   头部、导航、首页热卖、图片模块、footer 字色问题，所有规则都只服务于
   lumihome-template 的最终演示页面。
   ========================================================================== */

/* 118-1 顶部配送条：所有正式页面强制一行显示，文字不再换行或被左侧裁掉。 */
.shopify-section--announcement-bar,
.shopify-section--announcement-bar .announcement-bar,
#shopify-section-sections--25458834178427__announcement-bar,
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
  height:42px !important;
  min-height:42px !important;
  max-height:42px !important;
  overflow:hidden !important;
}
.shopify-section--announcement-bar .announcement-bar,
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
  display:grid !important;
  grid-template-columns:52px minmax(0,1fr) 52px !important;
  align-items:center !important;
  justify-items:stretch !important;
  padding:0 28px !important;
  background:#242424 !important;
}
.shopify-section--announcement-bar .announcement-bar__list,
.shopify-section--announcement-bar .announcement-bar__item,
.shopify-section--announcement-bar .announcement-bar__message,
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__list,
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__item,
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message{
  width:100% !important;
  min-width:0 !important;
  height:42px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  overflow:hidden !important;
}
.shopify-section--announcement-bar .announcement-bar__message p,
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message p{
  display:block !important;
  width:100% !important;
  max-width:1120px !important;
  margin:0 auto !important;
  color:#fff !important;
  font-size:13px !important;
  font-weight:800 !important;
  line-height:42px !important;
  letter-spacing:.02em !important;
  text-align:center !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
.shopify-section--announcement-bar .announcement-bar > button,
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar > button{
  width:42px !important;
  height:42px !important;
  color:#fff !important;
}
@media (max-width:760px){
  .shopify-section--announcement-bar .announcement-bar,
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
    grid-template-columns:34px minmax(0,1fr) 34px !important;
    padding:0 8px !important;
  }
  .shopify-section--announcement-bar .announcement-bar__message p,
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message p{
    max-width:calc(100vw - 92px) !important;
    font-size:11px !important;
    letter-spacing:.01em !important;
  }
}

/* 118-2 桌面一级导航：hover / focus 时必须打开二级菜单，且覆盖 hidden 属性。 */
@media (min-width:1000px){
  .header__linklist{
    display:flex !important;
    align-items:center !important;
    gap:28px !important;
    flex-wrap:nowrap !important;
  }
  .header__linklist-item{
    position:relative !important;
    flex:0 0 auto !important;
  }
  .header__linklist-link{
    display:inline-flex !important;
    align-items:center !important;
    gap:8px !important;
    white-space:nowrap !important;
    color:#171717 !important;
    font-weight:700 !important;
  }
  .header__linklist-item.has-dropdown > .mega-menu,
  .header__linklist-item.has-dropdown > .mega-menu[hidden]{
    display:block !important;
    position:absolute !important;
    left:50% !important;
    top:calc(100% + 24px) !important;
    z-index:80 !important;
    width:min(1180px,calc(100vw - 96px)) !important;
    transform:translateX(-50%) translateY(10px) !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
  }
  .header__linklist-item.has-dropdown:hover > .mega-menu,
  .header__linklist-item.has-dropdown:focus-within > .mega-menu,
  .header__linklist-item.has-dropdown:hover > .mega-menu[hidden],
  .header__linklist-item.has-dropdown:focus-within > .mega-menu[hidden]{
    transform:translateX(-50%) translateY(0) !important;
    visibility:visible !important;
    opacity:1 !important;
    pointer-events:auto !important;
  }
  .header__linklist-item.has-dropdown > .nav-dropdown,
  .header__linklist-item.has-dropdown > .nav-dropdown[hidden]{
    display:block !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
  }
  .header__linklist-item.has-dropdown:hover > .nav-dropdown,
  .header__linklist-item.has-dropdown:focus-within > .nav-dropdown,
  .header__linklist-item.has-dropdown:hover > .nav-dropdown[hidden],
  .header__linklist-item.has-dropdown:focus-within > .nav-dropdown[hidden]{
    visibility:visible !important;
    opacity:1 !important;
    pointer-events:auto !important;
  }
  .mega-menu.mm-uniform{
    background:#fff !important;
    border:1px solid rgba(0,0,0,.08) !important;
    box-shadow:0 22px 54px rgba(0,0,0,.14) !important;
  }
}

/* 118-3 PROMOS 百分号：红底白字，避免继承到黑字。 */
.promos-pct-dot,
.promos-pct-dot *,
.header__linklist-link .promos-pct-dot,
.header__linklist-link .promos-pct-dot *{
  color:#fff !important;
  fill:#fff !important;
}
.promos-pct-dot,
.header__linklist-link .promos-pct-dot{
  display:inline-grid !important;
  place-items:center !important;
  width:24px !important;
  height:24px !important;
  min-width:24px !important;
  border-radius:999px !important;
  background:#e00023 !important;
  font-size:12px !important;
  font-weight:900 !important;
  line-height:1 !important;
  vertical-align:middle !important;
}

/* 118-4 移动端头部：只保留一个搜索入口；邮件图标和桌面搜索都隐藏。 */
@media (max-width:999px){
  .header__secondary-links .header__icon-wrapper[aria-controls="newsletter-popup"],
  .header__secondary-links .header__icon-wrapper.hidden-pocket.hidden-lap[aria-label="Recherche"]{
    display:none !important;
  }
  .header__secondary-links .header__icon-wrapper.hidden-desk[aria-label="Recherche"]{
    display:inline-grid !important;
  }
  .header__secondary-links .header__icon-list{
    display:flex !important;
    align-items:center !important;
    gap:16px !important;
  }
}
@media (min-width:1000px){
  .header__secondary-links .header__icon-wrapper.hidden-desk[aria-label="Recherche"]{
    display:none !important;
  }
}

/* 118-5 首页热卖：桌面 4 张卡严格等宽等高，图片、正文、角标全部对齐。 */
@media (min-width:1000px){
  #main .hp-sec--best{
    overflow:hidden !important;
  }
  #main .hp-sec--best .hp-wrap,
  #main .hp-sec--best .hp-bv-wrap{
    width:min(1220px,calc(100% - 96px)) !important;
    max-width:1220px !important;
    margin-inline:auto !important;
    overflow:visible !important;
  }
  #main .hp-sec--best [data-scroller]{
    overflow:visible !important;
  }
  #main .hp-sec--best .hp-track{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:32px !important;
    align-items:stretch !important;
    width:100% !important;
    margin:0 auto !important;
    padding:32px 0 10px !important;
    overflow:visible !important;
  }
  #main .hp-sec--best .hp-track > .hp-pcard{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    height:548px !important;
    min-height:548px !important;
    max-height:548px !important;
    overflow:visible !important;
  }
  #main .hp-sec--best .hp-track > .hp-pcard:nth-child(n+5){
    display:none !important;
  }
  #main .hp-sec--best .hp-pcard > a{
    display:grid !important;
    grid-template-rows:294px 254px !important;
    height:548px !important;
    min-height:548px !important;
    max-height:548px !important;
    overflow:visible !important;
    border-radius:8px !important;
    border:1px solid #e6ebe7 !important;
    background:#fff !important;
    box-shadow:0 14px 30px rgba(23,34,27,.04) !important;
  }
  #main .hp-sec--best .hp-pc-media{
    position:relative !important;
    height:294px !important;
    min-height:294px !important;
    max-height:294px !important;
    border-radius:8px 8px 0 0 !important;
    overflow:hidden !important;
    background:#f5f7f4 !important;
  }
  #main .hp-sec--best .hp-pc-media img,
  #main .hp-sec--best .hp-pc-media .day{
    position:absolute !important;
    inset:0 !important;
    z-index:1 !important;
    display:block !important;
    width:100% !important;
    height:100% !important;
    max-width:none !important;
    max-height:none !important;
    object-fit:cover !important;
    object-position:center center !important;
    border-radius:8px 8px 0 0 !important;
    opacity:1 !important;
    visibility:visible !important;
    transform:none !important;
    filter:none !important;
  }
  #main .hp-sec--best .hp-pc-media .night{
    display:none !important;
  }
  #main .hp-sec--best .hp-pcard:hover .hp-pc-media img,
  #main .hp-sec--best .hp-pcard:hover .hp-pc-media .day{
    transform:none !important;
    filter:brightness(.88) !important;
  }
  #main .hp-sec--best .hp-bdgs{
    position:absolute !important;
    left:0 !important;
    top:-17px !important;
    z-index:6 !important;
    display:flex !important;
    align-items:flex-start !important;
    pointer-events:none !important;
  }
  #main .hp-sec--best .hp-bdg--remises{
    height:34px !important;
    padding:0 15px !important;
    border-radius:5px 5px 5px 0 !important;
    background:#d55e38 !important;
    color:#fff !important;
    font-size:14px !important;
    font-weight:800 !important;
    line-height:34px !important;
    white-space:nowrap !important;
    box-shadow:none !important;
  }
  #main .hp-sec--best .hp-bdg--solar{
    position:absolute !important;
    left:16px !important;
    bottom:18px !important;
    z-index:5 !important;
    height:28px !important;
    min-width:88px !important;
    padding:0 14px !important;
    border-radius:999px !important;
    background:#f4ad3d !important;
    color:#fff !important;
    font-size:12px !important;
    font-weight:800 !important;
    line-height:28px !important;
    letter-spacing:.04em !important;
  }
  #main .hp-sec--best .hp-bdg--solar::before{
    content:"" !important;
    display:inline-block !important;
    width:8px !important;
    height:8px !important;
    margin-right:7px !important;
    border:2px solid #fff !important;
    border-radius:50% !important;
    vertical-align:middle !important;
  }
  #main .hp-sec--best .hp-pc-fav{
    position:absolute !important;
    right:16px !important;
    bottom:16px !important;
    z-index:7 !important;
    width:42px !important;
    height:42px !important;
    border-radius:50% !important;
    background:#fff !important;
    box-shadow:0 5px 14px rgba(0,0,0,.14) !important;
  }
  #main .hp-sec--best .hp-pc-body{
    display:grid !important;
    grid-template-rows:34px 50px 26px 48px 28px !important;
    gap:6px !important;
    height:254px !important;
    min-height:254px !important;
    max-height:254px !important;
    padding:18px 18px 16px !important;
    overflow:hidden !important;
  }
  #main .hp-sec--best .hp-pc-pvc{
    align-self:start !important;
    width:max-content !important;
    max-width:100% !important;
    height:30px !important;
    padding:0 16px !important;
    border-radius:999px !important;
    background:#d85f39 !important;
    color:#fff !important;
    font-size:14px !important;
    font-weight:800 !important;
    line-height:30px !important;
  }
  #main .hp-sec--best .hp-pc-name{
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    height:48px !important;
    max-height:48px !important;
    overflow:hidden !important;
    color:#18201b !important;
    font-size:17px !important;
    font-weight:800 !important;
    line-height:24px !important;
  }
  #main .hp-sec--best .hp-pc-rate{
    display:flex !important;
    align-items:center !important;
    gap:8px !important;
    height:24px !important;
    margin:0 !important;
    color:#89908a !important;
    font-size:14px !important;
    line-height:24px !important;
  }
  #main .hp-sec--best .hp-stars{
    color:#f5a623 !important;
    font-size:16px !important;
    line-height:1 !important;
    letter-spacing:1px !important;
  }
  #main .hp-sec--best .hp-pc-price{
    display:block !important;
    height:46px !important;
    color:#18201b !important;
    line-height:1.18 !important;
  }
  #main .hp-sec--best .hp-pc-price b{
    display:block !important;
    color:#101814 !important;
    font-size:24px !important;
    font-weight:900 !important;
    line-height:28px !important;
  }
  #main .hp-sec--best .hp-pc-oldprice{
    display:block !important;
    margin-top:2px !important;
    color:#a3a7a3 !important;
    font-size:14px !important;
    line-height:16px !important;
  }
  #main .hp-sec--best .hp-pc-stock{
    display:flex !important;
    align-items:center !important;
    gap:8px !important;
    height:26px !important;
    color:#2f7445 !important;
    font-size:14px !important;
    font-weight:800 !important;
  }
  #main .hp-sec--best .hp-pc-stock::before{
    content:"✓" !important;
    display:grid !important;
    place-items:center !important;
    width:19px !important;
    height:19px !important;
    border-radius:50% !important;
    background:#5aac5c !important;
    color:#fff !important;
    font-size:13px !important;
    font-weight:900 !important;
    line-height:1 !important;
  }
}

/* 118-6 首页中段图片：应用场景、能量、媒体、文章卡不允许灰块、错位或文字压图。 */
#main .hp-space-mosaic{
  align-items:start !important;
  margin-bottom:44px !important;
}
#main .hp-space-tile{
  display:grid !important;
  grid-template-rows:auto 24px !important;
  gap:10px !important;
  text-decoration:none !important;
}
#main .hp-space-tile img,
#main .hp-space-tile--large img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  border-radius:8px !important;
  opacity:1 !important;
  visibility:visible !important;
  filter:none !important;
  transform:none !important;
}
#main .hp-space-tile b{
  display:block !important;
  height:24px !important;
  margin:0 !important;
  color:#1d251f !important;
  font-size:13px !important;
  font-weight:700 !important;
  line-height:24px !important;
  text-align:center !important;
}
#main .hp-room-title{
  margin:30px 0 28px !important;
  text-align:center !important;
}
#main .hp-en-media,
#main .hp-md-media,
#main .hp-post-media{
  position:relative !important;
  overflow:hidden !important;
  background:#eef2ef !important;
}
#main .hp-en-media::before,
#main .hp-en-media::after,
#main .hp-md-media::before,
#main .hp-md-media::after,
#main .hp-post-media::before,
#main .hp-post-media::after{
  display:none !important;
  content:none !important;
}
#main .hp-en-media img,
#main .hp-md-media img,
#main .hp-post-media img{
  position:absolute !important;
  inset:0 !important;
  z-index:1 !important;
  display:block !important;
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  max-height:none !important;
  object-fit:cover !important;
  object-position:center center !important;
  opacity:1 !important;
  visibility:visible !important;
  filter:none !important;
  transform:none !important;
  mix-blend-mode:normal !important;
}
#main .hp-md-tag,
#main .hp-md-play{
  z-index:2 !important;
}
@media (min-width:1000px){
  #main .hp-space-mosaic{
    grid-template-columns:2fr 1fr 1fr !important;
    grid-auto-rows:184px !important;
    gap:14px !important;
  }
  #main .hp-space-tile--large{
    grid-row:span 2 !important;
  }
}
@media (max-width:760px){
  #main .hp-space-mosaic{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:18px !important;
  }
  #main .hp-space-tile,
  #main .hp-space-tile--large{
    grid-column:auto !important;
    grid-row:auto !important;
  }
  #main .hp-space-tile img,
  #main .hp-space-tile--large img{
    height:auto !important;
    aspect-ratio:1.28 / 1 !important;
  }
  #main .hp-room-title{
    margin:28px 0 20px !important;
    font-size:34px !important;
    line-height:1.08 !important;
  }
}

/* 118-7 Footer：绿底保持原色，但 footer 与上方信任条文字全部转白色系。 */
.v15-trust-strip,
.v15-trust-strip *,
.v15-trust-strip [style],
.shopify-section-group-footer-group,
.shopify-section-group-footer-group *,
.shopify-section-group-footer-group [style],
.shopify-section--footer,
.shopify-section--footer *,
.shopify-section--footer [style],
footer,
footer *,
footer [style]{
  color:rgba(255,255,255,.84) !important;
}
.v15-trust-strip h1,
.v15-trust-strip h2,
.v15-trust-strip h3,
.v15-trust-strip h4,
.v15-trust-strip strong,
.v15-trust-strip b,
.v15-trust-strip .heading,
.shopify-section-group-footer-group h1,
.shopify-section-group-footer-group h2,
.shopify-section-group-footer-group h3,
.shopify-section-group-footer-group h4,
.shopify-section-group-footer-group strong,
.shopify-section-group-footer-group b,
.shopify-section-group-footer-group .heading,
.shopify-section-group-footer-group .footer__item-title,
.shopify-section--footer h1,
.shopify-section--footer h2,
.shopify-section--footer h3,
.shopify-section--footer h4,
.shopify-section--footer strong,
.shopify-section--footer b,
.shopify-section--footer .heading,
.shopify-section--footer .footer__item-title,
footer h1,
footer h2,
footer h3,
footer h4,
footer strong,
footer b,
footer .heading,
footer .footer__item-title{
  color:#fff !important;
}
.v15-trust-strip a,
.v15-trust-strip a *,
.shopify-section-group-footer-group a,
.shopify-section-group-footer-group a *,
.shopify-section--footer a,
.shopify-section--footer a *,
footer a,
footer a *{
  color:#fff !important;
}

.v15-trust-strip svg,
.shopify-section-group-footer-group svg,
.shopify-section--footer svg,
footer.footer svg{
  color:currentColor !important;
  fill:currentColor !important;
  stroke:currentColor !important;
}

/* ==========================================================================
   116. 2026-06-22 真正 EOF 最终覆盖层
   说明：
   113 之后没有任何 CSS 了，所以这里才是浏览器最终执行的收口层。
   只覆盖客户反复指出的全站问题：配送条、导航 hover、PROMOS 徽章、
   移动端头部重复搜索、首页热卖卡片等高、图片模块防灰块、footer 白字。
   ========================================================================== */

/* 116-1 顶部配送条：始终一行，不能换行，也不能只露出末尾文字。 */
#shopify-section-sections--25458834178427__announcement-bar,
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
  height:40px !important;
  min-height:40px !important;
  max-height:40px !important;
  overflow:hidden !important;
}

#shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
  display:grid !important;
  grid-template-columns:44px minmax(0,1fr) 44px !important;
  align-items:center !important;
  padding:0 clamp(18px,3vw,48px) !important;
}

#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__list,
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__item,
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  min-width:0 !important;
  height:40px !important;
  overflow:hidden !important;
}

#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message p{
  display:block !important;
  width:auto !important;
  max-width:100% !important;
  margin:0 !important;
  color:#fff !important;
  font-size:clamp(12px,1.1vw,15px) !important;
  font-weight:800 !important;
  line-height:40px !important;
  text-align:center !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}

@media (max-width:760px){
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
    grid-template-columns:32px minmax(0,1fr) 32px !important;
    padding:0 10px !important;
  }
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message p{
    font-size:12px !important;
    letter-spacing:0 !important;
  }
}

/* 116-2 一级导航：鼠标放上去必须展示二级导航；hidden 属性不能阻止 hover。 */
@media (min-width:1000px){
  .header__linklist-item.has-dropdown > .mega-menu,
  .header__linklist-item.has-dropdown > .mega-menu[hidden]{
    display:block !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
    transform:translateY(8px) !important;
  }
  .header__linklist-item.has-dropdown:hover > .mega-menu,
  .header__linklist-item.has-dropdown:focus-within > .mega-menu,
  .header__linklist-item.has-dropdown:hover > .mega-menu[hidden],
  .header__linklist-item.has-dropdown:focus-within > .mega-menu[hidden]{
    visibility:visible !important;
    opacity:1 !important;
    pointer-events:auto !important;
    transform:translateY(0) !important;
  }
}

/* 116-3 PROMOS %：红底白字，避免旧规则把 % 变黑。 */
.header__linklist-link .promos-pct-dot,
.header__inline-navigation .promos-pct-dot,
.promos-pct-dot{
  display:inline-grid !important;
  place-items:center !important;
  width:22px !important;
  height:22px !important;
  min-width:22px !important;
  min-height:22px !important;
  margin-left:6px !important;
  border:0 !important;
  border-radius:50% !important;
  background:#e00023 !important;
  color:#fff !important;
  font-size:12px !important;
  font-weight:900 !important;
  line-height:1 !important;
}

/* 116-4 移动端头部：隐藏邮件入口和桌面搜索，只保留一个移动搜索图标。 */
@media (max-width:999px){
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper[aria-controls="newsletter-popup"],
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper.hidden-pocket.hidden-lap[aria-label="Recherche"]{
    display:none !important;
  }
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper.hidden-desk[aria-label="Recherche"]{
    display:inline-grid !important;
  }
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-list{
    display:flex !important;
    align-items:center !important;
    gap:14px !important;
  }
}

@media (min-width:1000px){
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper.hidden-desk[aria-label="Recherche"]{
    display:none !important;
  }
}

/* 116-5 首页 Nos meilleures ventes：4 个卡片等宽等高，图片和文字区固定，长标题两行省略。 */
@media (min-width:1000px){
  body #main .hp-sec--best .hp-wrap,
  body #main .hp-sec--best .hp-bv-wrap{
    width:min(1320px,calc(100% - 96px)) !important;
    max-width:1320px !important;
    margin-inline:auto !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-track{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:34px !important;
    align-items:stretch !important;
    width:100% !important;
    max-width:1320px !important;
    margin:0 auto !important;
    padding:28px 0 8px !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard,
  body #main .hp-sec--best .hp-track > .hp-pcard{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    height:552px !important;
    min-height:552px !important;
    max-height:552px !important;
    border:1px solid #e5e9e5 !important;
    border-radius:8px !important;
    background:#fff !important;
    box-shadow:0 12px 32px rgba(25,39,31,.055) !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard:nth-child(n+5),
  body #main .hp-sec--best .hp-track > .hp-pcard:nth-child(n+5){
    display:none !important;
  }
  body #main .hp-sec--best .hp-pcard > a{
    display:grid !important;
    grid-template-rows:296px 254px !important;
    width:100% !important;
    height:552px !important;
    min-height:552px !important;
    max-height:552px !important;
    color:inherit !important;
    text-decoration:none !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-pc-media{
    position:relative !important;
    width:100% !important;
    height:296px !important;
    min-height:296px !important;
    max-height:296px !important;
    border-radius:8px 8px 0 0 !important;
    background:#f5f7f5 !important;
    overflow:hidden !important;
  }
  body #main .hp-sec--best .hp-pc-media img,
  body #main .hp-sec--best .hp-pc-media .day{
    position:absolute !important;
    inset:0 !important;
    display:block !important;
    width:100% !important;
    height:100% !important;
    max-width:none !important;
    max-height:none !important;
    object-fit:cover !important;
    object-position:center center !important;
    border-radius:8px 8px 0 0 !important;
    opacity:1 !important;
    visibility:visible !important;
    transform:none !important;
    filter:none !important;
  }
  body #main .hp-sec--best .hp-pc-media .night{
    display:none !important;
    opacity:0 !important;
    visibility:hidden !important;
  }
  body #main .hp-sec--best .hp-pcard:hover,
  body #main .hp-sec--best .hp-pcard:hover .hp-pc-media img,
  body #main .hp-sec--best .hp-pcard:hover .hp-pc-media .day{
    transform:none !important;
    filter:brightness(.88) !important;
  }
  body #main .hp-sec--best .hp-bdgs{
    position:absolute !important;
    left:0 !important;
    top:-15px !important;
    z-index:8 !important;
    display:flex !important;
    pointer-events:none !important;
  }
  body #main .hp-sec--best .hp-bdgs .hp-bdg,
  body #main .hp-sec--best .hp-bdgs .hp-bdg.hp-bdg--remises{
    height:30px !important;
    padding:0 13px !important;
    border-radius:5px 5px 5px 0 !important;
    background:#d75f3b !important;
    color:#fff !important;
    font-size:13px !important;
    font-weight:800 !important;
    line-height:30px !important;
    white-space:nowrap !important;
  }
  body #main .hp-sec--best .hp-bdg--solar{
    left:18px !important;
    bottom:18px !important;
    height:26px !important;
    padding:0 14px !important;
    border-radius:999px !important;
    font-size:11px !important;
    font-weight:800 !important;
    line-height:26px !important;
  }
  body #main .hp-sec--best .hp-pc-fav{
    right:16px !important;
    bottom:16px !important;
    width:36px !important;
    height:36px !important;
    border-radius:50% !important;
  }
  body #main .hp-sec--best .hp-pc-body{
    display:grid !important;
    grid-template-rows:30px 42px 44px 22px 24px !important;
    gap:8px !important;
    height:254px !important;
    min-height:254px !important;
    max-height:254px !important;
    padding:18px 18px 17px !important;
    overflow:hidden !important;
  }
  body #main .hp-sec--best .hp-pc-pvc,
  body #main .hp-sec--best .hp-pc-price,
  body #main .hp-sec--best .hp-pc-name,
  body #main .hp-sec--best .hp-pc-rate,
  body #main .hp-sec--best .hp-pc-stock{
    margin:0 !important;
    overflow:hidden !important;
  }
  body #main .hp-sec--best .hp-pc-name{
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    height:44px !important;
    min-height:44px !important;
    max-height:44px !important;
    color:#17211b !important;
    font-size:16px !important;
    font-weight:800 !important;
    line-height:22px !important;
  }
}

@media (max-width:999px){
  body #main .hp-sec--best .hp-track{
    display:flex !important;
    flex-wrap:nowrap !important;
    gap:16px !important;
    overflow-x:auto !important;
    overflow-y:visible !important;
    padding:22px 24px 14px !important;
    scroll-snap-type:x mandatory !important;
    scrollbar-width:none !important;
  }
  body #main .hp-sec--best .hp-track::-webkit-scrollbar{
    display:none !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard,
  body #main .hp-sec--best .hp-track > .hp-pcard,
  body #main .hp-sec--best .hp-track > article.hp-pcard:nth-child(n+5),
  body #main .hp-sec--best .hp-track > .hp-pcard:nth-child(n+5){
    display:block !important;
    flex:0 0 280px !important;
    width:280px !important;
    min-width:280px !important;
    max-width:280px !important;
    height:492px !important;
    min-height:492px !important;
    max-height:492px !important;
    overflow:visible !important;
    scroll-snap-align:start !important;
  }
  body #main .hp-sec--best .hp-pcard > a{
    display:grid !important;
    grid-template-rows:260px 230px !important;
    height:492px !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-pc-media{
    height:260px !important;
    min-height:260px !important;
    max-height:260px !important;
    border-radius:8px 8px 0 0 !important;
    overflow:hidden !important;
  }
  body #main .hp-sec--best .hp-pc-media .night{
    display:none !important;
  }
}

/* 116-6 首页其他图片：避免能量、媒体、文章卡出现灰块或被旧遮罩盖住。 */
body #main .hp-en-media,
body #main .hp-md-media,
body #main .hp-post-media{
  position:relative !important;
  overflow:hidden !important;
  background:#f4f6f4 !important;
}
body #main .hp-en-media::before,
body #main .hp-en-media::after,
body #main .hp-md-media::before,
body #main .hp-md-media::after,
body #main .hp-post-media::before,
body #main .hp-post-media::after{
  display:none !important;
  content:none !important;
}
body #main .hp-en-media img,
body #main .hp-md-media img,
body #main .hp-post-media img{
  display:block !important;
  position:relative !important;
  z-index:1 !important;
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  max-height:none !important;
  object-fit:cover !important;
  object-position:center center !important;
  opacity:1 !important;
  visibility:visible !important;
  transform:none !important;
  filter:none !important;
}

/* 116-7 Footer 和 trust strip：不改绿色背景，强制所有文案、链接、图标为白色系。 */
.v15-trust-strip,
.v15-trust-strip *,
.v15-trust-strip [style],
.shopify-section-group-footer-group,
.shopify-section-group-footer-group *,
.shopify-section-group-footer-group [style],
.shopify-section--footer,
.shopify-section--footer *,
.shopify-section--footer [style],
footer.footer,
footer.footer *,
footer.footer [style]{
  color:rgba(255,255,255,.84) !important;
}
.v15-trust-strip h1,
.v15-trust-strip h2,
.v15-trust-strip h3,
.v15-trust-strip h4,
.v15-trust-strip h5,
.v15-trust-strip h6,
.v15-trust-strip strong,
.v15-trust-strip b,
.v15-trust-strip .heading,
.v15-trust-strip .v15-trust-rating-score,
.shopify-section-group-footer-group h1,
.shopify-section-group-footer-group h2,
.shopify-section-group-footer-group h3,
.shopify-section-group-footer-group h4,
.shopify-section-group-footer-group h5,
.shopify-section-group-footer-group h6,
.shopify-section-group-footer-group strong,
.shopify-section-group-footer-group b,
.shopify-section-group-footer-group .heading,
.shopify-section-group-footer-group .footer__item-title,
.shopify-section--footer h1,
.shopify-section--footer h2,
.shopify-section--footer h3,
.shopify-section--footer h4,
.shopify-section--footer h5,
.shopify-section--footer h6,
.shopify-section--footer strong,
.shopify-section--footer b,
.shopify-section--footer .heading,
.shopify-section--footer .footer__item-title,
footer.footer h1,
footer.footer h2,
footer.footer h3,
footer.footer h4,
footer.footer h5,
footer.footer h6,
footer.footer strong,
footer.footer b,
footer.footer .heading,
footer.footer .footer__item-title{
  color:#fff !important;
}
.v15-trust-strip a,
.v15-trust-strip a *,
.shopify-section-group-footer-group a,
.shopify-section-group-footer-group a *,
.shopify-section--footer a,
.shopify-section--footer a *,
footer.footer a,
footer.footer a *{
  color:#fff !important;
}
.v15-trust-strip svg,
.shopify-section-group-footer-group svg,
.shopify-section--footer svg,
footer.footer svg{
  color:currentColor !important;
  fill:currentColor !important;
  stroke:currentColor !important;
}

/* ==========================================================================
   115. 2026-06-22 全站最终收口层
   说明：
   这个文件前面历史版本很多，存在多次“最终层”互相覆盖的问题。
   所以这里必须放在文件真正末尾，只做全站硬性修复：
   1) 顶部配送条一行显示，不换行、不截头；
   2) 一级导航 hover 必须显示二级菜单；
   3) PROMOS 的 % 固定红底白字；
   4) 移动端头部只保留一个搜索图标；
   5) 首页热卖卡片 4 个等宽等高，图片区和文字区严格对齐；
   6) footer 和 trust strip 保留原绿色背景，所有文字为白色系。
   ========================================================================== */

/* 115-1 顶部配送条：文字必须一行，长屏/窄屏都不能换成两行或从左侧被截掉。 */
#shopify-section-sections--25458834178427__announcement-bar,
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
  height:40px !important;
  min-height:40px !important;
  max-height:40px !important;
  overflow:hidden !important;
}

#shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
  display:grid !important;
  grid-template-columns:44px minmax(0,1fr) 44px !important;
  align-items:center !important;
  padding:0 clamp(18px,3vw,48px) !important;
}

#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__list,
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__item,
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message{
  min-width:0 !important;
  width:100% !important;
  height:40px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  overflow:hidden !important;
}

#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message p{
  display:block !important;
  width:auto !important;
  max-width:100% !important;
  margin:0 !important;
  color:#fff !important;
  font-size:clamp(12px,1.1vw,15px) !important;
  font-weight:800 !important;
  line-height:40px !important;
  letter-spacing:.02em !important;
  text-align:center !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}

#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__button{
  width:34px !important;
  height:40px !important;
  color:#fff !important;
  display:grid !important;
  place-items:center !important;
}

@media (max-width:760px){
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
    grid-template-columns:32px minmax(0,1fr) 32px !important;
    padding:0 10px !important;
  }

  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message p{
    font-size:12px !important;
    letter-spacing:.01em !important;
  }
}

/* 115-2 一级导航 hover：HTML 上即使保留 hidden 属性，鼠标移入也必须展开 mega menu。 */
@media (min-width:1000px){
  .header__linklist-item.has-dropdown{
    position:relative !important;
  }

  .header__linklist-item.has-dropdown > .mega-menu,
  .header__linklist-item.has-dropdown > .mega-menu[hidden]{
    display:block !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
    transform:translateY(8px) !important;
    transition:opacity .16s ease, transform .16s ease, visibility .16s ease !important;
  }

  .header__linklist-item.has-dropdown:hover > .mega-menu,
  .header__linklist-item.has-dropdown:focus-within > .mega-menu,
  .header__linklist-item.has-dropdown:hover > .mega-menu[hidden],
  .header__linklist-item.has-dropdown:focus-within > .mega-menu[hidden]{
    visibility:visible !important;
    opacity:1 !important;
    pointer-events:auto !important;
    transform:translateY(0) !important;
  }
}

/* 115-3 PROMOS 百分号：必须是原站风格的红色圆点 + 白色百分号。 */
body .header__linklist-link .promos-pct-dot,
body .header__inline-navigation .promos-pct-dot,
body .promos-pct-dot{
  display:inline-grid !important;
  place-items:center !important;
  width:22px !important;
  height:22px !important;
  min-width:22px !important;
  min-height:22px !important;
  margin-left:6px !important;
  border:0 !important;
  border-radius:999px !important;
  background:#e00023 !important;
  color:#fff !important;
  font-size:12px !important;
  font-weight:900 !important;
  line-height:1 !important;
  text-align:center !important;
  vertical-align:middle !important;
}

/* 115-4 头部宽度与图标：桌面菜单不换行；移动端隐藏邮件入口和桌面搜索，只留一个搜索。 */
#shopify-section-sections--25458834178427__header .header__wrapper{
  display:grid !important;
  grid-template-columns:minmax(128px,190px) minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:clamp(18px,2.6vw,44px) !important;
}

#shopify-section-sections--25458834178427__header .header__linklist{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex-wrap:nowrap !important;
  gap:clamp(22px,2.1vw,42px) !important;
  min-width:0 !important;
}

#shopify-section-sections--25458834178427__header .header__linklist-link{
  display:inline-flex !important;
  align-items:center !important;
  white-space:nowrap !important;
  line-height:1.1 !important;
}

@media (max-width:999px){
  #shopify-section-sections--25458834178427__header .header__wrapper{
    grid-template-columns:56px minmax(120px,1fr) auto !important;
    gap:10px !important;
    min-height:84px !important;
    padding-inline:18px !important;
  }

  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper[aria-controls="newsletter-popup"],
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper.hidden-pocket.hidden-lap[aria-label="Recherche"]{
    display:none !important;
  }

  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper.hidden-desk[aria-label="Recherche"],
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper[aria-controls="mini-cart"]{
    display:inline-grid !important;
  }

  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-list{
    display:flex !important;
    align-items:center !important;
    gap:14px !important;
  }
}

@media (min-width:1000px){
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper.hidden-desk[aria-label="Recherche"]{
    display:none !important;
  }
}

/* 115-5 首页热卖卡片：桌面固定 4 个，卡片、图片、文字区全部统一尺寸。 */
@media (min-width:1000px){
  body #main .hp-sec--best .hp-wrap,
  body #main .hp-sec--best .hp-bv-wrap{
    width:min(1320px,calc(100% - 96px)) !important;
    max-width:1320px !important;
    margin-inline:auto !important;
    overflow:visible !important;
  }

  body #main .hp-sec--best [data-scroller]{
    width:100% !important;
    overflow:visible !important;
  }

  body #main .hp-sec--best .hp-track{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:34px !important;
    align-items:stretch !important;
    width:100% !important;
    max-width:1320px !important;
    margin:0 auto !important;
    padding:28px 0 8px !important;
    overflow:visible !important;
    scroll-snap-type:none !important;
  }

  body #main .hp-sec--best .hp-track > article.hp-pcard,
  body #main .hp-sec--best .hp-track > .hp-pcard{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    height:552px !important;
    min-height:552px !important;
    max-height:552px !important;
    border:1px solid #e5e9e5 !important;
    border-radius:8px !important;
    background:#fff !important;
    box-shadow:0 12px 32px rgba(25,39,31,.055) !important;
    overflow:visible !important;
  }

  body #main .hp-sec--best .hp-track > article.hp-pcard:nth-child(n+5),
  body #main .hp-sec--best .hp-track > .hp-pcard:nth-child(n+5){
    display:none !important;
  }

  body #main .hp-sec--best .hp-pcard > a{
    display:grid !important;
    grid-template-rows:296px 254px !important;
    width:100% !important;
    height:552px !important;
    min-height:552px !important;
    max-height:552px !important;
    color:inherit !important;
    text-decoration:none !important;
    overflow:visible !important;
  }

  body #main .hp-sec--best .hp-pc-media{
    position:relative !important;
    display:block !important;
    width:100% !important;
    height:296px !important;
    min-height:296px !important;
    max-height:296px !important;
    aspect-ratio:auto !important;
    border-radius:8px 8px 0 0 !important;
    background:#f5f7f5 !important;
    overflow:hidden !important;
  }

  body #main .hp-sec--best .hp-pc-media img,
  body #main .hp-sec--best .hp-pc-media .day{
    position:absolute !important;
    inset:0 !important;
    display:block !important;
    width:100% !important;
    height:100% !important;
    min-width:100% !important;
    min-height:100% !important;
    max-width:none !important;
    max-height:none !important;
    object-fit:cover !important;
    object-position:center center !important;
    border-radius:8px 8px 0 0 !important;
    opacity:1 !important;
    visibility:visible !important;
    transform:none !important;
    filter:none !important;
  }

  /* hover 只允许轻微暗化，不允许模糊、放大、错位；隐藏夜景图避免截图时叠图。 */
  body #main .hp-sec--best .hp-pc-media .night{
    display:none !important;
    opacity:0 !important;
    visibility:hidden !important;
  }

  body #main .hp-sec--best .hp-pcard:hover,
  body #main .hp-sec--best .hp-pcard:hover .hp-pc-media img,
  body #main .hp-sec--best .hp-pcard:hover .hp-pc-media .day{
    transform:none !important;
    filter:brightness(.88) !important;
  }

  body #main .hp-sec--best .hp-bdgs{
    position:absolute !important;
    left:0 !important;
    top:-15px !important;
    z-index:8 !important;
    display:flex !important;
    pointer-events:none !important;
  }

  body #main .hp-sec--best .hp-bdgs .hp-bdg,
  body #main .hp-sec--best .hp-bdgs .hp-bdg.hp-bdg--remises{
    height:30px !important;
    padding:0 13px !important;
    border-radius:5px 5px 5px 0 !important;
    background:#d75f3b !important;
    color:#fff !important;
    font-size:13px !important;
    font-weight:800 !important;
    line-height:30px !important;
    letter-spacing:0 !important;
    white-space:nowrap !important;
  }

  body #main .hp-sec--best .hp-bdg--solar{
    left:18px !important;
    bottom:18px !important;
    height:26px !important;
    padding:0 14px !important;
    border-radius:999px !important;
    background:#f6ad37 !important;
    color:#fff !important;
    font-size:11px !important;
    font-weight:800 !important;
    line-height:26px !important;
  }

  body #main .hp-sec--best .hp-pc-fav{
    right:16px !important;
    bottom:16px !important;
    width:36px !important;
    height:36px !important;
    border-radius:999px !important;
  }

  body #main .hp-sec--best .hp-pc-body{
    display:grid !important;
    grid-template-rows:30px 42px 44px 22px 24px !important;
    gap:8px !important;
    height:254px !important;
    min-height:254px !important;
    max-height:254px !important;
    padding:18px 18px 17px !important;
    overflow:hidden !important;
  }

  body #main .hp-sec--best .hp-pc-pvc,
  body #main .hp-sec--best .hp-pc-price,
  body #main .hp-sec--best .hp-pc-name,
  body #main .hp-sec--best .hp-pc-rate,
  body #main .hp-sec--best .hp-pc-stock{
    margin:0 !important;
    overflow:hidden !important;
  }

  body #main .hp-sec--best .hp-pc-name{
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    height:44px !important;
    min-height:44px !important;
    max-height:44px !important;
    color:#17211b !important;
    font-size:16px !important;
    font-weight:800 !important;
    line-height:22px !important;
  }
}

/* 115-6 移动端热卖：横向滑动，卡片尺寸固定，不互相压住。 */
@media (max-width:999px){
  body #main .hp-sec--best .hp-track{
    display:flex !important;
    flex-wrap:nowrap !important;
    gap:16px !important;
    overflow-x:auto !important;
    overflow-y:visible !important;
    padding:22px 24px 14px !important;
    scroll-snap-type:x mandatory !important;
    scrollbar-width:none !important;
  }

  body #main .hp-sec--best .hp-track::-webkit-scrollbar{
    display:none !important;
  }

  body #main .hp-sec--best .hp-track > article.hp-pcard,
  body #main .hp-sec--best .hp-track > .hp-pcard,
  body #main .hp-sec--best .hp-track > article.hp-pcard:nth-child(n+5),
  body #main .hp-sec--best .hp-track > .hp-pcard:nth-child(n+5){
    display:block !important;
    flex:0 0 280px !important;
    width:280px !important;
    min-width:280px !important;
    max-width:280px !important;
    height:492px !important;
    min-height:492px !important;
    max-height:492px !important;
    overflow:visible !important;
    scroll-snap-align:start !important;
  }

  body #main .hp-sec--best .hp-pcard > a{
    display:grid !important;
    grid-template-rows:260px 230px !important;
    height:492px !important;
    overflow:visible !important;
  }

  body #main .hp-sec--best .hp-pc-media{
    height:260px !important;
    min-height:260px !important;
    max-height:260px !important;
    border-radius:8px 8px 0 0 !important;
    overflow:hidden !important;
  }

  body #main .hp-sec--best .hp-pc-media img,
  body #main .hp-sec--best .hp-pc-media .day{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    object-position:center center !important;
    transform:none !important;
    filter:none !important;
  }

  body #main .hp-sec--best .hp-pc-media .night{
    display:none !important;
  }
}

/* 115-7 首页其他图片模块：能量、媒体、文章图必须显示真实图片，不能被灰底或旧动画盖住。 */
body #main .hp-en-media,
body #main .hp-md-media,
body #main .hp-post-media{
  position:relative !important;
  overflow:hidden !important;
  background:#f4f6f4 !important;
}

body #main .hp-en-media::before,
body #main .hp-en-media::after,
body #main .hp-md-media::before,
body #main .hp-md-media::after,
body #main .hp-post-media::before,
body #main .hp-post-media::after{
  display:none !important;
  content:none !important;
}

body #main .hp-en-media img,
body #main .hp-md-media img,
body #main .hp-post-media img{
  display:block !important;
  position:relative !important;
  z-index:1 !important;
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  max-height:none !important;
  object-fit:cover !important;
  object-position:center center !important;
  opacity:1 !important;
  visibility:visible !important;
  transform:none !important;
  filter:none !important;
}

/* 115-8 Footer：背景色不改，所有可见文案和链接都用白色系，避免绿色底出现黑字。 */
.v15-trust-strip,
.v15-trust-strip *,
.v15-trust-strip [style],
.shopify-section-group-footer-group,
.shopify-section-group-footer-group *,
.shopify-section-group-footer-group [style],
.shopify-section--footer,
.shopify-section--footer *,
.shopify-section--footer [style],
footer.footer,
footer.footer *,
footer.footer [style]{
  color:rgba(255,255,255,.84) !important;
}

.v15-trust-strip h1,
.v15-trust-strip h2,
.v15-trust-strip h3,
.v15-trust-strip h4,
.v15-trust-strip h5,
.v15-trust-strip h6,
.v15-trust-strip strong,
.v15-trust-strip b,
.v15-trust-strip .heading,
.v15-trust-strip .v15-trust-rating-score,
.v15-trust-strip .v15-trust-rating-score *,
.shopify-section-group-footer-group h1,
.shopify-section-group-footer-group h2,
.shopify-section-group-footer-group h3,
.shopify-section-group-footer-group h4,
.shopify-section-group-footer-group h5,
.shopify-section-group-footer-group h6,
.shopify-section-group-footer-group strong,
.shopify-section-group-footer-group b,
.shopify-section-group-footer-group .heading,
.shopify-section-group-footer-group .footer__item-title,
.shopify-section--footer h1,
.shopify-section--footer h2,
.shopify-section--footer h3,
.shopify-section--footer h4,
.shopify-section--footer h5,
.shopify-section--footer h6,
.shopify-section--footer strong,
.shopify-section--footer b,
.shopify-section--footer .heading,
.shopify-section--footer .footer__item-title,
footer.footer h1,
footer.footer h2,
footer.footer h3,
footer.footer h4,
footer.footer h5,
footer.footer h6,
footer.footer strong,
footer.footer b,
footer.footer .heading,
footer.footer .footer__item-title{
  color:#fff !important;
}

.v15-trust-strip a,
.v15-trust-strip a *,
.shopify-section-group-footer-group a,
.shopify-section-group-footer-group a *,
.shopify-section--footer a,
.shopify-section--footer a *,
footer.footer a,
footer.footer a *{
  color:#fff !important;
}

.v15-trust-strip svg,
.shopify-section-group-footer-group svg,
.shopify-section--footer svg,
footer.footer svg{
  color:currentColor !important;
  fill:currentColor !important;
  stroke:currentColor !important;
}

/* =========================================================
   114. 2026-06-22 全站最终稳定层
   说明：
   - 这一段放在统一 CSS 的真正末尾，用来压住历史残留样式。
   - 目标是解决线上/本地演示反复出现的三类问题：
     1) 顶部配送文案换行或被裁切；
     2) 首页热卖卡片图片高度、圆角、hover 效果不统一；
     3) 绿色 footer/trust strip 被旧样式改成黑字。
   ========================================================= */

/* 114-1 顶部配送条：桌面和移动端都只能一行显示，超出用省略号，不能换行撑高。 */
body .announcement-bar,
body #shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
  min-height:40px !important;
  height:40px !important;
  display:grid !important;
  grid-template-columns:44px minmax(0,1fr) 44px !important;
  align-items:center !important;
  padding:0 40px !important;
  overflow:hidden !important;
}
body .announcement-bar__list,
body .announcement-bar__message,
body .announcement-bar__message p{
  min-width:0 !important;
  max-width:100% !important;
  margin:0 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  line-height:40px !important;
  text-align:center !important;
}
body .announcement-bar__message{
  display:block !important;
}

/* 114-2 一级导航 hover：无论 HTML 是否带 hidden，鼠标移入都必须显示二级导航。 */
body .header__linklist-item.has-dropdown > .mega-menu{
  display:block !important;
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
  transform:translateY(10px) !important;
  transition:opacity .16s ease, transform .16s ease, visibility .16s ease !important;
}
body .header__linklist-item.has-dropdown:hover > .mega-menu,
body .header__linklist-item.has-dropdown:focus-within > .mega-menu{
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:auto !important;
  transform:translateY(0) !important;
}

/* 114-3 PROMOS %：红底白字，和原站一致。 */
body .promos-pct-dot,
body .header__linklist-link .promos-pct-dot{
  display:inline-grid !important;
  place-items:center !important;
  width:22px !important;
  height:22px !important;
  min-width:22px !important;
  border-radius:999px !important;
  background:#e00023 !important;
  color:#fff !important;
  font-size:12px !important;
  font-weight:800 !important;
  line-height:1 !important;
}

/* 114-4 首页热卖：4 张卡片固定网格，图片与信息区高度一致，产品名超出两行省略。 */
@media (min-width:1000px){
  body #main .hp-sec--best .hp-bv-wrap{
    width:min(1120px,calc(100vw - 96px)) !important;
    max-width:1120px !important;
    margin-inline:auto !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-track{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:26px !important;
    width:100% !important;
    overflow:visible !important;
    padding:18px 0 8px !important;
    align-items:stretch !important;
  }
  body #main .hp-sec--best .hp-track > .hp-pcard,
  body #main .hp-sec--best .hp-track > article.hp-pcard{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    height:516px !important;
    min-height:516px !important;
    max-height:516px !important;
    border-radius:8px !important;
    overflow:visible !important;
    box-shadow:0 16px 34px rgba(0,0,0,.06) !important;
  }
  body #main .hp-sec--best .hp-track > .hp-pcard:nth-child(n+5),
  body #main .hp-sec--best .hp-track > article.hp-pcard:nth-child(n+5){
    display:none !important;
  }
  body #main .hp-sec--best .hp-pcard > a{
    display:grid !important;
    grid-template-rows:264px 252px !important;
    height:516px !important;
    min-height:516px !important;
    max-height:516px !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-pc-media{
    position:relative !important;
    width:100% !important;
    height:264px !important;
    min-height:264px !important;
    max-height:264px !important;
    overflow:visible !important;
    border-radius:8px 8px 0 0 !important;
    background:#f6f7f5 !important;
  }
  body #main .hp-sec--best .hp-pc-media img{
    position:absolute !important;
    inset:0 !important;
    display:block !important;
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    object-position:center center !important;
    border-radius:8px 8px 0 0 !important;
    transform:none !important;
    filter:none !important;
  }
  body #main .hp-sec--best .hp-pc-media .night{
    display:none !important;
  }
  body #main .hp-sec--best .hp-pcard:hover,
  body #main .hp-sec--best .hp-pcard:hover img{
    transform:none !important;
    filter:none !important;
  }
  body #main .hp-sec--best .hp-pc-body{
    display:flex !important;
    flex-direction:column !important;
    height:252px !important;
    min-height:252px !important;
    max-height:252px !important;
    padding:14px 14px 16px !important;
    gap:7px !important;
    overflow:hidden !important;
  }
  body #main .hp-sec--best .hp-pc-name{
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    height:40px !important;
    min-height:40px !important;
    max-height:40px !important;
    margin:0 !important;
    overflow:hidden !important;
    line-height:20px !important;
  }
  body #main .hp-sec--best .hp-pc-stock{
    margin-top:auto !important;
  }
}

/* 114-5 首页普通图片模块：确保能量、媒体、文章卡没有灰块，图片铺满容器但不拉伸。 */
body #main .hp-en-media img,
body #main .hp-md-media img,
body #main .hp-post-media img,
body #main .mag-card__media img,
body #main .article-card__media img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  opacity:1 !important;
  visibility:visible !important;
}

/* 114-6 移动端头部：只保留一个搜索图标，避免邮箱/搜索/搜索重复挤在一起。 */
@media (max-width:999px){
  body .header__secondary-links a[href*="contact"],
  body .header__secondary-links .header__icon-list > button + button,
  body .header__secondary-links .header__icon-list .header__icon-wrapper:nth-of-type(3){
    display:none !important;
  }
  body .announcement-bar,
  body #shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
    grid-template-columns:36px minmax(0,1fr) 36px !important;
    padding:0 18px !important;
  }
}

/* 114-7 Footer 和 footer 上方 trust strip：绿色背景保持，所有文字强制白色/半透明白。 */
body .v15-trust-strip,
body .shopify-section-group-footer-group,
body .shopify-section--footer,
body footer.footer{
  color:rgba(255,255,255,.86) !important;
}
body .v15-trust-strip *,
body .v15-trust-strip [style],
body .shopify-section-group-footer-group *,
body .shopify-section-group-footer-group [style],
body .shopify-section--footer *,
body .shopify-section--footer [style],
body footer.footer *,
body footer.footer [style]{
  color:rgba(255,255,255,.86) !important;
}
body .v15-trust-strip h1,
body .v15-trust-strip h2,
body .v15-trust-strip h3,
body .v15-trust-strip h4,
body .v15-trust-strip strong,
body .v15-trust-strip b,
body .v15-trust-strip .heading,
body .shopify-section-group-footer-group h1,
body .shopify-section-group-footer-group h2,
body .shopify-section-group-footer-group h3,
body .shopify-section-group-footer-group h4,
body .shopify-section-group-footer-group strong,
body .shopify-section-group-footer-group b,
body .shopify-section-group-footer-group .heading,
body .shopify-section--footer h1,
body .shopify-section--footer h2,
body .shopify-section--footer h3,
body .shopify-section--footer h4,
body .shopify-section--footer strong,
body .shopify-section--footer b,
body .shopify-section--footer .heading,
body footer.footer h1,
body footer.footer h2,
body footer.footer h3,
body footer.footer h4,
body footer.footer strong,
body footer.footer b,
body footer.footer .heading{
  color:#fff !important;
}
body .v15-trust-strip a,
body .shopify-section-group-footer-group a,
body .shopify-section--footer a,
body footer.footer a{
  color:#fff !important;
}

/* 114-8 热卖卡片隐藏夜景图：当前需求是 hover 不放大不模糊，隐藏图不应参与截图审计或占位。 */
body #main .hp-sec--best .hp-pc-media img.night,
body #main .hp-sec--best .hp-pc-media .night{
  display:none !important;
  opacity:0 !important;
  visibility:hidden !important;
  width:0 !important;
  height:0 !important;
  pointer-events:none !important;
}

/* ============================================================
   111. 2026-06-22 截图验收最终收口层

   这段放在文件最后，专门覆盖前面历史合并出来的重复规则。
   需求对应：
   1. 全站公告栏文字不能换行、不能被截断；
   2. 移动端头部只能保留一个搜索图标；
   3. 一级导航 hover 必须显示二级导航；
   4. PROMOS 的百分号必须红底白字；
   5. 首页热卖 4 张卡片必须同宽同高，图片高度一致，长标题省略；
   6. 图片角标左下角为直角，且一半露在图片外；
   7. 鼠标 hover 只切换夜景/压暗，不允许模糊、放大；
   8. footer 和 footer 上方 trust strip 绿色背景内文字全部为白色系。
   ============================================================ */

/* 111-1 公告栏：桌面端一行居中，左右箭头不挤压中间文案。 */
#shopify-section-sections--25458834178427__announcement-bar,
#shopify-section-sections--25458834178427__announcement-bar section,
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
  background:#282828 !important;
}

#shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
  display:grid !important;
  grid-template-columns:48px minmax(0,1fr) 48px !important;
  align-items:center !important;
  height:38px !important;
  min-height:38px !important;
  max-height:38px !important;
  padding:0 36px !important;
  overflow:hidden !important;
}

#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__list,
#shopify-section-sections--25458834178427__announcement-bar announcement-bar-item:not([hidden]),
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__item:not([hidden]){
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  min-width:0 !important;
  height:38px !important;
  min-height:38px !important;
  max-height:38px !important;
  overflow:hidden !important;
}

#shopify-section-sections--25458834178427__announcement-bar announcement-bar-item[hidden],
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__item[hidden]{
  display:none !important;
}

#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message,
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message p{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  height:38px !important;
  min-height:38px !important;
  max-height:38px !important;
  margin:0 !important;
  color:#fff !important;
  font-size:13px !important;
  font-weight:800 !important;
  line-height:38px !important;
  letter-spacing:0 !important;
  text-align:center !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:clip !important;
}

/* 111-2 PROMOS 百分号：固定红圆白字，禁止继承黑色文字。 */
.header__linklist-link .promos-pct-dot,
.promos-pct-dot{
  display:inline-grid !important;
  place-items:center !important;
  width:22px !important;
  height:22px !important;
  min-width:22px !important;
  min-height:22px !important;
  margin-left:7px !important;
  border-radius:50% !important;
  background:#df1f2d !important;
  color:#fff !important;
  font-size:12px !important;
  font-weight:900 !important;
  line-height:1 !important;
  text-align:center !important;
}

/* 111-3 桌面导航：鼠标悬停一级菜单时强制显示二级菜单。 */
@media (min-width:1000px){
  .header__linklist-item.has-dropdown > .mega-menu,
  .header__linklist-item.has-dropdown > .nav-dropdown,
  .header__linklist-item.has-dropdown > .mega-menu[hidden],
  .header__linklist-item.has-dropdown > .nav-dropdown[hidden]{
    display:block !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
  }

  .header__linklist-item.has-dropdown > .mega-menu,
  .header__linklist-item.has-dropdown > .mega-menu[hidden]{
    position:fixed !important;
    top:calc(var(--announcement-bar-height,38px) + 88px) !important;
    left:0 !important;
    right:0 !important;
    width:100vw !important;
    max-width:none !important;
    z-index:90 !important;
    transform:none !important;
  }

  .header__linklist-item.has-dropdown:hover > .mega-menu,
  .header__linklist-item.has-dropdown:focus-within > .mega-menu,
  .header__linklist-item.has-dropdown:hover > .mega-menu[hidden],
  .header__linklist-item.has-dropdown:focus-within > .mega-menu[hidden],
  .header__linklist-item.has-dropdown:hover > .nav-dropdown,
  .header__linklist-item.has-dropdown:focus-within > .nav-dropdown,
  .header__linklist-item.has-dropdown:hover > .nav-dropdown[hidden],
  .header__linklist-item.has-dropdown:focus-within > .nav-dropdown[hidden]{
    visibility:visible !important;
    opacity:1 !important;
    pointer-events:auto !important;
  }
}

/* 111-4 移动端头部：公告不截字，图标只保留搜索 + 购物车，避免两个放大镜。 */
@media (max-width:999px){
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
    grid-template-columns:1fr !important;
    height:36px !important;
    min-height:36px !important;
    max-height:36px !important;
    padding:0 8px !important;
  }

  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar > button,
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar > .tap-area{
    display:none !important;
  }

  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__list,
  #shopify-section-sections--25458834178427__announcement-bar announcement-bar-item:not([hidden]),
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__item:not([hidden]),
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message,
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message p{
    height:36px !important;
    min-height:36px !important;
    max-height:36px !important;
    line-height:36px !important;
  }

  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message p{
    font-size:10px !important;
    font-weight:800 !important;
    white-space:nowrap !important;
  }

  #shopify-section-sections--25458834178427__header .header__wrapper{
    display:grid !important;
    grid-template-columns:44px minmax(0,1fr) auto !important;
    align-items:center !important;
    column-gap:10px !important;
    min-height:72px !important;
    padding:0 16px !important;
  }

  #shopify-section-sections--25458834178427__header .header__inline-navigation{
    grid-column:1 !important;
    justify-self:start !important;
  }

  #shopify-section-sections--25458834178427__header .header__logo{
    grid-column:2 !important;
    justify-self:center !important;
    min-width:0 !important;
  }

  #shopify-section-sections--25458834178427__header .header__logo-image{
    width:152px !important;
    max-width:42vw !important;
    height:auto !important;
  }

  #shopify-section-sections--25458834178427__header .header__secondary-links{
    grid-column:3 !important;
    justify-self:end !important;
    min-width:0 !important;
  }

  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-list{
    display:flex !important;
    align-items:center !important;
    gap:16px !important;
  }

  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper{
    display:none !important;
  }

  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper.hidden-desk[aria-label="Recherche"],
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper[aria-controls="mini-cart"]{
    display:inline-flex !important;
  }

  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper.hidden-pocket,
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper.hidden-lap,
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper.hidden-phone,
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper[aria-controls="newsletter-popup"],
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper[aria-label="Compte"],
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper:not(.hidden-desk)[aria-label="Recherche"]{
    display:none !important;
  }
}

/* 111-5 首页分类：默认 6 个圆形入口，不再散开成两边半个。 */
@media (min-width:1000px){
  body #main .lh-circats__wrap{
    width:min(1520px,calc(100% - 96px)) !important;
    max-width:1520px !important;
    margin-inline:auto !important;
    padding:48px 0 54px !important;
  }

  body #main .lh-circats__track{
    display:grid !important;
    grid-template-columns:repeat(6,minmax(0,1fr)) !important;
    gap:24px !important;
    align-items:start !important;
    overflow:visible !important;
  }

  body #main .lh-circats__i{
    display:grid !important;
    justify-items:center !important;
    gap:12px !important;
    width:100% !important;
    min-width:0 !important;
    text-align:center !important;
  }

  body #main .lh-circats__i:nth-child(n+7){
    display:none !important;
  }

  body #main .lh-circats__pic{
    width:158px !important;
    height:158px !important;
    border-radius:50% !important;
  }

  body #main .lh-circats__pic img{
    display:block !important;
    width:100% !important;
    height:100% !important;
    object-fit:contain !important;
  }
}

/* 111-6 首页热卖：4 个产品等宽等高，图片完整统一，所有文字区域固定高度。 */
@media (min-width:1000px){
  body #main .hp-sec--best .hp-wrap,
  body #main .hp-sec--best .hp-bv-wrap{
    width:min(1520px,calc(100% - 96px)) !important;
    max-width:1520px !important;
    margin-inline:auto !important;
    overflow:visible !important;
  }

  body #main .hp-sec--best .hp-track{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:34px !important;
    align-items:stretch !important;
    width:100% !important;
    max-width:1520px !important;
    margin:0 !important;
    padding:22px 0 8px !important;
    overflow:visible !important;
  }

  body #main .hp-sec--best .hp-track > article.hp-pcard{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    height:586px !important;
    min-height:586px !important;
    max-height:586px !important;
    border:1px solid #e4e9e4 !important;
    border-radius:8px !important;
    background:#fff !important;
    box-shadow:0 14px 34px rgba(19,31,25,.06) !important;
    overflow:visible !important;
  }

  body #main .hp-sec--best .hp-track > article.hp-pcard:nth-child(n+5){
    display:none !important;
  }

  body #main .hp-sec--best .hp-track > article.hp-pcard > a{
    display:grid !important;
    grid-template-rows:332px 252px !important;
    height:586px !important;
    min-height:586px !important;
    max-height:586px !important;
    color:inherit !important;
    text-decoration:none !important;
    overflow:visible !important;
  }

  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media{
    position:relative !important;
    width:100% !important;
    height:332px !important;
    min-height:332px !important;
    max-height:332px !important;
    aspect-ratio:auto !important;
    border-radius:8px 8px 0 0 !important;
    background:#f5f6f4 !important;
    overflow:visible !important;
  }

  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media img,
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media .day,
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media .night{
    position:absolute !important;
    inset:0 !important;
    display:block !important;
    width:100% !important;
    height:100% !important;
    min-width:100% !important;
    min-height:100% !important;
    object-fit:cover !important;
    object-position:center center !important;
    border-radius:8px 8px 0 0 !important;
    transform:none !important;
    filter:none !important;
  }

  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media .night{
    opacity:0 !important;
    transition:opacity .18s ease !important;
  }

  body #main .hp-sec--best .hp-track > article.hp-pcard:hover .hp-pc-media .day{
    opacity:0 !important;
  }

  body #main .hp-sec--best .hp-track > article.hp-pcard:hover .hp-pc-media .night{
    opacity:1 !important;
    filter:brightness(.78) !important;
  }

  body #main .hp-sec--best .hp-track > article.hp-pcard:hover .hp-pc-media img,
  body #main .hp-sec--best .hp-track > article.hp-pcard:hover .hp-pc-media .day,
  body #main .hp-sec--best .hp-track > article.hp-pcard:hover .hp-pc-media .night{
    transform:none !important;
  }

  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-bdgs{
    position:absolute !important;
    left:0 !important;
    top:-16px !important;
    z-index:6 !important;
    display:flex !important;
    align-items:flex-start !important;
  }

  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-bdgs .hp-bdg,
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-bdgs .hp-bdg.hp-bdg--remises{
    height:32px !important;
    padding:0 13px !important;
    border-radius:5px 5px 5px 0 !important;
    background:#d95f39 !important;
    color:#fff !important;
    font-size:13px !important;
    font-weight:800 !important;
    line-height:32px !important;
    white-space:nowrap !important;
    box-shadow:none !important;
  }

  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-bdg--solar{
    left:18px !important;
    bottom:18px !important;
    height:28px !important;
    padding:0 15px !important;
    border-radius:999px !important;
    font-size:12px !important;
    line-height:28px !important;
  }

  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-body{
    display:grid !important;
    grid-template-rows:32px 44px 22px 50px 22px !important;
    gap:8px !important;
    height:252px !important;
    min-height:252px !important;
    max-height:252px !important;
    padding:20px 18px 18px !important;
    overflow:hidden !important;
  }

  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-name{
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    min-height:44px !important;
    max-height:44px !important;
    overflow:hidden !important;
    color:#17211b !important;
    font-size:16px !important;
    font-weight:800 !important;
    line-height:22px !important;
  }

  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-rate,
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-price,
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-stock{
    margin:0 !important;
    overflow:hidden !important;
  }
}

/* 111-7 热卖移动端：横向滑动卡片固定宽度，不相互挤压。 */
@media (max-width:999px){
  body #main .hp-sec--best .hp-wrap,
  body #main .hp-sec--best .hp-bv-wrap{
    width:100% !important;
    max-width:100% !important;
    overflow:visible !important;
  }

  body #main .hp-sec--best .hp-track{
    display:flex !important;
    gap:16px !important;
    width:100% !important;
    overflow-x:auto !important;
    overflow-y:visible !important;
    padding:22px 24px 12px !important;
    scroll-snap-type:x mandatory !important;
  }

  body #main .hp-sec--best .hp-track > article.hp-pcard,
  body #main .hp-sec--best .hp-track > article.hp-pcard:nth-child(n+5){
    display:block !important;
    flex:0 0 282px !important;
    width:282px !important;
    min-width:282px !important;
    max-width:282px !important;
    height:492px !important;
    min-height:492px !important;
    max-height:492px !important;
    scroll-snap-align:start !important;
    overflow:visible !important;
  }

  body #main .hp-sec--best .hp-track > article.hp-pcard > a{
    display:grid !important;
    grid-template-rows:262px 228px !important;
    height:492px !important;
    overflow:visible !important;
  }

  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media{
    height:262px !important;
    min-height:262px !important;
    max-height:262px !important;
  }
}

/* 111-8 分类页产品卡：图片区统一高度；坏图兜底由 JS 替换，本段保证布局不塌。 */
.ls-card-media{
  position:relative !important;
  overflow:hidden !important;
  background:#f5f6f4 !important;
}

.ls-card-media img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center center !important;
  transform:none !important;
  filter:none !important;
}

.ls-card:hover .ls-card-media img{
  transform:none !important;
  filter:none !important;
}

/* 111-9 首页能源、媒体、文章图片：所有图片强制填满容器，避免灰色占位块。 */
.hp-energy img,
.hp-media img,
.hp-md-card img,
.hp-en-card img,
.article-card img,
.media-card img,
.blog-card img,
.lh-imgtext img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center center !important;
  opacity:1 !important;
  visibility:visible !important;
}

/* 111-10 Footer 白字最终锁：覆盖 style 属性和旧 theme.css 变量。 */
.shopify-section-group-footer-group,
.shopify-section-group-footer-group *,
.shopify-section-group-footer-group [style],
.shopify-section--footer,
.shopify-section--footer *,
.shopify-section--footer [style],
.v15-trust-strip,
.v15-trust-strip *,
.v15-trust-strip [style],
footer.footer,
footer.footer *,
footer.footer [style]{
  color:rgba(255,255,255,.86) !important;
}

.shopify-section-group-footer-group h1,
.shopify-section-group-footer-group h2,
.shopify-section-group-footer-group h3,
.shopify-section-group-footer-group h4,
.shopify-section-group-footer-group .heading,
.shopify-section-group-footer-group .footer__item-title,
.shopify-section-group-footer-group strong,
.shopify-section-group-footer-group b,
.shopify-section--footer h1,
.shopify-section--footer h2,
.shopify-section--footer h3,
.shopify-section--footer h4,
.shopify-section--footer .heading,
.shopify-section--footer .footer__item-title,
.shopify-section--footer strong,
.shopify-section--footer b,
.v15-trust-strip h1,
.v15-trust-strip h2,
.v15-trust-strip h3,
.v15-trust-strip .heading,
.v15-trust-strip strong,
.v15-trust-strip b,
footer.footer h1,
footer.footer h2,
footer.footer h3,
footer.footer h4,
footer.footer .heading,
footer.footer .footer__item-title,
footer.footer strong,
footer.footer b{
  color:#fff !important;
}

.shopify-section-group-footer-group a,
.shopify-section-group-footer-group a *,
.shopify-section--footer a,
.shopify-section--footer a *,
.v15-trust-strip a,
.v15-trust-strip a *,
footer.footer a,
footer.footer a *{
  color:#fff !important;
}

/* ============================================================
   111. 2026-06-22 全站图片渲染最终保险
   说明：
   - 需求文档和截图审计都要求页面不能出现灰块、空白图、滚动后才显图。
   - 历史 CSS 中有重复的 [data-rv] reveal 规则，后段会重新把内容 opacity:0。
     这里放在文件最后，统一把正式页面内容恢复成可见状态。
   - 图片统一禁止 hover 放大/模糊，避免用户指出的“变黑夜还带模糊扩大效果”。
   ============================================================ */
#main [data-rv],
#main [data-rv].in{
  opacity:1 !important;
  visibility:visible !important;
  transform:none !important;
}

#main img{
  opacity:1 !important;
  visibility:visible !important;
}

#main .hp-space-tile img,
#main .hp-room-card img,
#main .hp-en-media img,
#main .lh-rt-tile img,
#main .hp-md-media img,
#main .hp-post-media img,
#main .hp-rev__prod img,
#main .ls-img,
#main .cart-row__img,
#main .vt-cover,
#main .jm-media-thumb img{
  display:block !important;
  transform:none !important;
  filter:none !important;
}

#main .hp-space-tile:hover img,
#main .hp-room-card:hover img,
#main .hp-en-card:hover img,
#main .lh-rt-tile:hover img,
#main .hp-md:hover img,
#main .hp-post:hover img,
#main .hp-pc-card:hover img,
#main .ls-card:hover img{
  transform:none !important;
  filter:none !important;
}

/* ============================================================
   109. 2026-06-22 截图审计收口层
   目的：把最新一轮人工截图里仍然容易跑偏的视觉点锁死。
   注意：本段只做“纠偏型覆盖”，不再改变模块结构，避免把已恢复的版心/页脚再次改坏。
============================================================ */

/* 109.1 分类圆圈：与下方产品模块同版心，默认一行 6 个，文字不换行。
   之前 Projecteurs solaires 会被拆成两行，导致“圈散、标题乱”的观感。 */
@media (min-width:1000px){
  body.lh-template #main .lh-circats{
    overflow:hidden !important;
  }

  body.lh-template #main .lh-circats__viewport{
    width:min(1520px, calc(100% - 96px)) !important;
    max-width:1520px !important;
    margin-inline:auto !important;
    overflow:visible !important;
  }

  body.lh-template #main .lh-circats__track{
    display:grid !important;
    grid-template-columns:repeat(6, minmax(0, 1fr)) !important;
    gap:22px !important;
    align-items:start !important;
  }

  body.lh-template #main .lh-circats__i{
    min-width:0 !important;
    width:auto !important;
  }

  body.lh-template #main .lh-circats__lbl{
    max-width:none !important;
    white-space:nowrap !important;
    overflow:visible !important;
    text-overflow:clip !important;
    font-size:14px !important;
    line-height:1.15 !important;
    letter-spacing:0 !important;
  }
}

/* 109.2 热卖产品：四张卡片的图片区、内容区、整卡高度必须一致。
   这里只锁定稳定尺寸，防止不同产品名长短把卡片撑出高低差。 */
@media (min-width:1000px){
  body.lh-template #main .hp-products .hp-pc-grid{
    grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
    gap:36px !important;
    align-items:stretch !important;
  }

  body.lh-template #main .hp-products .hp-pc-card{
    height:584px !important;
    display:grid !important;
    grid-template-rows:330px 254px !important;
    overflow:visible !important;
  }

  body.lh-template #main .hp-products .hp-pc-media{
    height:330px !important;
    aspect-ratio:auto !important;
    overflow:visible !important;
    border-radius:8px 8px 0 0 !important;
  }

  body.lh-template #main .hp-products .hp-pc-media img{
    width:100% !important;
    height:100% !important;
    display:block !important;
    object-fit:cover !important;
    border-radius:8px 8px 0 0 !important;
    transform:none !important;
    filter:none !important;
  }

  body.lh-template #main .hp-products .hp-pc-card:hover .hp-pc-media img{
    transform:none !important;
    filter:none !important;
  }

  body.lh-template #main .hp-products .hp-pc-body{
    height:254px !important;
    min-height:254px !important;
    display:flex !important;
    flex-direction:column !important;
    justify-content:flex-start !important;
    gap:8px !important;
    padding:32px 18px 18px !important;
  }

  body.lh-template #main .hp-products .hp-pc-title{
    min-height:42px !important;
    max-height:42px !important;
    overflow:hidden !important;
    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;
  }
}

/* 最终锁定 v2：与 index.html / final-fixes.js 保持同一套数值，避免热卖卡片再次高低不齐。 */
@media (min-width:761px){
  body #main .hp-sec--best .hp-bv-wrap{
    width:min(calc(100vw - 80px),1120px) !important;
    max-width:1120px !important;
    margin-left:auto !important;
    margin-right:auto !important;
    padding:0 !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-track{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:26px !important;
    width:100% !important;
    max-width:100% !important;
    margin:0 !important;
    padding:16px 0 8px !important;
    overflow:visible !important;
    align-items:stretch !important;
    scroll-snap-type:none !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    height:516px !important;
    min-height:516px !important;
    max-height:516px !important;
    border-radius:8px !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard:nth-child(n+5){
    display:none !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard > a{
    display:grid !important;
    grid-template-rows:264px 252px !important;
    width:100% !important;
    height:516px !important;
    min-height:516px !important;
    max-height:516px !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media{
    position:relative !important;
    display:block !important;
    width:100% !important;
    height:264px !important;
    min-height:264px !important;
    max-height:264px !important;
    aspect-ratio:auto !important;
    border-radius:8px 8px 0 0 !important;
    overflow:visible !important;
    background:#f4f5f4 !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media img,
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media .day,
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media .night{
    position:absolute !important;
    inset:0 !important;
    display:block !important;
    width:100% !important;
    height:100% !important;
    min-width:100% !important;
    min-height:100% !important;
    max-width:none !important;
    max-height:none !important;
    object-fit:cover !important;
    object-position:center center !important;
    border-radius:8px 8px 0 0 !important;
    transform:none !important;
    filter:none !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard:hover,
  body #main .hp-sec--best .hp-track > article.hp-pcard:hover img,
  body #main .hp-sec--best .hp-track > article.hp-pcard:hover .day,
  body #main .hp-sec--best .hp-track > article.hp-pcard:hover .night{
    transform:none !important;
    filter:none !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-bdgs{
    left:0 !important;
    top:-12px !important;
    right:auto !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-bdgs .hp-bdg,
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-bdgs .hp-bdg.hp-bdg--remises{
    height:24px !important;
    padding:0 10px !important;
    border-radius:4px 4px 4px 0 !important;
    font-size:11px !important;
    line-height:24px !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-body{
    display:flex !important;
    flex-direction:column !important;
    height:252px !important;
    min-height:252px !important;
    max-height:252px !important;
    padding:14px 14px 16px !important;
    gap:7px !important;
    overflow:hidden !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-name{
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    height:40px !important;
    min-height:40px !important;
    max-height:40px !important;
    margin:0 !important;
    overflow:hidden !important;
    line-height:20px !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-price{
    min-height:42px !important;
    margin:0 !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-rate{
    min-height:20px !important;
    margin:0 !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-stock{
    margin-top:auto !important;
  }
}

/* 热卖产品卡片最终对齐：图片同宽同高，正文从同一条基线开始，长标题两行省略。 */
@media (min-width:761px){
  #main .hp-sec--best .hp-track{
    align-items:start !important;
  }
  #main .hp-sec--best .hp-track > .hp-pcard{
    display:block !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    overflow:visible !important;
    border-radius:8px !important;
  }
  #main .hp-sec--best .hp-pcard > a{
    display:grid !important;
    grid-template-rows:auto 236px !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    overflow:visible !important;
  }
  #main .hp-sec--best .hp-pc-media{
    position:relative !important;
    display:block !important;
    width:100% !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    aspect-ratio:1 / 1 !important;
    overflow:visible !important;
    border-radius:8px 8px 0 0 !important;
    background:#f4f5f4 !important;
  }
  #main .hp-sec--best .hp-pc-media img,
  #main .hp-sec--best .hp-pc-media .day,
  #main .hp-sec--best .hp-pc-media .night{
    position:absolute !important;
    inset:0 !important;
    display:block !important;
    width:100% !important;
    height:100% !important;
    min-width:100% !important;
    min-height:100% !important;
    max-width:none !important;
    max-height:none !important;
    object-fit:cover !important;
    object-position:center center !important;
    border-radius:8px 8px 0 0 !important;
    transform:none !important;
    filter:none !important;
  }
  #main .hp-sec--best .hp-pcard:hover,
  #main .hp-sec--best .hp-pcard:hover img,
  #main .hp-sec--best .hp-pcard:hover .day,
  #main .hp-sec--best .hp-pcard:hover .night{
    transform:none !important;
    filter:none !important;
  }
  #main .hp-sec--best .hp-pc-body{
    display:flex !important;
    flex-direction:column !important;
    height:236px !important;
    min-height:236px !important;
    max-height:236px !important;
    padding:14px 14px 16px !important;
    gap:7px !important;
    overflow:hidden !important;
  }
  #main .hp-sec--best .hp-pc-name{
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    height:40px !important;
    min-height:40px !important;
    max-height:40px !important;
    overflow:hidden !important;
    line-height:20px !important;
  }
  #main .hp-sec--best .hp-pc-price{
    min-height:42px !important;
    margin:0 !important;
  }
  #main .hp-sec--best .hp-pc-rate{
    min-height:20px !important;
    margin:0 !important;
  }
  #main .hp-sec--best .hp-pc-stock{
    margin-top:auto !important;
  }
}

/* 0529：购物车 hover 模块统一定位到图标下方，覆盖首页旧的 right:28px 写法。 */
#mini-cart.mini-cart{
  top:var(--mini-cart-top,86px) !important;
  left:var(--mini-cart-left,auto) !important;
  right:auto !important;
  width:var(--mini-cart-width,330px) !important;
}
#mini-cart::before{
  left:var(--mini-cart-arrow-x,285px) !important;
  right:auto !important;
  transform:translateX(-50%) rotate(45deg) !important;
}

/* 0603：购物车页移动端也要有“同类推荐”板块，PC 仍保持四列。 */
.cart-recos{
  margin-top:48px !important;
}
.cart-recos__grid{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:14px !important;
}

/* 0604：博客首页补 5 大类 x 4 篇文章模块。 */
.lh-mag-categories{
  display:grid;
  gap:44px;
  margin:54px 0 24px;
}
.lh-mag-cat__head{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:18px;
  margin-bottom:18px;
}
.lh-mag-cat__head h2{
  margin:0;
  font-size:clamp(24px,2.3vw,32px);
  line-height:1.12;
  letter-spacing:0;
}
.lh-mag-cat__head p{
  margin:6px 0 0;
  color:#6f7772;
}
.lh-mag-cat__grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
}
.lh-mag-mini-card{
  display:flex;
  min-height:100%;
  flex-direction:column;
  overflow:hidden;
  border:1px solid #e7ece8;
  border-radius:8px;
  background:#fff;
  color:#1d211f;
  text-decoration:none;
}
.lh-mag-mini-card img{
  width:100%;
  aspect-ratio:16/10;
  object-fit:cover;
}
.lh-mag-mini-card__body{
  display:grid;
  gap:8px;
  padding:14px;
}
.lh-mag-mini-card__kicker{
  font-size:10px;
  font-weight:800;
  letter-spacing:.14em;
  color:var(--lh-green);
  text-transform:uppercase;
}
.lh-mag-mini-card h3{
  margin:0;
  font-size:15px;
  line-height:1.35;
}
.lh-mag-mini-card span:last-child{
  font-size:12px;
  font-weight:700;
  color:var(--lh-green);
}

/* 0604：会员页补“如何获积分 / 如何用积分 / FAQ”。 */
.lh-loyalty-block{
  padding:80px 0;
  background:#fff;
}
.lh-loyalty-block--soft{
  background:#f6f9f6;
}
.lh-loyalty-head{
  max-width:680px;
  margin:0 auto 30px;
  text-align:center;
}
.lh-loyalty-head h2{
  margin:0 0 10px;
  font-size:clamp(28px,3vw,42px);
  line-height:1.12;
}
.lh-loyalty-head p{
  margin:0;
  color:#6f7772;
}
.lh-points-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
}
.lh-points-card{
  display:flex;
  min-height:100%;
  flex-direction:column;
  gap:10px;
  padding:24px;
  border:1px solid #e5ece6;
  border-radius:12px;
  background:#fff;
}
.lh-points-card strong{
  font-size:20px;
}
.lh-points-card p{
  margin:0;
  color:#616b65;
  line-height:1.55;
}
.lh-points-card a{
  margin-top:auto;
  font-weight:800;
  color:var(--lh-green);
  text-decoration:none;
}
.lh-faq{
  max-width:880px;
  margin:0 auto;
}
.lh-faq details{
  border-bottom:1px solid #dfe7e1;
}
.lh-faq summary{
  cursor:pointer;
  padding:20px 0;
  font-weight:800;
  list-style:none;
}
.lh-faq summary::-webkit-details-marker{
  display:none;
}
.lh-faq p{
  margin:0;
  padding:0 0 20px;
  color:#65706a;
  line-height:1.6;
}

/* 0604：老带新页增加 FAQ 手风琴。 */
.lh-referral-faq{
  margin-top:38px;
  padding-top:20px;
  border-top:1px solid #e3e9e4;
}
.lh-referral-faq h2{
  margin:0 0 12px;
  font-size:26px;
}

@media (max-width:960px){
  .lh-mag-cat__grid,
  .lh-points-grid,
  .cart-recos__grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media (max-width:760px){
  .cart-recos{
    margin-top:34px !important;
  }
  .lh-mag-categories{
    gap:34px;
    margin:38px 0 16px;
  }
  .lh-mag-cat__head{
    display:block;
    text-align:left;
  }
  .lh-mag-cat__grid,
  .lh-points-grid,
  .cart-recos__grid{
    grid-template-columns:1fr !important;
  }
  .lh-loyalty-block{
    padding:54px 0;
  }
  .lh-points-card{
    padding:20px;
  }
}

html,
body{
  margin:0 !important;
  overflow-x:hidden;
}

*,
*::before,
*::after{
  box-sizing:border-box;
}

body{
  /* 全站字体统一为 Poppins；颜色保持偏黑，不让浏览器默认字体影响视觉。 */
  font-family:Poppins, Arial, sans-serif !important;
  color:#1b1b1b;
  background:#fff;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

img,
svg{
  max-width:100%;
  vertical-align:middle;
}

a{
  color:inherit;
  text-decoration:none !important;
}

.header__linklist-link,
.header__logo-link,
.header__icon-wrapper,
.mega-menu a,
.mm-accessory-card,
.footer a{
  text-decoration:none !important;
}

[hidden],
template{
  display:none !important;
}

.visually-hidden{
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  padding:0 !important;
  margin:-1px !important;
  overflow:hidden !important;
  clip:rect(0 0 0 0) !important;
  clip-path:inset(50%) !important;
  white-space:nowrap !important;
  border:0 !important;
}

.list--unstyled,
.linklist,
.mobile-nav,
.social-media{
  list-style:none !important;
  margin:0 !important;
  padding:0 !important;
}

.tap-area{
  appearance:none !important;
  -webkit-appearance:none !important;
  border:0 !important;
  background:transparent !important;
  color:inherit !important;
  font:inherit !important;
  padding:0 !important;
  cursor:pointer !important;
}

.container{
  /* Shopify 主题默认容器不稳定，这里统一页面横向宽度。 */
  width:var(--lh-final-container) !important;
  max-width:var(--lh-final-container) !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

/* 主题基础兜底：远程 /promo/theme.css 本地不一定加载，所以补齐公告栏和 header 基础形态。 */
#shopify-section-sections--25458834178427__announcement-bar{
  background:#282828 !important;
  color:#fff !important;
}

.announcement-bar{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:34px !important;
  padding:0 28px !important;
  gap:18px !important;
  color:#fff !important;
  background:#282828 !important;
}

.announcement-bar__list{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:0 !important;
  text-align:center !important;
}

.announcement-bar__item{
  display:block !important;
}

.announcement-bar__message,
.announcement-bar__message p{
  margin:0 !important;
  color:#fff !important;
  font-size:13px !important;
  line-height:1.35 !important;
  font-weight:700 !important;
  letter-spacing:.02em !important;
}

.announcement-bar .tap-area{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:28px !important;
  height:28px !important;
  flex:0 0 28px !important;
}

#shopify-section-sections--25458834178427__header{
  background:#fff !important;
  border-bottom:1px solid #e7e7e7 !important;
}

.header{
  display:block !important;
  background:#fff !important;
  color:#1b1b1b !important;
}

.header__wrapper{
  min-height:72px !important;
}

.header__logo-link,
.header__icon-wrapper,
.header__secondary-links,
.header__icon-list{
  display:flex !important;
  align-items:center !important;
}

.header__logo-image{
  display:block !important;
  width:auto !important;
  height:auto !important;
  object-fit:contain !important;
}

.header__secondary-links{
  justify-content:flex-end !important;
  gap:18px !important;
}

.header__icon-list{
  gap:16px !important;
}

.header__icon-wrapper{
  position:relative !important;
  justify-content:center !important;
  width:28px !important;
  height:28px !important;
  color:#1b1b1b !important;
  text-decoration:none !important;
}

.drawer[aria-hidden="true"],
mobile-navigation[aria-hidden="true"],
predictive-search-drawer[aria-hidden="true"]{
  display:none !important;
}

#main [data-rv]{
  opacity:1 !important;
  transform:none !important;
}

/* ============================================================
   头部导航 / Mega menu

   目标：
   - PC 端一级导航不换行、不挤压。
   - PROMOS 和红色百分号保持一组。
   - Accessoires 下拉使用图片入口，和原站结构一致。
   - 手机端恢复汉堡菜单、logo 居中、搜索/购物车靠右。
   ============================================================ */
@media (min-width:1000px){
  .hidden-desk,
  .hidden-lap-and-up{
    display:none !important;
  }
  .hidden-phone,
  .hidden-pocket,
  .hidden-lap{
    display:revert !important;
  }
  desktop-navigation{
    display:block !important;
  }
  mobile-navigation{
    display:none !important;
  }
  #shopify-section-sections--25458834178427__header .container{
    width:var(--lh-final-container) !important;
    max-width:var(--lh-final-container) !important;
    margin-inline:auto !important;
  }
  #shopify-section-sections--25458834178427__header .header__wrapper{
    display:grid !important;
    grid-template-columns:160px minmax(0,1fr) 150px !important;
    align-items:center !important;
    column-gap:26px !important;
    min-height:80px !important;
  }
  #shopify-section-sections--25458834178427__header .header__logo{
    width:160px !important;
    height:auto !important;
    grid-column:1 !important;
    grid-row:1 !important;
  }
  #shopify-section-sections--25458834178427__header .header__logo-link{
    display:flex !important;
    align-items:center !important;
    height:auto !important;
  }
  #shopify-section-sections--25458834178427__header .header__logo-image{
    display:block !important;
    width:auto !important;
    height:auto !important;
    max-width:125px !important;
    max-height:48px !important;
    object-fit:contain !important;
  }
  #shopify-section-sections--25458834178427__header .header__inline-navigation{
    grid-column:2 !important;
    grid-row:1 !important;
  }
  #shopify-section-sections--25458834178427__header .header__secondary-links{
    grid-column:3 !important;
    grid-row:1 !important;
    justify-self:end !important;
  }
  .header__wrapper{
    display:flex !important;
    align-items:center !important;
    gap:clamp(22px,2vw,42px) !important;
    flex-wrap:nowrap !important;
  }
  .header__logo,
  .header__secondary-links{
    flex:0 0 auto !important;
  }
  .header__inline-navigation{
    flex:1 1 auto !important;
    min-width:0 !important;
    max-width:none !important;
    margin:0 !important;
  }
  .header__linklist{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    flex-wrap:nowrap !important;
    gap:clamp(18px,1.8vw,44px) !important;
    margin:0 !important;
    padding:0 !important;
  }
  .header__linklist-item{
    flex:0 0 auto !important;
    white-space:nowrap !important;
  }
  .header__inline-navigation .header__linklist-link{
    display:inline-flex !important;
    align-items:center !important;
    gap:8px !important;
    padding:8px 0 !important;
    font-size:clamp(13px,.82vw,15px) !important;
    line-height:1 !important;
    white-space:nowrap !important;
  }
  .nav-text-bold,
  .promos-pct-dot{
    white-space:nowrap !important;
  }
  .header__inline-navigation .header__linklist-link:has(.promos-pct-dot){
    position:relative !important;
    gap:0 !important;
    padding-right:30px !important;
  }
  .promos-pct-dot{
    display:inline-grid !important;
    place-items:center !important;
    position:absolute !important;
    top:50% !important;
    right:0 !important;
    transform:translateY(-50%) !important;
    flex:0 0 22px !important;
    width:22px !important;
    height:22px !important;
    margin-left:0 !important;
    border-radius:50% !important;
    background:#e00023 !important;
    color:#fff !important;
    font-size:12px !important;
    font-weight:800 !important;
    line-height:1 !important;
  }
  .mm-uniform{
    left:0 !important;
    right:0 !important;
    width:100vw !important;
    max-width:none !important;
  }
  .mm-uniform .container{
    width:var(--lh-final-narrow) !important;
    max-width:var(--lh-final-narrow) !important;
    margin-inline:auto !important;
    padding:28px 0 !important;
  }
  #desktop-menu-5 .mega-menu__inner{
    display:block !important;
  }
  #desktop-menu-5 .mm-accessory-strip{
    display:grid !important;
    grid-template-columns:repeat(5,minmax(0,1fr)) !important;
    gap:34px !important;
    align-items:end !important;
    width:100% !important;
    max-width:900px !important;
    margin:0 auto !important;
  }
  #desktop-menu-5 .mm-accessory-card{
    display:grid !important;
    justify-items:center !important;
    gap:12px !important;
    color:#111 !important;
    text-decoration:none !important;
    text-transform:none !important;
  }
  #desktop-menu-5 .mm-accessory-img{
    display:grid !important;
    place-items:center !important;
    width:112px !important;
    height:92px !important;
  }
  #desktop-menu-5 .mm-accessory-img img{
    width:100% !important;
    height:100% !important;
    object-fit:contain !important;
    transform:none !important;
  }
  #desktop-menu-5 .mm-accessory-label{
    font-size:12px !important;
    line-height:1.2 !important;
    font-weight:700 !important;
    letter-spacing:.08em !important;
    text-transform:uppercase !important;
    text-align:center !important;
  }
}

@media (max-width:999px){
  .hidden-pocket,
  .hidden-lap,
  desktop-navigation,
  .header__secondary-links .hidden-phone{
    display:none !important;
  }
  .hidden-desk{
    display:inline-flex !important;
  }
  #shopify-section-sections--25458834178427__announcement-bar{
    position:relative !important;
    top:auto !important;
    z-index:20 !important;
  }
  .announcement-bar{
    min-height:50px !important;
    padding:6px 14px !important;
    gap:10px !important;
  }
  .announcement-bar__message,
  .announcement-bar__message p{
    font-size:12px !important;
    line-height:1.35 !important;
  }
  #shopify-section-sections--25458834178427__header{
    position:relative !important;
    top:auto !important;
    z-index:19 !important;
  }
  #shopify-section-sections--25458834178427__header .container{
    width:100% !important;
    max-width:none !important;
    padding:0 18px !important;
  }
  #shopify-section-sections--25458834178427__header .header__wrapper{
    display:grid !important;
    grid-template-columns:44px minmax(0,1fr) auto !important;
    align-items:center !important;
    gap:12px !important;
    min-height:72px !important;
  }
  #shopify-section-sections--25458834178427__header .header__inline-navigation{
    grid-column:1 !important;
    grid-row:1 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    min-width:0 !important;
  }
  #shopify-section-sections--25458834178427__header .header__icon-list{
    display:flex !important;
    align-items:center !important;
    gap:0 !important;
  }
  #shopify-section-sections--25458834178427__header .header__logo{
    grid-column:2 !important;
    grid-row:1 !important;
    display:flex !important;
    justify-content:center !important;
    width:auto !important;
    height:auto !important;
  }
  #shopify-section-sections--25458834178427__header .header__logo-link{
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
  }
  #shopify-section-sections--25458834178427__header .header__logo-image{
    width:auto !important;
    height:auto !important;
    max-width:122px !important;
    max-height:44px !important;
    object-fit:contain !important;
  }
  #shopify-section-sections--25458834178427__header .header__secondary-links{
    grid-column:3 !important;
    grid-row:1 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:12px !important;
  }
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper{
    display:flex !important;
  }
  mobile-navigation.drawer:not([aria-hidden="false"]),
  predictive-search-drawer.drawer:not([aria-hidden="false"]){
    display:none !important;
  }
  mobile-navigation.drawer[aria-hidden="false"]{
    display:block !important;
    position:fixed !important;
    inset:0 auto 0 0 !important;
    width:min(86vw,380px) !important;
    max-width:380px !important;
    background:#fff !important;
    z-index:9999 !important;
    overflow:auto !important;
    box-shadow:0 24px 60px rgba(0,0,0,.22) !important;
  }
}

@media (min-width:1000px) and (max-width:1320px){
  .header__wrapper{gap:18px !important;}
  .header__linklist{gap:18px !important;}
  .header__inline-navigation .header__linklist-link{font-size:13px !important;}
}

/* ============================================================
   首页公共宽度和标题

   目标：
   - 所有首页 section 使用同一套容器宽度，避免中间窄、底部宽的问题。
   - 模块标题字号、行高统一，避免分类标题和热卖标题大小不一致。
   ============================================================ */
#main .hp-wrap,
#main .lh-circats__wrap,
#main .hp-sec--best .hp-wrap,
#main .hp-sec--best .hp-bv-wrap,
#main .hp-sec--spaces .hp-wrap,
#main .v15-trust-inner,
.footer .container,
.site-footer .container,
footer .container{
  width:var(--lh-final-container) !important;
  max-width:var(--lh-final-container) !important;
  margin-left:auto !important;
  margin-right:auto !important;
  padding-left:0 !important;
  padding-right:0 !important;
}

#main .lh-circats__head h2,
#main .hp-prow-head h2,
#main .hp-head h2,
#main .hp-room-title{
  font-size:clamp(28px,2.8vw,42px) !important;
  line-height:1.12 !important;
  letter-spacing:0 !important;
}

#main .lh-circats__head p,
#main .hp-prow-h-sub,
#main .hp-head p{
  margin-top:10px !important;
  font-size:15px !important;
  line-height:1.45 !important;
  color:#858b86 !important;
}

/* ============================================================
   首页分类圆圈：Nos catégories de luminaires

   目标：
   - PC 默认展示 6 个，圆圈更大但整体紧凑。
   - 箭头放在两侧，不压住图片。
   - 图片不拉伸，标题保持细一点的字重。
   ============================================================ */
#main .lh-circats{
  padding:38px 0 34px !important;
  background:#fff !important;
}
#main .lh-circats__wrap{
  position:relative !important;
}
#main .lh-circats__head{
  justify-content:center !important;
  text-align:center !important;
  margin-bottom:28px !important;
}
#main .lh-circats__track{
  display:flex !important;
  flex-wrap:nowrap !important;
  gap:24px !important;
  justify-content:flex-start !important;
  align-items:flex-start !important;
  width:100% !important;
  max-width:100% !important;
  margin:0 !important;
  padding:0 !important;
  overflow-x:hidden !important;
  overflow-y:visible !important;
  scroll-behavior:smooth !important;
  scrollbar-width:none !important;
}
#main .lh-circats__track::-webkit-scrollbar{display:none !important;}
#main .lh-circats__i,
#main .lh-circats__i:nth-child(n+6){
  display:block !important;
  flex:0 0 calc((100% - 120px) / 6) !important;
  width:calc((100% - 120px) / 6) !important;
  max-width:calc((100% - 120px) / 6) !important;
  min-width:0 !important;
  color:#202622 !important;
  text-align:center !important;
  text-decoration:none !important;
}
#main .lh-circats__pic{
  width:min(100%,164px) !important;
  max-width:164px !important;
  aspect-ratio:1/1 !important;
  margin:0 auto 12px !important;
  border-radius:50% !important;
  overflow:hidden !important;
  background:#f5f7f5 !important;
  border:1px solid #edf1ed !important;
  box-shadow:none !important;
}
#main .lh-circats__pic img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  transform:none !important;
  filter:none !important;
}
#main .lh-circats__lbl{
  display:block !important;
  margin-top:0 !important;
  font-size:13px !important;
  line-height:1.25 !important;
  font-weight:500 !important;
  letter-spacing:0 !important;
}
#main .lh-circats__arrow{
  position:absolute !important;
  top:58% !important;
  width:38px !important;
  height:38px !important;
  border-radius:50% !important;
  background:#fff !important;
  border:1px solid #e7ece7 !important;
  box-shadow:0 4px 16px rgba(18,30,22,.08) !important;
  z-index:5 !important;
}
#main .lh-circats__arrow--prev{left:-54px !important;}
#main .lh-circats__arrow--next{right:-54px !important;}

/* ============================================================
   首页热卖商品：Nos meilleures ventes

   目标：
   - PC 端固定 4 个商品，宽度和老官网节奏一致。
   - 图片高度一致，商品卡高度一致，长标题两行省略。
   - 顶部橙色角标左对齐，左下角直角，并露出到图片外。
   - Hover 只切换夜景图，不做模糊放大。
   ============================================================ */
#main .hp-sec--best{
  padding:42px 0 58px !important;
  background:#fff !important;
}
#main .hp-sec--best .hp-prow-head{
  margin-bottom:34px !important;
}
#main .hp-sec--best .hp-bv-wrap{
  position:relative !important;
  overflow:visible !important;
}
#main .hp-sec--best [data-scroller]{
  overflow:visible !important;
}
#main .hp-sec--best .hp-track{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:30px !important;
  width:100% !important;
  max-width:100% !important;
  margin:0 !important;
  padding:14px 0 0 !important;
  overflow:visible !important;
  scroll-snap-type:none !important;
}
#main .hp-sec--best .hp-track > .hp-pcard{
  display:block !important;
  width:100% !important;
  min-width:0 !important;
  max-width:none !important;
  height:100% !important;
  border:1px solid #e6ebe6 !important;
  border-radius:8px !important;
  overflow:visible !important;
  background:#fff !important;
  box-shadow:0 12px 26px rgba(20,30,22,.045) !important;
  transform:none !important;
}
#main .hp-sec--best .hp-track > .hp-pcard:nth-child(n+5){
  display:none !important;
}
#main .hp-sec--best .hp-pcard:hover{
  transform:none !important;
  box-shadow:0 12px 26px rgba(20,30,22,.055) !important;
}
#main .hp-sec--best .hp-pcard a{
  display:flex !important;
  flex-direction:column !important;
  height:100% !important;
  color:inherit !important;
  text-decoration:none !important;
  overflow:visible !important;
}
#main .hp-sec--best .hp-pc-media{
  position:relative !important;
  aspect-ratio:.94 / 1 !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  overflow:visible !important;
  border-radius:8px 8px 0 0 !important;
  background:#f5f7f5 !important;
}
#main .hp-sec--best .hp-pc-media img{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center center !important;
  border-radius:8px 8px 0 0 !important;
  transform:none !important;
  filter:none !important;
  transition:opacity .22s ease !important;
}
#main .hp-sec--best .hp-pc-media .day{opacity:1 !important;}
#main .hp-sec--best .hp-pc-media .night{opacity:0 !important;}
#main .hp-sec--best .hp-pcard:hover .hp-pc-media .day{opacity:0 !important;}
#main .hp-sec--best .hp-pcard:hover .hp-pc-media .night{opacity:1 !important;}
#main .hp-sec--best .hp-pcard:hover .day,
#main .hp-sec--best .hp-pcard:hover .night,
#main .hp-sec--best .hp-pc-media:hover img{
  transform:none !important;
  filter:none !important;
}
#main .hp-sec--best .hp-bdgs{
  position:absolute !important;
  top:-14px !important;
  left:0 !important;
  right:auto !important;
  z-index:8 !important;
  display:flex !important;
  align-items:flex-start !important;
}
#main .hp-sec--best .hp-bdgs .hp-bdg,
#main .hp-sec--best .hp-bdg--remises{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  height:28px !important;
  min-width:0 !important;
  padding:0 14px !important;
  border-radius:4px 4px 4px 0 !important;
  background:#d95d34 !important;
  color:#fff !important;
  font-size:13px !important;
  line-height:28px !important;
  font-weight:800 !important;
  letter-spacing:0 !important;
  box-shadow:none !important;
  white-space:nowrap !important;
}
#main .hp-sec--best .hp-bdg--solar{
  position:absolute !important;
  left:14px !important;
  bottom:14px !important;
  z-index:6 !important;
  height:24px !important;
  padding:0 12px !important;
  border-radius:999px !important;
  background:#f5aa38 !important;
  color:#fff !important;
  font-size:10px !important;
  line-height:24px !important;
  font-weight:800 !important;
  letter-spacing:.04em !important;
  text-transform:uppercase !important;
}
#main .hp-sec--best .hp-bdg--solar::before{
  content:"" !important;
  display:inline-block !important;
  width:7px !important;
  height:7px !important;
  margin-right:6px !important;
  border-radius:50% !important;
  border:2px solid #fff !important;
}
#main .hp-sec--best .hp-pc-fav{
  position:absolute !important;
  right:14px !important;
  bottom:14px !important;
  z-index:7 !important;
  width:36px !important;
  height:36px !important;
  border:0 !important;
  border-radius:50% !important;
  background:#fff !important;
  box-shadow:0 4px 14px rgba(0,0,0,.16) !important;
}
#main .hp-sec--best .hp-pc-fav svg{
  width:18px !important;
  height:18px !important;
}
#main .hp-sec--best .hp-pc-body{
  display:flex !important;
  flex-direction:column !important;
  height:236px !important;
  min-height:236px !important;
  max-height:236px !important;
  padding:22px 18px 18px !important;
  gap:8px !important;
  overflow:hidden !important;
}
#main .hp-sec--best .hp-pc-pvc{
  order:1 !important;
  align-self:flex-start !important;
  display:inline-flex !important;
  align-items:center !important;
  height:28px !important;
  padding:0 14px !important;
  margin:0 !important;
  border-radius:999px !important;
  background:#d95d34 !important;
  color:#fff !important;
  font-size:13px !important;
  font-weight:800 !important;
  line-height:28px !important;
}
#main .hp-sec--best .hp-pc-price{
  order:2 !important;
  min-height:44px !important;
  margin:0 !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  gap:2px !important;
  line-height:1 !important;
}
#main .hp-sec--best .hp-pc-price b{
  display:block !important;
  font-size:24px !important;
  line-height:1.08 !important;
  font-weight:900 !important;
  color:#151b17 !important;
}
#main .hp-sec--best .hp-pc-oldprice{
  display:block !important;
  font-size:14px !important;
  line-height:18px !important;
  color:#a8aea8 !important;
}
#main .hp-sec--best .hp-pc-name{
  order:3 !important;
  display:-webkit-box !important;
  -webkit-line-clamp:2 !important;
  -webkit-box-orient:vertical !important;
  height:44px !important;
  min-height:44px !important;
  max-height:44px !important;
  margin:0 !important;
  overflow:hidden !important;
  color:#1b221d !important;
  font-size:16px !important;
  line-height:22px !important;
  font-weight:700 !important;
}
#main .hp-sec--best .hp-pc-rate{
  order:4 !important;
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
  height:20px !important;
  min-height:20px !important;
  margin:0 !important;
  color:#8b918b !important;
  font-size:13px !important;
  line-height:20px !important;
}
#main .hp-sec--best .hp-stars{
  color:#f6a429 !important;
  letter-spacing:1px !important;
}
#main .hp-sec--best .hp-pc-stock{
  order:5 !important;
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  height:22px !important;
  min-height:22px !important;
  margin-top:auto !important;
  color:#2f7a49 !important;
  font-size:13px !important;
  font-weight:700 !important;
  line-height:22px !important;
}
#main .hp-sec--best .hp-pc-stock::before{
  content:"✓" !important;
  display:inline-grid !important;
  place-items:center !important;
  width:18px !important;
  height:18px !important;
  border-radius:50% !important;
  background:#5fb15f !important;
  color:#fff !important;
  font-size:12px !important;
  line-height:1 !important;
}
#main .hp-sec--best .hp-arrow--side{
  top:50% !important;
  width:44px !important;
  height:44px !important;
  transform:translateY(-50%) !important;
  background:#fff !important;
  border:1px solid #dfe6df !important;
  box-shadow:0 5px 16px rgba(20,30,22,.10) !important;
  z-index:10 !important;
}
#main .hp-sec--best .hp-arrow--prev{left:-66px !important;}
#main .hp-sec--best .hp-arrow--next{right:-66px !important;}

/* ============================================================
   首页应用场景 / 房间购物模块

   目标：
   - “Votre éclairage par espace” 的 1 大 + 4 小图片网格保持下对齐。
   - 图片和文字之间留出固定间距，避免文字贴图或压住下一块。
   - “Idées shopping par pièce” 默认 5 个，左右箭头可扩展。
   ============================================================ */
#main .hp-sec--spaces{
  padding:56px 0 60px !important;
  background:#fff !important;
}
#main .hp-sec--spaces .hp-head{
  margin-bottom:34px !important;
}
#main .hp-space-mosaic{
  display:grid !important;
  grid-template-columns:2fr 1fr 1fr !important;
  grid-template-rows:repeat(2,minmax(230px,1fr)) !important;
  gap:18px 22px !important;
  align-items:stretch !important;
  margin:0 auto 58px !important;
  overflow:visible !important;
}
#main .hp-space-tile{
  display:grid !important;
  grid-template-rows:minmax(0,1fr) auto !important;
  gap:10px !important;
  min-height:0 !important;
  color:#202622 !important;
  text-decoration:none !important;
}
#main .hp-space-tile--large{
  grid-row:span 2 !important;
}
#main .hp-space-tile img{
  width:100% !important;
  height:100% !important;
  min-height:0 !important;
  object-fit:cover !important;
  border-radius:8px !important;
  display:block !important;
}
#main .hp-space-tile b{
  display:block !important;
  min-height:20px !important;
  margin:0 !important;
  color:#202622 !important;
  text-align:center !important;
  font-size:14px !important;
  font-weight:600 !important;
  line-height:20px !important;
}
#main .hp-room-title{
  position:static !important;
  z-index:auto !important;
  margin:0 0 30px !important;
  text-align:center !important;
  color:#10192d !important;
}
#main .hp-room-title em{
  color:#4fa266 !important;
  font-style:normal !important;
}
#main .hp-rooms-wrap{
  position:relative !important;
  overflow:visible !important;
  margin:0 auto !important;
}
#main .hp-room-track{
  display:grid !important;
  grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  gap:22px !important;
  overflow:visible !important;
  padding:0 !important;
}
#main .hp-room-card{
  display:grid !important;
  grid-template-rows:auto auto !important;
  gap:10px !important;
  min-width:0 !important;
  color:#10192d !important;
  text-align:center !important;
  text-decoration:none !important;
}
#main .hp-room-card:nth-child(n+6){
  display:none !important;
}
#main .hp-room-card img{
  width:100% !important;
  aspect-ratio:4/3 !important;
  height:auto !important;
  object-fit:cover !important;
  border-radius:8px !important;
}
#main .hp-room-card b{
  font-size:13px !important;
  line-height:1.25 !important;
  font-weight:500 !important;
}
#main .hp-spaces-arrow{
  width:38px !important;
  height:38px !important;
  background:#fff !important;
  border:1px solid #e7ece7 !important;
  box-shadow:0 4px 14px rgba(20,30,22,.08) !important;
}
#main .hp-spaces-arrow--prev{left:-56px !important;}
#main .hp-spaces-arrow--next{right:-56px !important;}

/* ============================================================
   Footer / trust block

   目标：
   - 保留客户原来的绿色背景。
   - 移除 footer 顶部多余白线。
   - 标题、社交图标、hover 为纯白；正文为浅白，保证绿色背景上可读。
   - PC / 平板 / 手机都使用同一套宽度节奏。
   ============================================================ */
.v15-trust-strip,
.site-footer,
footer{
  background:#276B42 !important;
}
.v15-trust-strip{
  border-top:0 !important;
  border-bottom:1px solid rgba(255,255,255,.16) !important;
}
.site-footer,
footer{
  border-top:0 !important;
  color:#d7e5da !important;
}
.footer,
.shopify-section-group-footer-group,
.shopify-section--footer{
  background:#276B42 !important;
}
.footer::before,
.site-footer::before,
footer::before,
.v15-trust-strip::before{
  display:none !important;
  content:none !important;
}
.footer .container:first-child,
.site-footer .container:first-child,
footer .container:first-child{
  border-top:0 !important;
}
.v15-trust-inner{
  display:grid !important;
  grid-template-columns:1.1fr 1fr 1fr !important;
  gap:clamp(42px,7vw,120px) !important;
  align-items:start !important;
}
.v15-trust-col{
  min-width:0 !important;
}
.v15-trust-logos{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:10px !important;
}

#shopify-section-sections--25458834145659__text-with-icons{
  background:#f7f9f7 !important;
}

#shopify-section-sections--25458834145659__text-with-icons .section__color-wrapper{
  background:#f7f9f7 !important;
}

.text-with-icons{
  display:block !important;
}

.text-with-icons__list{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:36px !important;
  width:100% !important;
}

.text-with-icons__item{
  display:grid !important;
  justify-items:center !important;
  gap:12px !important;
  text-align:center !important;
  color:#1b1b1b !important;
}

.text-with-icons__icon-wrapper{
  display:grid !important;
  place-items:center !important;
  width:58px !important;
  height:58px !important;
  margin:0 auto !important;
}

.text-with-icons__custom-icon{
  width:42px !important;
  height:42px !important;
  object-fit:contain !important;
}

.text-with-icons__content-wrapper p{
  margin:0 !important;
}

.text-with-icons__content-wrapper .heading{
  margin-bottom:10px !important;
  font-size:13px !important;
  line-height:1.25 !important;
  font-weight:800 !important;
  letter-spacing:.12em !important;
  text-transform:uppercase !important;
}

.text-with-icons__content-wrapper p:not(.heading){
  color:#454b46 !important;
  font-size:15px !important;
  line-height:1.5 !important;
}

.dots-nav{
  display:none !important;
}

.footer{
  padding:64px 0 34px !important;
}

.footer__inner{
  display:block !important;
}

.footer__item-list{
  display:grid !important;
  grid-template-columns:1.2fr 1fr .9fr 1.1fr !important;
  gap:clamp(42px,6vw,96px) !important;
  align-items:start !important;
}

.footer__item-title{
  margin:0 0 22px !important;
  color:#fff !important;
  font-size:13px !important;
  line-height:1.2 !important;
  font-weight:800 !important;
  letter-spacing:.16em !important;
  text-transform:uppercase !important;
}

.footer__item-title::after{
  content:"" !important;
  display:block !important;
  width:34px !important;
  height:3px !important;
  margin-top:18px !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.36) !important;
}

.footer__item-content,
.footer__item-content p,
.footer__item-content a,
.footer__copyright,
.footer__payment-methods-label{
  color:#d7e5da !important;
  font-size:14px !important;
  line-height:1.55 !important;
}

.footer__item-content p{
  margin:0 0 18px !important;
}

.footer__item-content a{
  text-decoration:none !important;
}

.footer__item-content a:hover{
  color:#fff !important;
}

.footer .linklist{
  display:grid !important;
  gap:5px !important;
}

.footer .linklist__item a{
  display:inline-block !important;
  padding:0 !important;
  line-height:1.45 !important;
}

.social-media{
  display:grid !important;
  grid-template-columns:repeat(6,44px) !important;
  gap:0 !important;
}

.social-media__item{
  display:block !important;
}

.social-media__link{
  display:grid !important;
  place-items:center !important;
  width:44px !important;
  height:44px !important;
  border:1px solid rgba(255,255,255,.16) !important;
  color:#fff !important;
  text-decoration:none !important;
}

.footer__aside{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  gap:14px 22px !important;
  margin-top:42px !important;
  padding-top:24px !important;
  border-top:1px solid rgba(255,255,255,.16) !important;
}

.footer__cross-border,
.footer__follow-and-payment,
.footer__payment-methods,
.payment-methods-list{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  gap:8px !important;
}

.select,
.popover__choice-item{
  appearance:none !important;
  border:1px solid rgba(255,255,255,.22) !important;
  border-radius:999px !important;
  background:transparent !important;
  color:#fff !important;
  font:inherit !important;
  padding:7px 12px !important;
}

.popover:not([open]){
  display:none !important;
}

/* ============================================================
   通用列表页 / 商品页卡片

   目标：
   - 分类列表、搜索、购物车、账户、商品详情等内页统一窄容器。
   - 商品卡 hover 不放大不模糊，保持产品展示稳定。
   ============================================================ */
.ls-wrap,
.collection-wrap,
.search-wrap,
.cart-wrap,
.account-wrap,
.page-wrap,
.lh-page,
.lh-page__inner{
  max-width:var(--lh-final-narrow) !important;
}
.ls-card,
.pcard{
  border-radius:8px !important;
  overflow:visible !important;
  transform:none !important;
}
.ls-card:hover,
.pcard:hover{
  transform:none !important;
}
.ls-card-media,
.pcard-media{
  border-radius:8px 8px 0 0 !important;
  overflow:visible !important;
}
.ls-card-media img,
.pcard-media img{
  transform:none !important;
  filter:none !important;
}
.ls-card:hover .ls-card-media img,
.pcard:hover .pcard-media img{
  transform:none !important;
  filter:none !important;
}

/* ============================================================
   博客 / 会员 / 老带新页面

   目标：
   - magazine、article、fidelite、parrainage 使用统一内页宽度。
   - 卡片网格、文章详情、FAQ、CTA 的间距和圆角保持一致。
   ============================================================ */
.lh-page{
  width:var(--lh-final-narrow) !important;
  margin:0 auto !important;
  padding:clamp(36px,5vw,72px) 0 !important;
}
.lh-page-hero{
  text-align:center !important;
  margin:0 auto clamp(30px,4vw,48px) !important;
  max-width:760px !important;
}
.lh-page-hero__kicker{
  color:#276B42 !important;
  font-size:12px !important;
  font-weight:800 !important;
  letter-spacing:.16em !important;
  text-transform:uppercase !important;
  margin:0 0 10px !important;
}
.lh-page-hero h1{
  color:#1a1a1a !important;
  font-size:clamp(32px,4vw,52px) !important;
  line-height:1.08 !important;
  margin:0 0 14px !important;
  letter-spacing:0 !important;
}
.lh-page-hero p{
  color:#666 !important;
  font-size:16px !important;
  line-height:1.65 !important;
  margin:0 !important;
}
.lh-mag-feature,
.lh-article-feature{
  display:grid !important;
  grid-template-columns:1.1fr .9fr !important;
  border:1px solid #e5e9e5 !important;
  border-radius:12px !important;
  overflow:hidden !important;
  background:#fff !important;
  text-decoration:none !important;
}
.lh-mag-feature img,
.lh-article-card img,
.lh-article-feature img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  transform:none !important;
}
.lh-mag-feature__body,
.lh-article-feature__body{
  padding:clamp(24px,3vw,42px) !important;
}
.lh-blog-tabs{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:10px !important;
  justify-content:center !important;
  margin:0 0 34px !important;
}
.lh-blog-tabs a{
  display:inline-flex !important;
  align-items:center !important;
  height:36px !important;
  padding:0 16px !important;
  border-radius:999px !important;
  border:1px solid #dfe6df !important;
  color:#1a1a1a !important;
  background:#fff !important;
  font-size:13px !important;
  font-weight:600 !important;
  text-decoration:none !important;
}
.lh-blog-tabs a.is-active{
  background:#276B42 !important;
  color:#fff !important;
  border-color:#276B42 !important;
}
.lh-blog-section{
  margin-top:42px !important;
}
.lh-blog-section h2,
.lh-related h2{
  text-align:center !important;
  color:#1a1a1a !important;
  font-size:clamp(24px,3vw,34px) !important;
  line-height:1.15 !important;
  margin:0 0 24px !important;
}
.lh-blog-grid,
.lh-related-grid,
.lh-benefit-grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:24px !important;
}
.lh-article-card,
.lh-benefit-card{
  display:flex !important;
  flex-direction:column !important;
  height:100% !important;
  background:#fff !important;
  border:1px solid #e5e9e5 !important;
  border-radius:10px !important;
  overflow:hidden !important;
  color:inherit !important;
  text-decoration:none !important;
}
.lh-article-card figure{
  margin:0 !important;
  aspect-ratio:16/10 !important;
  background:#f4f7f4 !important;
}
.lh-article-card__body,
.lh-benefit-card{
  padding:20px !important;
}
.lh-article-card h3,
.lh-benefit-card h3{
  font-size:18px !important;
  line-height:1.28 !important;
  margin:0 0 10px !important;
  color:#1a1a1a !important;
}
.lh-article-card p,
.lh-benefit-card p{
  color:#666 !important;
  font-size:14px !important;
  line-height:1.6 !important;
}
.lh-page-cta{
  margin-top:46px !important;
  padding:32px !important;
  border-radius:12px !important;
  background:#f5faf6 !important;
  text-align:center !important;
}
.lh-link{
  color:#276B42 !important;
  font-weight:700 !important;
}
.lh-article-body{
  max-width:780px !important;
  margin:42px auto !important;
  color:#333 !important;
  font-size:17px !important;
  line-height:1.78 !important;
}
.lh-article-body h2{
  color:#1a1a1a !important;
  font-size:26px !important;
  line-height:1.2 !important;
  margin:34px 0 12px !important;
}
.lh-faq{
  max-width:860px !important;
  margin:0 auto !important;
  display:grid !important;
  gap:12px !important;
}
.lh-faq details{
  background:#fff !important;
  border:1px solid #e5e9e5 !important;
  border-radius:10px !important;
  padding:18px 20px !important;
}
.lh-faq summary{
  cursor:pointer !important;
  color:#1a1a1a !important;
  font-weight:800 !important;
}
.lh-faq p{
  margin:12px 0 0 !important;
  color:#666 !important;
  line-height:1.6 !important;
}
.lh-page .hp-btn{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:8px !important;
  min-height:44px !important;
  padding:0 24px !important;
  border-radius:999px !important;
  background:#276B42 !important;
  color:#fff !important;
  border:0 !important;
  text-decoration:none !important;
  font-weight:800 !important;
  cursor:pointer !important;
}

/* ============================================================
   移动端兜底

   目标：
   - 容器统一为左右 16px 留白。
   - 首页分类手机端只显示前 2 个，避免默认展开挤乱首屏。
   - 热卖商品改为横向滑动卡片，角标不被裁切。
   - 应用场景和房间模块改成单列/双列，避免图片互相重叠。
   - Footer 单列堆叠，保持绿底白字。
   ============================================================ */
@media (max-width:760px){
  :root{
    --lh-final-container:calc(100vw - 32px);
    --lh-final-narrow:calc(100vw - 32px);
  }
  #main .hp-wrap,
  #main .lh-circats__wrap,
  #main .hp-sec--best .hp-wrap,
  #main .hp-sec--best .hp-bv-wrap,
  #main .hp-sec--spaces .hp-wrap,
  #main .v15-trust-inner,
  .footer .container,
  .site-footer .container,
  footer .container{
    width:var(--lh-final-container) !important;
    max-width:var(--lh-final-container) !important;
  }
  #main .lh-circats{
    padding:34px 0 28px !important;
  }
  #main .lh-circats__head{
    margin-bottom:24px !important;
  }
  #main .lh-circats__head h2,
  #main .hp-prow-head h2,
  #main .hp-head h2,
  #main .hp-room-title{
    font-size:32px !important;
  }
  #main .lh-circats__track{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:22px 32px !important;
    overflow:visible !important;
  }
  #main .lh-circats__i,
  #main .lh-circats__i:nth-child(n+6){
    width:auto !important;
    max-width:none !important;
    flex:auto !important;
  }
  #main .lh-circats__i:nth-child(n+3){
    display:none !important;
  }
  #main .lh-circats__pic{
    width:min(100%,142px) !important;
  }
  #main .lh-circats__arrow{
    display:none !important;
  }
  #main .hp-sec--best .hp-track{
    display:flex !important;
    gap:18px !important;
    overflow-x:auto !important;
    overflow-y:visible !important;
    scroll-snap-type:x mandatory !important;
    padding:16px 20px 4px !important;
    margin:0 !important;
    scrollbar-width:none !important;
  }
  #main .hp-sec--best .hp-track::-webkit-scrollbar{display:none !important;}
  #main .hp-sec--best .hp-track > .hp-pcard,
  #main .hp-sec--best .hp-track > .hp-pcard:nth-child(n+5){
    display:block !important;
    flex:0 0 min(82vw,330px) !important;
    width:min(82vw,330px) !important;
    max-width:min(82vw,330px) !important;
    scroll-snap-align:start !important;
  }
  #main .hp-sec--best .hp-pc-body{
    height:220px !important;
    min-height:220px !important;
    max-height:220px !important;
  }
  #main .hp-sec--best .hp-bdgs .hp-bdg,
  #main .hp-sec--best .hp-bdg--remises{
    font-size:11px !important;
    height:26px !important;
    line-height:26px !important;
    padding:0 10px !important;
    width:auto !important;
    min-width:142px !important;
    max-width:none !important;
    white-space:nowrap !important;
    overflow:visible !important;
    flex:0 0 auto !important;
    justify-content:center !important;
  }
  #main .hp-sec--best .hp-bdgs{
    width:auto !important;
    max-width:none !important;
    overflow:visible !important;
  }
  #main .hp-sec--best .hp-arrow--side{
    display:none !important;
  }
  #main .hp-space-mosaic{
    grid-template-columns:1fr !important;
    grid-template-rows:none !important;
    gap:18px !important;
    margin-bottom:42px !important;
  }
  #main .hp-space-tile,
  #main .hp-space-tile--large{
    grid-row:auto !important;
  }
  #main .hp-space-tile img{
    height:auto !important;
    aspect-ratio:16/10 !important;
  }
  #main .hp-room-track{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:16px !important;
  }
  #main .hp-room-card:nth-child(n+6){
    display:none !important;
  }
  #main .hp-spaces-arrow{
    display:none !important;
  }
  .v15-trust-inner{
    grid-template-columns:1fr !important;
    gap:34px !important;
  }
  .v15-trust-logos{
    gap:10px !important;
  }
  .text-with-icons__list{
    grid-template-columns:1fr !important;
    gap:28px !important;
  }
  .text-with-icons__item:not(:first-child){
    display:none !important;
  }
  .text-with-icons__content-wrapper .heading{
    font-size:12px !important;
  }
  .text-with-icons__content-wrapper p:not(.heading){
    font-size:14px !important;
  }
  .footer{
    padding:46px 0 28px !important;
  }
  .footer__item-list{
    grid-template-columns:1fr !important;
    gap:34px !important;
  }
  .footer__item-title{
    margin-bottom:18px !important;
    font-size:12px !important;
    letter-spacing:.14em !important;
  }
  .footer__item-content,
  .footer__item-content p,
  .footer__item-content a,
  .footer__copyright,
  .footer__payment-methods-label{
    font-size:13px !important;
    line-height:1.5 !important;
  }
  .social-media{
    grid-template-columns:repeat(4,44px) !important;
  }
  .footer__aside{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:14px !important;
    margin-top:34px !important;
  }
  .footer__follow-and-payment,
  .footer__payment-methods,
  .payment-methods-list{
    justify-content:flex-start !important;
  }
  .lh-mag-feature,
  .lh-article-feature,
  .lh-blog-grid,
  .lh-related-grid,
  .lh-benefit-grid{
    grid-template-columns:1fr !important;
  }
  .lh-page{
    padding:42px 0 !important;
  }
}

/* ============================================================
   最终强制覆盖：保证审计补丁排在所有旧规则之后
   ============================================================ */
@media (min-width:1000px){
  .mm-uniform .mega-menu__inner{
    display:grid !important;
    grid-template-columns:minmax(190px,.78fr) minmax(190px,.78fr) minmax(280px,374px) !important;
    align-items:start !important;
    gap:clamp(34px,4vw,72px) !important;
  }
  .mm-uniform .mega-menu__images-wrapper{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:18px !important;
    width:100% !important;
    max-width:374px !important;
  }
  .mm-uniform .mega-menu__image-wrapper{
    display:block !important;
    width:100% !important;
    aspect-ratio:374/427 !important;
    overflow:hidden !important;
    border-radius:8px !important;
    background:#f6f8f6 !important;
  }
  .mm-uniform .mega-menu__image{
    display:block !important;
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
  }
  #desktop-menu-4.mm-uniform .mega-menu__inner{
    grid-template-columns:minmax(180px,.62fr) minmax(180px,.62fr) minmax(520px,748px) !important;
  }
  #desktop-menu-4.mm-uniform .mega-menu__images-wrapper{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    max-width:748px !important;
    gap:22px !important;
  }
  #desktop-menu-5.mm-uniform .mega-menu__inner{
    display:block !important;
  }
}

@media (min-width:761px){
  #main .hp-sec--best .hp-bv-wrap{
    width:min(1120px,calc(100vw - 80px)) !important;
    max-width:1120px !important;
    margin-inline:auto !important;
    overflow:visible !important;
  }
  #main .hp-sec--best [data-scroller]{
    overflow:hidden !important;
    padding-top:18px !important;
    margin-top:-18px !important;
  }
  #main .hp-sec--best .hp-track{
    display:flex !important;
    flex-wrap:nowrap !important;
    align-items:stretch !important;
    gap:26px !important;
    width:100% !important;
    max-width:none !important;
    overflow-x:auto !important;
    overflow-y:visible !important;
    scroll-snap-type:x mandatory !important;
    padding:18px 0 10px !important;
    scrollbar-width:none !important;
  }
  #main .hp-sec--best .hp-track::-webkit-scrollbar{
    display:none !important;
  }
  #main .hp-sec--best .hp-track > .hp-pcard,
  #main .hp-sec--best .hp-track > .hp-pcard:nth-child(n+5){
    display:flex !important;
    flex:0 0 calc((100% - 78px)/4) !important;
    width:calc((100% - 78px)/4) !important;
    max-width:calc((100% - 78px)/4) !important;
    min-width:0 !important;
    scroll-snap-align:start !important;
  }
}

/* 热卖产品卡片最终锁定 v2：必须排在所有历史补丁之后，四张图同宽同高，正文同高。 */
@media (min-width:761px){
  body #main .hp-sec--best .hp-bv-wrap{
    width:min(calc(100vw - 80px),1120px) !important;
    max-width:1120px !important;
    margin-left:auto !important;
    margin-right:auto !important;
    padding:0 !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-track{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:26px !important;
    width:100% !important;
    max-width:100% !important;
    margin:0 !important;
    padding:16px 0 8px !important;
    overflow:visible !important;
    align-items:stretch !important;
    scroll-snap-type:none !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    height:516px !important;
    min-height:516px !important;
    max-height:516px !important;
    border-radius:8px !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard:nth-child(n+5){
    display:none !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard > a{
    display:grid !important;
    grid-template-rows:264px 252px !important;
    width:100% !important;
    height:516px !important;
    min-height:516px !important;
    max-height:516px !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media{
    position:relative !important;
    display:block !important;
    width:100% !important;
    height:264px !important;
    min-height:264px !important;
    max-height:264px !important;
    aspect-ratio:auto !important;
    border-radius:8px 8px 0 0 !important;
    overflow:visible !important;
    background:#f4f5f4 !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media img,
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media .day,
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media .night{
    position:absolute !important;
    inset:0 !important;
    display:block !important;
    width:100% !important;
    height:100% !important;
    min-width:100% !important;
    min-height:100% !important;
    max-width:none !important;
    max-height:none !important;
    object-fit:cover !important;
    object-position:center center !important;
    border-radius:8px 8px 0 0 !important;
    transform:none !important;
    filter:none !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard:hover,
  body #main .hp-sec--best .hp-track > article.hp-pcard:hover img,
  body #main .hp-sec--best .hp-track > article.hp-pcard:hover .day,
  body #main .hp-sec--best .hp-track > article.hp-pcard:hover .night{
    transform:none !important;
    filter:none !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-bdgs{
    left:0 !important;
    top:-12px !important;
    right:auto !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-bdgs .hp-bdg,
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-bdgs .hp-bdg.hp-bdg--remises{
    height:24px !important;
    padding:0 10px !important;
    border-radius:4px 4px 4px 0 !important;
    font-size:11px !important;
    line-height:24px !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-body{
    display:flex !important;
    flex-direction:column !important;
    height:252px !important;
    min-height:252px !important;
    max-height:252px !important;
    padding:14px 14px 16px !important;
    gap:7px !important;
    overflow:hidden !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-name{
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    height:40px !important;
    min-height:40px !important;
    max-height:40px !important;
    margin:0 !important;
    overflow:hidden !important;
    line-height:20px !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-price{
    min-height:42px !important;
    margin:0 !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-rate{
    min-height:20px !important;
    margin:0 !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-stock{
    margin-top:auto !important;
  }
}


/* ============================================================
   06. 页面末尾最终锁定层

   作用：原本位于页面底部、加载在 final-fixes.css 之后的 <style>。
   这些规则优先级最高，用于锁定首页热卖卡片、footer 白字等反复被覆盖的问题。
   ============================================================ */


/* ---- 06.001 页面末尾最终锁定块
   来源：index.html:11295
   说明：由页面底部 <style> 抽离，保持原加载优先级。
   ---- */
/* 最终兜底：热卖产品卡片必须四张图同宽同高，正文同高，长标题两行省略。 */
@media (min-width: 761px) {
  body #main .hp-sec--best .hp-bv-wrap {
    width: min(calc(100vw - 80px), 1120px) !important;
    max-width: 1120px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  body #main .hp-sec--best .hp-track {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 26px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 16px 0 8px !important;
    overflow: visible !important;
    align-items: stretch !important;
  }

  body #main .hp-sec--best .hp-track > article.hp-pcard {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: 516px !important;
    min-height: 516px !important;
    max-height: 516px !important;
    border-radius: 8px !important;
    overflow: visible !important;
  }

  body #main .hp-sec--best .hp-track > article.hp-pcard:nth-child(n+5) {
    display: none !important;
  }

  body #main .hp-sec--best .hp-track > article.hp-pcard > a {
    display: grid !important;
    grid-template-rows: 264px 252px !important;
    width: 100% !important;
    height: 516px !important;
    min-height: 516px !important;
    max-height: 516px !important;
    overflow: visible !important;
  }

  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    height: 264px !important;
    min-height: 264px !important;
    max-height: 264px !important;
    aspect-ratio: auto !important;
    border-radius: 8px 8px 0 0 !important;
    overflow: visible !important;
    background: #f4f5f4 !important;
  }

  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media img,
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media .day,
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media .night {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-width: 100% !important;
    min-height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: cover !important;
    object-position: center center !important;
    border-radius: 8px 8px 0 0 !important;
    transform: none !important;
    filter: none !important;
  }

  body #main .hp-sec--best .hp-track > article.hp-pcard:hover,
  body #main .hp-sec--best .hp-track > article.hp-pcard:hover img,
  body #main .hp-sec--best .hp-track > article.hp-pcard:hover .day,
  body #main .hp-sec--best .hp-track > article.hp-pcard:hover .night {
    transform: none !important;
    filter: none !important;
  }

  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-bdgs {
    left: 0 !important;
    top: -12px !important;
    right: auto !important;
  }

  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-bdgs .hp-bdg,
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-bdgs .hp-bdg.hp-bdg--remises {
    height: 24px !important;
    padding: 0 10px !important;
    border-radius: 4px 4px 4px 0 !important;
    font-size: 11px !important;
    line-height: 24px !important;
  }

  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-body {
    display: flex !important;
    flex-direction: column !important;
    height: 252px !important;
    min-height: 252px !important;
    max-height: 252px !important;
    padding: 14px 14px 16px !important;
    gap: 7px !important;
    overflow: hidden !important;
  }

  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-name {
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    height: 40px !important;
    min-height: 40px !important;
    max-height: 40px !important;
    margin: 0 !important;
    overflow: hidden !important;
    line-height: 20px !important;
  }

  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-price {
    min-height: 42px !important;
    margin: 0 !important;
  }

  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-rate {
    min-height: 20px !important;
    margin: 0 !important;
  }

  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-stock {
    margin-top: auto !important;
  }
}


/* ---- 06.002 页面末尾最终锁定块
   来源：index.html:11438
   说明：由页面底部 <style> 抽离，保持原加载优先级。
   ---- */
/* 最终兜底：绿色页脚区域统一白字，避免 trust strip 再被旧规则覆盖成黑字。 */
.v15-trust-strip,
#shopify-section-sections--25458834145659__footer .footer,
.shopify-section--footer .footer,
footer.footer {
  color: rgba(255,255,255,.86) !important;
}
.v15-trust-strip h1,
.v15-trust-strip h2,
.v15-trust-strip h3,
.v15-trust-strip h4,
.v15-trust-strip h5,
.v15-trust-strip h6,
.v15-trust-strip strong,
.v15-trust-strip b,
.v15-trust-strip .heading,
.v15-trust-strip .v15-trust-rating-score,
.v15-trust-strip .v15-trust-rating-score strong,
#shopify-section-sections--25458834145659__footer .footer .heading,
#shopify-section-sections--25458834145659__footer .footer .footer__item-title,
#shopify-section-sections--25458834145659__footer .footer strong,
#shopify-section-sections--25458834145659__footer .footer b,
.shopify-section--footer .footer .heading,
.shopify-section--footer .footer .footer__item-title,
.shopify-section--footer .footer strong,
.shopify-section--footer .footer b,
footer.footer .heading,
footer.footer .footer__item-title,
footer.footer strong,
footer.footer b {
  color: #fff !important;
}
.v15-trust-strip p,
.v15-trust-strip span,
.v15-trust-strip .text--subdued,
.v15-trust-strip .v15-trust-rating-logo,
.v15-trust-strip .v15-trust-col > span,
#shopify-section-sections--25458834145659__footer .footer p,
#shopify-section-sections--25458834145659__footer .footer span,
#shopify-section-sections--25458834145659__footer .footer .text--subdued,
#shopify-section-sections--25458834145659__footer .footer .link--faded,
#shopify-section-sections--25458834145659__footer .footer .footer__copyright,
#shopify-section-sections--25458834145659__footer .footer .footer__payment-methods-label,
.shopify-section--footer .footer p,
.shopify-section--footer .footer span,
.shopify-section--footer .footer .text--subdued,
.shopify-section--footer .footer .link--faded,
.shopify-section--footer .footer .footer__copyright,
.shopify-section--footer .footer .footer__payment-methods-label,
footer.footer p,
footer.footer span,
footer.footer .text--subdued,
footer.footer .link--faded,
footer.footer .footer__copyright,
footer.footer .footer__payment-methods-label {
  color: rgba(255,255,255,.82) !important;
}
.v15-trust-strip a,
.v15-trust-strip a span,
#shopify-section-sections--25458834145659__footer .footer a,
#shopify-section-sections--25458834145659__footer .footer a span,
.shopify-section--footer .footer a,
.shopify-section--footer .footer a span,
footer.footer a,
footer.footer a span {
  color: #fff !important;
}


/* ---- 06.003 页面末尾最终锁定块
   来源：index0528.html:3546
   说明：由页面底部 <style> 抽离，保持原加载优先级。
   ---- */
:root { --enable-sticky-announcement-bar: 1; }
#shopify-section-sections--25458834178427__announcement-bar {
--heading-color: 255, 255, 255;
--text-color: 255, 255, 255;
--primary-button-background: 86, 17, 42;
--primary-button-text-color: 255, 255, 255;
--section-background: 40, 40, 40;
position: -webkit-sticky;
position: sticky;
top: 0;
z-index: 5;
}
@media screen and (min-width: 741px) {
:root { --enable-sticky-announcement-bar: 1; }
#shopify-section-sections--25458834178427__announcement-bar {
position: -webkit-sticky;
position: sticky;
top: 0;
z-index: 5;
}
}


/* ---- 06.004 页面末尾最终锁定块
   来源：index0528.html:3608
   说明：由页面底部 <style> 抽离，保持原加载优先级。
   ---- */
:root {
--enable-sticky-header: 1;
--enable-transparent-header: 0;
--loading-bar-background: 27, 27, 27;
}
#shopify-section-sections--25458834178427__header {
--header-background: 255, 255, 255;
--header-text-color: 27, 27, 27;
--header-border-color: 221, 221, 221;
--reduce-header-padding: 1;
position: -webkit-sticky;
position: sticky;
top: 0;
z-index: 4;
}
.shopify-section--announcement-bar ~ #shopify-section-sections--25458834178427__header {
top: calc(var(--enable-sticky-announcement-bar, 0) * var(--announcement-bar-height, 0px));
}
#shopify-section-sections--25458834178427__header .header__logo-image {
max-width: 100px;
}
@media screen and (min-width: 741px) {
#shopify-section-sections--25458834178427__header .header__logo-image {
max-width: 125px;
}
}
@media screen and (min-width: 1200px) {
.header__logo {
order: -1;
flex: 1 1 0;
}
.header__inline-navigation {
flex: 1 1 auto;
justify-content: center;
max-width: max-content;
margin-inline: 48px;
}
}


/* ---- 06.005 页面末尾最终锁定块
   来源：index0528.html:4619
   说明：由页面底部 <style> 抽离，保持原加载优先级。
   ---- */
.drawer {
  position: fixed;
  top: 0;
  left: 0;
  width: 85%;
  max-width: 400px;
  height: 100%;
  background: rgb(var(--background));
  z-index: 1000;
  transform: translateX(-100%);
  visibility: hidden;
  opacity: 0;
  transition: transform 0.3s ease, visibility 0.3s ease, opacity 0.3s ease;
  box-shadow: 2px 0 10px rgba(0,0,0,0.1);
}
.drawer--is-open {
  transform: translateX(0) !important;
  visibility: visible !important;
  opacity: 1 !important;
}
.drawer__overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,0.5);
  z-index: 999;
  display: none;
}
.drawer--is-open + .drawer__overlay,
.drawer--is-open .drawer__overlay {
  display: block;
}
.drawer__content {
  position: relative;
  height: 100%;
  overflow-y: auto;
  padding: 20px;
}
.drawer__header {
  display: flex;
  justify-content: flex-end;
  margin-bottom: 20px;
}
.drawer__close-button {
  background: none;
  border: none;
  cursor: pointer;
}
body.overflow-hidden {
  overflow: hidden;
}
.drawer {
  z-index: 1050;
}
.drawer__overlay {
  z-index: 1040;
}
.drawer__header {
  position: sticky;
  top: 0;
  background: rgb(var(--background));
  z-index: 10;
  padding: 15px 20px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid rgba(var(--border-color), 0.3);
}
.drawer__close-button {
  background: none;
  border: none;
  font-size: 24px;
  cursor: pointer;
  color: rgb(var(--text-color));
  padding: 8px;
}
.header__icon-wrapper .icon--header-hamburger {
  cursor: pointer;
}


/* ---- 06.006 页面末尾最终锁定块
   来源：index0528.html:4707
   说明：由页面底部 <style> 抽离，保持原加载优先级。
   ---- */
/* ===== Common section spacing ===== */
.videos-section,
.faq-section { padding: 32px 16px; background: #ffffff; }
.faq-section { background: #f7f9f7; }
.videos-wrap,
.faq-wrap { max-width: 1200px; margin: 0 auto; }

.videos-header,
.faq-header { text-align: center; margin-bottom: 20px; }
.videos-title,
.faq-title { font-size: 22px; line-height: 1.25; font-weight: 600; color: #1b1b1b; margin: 0 0 6px; }
.videos-subtitle,
.faq-subtitle { font-size: 14px; color: #555; margin: 0; }

@media (min-width: 768px) {
  .videos-section, .faq-section { padding: 56px 24px; }
  .videos-title, .faq-title { font-size: 28px; }
  .videos-subtitle, .faq-subtitle { font-size: 15px; }
}

/* ===== Multi-video TABS ===== */
.videos-tabs {
  display: flex;
  gap: 8px;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  padding: 4px 0 12px;
  margin-bottom: 14px;
  scrollbar-width: none;
}
.videos-tabs::-webkit-scrollbar { display: none; }

.videos-tab-btn {
  flex: 0 0 auto;
  background: #ffffff;
  border: 1.5px solid #e0e0e0;
  border-radius: 999px;
  padding: 10px 16px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
  color: #1b1b1b;
  font-size: 13px;
  font-weight: 500;
  transition: all .2s ease;
  white-space: nowrap;
  min-height: 44px; /* mobile touch target */
}
.videos-tab-btn:hover { border-color: #276b42; }
.videos-tab-btn.is-active {
  background: #276b42;
  border-color: #276b42;
  color: #fff;
}
.videos-tab-btn .vt-duration {
  font-size: 11px;
  background: rgba(0,0,0,0.06);
  padding: 2px 8px;
  border-radius: 999px;
  color: #555;
}
.videos-tab-btn.is-active .vt-duration {
  background: rgba(255,255,255,0.22);
  color: #fff;
}

@media (min-width: 768px) {
  .videos-tabs {
    justify-content: center;
    overflow: visible;
    flex-wrap: wrap;
  }
  .videos-tab-btn { padding: 12px 22px; font-size: 14px; }
}

/* ===== Video Panels ===== */
.videos-panel { display: none; }
.videos-panel.is-active { display: block; }

.vt-player {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  background: #000;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 4px 18px rgba(0,0,0,0.10);
}
.vt-cover {
  width: 100%; height: 100%;
  object-fit: cover;
  display: block;
}
.vt-iframe {
  position: absolute; inset: 0;
  width: 100%; height: 100%;
  border: 0;
  display: none;
}
.vt-play {
  position: absolute;
  top: 50%; left: 50%;
  transform: translate(-50%, -50%);
  width: 64px; height: 64px;
  border-radius: 50%;
  background: rgba(255,255,255,0.92);
  border: 0;
  display: flex; align-items: center; justify-content: center;
  cursor: pointer;
  transition: transform .2s ease;
  box-shadow: 0 4px 14px rgba(0,0,0,0.25);
}
.vt-play:hover { transform: translate(-50%, -50%) scale(1.08); }
.vt-play svg { width: 26px; height: 26px; fill: #1b1b1b; margin-left: 4px; }

.vt-meta { padding: 14px 4px 0; }
.vt-title { font-size: 16px; font-weight: 600; color: #1b1b1b; margin: 0 0 6px; line-height: 1.3; }
.vt-desc { font-size: 14px; color: #555; line-height: 1.55; margin: 0; }

@media (min-width: 768px) {
  .vt-play { width: 80px; height: 80px; }
  .vt-play svg { width: 32px; height: 32px; }
  .vt-title { font-size: 20px; }
  .vt-desc { font-size: 15px; max-width: 760px; }
  .vt-meta { padding-top: 18px; }
}

/* ============================================================================
   ✅ INSTALLATION — Detailed body
============================================================================ */
.install-intro { text-align: center; margin: 0 0 22px; }
.install-intro h3 { font-size: 22px; font-weight: 600; color: #1b1b1b; margin: 0 0 6px; }
.install-intro-desc { font-size: 14px; color: #555; max-width: 640px; margin: 0 auto 14px; line-height: 1.55; }

.install-meta-row {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  list-style: none;
  padding: 0;
  margin: 14px 0 0;
}
.install-meta-row li {
  background: #f7f9f7;
  border: 1px solid #e0e0e0;
  border-radius: 999px;
  padding: 8px 14px;
  font-size: 13px;
  color: #1b1b1b;
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
.install-meta-row li strong {
  font-weight: 600;
  color: #276b42;
}

.step-card { text-decoration: none; color: inherit; }
.step-card:hover { transform: translateY(-2px); transition: transform .2s ease; }
.step-num {
  display: inline-flex !important;
  align-items: center; justify-content: center;
  width: 28px; height: 28px;
  background: #276b42;
  color: #fff;
  border-radius: 50%;
  font-size: 14px;
  font-weight: 600;
}
/* ============================================================================
   ✅ FAQ — Accordion
============================================================================ */
.faq-list {
  list-style: none;
  margin: 0; padding: 0;
  display: flex; flex-direction: column;
  gap: 10px;
}
.faq-item {
  background: #ffffff;
  border: 1px solid #e6e6e6;
  border-radius: 12px;
  overflow: hidden;
  transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;
}
/* v10: hover-to-open — give visual feedback before answer expands */
@media (hover: hover) and (pointer: fine) {
  .faq-item:hover {
    border-color: #c9dcce;
    background: #f8faf8;
  }
  .faq-item:hover .faq-q { color: #276B42; }
  .faq-item:hover .faq-chevron { color: #276B42; }
}
.faq-item.is-open {
  border-color: #276b42;
  box-shadow: 0 2px 12px rgba(58,157,95,0.08);
  background: #ffffff;
}
.faq-q {
  width: 100%;
  background: transparent;
  border: 0;
  cursor: pointer;
  text-align: left;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 16px 18px;
  min-height: 56px;
  font-size: 15px;
  font-weight: 500;
  color: #1b1b1b;
  line-height: 1.4;
  transition: color .15s ease;
}
.faq-q:focus-visible {
  outline: 2px solid #276b42;
  outline-offset: -2px;
}
.faq-q-text { flex: 1; }
.faq-chevron {
  flex: 0 0 20px;
  color: #276b42;
  transition: transform .3s ease, color .15s ease;
  /* v13-2 ⑪ 修复 "点不动": chevron 内的 SVG 不应拦截 click，让事件冒泡到 .faq-q 按钮 */
  pointer-events: none;
}
.faq-chevron * { pointer-events: none; }
.faq-item.is-open .faq-chevron { transform: rotate(180deg); }

.faq-a {
  /* smooth height transition via max-height (hidden attribute removed by JS) */
  transition: max-height .35s ease;
}
.faq-a-inner {
  padding: 0 18px 18px;
  font-size: 14px;
  color: #444;
  line-height: 1.65;
}

.faq-cta {
  margin-top: 22px;
  text-align: center;
  font-size: 14px;
  color: #555;
  display: flex;
  flex-direction: column;
  gap: 10px;
  align-items: center;
}
.faq-cta-btn {
  display: inline-block;
  background: #276b42;
  color: #fff !important;
  padding: 12px 24px;
  border-radius: 999px;
  font-weight: 500;
  text-decoration: none;
  min-height: 44px;
  line-height: 20px;
  transition: background .2s ease;
}
.faq-cta-btn:hover { background: #2f8550; }

@media (min-width: 768px) {
  .faq-q { padding: 20px 24px; font-size: 16px; }
  .faq-a-inner { padding: 0 24px 22px; font-size: 15px; }
  .faq-cta { flex-direction: row; justify-content: center; gap: 18px; }
}

/* ============================================================================
   ✅ Mobile sweep — make sure existing sections also breathe on small screens
============================================================================ */
@media (max-width: 767px) {
  .product-layout-container { padding: 12px 14px !important; }
  .install-steps-grid { grid-template-columns: repeat(2, 1fr) !important; gap: 10px !important; }
  .step-card { padding: 12px !important; }
  .step-card .step-img { aspect-ratio: 1 / 1; object-fit: cover; }
  .step-title { font-size: 14px !important; }
  .step-desc { font-size: 12px !important; }

  .cross-sell-section { padding: 24px 14px !important; }
  .product-carousel-grid { grid-template-columns: 1fr 1fr !important; gap: 10px !important; }
}


/* ---- 06.007 页面末尾最终锁定块
   来源：index0528.html:5005
   说明：由页面底部 <style> 抽离，保持原加载优先级。
   ---- */
:root {
  --wc-radius: 16px;
  --wc-radius-sm: 10px;
  --wc-green: #276b42;
  --wc-green-soft: #e7f5ec;
  --wc-green-deep: #276b42;
  --wc-bg: #ffffff;
  --wc-bg-alt: #f7f9f7;
  --wc-bg-deep: #0f1611;
  --wc-text: #1b1b1b;
  --wc-text-soft: #555;
  --wc-border: #e6e6e6;
  --wc-shadow: 0 4px 22px rgba(15,22,17,0.08);
  --wc-section-pad: 32px 16px;
}
@media (min-width: 768px){ :root { --wc-section-pad: 64px 32px; } }
@media (min-width: 1024px){ :root { --wc-section-pad: 88px 40px; } }

.features-flow, .usecases-section, .techviz-section, .compare-section, .eco-strip, .reviews-section { font-family: Poppins, sans-serif; }/* ============== FEATURE DEEP-DIVES ============== */
.features-flow {
  background: var(--wc-bg);
  padding: var(--wc-section-pad);
  display: flex;
  flex-direction: column;
  gap: 56px;
}
.feature-row {
  display: grid;
  grid-template-columns: 1fr;
  gap: 22px;
  align-items: center;
  max-width: 1180px;
  margin: 0 auto;
  width: 100%;
}
.feature-media {
  position: relative;
  border-radius: var(--wc-radius);
  overflow: hidden;
  background: var(--wc-bg-alt);
  aspect-ratio: 4 / 3;
}
.feature-media img {
  width: 100%; height: 100%;
  object-fit: cover;
  display: block;
}
.feature-stat {
  position: absolute;
  left: 16px; bottom: 16px;
  background: rgba(255,255,255,0.96);
  padding: 12px 16px;
  border-radius: 12px;
  box-shadow: var(--wc-shadow);
  backdrop-filter: blur(8px);
}
.feature-stat-value {
  font-size: 28px;
  font-weight: 600;
  color: var(--wc-text);
  line-height: 1;
}
.feature-stat-value span {
  font-size: 14px;
  font-weight: 400;
  color: var(--wc-text-soft);
  margin-left: 4px;
}
.feature-stat-label {
  font-size: 11px;
  color: var(--wc-text-soft);
  margin-top: 4px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
/* v14 (5/20 客户) — features 标题字体/字号/间距对齐 lumihome.com 官网
   eyebrow 12px 大写 / title 30-32px weight 600 / body 15px line-height 1.65 */
.feature-eyebrow {
  display: inline-block;
  font-size: 12px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #276B42;
  font-weight: 700;
  margin-bottom: 12px;
}
.feature-title {
  font-size: 30px;
  line-height: 1.25;
  font-weight: 600;
  color: #1a1a1a;
  margin: 0 0 14px;
  letter-spacing: -0.005em;
}
.feature-body {
  font-size: 15px;
  line-height: 1.65;
  color: #555;
  margin: 0 0 16px;
}
.feature-bullets {
  list-style: none;
  margin: 0; padding: 0;
  display: flex; flex-direction: column;
  gap: 10px;
}
.feature-bullets li {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  font-size: 14.5px;
  color: var(--wc-text);
  line-height: 1.5;
}
.feature-bullets li svg { color: var(--wc-green); flex: 0 0 18px; margin-top: 2px; }
@media (min-width: 768px){
  .feature-row {
    grid-template-columns: 1fr 1fr;
    gap: 36px;
  }
  .feature-row.is-reversed .feature-media { order: 2; }
  /* v14: 桌面标题保持 ~31px — 与 lumihome.com 一致 */
  .feature-title { font-size: 31px; }
  .feature-body { font-size: 15px; }
  .feature-stat-value { font-size: 32px; }
}
@media (min-width: 1024px){
  /* v16: 留白收紧 */
  .feature-row { gap: 44px; }
  .feature-title { font-size: 32px; }
}

/* ============== USE CASES GRID ============== */
.usecases-section {
  background: var(--wc-bg-alt);
  padding: var(--wc-section-pad);
}
.usecases-wrap { max-width: 1200px; margin: 0 auto; }
.usecases-header { text-align: center; margin-bottom: 28px; }
.usecases-title {
  font-size: 26px;
  font-weight: 600;
  color: var(--wc-text);
  margin: 0 0 10px;
  letter-spacing: -0.01em;
}
.usecases-sub {
  font-size: 15px;
  color: var(--wc-text-soft);
  margin: 0 auto;
  max-width: 620px;
  line-height: 1.55;
}
.usecases-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}
.usecase-card {
  position: relative;
  margin: 0;
  border-radius: var(--wc-radius);
  overflow: hidden;
  aspect-ratio: 1 / 1;
  background: #ddd;
  cursor: pointer;
  transition: transform .25s ease, box-shadow .25s ease;
}
.usecase-card:hover { transform: translateY(-4px); box-shadow: var(--wc-shadow); }
.usecase-card img {
  width: 100%; height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .5s ease;
}
.usecase-card:hover img { transform: scale(1.05); }
/* v11 (5/16 客户) — P050: 图片上不需要文字，删除 figcaption 渐变遮罩 */
.usecase-card figcaption,
.usecase-label,
.usecase-desc { display: none !important; }
@media (min-width: 768px){
  .usecases-title { font-size: 32px; }
  .usecases-grid { grid-template-columns: repeat(4, 1fr); gap: 18px; }
  .usecase-card { aspect-ratio: 1 / 1; }
}

/* ============== TECH VISUALIZATION ============== */
.techviz-section {
  background: var(--wc-bg);
  padding: var(--wc-section-pad);
}
.techviz-wrap { max-width: 1200px; margin: 0 auto; }
.techviz-header { text-align: center; margin-bottom: 28px; }
.techviz-title { font-size: 26px; font-weight: 600; color: var(--wc-text); margin: 0 0 10px; }
.techviz-sub { font-size: 15px; color: var(--wc-text-soft); margin: 0 auto; max-width: 640px; line-height: 1.55; }
.techviz-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 18px;
}
.techviz-card {
  background: var(--wc-bg-alt);
  border: 1px solid var(--wc-border);
  border-radius: var(--wc-radius);
  padding: 22px;
}
.techviz-card-title { font-size: 17px; font-weight: 600; color: var(--wc-text); margin: 0 0 4px; }
.techviz-card-sub { font-size: 13.5px; color: var(--wc-text-soft); margin: 0 0 18px; line-height: 1.5; }

/* Autonomy bars */
.autonomy-bars { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 12px; }
.autonomy-row { display: grid; grid-template-columns: 64px 1fr 50px; align-items: center; gap: 10px; font-size: 13px; }
.autonomy-mode { font-weight: 600; color: var(--wc-text); }
.autonomy-track { height: 14px; background: #fff; border-radius: 999px; overflow: hidden; border: 1px solid var(--wc-border); }
.autonomy-fill { height: 100%; border-radius: 999px; transition: width .8s cubic-bezier(0.22, 1, 0.36, 1); }
.autonomy-hours { text-align: right; color: var(--wc-text-soft); font-variant-numeric: tabular-nums; }

/* Beam */
.beam-diagram-wrap { background: #fff; border-radius: var(--wc-radius-sm); padding: 8px; border: 1px solid var(--wc-border); }
.beam-svg { width: 100%; height: auto; display: block; }
.beam-stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin-top: 14px; text-align: center; }
.beam-stats > div { background: #fff; border: 1px solid var(--wc-border); border-radius: var(--wc-radius-sm); padding: 12px 6px; }
.beam-stats strong { display: block; font-size: 18px; color: var(--wc-green); font-weight: 600; }
.beam-stats span { font-size: 11px; color: var(--wc-text-soft); margin-top: 2px; display: block; }

@media (min-width: 768px){
  .techviz-title { font-size: 32px; }
  .techviz-grid { grid-template-columns: 1fr 1fr; gap: 24px; }
  .techviz-card { padding: 32px; }
  .techviz-card-title { font-size: 20px; }
  .beam-stats strong { font-size: 22px; }
  .beam-stats span { font-size: 12px; }
}

/* ============== COMPARISON TABLE ============== */
.compare-section {
  background: var(--wc-bg-alt);
  padding: var(--wc-section-pad);
}
.compare-wrap { max-width: 1200px; margin: 0 auto; }
/* v9: New 2-column comparison layout (ALTO 3000 vs Autres concurrents).
   Left = intro paragraph, Right = compact table. Avoids the CE PRODUIT
   badge-overlay bug present in the old 3-column layout. */
.compare-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 32px;
  align-items: start;
}
@media (min-width: 900px) {
  .compare-grid { grid-template-columns: 1fr 1.15fr; gap: 48px; }
}
.compare-intro { font-family: Poppins, sans-serif; }
.compare-title {
  font-size: clamp(22px, 3vw, 30px);
  font-weight: 700;
  color: var(--wc-text);
  margin: 0 0 18px;
  line-height: 1.25;
}
.compare-intro-p {
  font-size: 14.5px;
  line-height: 1.7;
  color: var(--wc-text-soft);
  margin: 0 0 14px;
}
.compare-table-wrap {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.compare-table-v2 {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  font-size: 14px;
  background: #fff;
  border-radius: var(--wc-radius);
  overflow: hidden;
  box-shadow: var(--wc-shadow);
}
.compare-table-v2 th,
.compare-table-v2 td {
  padding: 14px 16px;
  text-align: center;
  vertical-align: middle;
  border-bottom: 1px solid var(--wc-border);
}
.compare-table-v2 tbody tr:last-child th,
.compare-table-v2 tbody tr:last-child td {
  border-bottom: none;
}
.compare-table-v2 thead th {
  background: var(--wc-bg-alt);
  font-weight: 700;
  font-size: 15px;
  color: var(--wc-text);
  letter-spacing: 0.01em;
}
.compare-table-v2 thead th.col-self {
  background: var(--wc-green);
  color: #fff;
}
.compare-table-v2 thead th.col-others {
  background: var(--wc-bg-alt);
  color: var(--wc-text);
}
.compare-table-v2 .row-label {
  text-align: left;
  font-weight: 500;
  color: var(--wc-text);
  font-size: 13.5px;
  min-width: 200px;
  background: #fff;
}
.compare-table-v2 td.col-self {
  background: var(--wc-green-soft);
  color: var(--wc-green-deep);
  font-weight: 600;
}
.compare-table-v2 td.col-others {
  color: #999;
}
.compare-table-v2 .cmp-yes { color: var(--wc-green); }
.compare-table-v2 .cmp-no { color: #d04141; opacity: 0.85; }
.compare-table-v2 .cmp-val { font-weight: 600; }
@media (max-width: 600px) {
  .compare-table-v2 th, .compare-table-v2 td { padding: 10px 8px; font-size: 12.5px; }
  .compare-table-v2 .row-label { min-width: 120px; font-size: 12.5px; }
}/* ============== ECO STRIP ============== */
.eco-strip {
  background: linear-gradient(135deg, var(--wc-green-soft) 0%, #fff 100%);
  padding: var(--wc-section-pad);
}
.eco-wrap { max-width: 1200px; margin: 0 auto; text-align: center; }
.eco-title { font-size: 22px; font-weight: 600; color: var(--wc-green-deep); margin: 0 0 22px; }
.eco-grid {
  list-style: none; margin: 0; padding: 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}
.eco-stat {
  background: #fff;
  border-radius: var(--wc-radius);
  padding: 18px 12px;
  border: 1px solid var(--wc-border);
}
.eco-num {
  font-size: 28px;
  font-weight: 600;
  color: var(--wc-green-deep);
  line-height: 1;
}
.eco-num span { font-size: 14px; color: var(--wc-text-soft); margin-left: 3px; font-weight: 400; }
.eco-lbl { font-size: 12px; color: var(--wc-text-soft); margin-top: 8px; line-height: 1.4; }
@media (min-width: 768px){
  .eco-title { font-size: 28px; }
  .eco-grid { grid-template-columns: repeat(4, 1fr); gap: 16px; }
  .eco-stat { padding: 28px 18px; }
  .eco-num { font-size: 40px; }
  .eco-lbl { font-size: 13px; }
}

/* ============== IN-THE-BOX FLAT-LAY (Contenu tab) ============== */
.flatlay-intro { text-align: center; margin: 0 0 22px; }
.flatlay-intro h3 { font-size: 22px; font-weight: 600; color: var(--wc-text); margin: 0 0 8px; }
.flatlay-intro p { font-size: 14px; color: var(--wc-text-soft); margin: 0; }
/* v16 (5/22 客户) ⑧ — Contenu de la boîte 纯文本列表 */
.box-content-list { list-style: none; margin: 0; padding: 0; }
.box-content-list li {
    position: relative;
    padding: 0 0 0 22px;
    margin: 0 0 12px;
    font-size: 15px;
    color: #333;
    line-height: 1.55;
}
.box-content-list li:last-child { margin-bottom: 0; }
.box-content-list li::before {
    content: "";
    position: absolute;
    left: 2px;
    top: 8px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #276B42;
}
.flatlay-grid {
  list-style: none; margin: 0; padding: 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}
.flatlay-card {
  display: flex;
  flex-direction: column;
  background: var(--wc-bg-alt);
  border: 1px solid var(--wc-border);
  border-radius: var(--wc-radius);
  padding: 14px;
  text-align: center;
  transition: border-color .2s ease;
}
.flatlay-card:hover { border-color: var(--wc-green); }
.flatlay-thumb {
  background: #fff;
  border-radius: var(--wc-radius-sm);
  padding: 12px;
  margin-bottom: 12px;
  aspect-ratio: 1 / 1;
  display: flex; align-items: center; justify-content: center;
}
.flatlay-thumb img { max-width: 100%; max-height: 100%; object-fit: contain; }
.flatlay-meta { display: flex; flex-direction: column; gap: 4px; }
.flatlay-qty {
  display: inline-block;
  font-size: 11px;
  background: var(--wc-green-soft);
  color: var(--wc-green-deep);
  padding: 3px 10px;
  border-radius: 999px;
  margin: 0 auto;
  font-weight: 600;
}
.flatlay-name { font-size: 13px; color: var(--wc-text); line-height: 1.4; }
@media (min-width: 768px){
  .flatlay-grid { grid-template-columns: repeat(3, 1fr); gap: 18px; }
  .flatlay-card { padding: 22px; }
  .flatlay-name { font-size: 14px; }
}
@media (min-width: 1024px){
  .flatlay-grid { grid-template-columns: repeat(6, 1fr); }
}

/* ============== REVIEWS ============== */
.reviews-section {
  background: var(--wc-bg-alt);
  padding: var(--wc-section-pad);
}
.reviews-wrap { max-width: 1200px; margin: 0 auto; }
.reviews-header { text-align: center; margin-bottom: 28px; }
.reviews-title { font-size: 26px; font-weight: 600; color: var(--wc-text); margin: 0 0 10px; }
.reviews-sub { font-size: 14px; color: var(--wc-text-soft); margin: 0; }
.reviews-summary {
  background: #fff;
  border: 1px solid var(--wc-border);
  border-radius: var(--wc-radius);
  padding: 22px;
  display: grid;
  grid-template-columns: 1fr;
  gap: 22px;
  margin-bottom: 22px;
}
.reviews-score { text-align: center; }
.reviews-avg {
  font-size: 56px;
  font-weight: 600;
  color: var(--wc-text);
  line-height: 1;
  letter-spacing: -0.02em;
}
.reviews-avg span { font-size: 22px; color: var(--wc-text-soft); font-weight: 400; }
.reviews-stars { font-size: 22px; color: #f6a429; margin-top: 6px; letter-spacing: 2px; }
.reviews-stars .r-star { opacity: 0.3; }
.reviews-stars .r-star.is-on { opacity: 1; }
.reviews-stars .r-star.is-half { opacity: 0.6; }
.reviews-count { font-size: 12px; color: var(--wc-text-soft); margin-top: 6px; }
.reviews-distrib { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.reviews-distrib li { display: grid; grid-template-columns: 50px 1fr 40px; gap: 10px; align-items: center; font-size: 12.5px; }
.rd-stars { color: #f6a429; font-weight: 600; }
.rd-track { height: 8px; background: #f0f0f0; border-radius: 999px; overflow: hidden; }
.rd-fill { height: 100%; background: #f6a429; border-radius: 999px; transition: width .8s; }
.rd-pct { color: var(--wc-text-soft); text-align: right; font-variant-numeric: tabular-nums; }
.reviews-highlights { font-size: 13px; }
.rh-label { display: block; color: var(--wc-text-soft); margin-bottom: 8px; }
.reviews-highlights ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 6px; }
.reviews-highlights li {
  background: var(--wc-green-soft);
  color: var(--wc-green-deep);
  padding: 5px 11px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 500;
}

.reviews-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 14px;
}
.review-card {
  background: #fff;
  border: 1px solid var(--wc-border);
  border-radius: var(--wc-radius);
  padding: 18px;
}
.review-head { display: flex; align-items: center; gap: 10px; margin-bottom: 8px; }
.review-avatar {
  width: 38px; height: 38px;
  background: var(--wc-green);
  color: #fff;
  border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  font-weight: 600;
  font-size: 16px;
}
.review-meta { flex: 1; display: flex; flex-direction: column; }
.review-name { font-size: 14px; font-weight: 600; color: var(--wc-text); }
.review-loc { font-size: 11.5px; color: var(--wc-text-soft); }
.review-verified {
  display: inline-flex; align-items: center; gap: 4px;
  background: var(--wc-green-soft);
  color: var(--wc-green-deep);
  font-size: 11px;
  font-weight: 600;
  padding: 4px 10px;
  border-radius: 999px;
}
.review-stars { font-size: 14px; color: #f6a429; margin: 6px 0; letter-spacing: 1px; }
.review-stars .r-star { opacity: 0.25; }
.review-stars .r-star.is-on { opacity: 1; }
.review-title { font-size: 14.5px; font-weight: 600; color: var(--wc-text); margin: 6px 0; }
.review-body { font-size: 13.5px; color: var(--wc-text-soft); line-height: 1.55; margin: 0; }

.reviews-cta { text-align: center; margin-top: 22px; }
.reviews-cta-btn {
  display: inline-block;
  background: var(--wc-text);
  color: #fff !important;
  padding: 12px 24px;
  border-radius: 999px;
  text-decoration: none;
  font-weight: 500;
  font-size: 14px;
  min-height: 44px;
  line-height: 20px;
}
.reviews-cta-btn:hover { background: #000; }

/* v16 (5/22 客户) ⑤ — Judge.me 经典版式 */
.jm-summary {
  display: flex;
  flex-direction: column;
  gap: 24px;
  background: #fff;
  border: 1px solid #e8ebe8;
  border-radius: 14px;
  padding: 26px 24px;
  margin-bottom: 24px;
}
.jm-score { text-align: center; }
.jm-score-num {
  font-size: 52px;
  font-weight: 800;
  line-height: 1;
  color: var(--wc-text);
}
.jm-score-stars { font-size: 22px; color: #f6a429; letter-spacing: 2px; margin: 6px 0 4px; }
.jm-score-stars .r-star { opacity: .25; }
.jm-score-stars .r-star.is-on { opacity: 1; }
.jm-score-stars .r-star.is-half { opacity: .6; }
.jm-score-base { font-size: 13px; color: var(--wc-text-soft); }
.jm-distrib { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 7px; }
.jm-distrib li { display: grid; grid-template-columns: 44px 1fr 30px; gap: 10px; align-items: center; }
.jm-d-label { font-size: 13px; color: var(--wc-text-soft); white-space: nowrap; }
.jm-d-star { color: #f6a429; }
.jm-d-track { height: 9px; background: #eef0ee; border-radius: 999px; overflow: hidden; }
.jm-d-fill { height: 100%; background: #f6a429; border-radius: 999px; }
.jm-d-count { font-size: 13px; color: var(--wc-text-soft); text-align: right; }
.jm-actions { display: flex; flex-direction: column; gap: 10px; }
.jm-btn {
  display: inline-flex; align-items: center; justify-content: center;
  padding: 11px 18px; border-radius: 8px; font-size: 14px; font-weight: 600;
  text-decoration: none; min-height: 44px; transition: all .15s;
}
.jm-btn--solid { background: #1a1a1a; color: #fff !important; }
.jm-btn--solid:hover { background: #276B42; }
.jm-btn--outline { background: #fff; color: #1a1a1a !important; border: 1.5px solid #1a1a1a; }
.jm-btn--outline:hover { background: #1a1a1a; color: #fff !important; }
/* v16 (5/22 客户) — Photos 左 + 徽章 右 同行 */
.jm-media-row { display: flex; gap: 36px; align-items: center; flex-wrap: wrap; margin-bottom: 8px; }
.jm-media { margin-bottom: 24px; flex: 1 1 340px; }
.jm-media-title { font-size: 15px; font-weight: 700; color: var(--wc-text); margin-bottom: 12px; }
.jm-media-grid { display: flex; gap: 10px; flex-wrap: wrap; }
.jm-media-thumb {
  width: 84px; height: 84px; border-radius: 10px; overflow: hidden;
  background: #f3f5f3; flex: 0 0 auto; border: 1px solid #e8ebe8;
}
.jm-media-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.jm-badges { display: flex; gap: 18px; flex-wrap: wrap; margin-bottom: 22px; align-items: center; }
/* v16 (5/22 客户) — Judge.me 官方认证徽章 (bronze.svg / diamond.svg 内联) */
.jm-medal svg { display: block; width: 120px; height: 120px; }
@media (max-width: 560px){ .jm-medal svg { width: 96px; height: 96px; } }

@media (min-width: 768px){
  .reviews-title { font-size: 32px; }
  .reviews-summary {
    grid-template-columns: 220px 1fr 1fr;
    align-items: center;
    padding: 32px;
  }
  .jm-summary { flex-direction: row; align-items: center; gap: 40px; padding: 30px 36px; }
  .jm-score { flex: 0 0 150px; border-right: 1px solid #e8ebe8; padding-right: 12px; }
  .jm-distrib { flex: 1; }
  .jm-actions { flex: 0 0 200px; }
  .reviews-grid { grid-template-columns: 1fr 1fr; gap: 18px; }
}
@media (min-width: 1024px){
  .reviews-grid { grid-template-columns: repeat(3, 1fr); }
}

/* ============== STICKY MOBILE BOTTOM BAR ============== */
.sticky-buy {
  position: fixed;
  left: 0; right: 0; bottom: 0;
  background: rgba(255,255,255,0.96);
  border-top: 1px solid var(--wc-border);
  box-shadow: 0 -8px 24px rgba(0,0,0,0.08);
  padding: 10px 14px calc(10px + env(safe-area-inset-bottom));
  display: flex;
  align-items: center;
  gap: 12px;
  z-index: 999;
  backdrop-filter: blur(10px);
  animation: stickyIn .25s ease both;
}
@keyframes stickyIn { from { transform: translateY(100%);} to { transform: translateY(0);} }
.sticky-buy[hidden] { display: none; }
.sb-thumb {
  width: 44px; height: 44px;
  object-fit: contain;
  background: var(--wc-bg-alt);
  border-radius: 8px;
  flex: 0 0 44px;
}
.sb-info { flex: 1; min-width: 0; display: flex; flex-direction: column; }
.sb-name {
  font-size: 12.5px;
  font-weight: 500;
  color: var(--wc-text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.25;
}
.sb-price { font-size: 14px; font-weight: 600; color: var(--wc-green); margin-top: 2px; }
.sb-compare {
  font-size: 11px;
  font-weight: 400;
  color: var(--wc-text-soft);
  text-decoration: line-through;
  margin-left: 6px;
}
.sb-cta {
  flex: 0 0 auto;
  background: var(--wc-green);
  color: #fff;
  border: 0;
  padding: 12px 20px;
  border-radius: 999px;
  font-size: 14px;
  font-weight: 600;
  min-height: 44px;
  cursor: pointer;
}
.sb-cta:hover { background: #2f8550; }
/* v15 (5/21): mobile sticky-buy now hides at ≥1000px so the new PC sticky bar takes over */
@media (min-width: 1000px){
  .sticky-buy { display: none !important; }
}

/* ============================================================
 *  v13 (5/18 客户) — Installation grid + FAQ contact bar (lampede.it style)
 * ============================================================ */
.v13-install { padding: clamp(28px, 5vw, 56px) clamp(16px, 3vw, 24px); background: #f7f9f7; }
.v13-install .lh-wrap { max-width: 1180px; margin: 0 auto; }
.v13-install .lh-section-title { font-size: clamp(22px, 3vw, 30px); font-weight: 700; color: #1a1a1a; margin: 0 0 8px; text-align: center; }
.v13-install-intro { text-align: center; color: #555; font-size: 14.5px; margin: 0 auto 28px; max-width: 640px; line-height: 1.55; }
.v13-install-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 18px;
}
.v13-install-card {
    background: #fff;
    border: 1px solid #ececec;
    border-radius: 14px;
    overflow: hidden;
    transition: box-shadow .25s ease, transform .25s ease;
}
.v13-install-card:hover { box-shadow: 0 8px 24px rgba(0,0,0,.07); transform: translateY(-2px); }
.v13-install-card-media {
    aspect-ratio: 1 / 1;
    background: #f4f4f4;
    overflow: hidden;
}
.v13-install-card-media img { width: 100%; height: 100%; object-fit: cover; display: block; }
.v13-install-card-body { padding: 14px 18px 20px; }
.v13-install-card-title {
    font-size: 14.5px;
    font-weight: 700;
    color: #1a1a1a;
    margin: 0 0 6px;
    letter-spacing: -0.005em;
}
.v13-install-card-desc {
    font-size: 13.5px;
    line-height: 1.55;
    color: #555;
    margin: 0;
}
@media (min-width: 768px) {
    .v13-install-grid { gap: 22px; }
    .v13-install-card-title { font-size: 15.5px; }
    .v13-install-card-desc { font-size: 14px; }
}

/* ---- FAQ 2 列布局（左 contact 卡 + 右 accordion） — 严格仿原 lumihome.com 详情页 ---- */
.v13-faq { background: #f7f9f7; padding: clamp(28px, 5vw, 56px) clamp(16px, 3vw, 32px); }
.v13-faq-wrap {
    max-width: 1240px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr;
    gap: 28px;
    align-items: start;
}
.v13-faq-aside {
    background: #fff;
    border: 1px solid #e5ebe5;
    border-radius: 14px;
    padding: 28px 28px 24px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    box-shadow: 0 2px 8px rgba(0,0,0,.025);
}
.v13-faq-title {
    font-size: 22px;
    line-height: 1.3;
    font-weight: 700;
    color: #1a1a1a;
    margin: 0 0 4px;
    letter-spacing: -0.005em;
}
.v13-faq-lead {
    font-size: 15px;
    color: #1a1a1a;
    margin: 0;
    line-height: 1.45;
}
.v13-faq-lead strong { color: #276B42; font-weight: 700; }
.v13-faq-sub { font-size: 13.5px; color: #5a5a5a; line-height: 1.55; margin: 2px 0 14px; }
.v13-faq-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 48px;
    border-radius: 999px;
    text-decoration: none;
    font-weight: 600;
    font-size: 15px;
    letter-spacing: 0.01em;
    transition: background .2s ease, color .2s ease, border-color .2s ease, transform .2s ease;
}
.v13-faq-btn:hover { transform: translateY(-1px); }
.v13-faq-btn--primary { background: #2f8550; color: #fff; }
.v13-faq-btn--primary:hover { background: #276B42; color: #fff; }
.v13-faq-btn--ghost { background: #fff; color: #276B42; border: 1.5px solid #276B42; }
.v13-faq-btn--ghost:hover { background: #f0f7f2; }
.v13-faq-list { flex: 1; min-width: 0; }
@media (min-width: 900px) {
    .v13-faq-wrap {
        grid-template-columns: 360px 1fr;
        gap: 40px;
    }
    .v13-faq-title { font-size: 26px; }
}
@media (min-width: 1200px) {
    .v13-faq-wrap { grid-template-columns: 400px 1fr; gap: 56px; }
}


/* v13 (5/18) ③ — Avis d'expert dans le rail d'achat (sous trust-badges) */
.v13-expert-rail {
    margin: 14px 0 20px;
    background: #f7f9f7;
    border: 1px solid #e5ebe5;
    border-radius: 12px;
    padding: 14px 16px;
}
.v13-expert-rail-head {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 8px;
}
.v13-expert-rail-avatar {
    width: 36px; height: 36px;
    border-radius: 50%;
    object-fit: cover;
    background: #fff;
    border: 1px solid #e5ebe5;
    flex: 0 0 36px;
}
.v13-expert-rail-meta { flex: 1; display: flex; flex-direction: column; line-height: 1.25; min-width: 0; }
.v13-expert-rail-name { font-weight: 700; font-size: 13.5px; color: #1a1a1a; }
.v13-expert-rail-role { font-size: 11px; letter-spacing: 0.08em; text-transform: uppercase; color: #b8862b; }
.v13-expert-rail-badge {
    display: inline-flex;
    align-items: center;
    background: #276B42;
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    padding: 5px 12px;
    border-radius: 999px;
    white-space: nowrap;
    flex: 0 0 auto;
}
.v13-expert-rail-quote {
    margin: 0;
    padding-left: 10px;
    border-left: 3px solid #276B42;
    font-style: italic;
    font-size: 13px;
    line-height: 1.55;
    color: #444;
}
@media (max-width: 480px){
    .v13-expert-rail-badge { font-size: 11px; padding: 4px 10px; }
}


/* ---- 06.008 页面末尾最终锁定块
   来源：index0528.html:5909
   说明：由页面底部 <style> 抽离，保持原加载优先级。
   ---- */
#shopify-section-mini-cart .cart-item-product__title-details{display:none}
#shopify-section-mini-cart .mini-cart__actions{display:none}
#shopify-section-mini-cart .mini-cart__drawer-footer{margin-top:30px}
#shopify-section-mini-cart .product-energy-badge{display:none}
.header__icon-wrapper[aria-controls="mini-cart"]{position:relative}
.lh-cart-count{position:absolute;top:-7px;right:-8px;min-width:17px;height:17px;padding:0 5px;border-radius:999px;background:#d8062f;color:#fff;font-size:10px;font-weight:800;line-height:17px;text-align:center;box-shadow:0 0 0 2px #fff}
#mini-cart.mini-cart{position:fixed !important;top:86px !important;right:28px !important;left:auto !important;width:330px !important;max-width:calc(100vw - 32px) !important;height:auto !important;max-height:calc(100vh - 110px) !important;transform:translateY(8px) !important;opacity:0 !important;visibility:hidden !important;border:1px solid #ececec !important;border-radius:3px !important;background:#fff !important;box-shadow:0 24px 55px rgba(20,25,30,.18) !important;overflow:visible !important;z-index:9999 !important;transition:opacity .16s ease,transform .16s ease,visibility .16s ease !important}
#mini-cart.mini-cart[open]{opacity:1 !important;visibility:visible !important;transform:translateY(0) !important}
#mini-cart::before{content:"";position:absolute;right:30px;top:-9px;width:18px;height:18px;background:#fff;border-left:1px solid #ececec;border-top:1px solid #ececec;transform:rotate(45deg)}
#mini-cart .drawer__overlay{display:none !important}
#mini-cart .drawer__header{height:auto;max-height:none;padding:16px 16px 12px;border-bottom:1px solid #ececec;background:#fff}
#mini-cart .drawer__title{font-size:15px;font-weight:800;margin:0;justify-content:center;width:100%}
#mini-cart .drawer__title svg{display:none}
#mini-cart .drawer__close-button{position:absolute;right:12px;top:12px;width:24px;height:24px}
#mini-cart .drawer__content{padding:0 16px 16px;background:#fff;display:block;text-align:left}
.lh-mini-empty{padding:22px 0;text-align:center;color:#666;font-size:13px}
.lh-mini-item{display:grid;grid-template-columns:50px 1fr auto;gap:12px;padding:15px 0;border-bottom:1px solid #ececec}
.lh-mini-item img{width:50px;height:50px;border-radius:6px;object-fit:cover;background:#f4f4f4}
.lh-mini-name{font-size:12.2px;font-weight:700;line-height:1.35;color:#151515;margin:0 0 5px}
.lh-mini-qty{font-size:11.5px;color:#555}
.lh-mini-remove{border:0;background:transparent;font-size:18px;line-height:1;color:#555;cursor:pointer;padding:0 0 0 6px}
.lh-mini-price{text-align:right;font-size:13px;font-weight:800;white-space:nowrap}
.lh-mini-old{display:block;margin-top:3px;font-size:10px;font-weight:400;color:#777}
.lh-mini-saving{display:flex;justify-content:space-between;gap:10px;margin:14px 0 10px;padding:9px 10px;border-radius:7px;background:#e8f6e7;color:#289344;font-size:12px}
.lh-mini-row{display:flex;justify-content:space-between;gap:12px;margin:9px 0;font-size:12.5px;color:#1c1c1c}
.lh-mini-total{font-size:14px;font-weight:800}
.lh-mini-tax{font-size:10.5px;color:#555;margin:-4px 0 14px}
.lh-mini-cart-btn{display:flex;align-items:center;justify-content:center;width:100%;height:46px;border-radius:999px;background:#d8062f;color:#fff;text-decoration:none;font-size:13px;font-weight:800;margin-top:14px}
.lh-mini-express{display:flex;align-items:center;gap:10px;margin:15px 0 12px;color:#777;font-size:9px;text-transform:uppercase}
.lh-mini-express::before,.lh-mini-express::after{content:"";height:1px;background:#ddd;flex:1}
.lh-mini-checkout{display:block;text-align:center;color:#1a1a1a;font-size:12px;text-decoration:underline}
@media screen and (max-width:741px){#shopify-section-mini-cart .product-item-meta__title{font-size:.9em}}


/* ---- 06.009 页面末尾最终锁定块
   来源：index0528.html:5990
   说明：由页面底部 <style> 抽离，保持原加载优先级。
   ---- */
/* ===== ACCUEIL Lumihome — sections (préfixe hp-) ===== */
#main{--g:#276B42;--gd:#1d5132;--gl:#3a9d5f;--gsoft:#eef5f0;--gtint:#f6faf7;
  --ink:#16201a;--body:#4a524b;--muted:#7f877f;--line:#e7eae7;--amber:#f6a429;--red:#e4322b;
  font-family:Poppins,-apple-system,Segoe UI,sans-serif;color:#16201a;background:#fff}
#main *{box-sizing:border-box}
.hp-wrap{max-width:1280px;margin:0 auto;padding:0 clamp(16px,3.4vw,32px)}
.hp-sec{padding:clamp(46px,6vw,86px) 0}
.hp-sec--soft{background:#f6f8f6}
.hp-sec--tint{background:#f6faf7}
.hp-eyebrow{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.15em;
  text-transform:uppercase;color:#276B42;margin-bottom:11px}
.hp-head{max-width:660px;margin:0 0 36px}
.hp-head--c{margin-left:auto;margin-right:auto;text-align:center}
.hp-head h2{font-size:clamp(25px,3.3vw,39px);font-weight:800;letter-spacing:-.02em;margin:0 0 10px;color:#16201a}
.hp-head p{font-size:15px;color:#4a524b;margin:0}
.hp-btn{display:inline-flex;align-items:center;gap:9px;font-weight:700;font-size:14.5px;
  border-radius:999px;padding:14px 28px;border:1.6px solid transparent;cursor:pointer;
  transition:transform .15s,box-shadow .2s,background .2s,color .2s;text-decoration:none}
.hp-btn svg{width:17px;height:17px}
.hp-btn--primary{background:#276B42;color:#fff}
.hp-btn--primary:hover{background:#1d5132;transform:translateY(-2px);box-shadow:0 12px 24px -10px rgba(39,107,66,.55)}
.hp-btn--ghost{background:#fff;color:#16201a;border-color:#d6ddd7}
.hp-btn--ghost:hover{border-color:#276B42;color:#276B42}
.hp-btn--light{background:#fff;color:#276B42}
.hp-btn--light:hover{transform:translateY(-2px);box-shadow:0 14px 28px -12px rgba(0,0,0,.45)}

/* ---- HERO ---- */
/* v2 docx H3 — Hero 字号缩小，白卡偏左居中 (image6 ref) */
.hp-hero{position:relative;min-height:clamp(420px,55vh,540px);display:flex;align-items:center;
  color:#fff;overflow:hidden}
.hp-hero-bg{position:absolute;inset:0;z-index:0}
.hp-hero-bg img{width:100%;height:100%;object-fit:cover}
.hp-hero-bg::after{content:"";position:absolute;inset:0;
  background:linear-gradient(100deg,rgba(11,24,15,.84) 0%,rgba(11,24,15,.5) 48%,rgba(11,24,15,.08) 100%)}
.hp-hero .hp-wrap{position:relative;z-index:1}
/* v2 修正：去掉白卡，文字直接铺在图上 (官网 lumihome.com 实际效果) */
.hp-hero{align-items:center}
.hp-hero .hp-wrap{padding:0 clamp(24px,3vw,48px);width:100%}
.hp-hero-in{max-width:540px;padding:0;background:transparent;backdrop-filter:none;border-radius:0;box-shadow:none;margin-left:0}
/* 文字均为白色，原有 dark text 覆写撤销 */
.hp-hero h1{color:#fff !important;text-shadow:0 2px 14px rgba(0,0,0,.4)}
.hp-hero p{color:#e8efea !important;max-width:480px !important;text-shadow:0 1px 8px rgba(0,0,0,.5)}
.hp-hero-tags span{background:rgba(255,255,255,.16) !important;color:#fff !important;border:1px solid rgba(255,255,255,.28) !important;backdrop-filter:blur(6px)}
.hp-hero-tags svg{color:#3aff8a !important}
/* 0527 docx #2: Cert pill 内嵌绿色「Certifié」chip */
.hp-hero-cert{display:inline-grid;place-items:center;background:#1d9c5a;color:#fff;font-size:11px;font-weight:800;letter-spacing:.02em;padding:3px 9px;border-radius:999px;margin-left:6px}
.hp-hero-media{display:inline-flex;align-items:center;gap:4px;background:rgba(255,255,255,.96);color:#1a1a1a;font-size:11.5px;font-weight:700;padding:4px 9px;border-radius:6px;margin-left:6px;white-space:nowrap}
.hp-hero-media--bfm{color:#0099ff}
.hp-hero-media--cnews{color:#e3001b}
.hp-hero-seen-v2{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:#fff;font-weight:500;margin-left:14px}
.hp-hero-rate{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.15);color:#fff !important;backdrop-filter:blur(6px);
  border:1px solid rgba(255,255,255,.26);border-radius:999px;padding:6px 14px;font-size:12.5px;
  font-weight:600;margin-bottom:18px}
.hp-hero-rate b{color:#ffd24a}
.hp-hero h1{font-size:clamp(26px,3vw,38px);font-weight:800;line-height:1.12;letter-spacing:-.02em;margin:0 0 14px}
.hp-hero p{font-size:clamp(14px,1.2vw,15.5px);color:#dbe7df;max-width:460px;margin:0 0 20px;line-height:1.6}
.hp-hero-tags{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:28px}
.hp-hero-tags span{display:inline-flex;align-items:center;gap:7px;font-size:12.7px;font-weight:600;
  background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);padding:8px 13px;border-radius:999px}
.hp-hero-tags svg{width:14px;height:14px;color:#8fe0ab}
.hp-hero-cta{display:flex;gap:13px;flex-wrap:wrap;align-items:center}
.hp-hero-seen{font-size:11.5px;color:#acc4b4;margin-left:4px}
.hp-hero-seen b{color:#fff}

/* ---- TRUST BAR ---- */
.hp-trust{background:#fff;border-bottom:1px solid #e7eae7}
.hp-trust-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.hp-trust-i{display:flex;align-items:center;gap:12px;padding:20px 18px}
.hp-trust-i+.hp-trust-i{border-left:1px solid #e7eae7}
.hp-trust-i img{width:30px;height:30px;object-fit:contain;flex:0 0 auto}
.hp-trust-i b{font-size:13.7px;font-weight:700;color:#16201a;line-height:1.3}

/* ---- PRODUCT CAROUSEL ---- */
.hp-prow-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:30px}
.hp-arrows{display:flex;gap:8px}
/* 0527 docx #4: 热卖品箭头放两侧 */
.hp-bv-wrap{position:relative;padding:0}
.hp-arrow--side{position:absolute;top:42%;transform:translateY(-50%);z-index:5;width:44px;height:44px;box-shadow:0 4px 14px rgba(0,0,0,.1)}
.hp-arrow--side.hp-arrow--prev{left:-8px}
.hp-arrow--side.hp-arrow--next{right:-8px}
@media(max-width:760px){.hp-arrow--side{display:none}}
.hp-arrow{width:44px;height:44px;border-radius:999px;border:1.5px solid #d6ddd7;background:#fff;
  display:flex;align-items:center;justify-content:center;cursor:pointer;transition:.15s;color:#16201a}
.hp-arrow:hover{border-color:#276B42;background:#276B42;color:#fff}
.hp-arrow svg{width:18px;height:18px}
/* 0527 docx #4: track 一行 5 个等宽，不溢出 (修右侧半个产品 BUG) */
.hp-track{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;
  overflow:hidden;scroll-snap-type:x mandatory;padding-bottom:6px;scrollbar-width:none;padding-left:48px;padding-right:48px}
@media(max-width:1100px){.hp-track{grid-template-columns:repeat(4,minmax(0,1fr));padding-left:24px;padding-right:24px}.hp-track > .hp-pcard:nth-child(n+5){display:none}}
@media(max-width:760px){.hp-track{grid-template-columns:repeat(2,minmax(0,1fr));padding:0 12px}.hp-track > .hp-pcard:nth-child(n+5){display:grid}}
.hp-track::-webkit-scrollbar{display:none}
.hp-pcard{position:relative;background:#fff;border:1px solid #e9ece9;border-radius:14px;overflow:hidden;
  scroll-snap-align:start;transition:transform .2s,box-shadow .2s,border-color .2s}
.hp-pcard:hover{transform:translateY(-4px);box-shadow:0 18px 40px -18px rgba(20,40,28,.26);border-color:#dde3dd}
.hp-pcard a{display:flex;flex-direction:column;height:100%;color:inherit;text-decoration:none}
.hp-pc-media{position:relative;aspect-ratio:1/1;background:#f4f5f4;overflow:hidden}
.hp-pc-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:opacity .35s,transform .5s}
.hp-pc-media .night{opacity:0}
.hp-pcard:hover .night{opacity:1}
.hp-pcard:hover .day{transform:scale(1.04)}
/* v7 docx — 颜色对齐 luminaire ref: 全部用同款红 #e4322b (不是橙色) */
.hp-bdgs{position:absolute;top:10px;left:10px;z-index:2;display:flex;flex-direction:column;gap:6px;align-items:flex-start}
.hp-bdg{font-size:11.5px;font-weight:800;line-height:1;padding:7px 12px;border-radius:999px;white-space:nowrap;letter-spacing:.01em}
.hp-bdg--remises{background:#e4322b;color:#fff}  /* 红色 "+ Remises sur quantité" (luminaire 同款) */
.hp-bdg--promo{background:#f6a429;color:#fff}    /* 二级橙色 (留给 -30€ panier 等促销) */
/* PVC 折扣大 pill —— 红色 (与左上 badge 同色), 在图片下方 */
.hp-pc-pvc{display:inline-flex;align-self:flex-start;background:#e4322b;color:#fff;font-size:12.5px;font-weight:800;padding:7px 14px;border-radius:999px;letter-spacing:.01em;margin-bottom:4px}
/* 价格栈: 粗价格 + 下方划线 PVC 价格 */
.hp-pc-price{flex-direction:column;align-items:flex-start;gap:2px}
.hp-pc-price b{font-size:20px;font-weight:800;line-height:1.1}
.hp-pc-oldprice{font-size:13px;color:#9b9f9b}
.hp-pc-oldprice s{color:#9b9f9b;text-decoration:line-through}
/* Solaire chip 改成 luminaire 橙色 pill，白字大写 */
.hp-bdg--solar{position:absolute;bottom:10px;left:10px;z-index:2;background:#f6a429;
  color:#fff;border:0;font-size:10px;font-weight:800;padding:6px 11px;
  border-radius:999px;text-transform:uppercase;letter-spacing:.06em;display:inline-flex;align-items:center;gap:5px}
.hp-bdg--solar::before{content:"";display:inline-block;width:9px;height:9px;border-radius:50%;background:radial-gradient(circle,#fff 30%,#ffd24a 60%,transparent 65%);box-shadow:0 0 0 1.5px #fff inset}
/* Heart wishlist (luminaire-style) */
.hp-pc-fav{position:absolute;top:10px;right:10px;z-index:2;width:32px;height:32px;border:0;background:rgba(255,255,255,.95);border-radius:50%;cursor:pointer;display:grid;place-items:center;color:#1a1a1a;box-shadow:0 1px 3px rgba(0,0,0,.08);transition:background .15s,color .15s,transform .15s}
.hp-pc-fav:hover{background:#fff;color:#c01230;transform:scale(1.08)}
.hp-pc-fav svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2}
.hp-pc-fav[aria-pressed="true"] svg{fill:currentColor}
.hp-pc-body{padding:14px;display:flex;flex-direction:column;gap:7px;flex:1}
.hp-pc-name{font-size:13.6px;font-weight:600;line-height:1.4;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:38px}
.hp-pc-rate{display:flex;align-items:center;gap:6px;font-size:11.5px;color:#7f877f}
.hp-stars{color:#f6a429;letter-spacing:1.5px;font-size:12px}
.hp-pc-price{display:flex;align-items:baseline;gap:8px;margin-top:auto;padding-top:4px}
.hp-pc-price b{font-size:18px;font-weight:800}
.hp-pc-price s{font-size:13px;color:#b4b8b1}
.hp-pc-stock{font-size:11.5px;font-weight:600;color:#276B42;display:flex;align-items:center;gap:6px}
.hp-pc-stock::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}

/* ---- CATEGORIES ---- */
.hp-cats{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
/* H4 docx: 产品分类图片修改成 1:1 */
.hp-cat{position:relative;display:block;border-radius:16px;overflow:hidden;background:#eef0ee;
  aspect-ratio:1/1;text-decoration:none}
.hp-cat img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.hp-cat:hover img{transform:scale(1.07)}
.hp-cat::after{content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(0,0,0,0) 42%,rgba(11,24,15,.84) 100%)}
.hp-cat-cap{position:absolute;left:16px;right:16px;bottom:15px;z-index:1;color:#fff}
.hp-cat-cap b{font-size:15px;font-weight:700;display:block;line-height:1.25}
.hp-cat-cap span{font-size:11px;font-weight:600;letter-spacing:.04em;color:#bcdcc6;
  display:inline-flex;align-items:center;gap:5px;margin-top:5px}
.hp-cat-cap svg{width:12px;height:12px}

/* ---- SPACES ---- */
.hp-spaces{display:grid;grid-template-columns:repeat(6,1fr);gap:13px}
/* H4 docx: 这一块的图片也是 1:1 */
.hp-space{position:relative;display:block;border-radius:14px;overflow:hidden;aspect-ratio:1/1;text-decoration:none}
.hp-space img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.hp-space:hover img{transform:scale(1.08)}
.hp-space::after{content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(0,0,0,0) 44%,rgba(11,24,15,.82) 100%)}
.hp-space b{position:absolute;left:0;right:0;bottom:14px;z-index:1;text-align:center;color:#fff;
  font-size:13.5px;font-weight:700;padding:0 8px}

/* ---- REVIEWS ---- */
.hp-rev-top{display:flex;flex-direction:column;align-items:center;gap:7px;margin-bottom:34px;text-align:center}
.hp-rev-stars{color:#f6a429;font-size:22px;letter-spacing:2px}
.hp-rev-top .sc{font-size:15px;font-weight:700}
.hp-rev-top small{color:#7f877f;font-size:12.5px}
.hp-rev-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.hp-rev{background:#fff;border:1px solid #e7eae7;border-radius:14px;padding:22px;display:flex;flex-direction:column}
.hp-rev .hp-stars{font-size:13px}
.hp-rev h4{font-size:14.5px;font-weight:700;margin:11px 0 7px}
.hp-rev p{font-size:13px;color:#4a524b;line-height:1.62;flex:1}
.hp-rev-prod{display:flex;align-items:center;gap:10px;margin-top:16px;padding-top:14px;border-top:1px solid #eef1ee}
.hp-rev-prod img{width:42px;height:42px;border-radius:9px;object-fit:cover;flex:0 0 auto}
.hp-rev-prod b{font-size:12px;font-weight:600;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.hp-rev-by{margin-top:13px;font-size:12px;color:#7f877f}
.hp-rev-by strong{color:#16201a;font-weight:700}
.hp-rev-by .vf{color:#276B42;font-weight:600}

/* ---- ÉNERGIE ---- */
.hp-energy{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.hp-en{background:#fff;border:1px solid #e7eae7;border-radius:18px;overflow:hidden;display:flex;flex-direction:column;
  transition:transform .2s,box-shadow .2s}
.hp-en:hover{transform:translateY(-4px);box-shadow:0 20px 44px -20px rgba(20,40,28,.26)}
.hp-en-media{aspect-ratio:16/11;overflow:hidden;background:#f4f5f4}
.hp-en-media img{width:100%;height:100%;object-fit:cover}
.hp-en-body{padding:24px 24px 26px;display:flex;flex-direction:column;flex:1}
.hp-en-body h3{font-size:19px;font-weight:700;margin:0 0 9px}
.hp-en-body p{font-size:13.6px;color:#4a524b;line-height:1.6;flex:1;margin:0 0 18px}
.hp-en-link{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700;
  letter-spacing:.06em;color:#276B42}
.hp-en-link svg{width:15px;height:15px}

/* ---- PARTNERS ---- */
.hp-partners-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:clamp(22px,4vw,56px)}
.hp-partners-row img{height:34px;width:auto;object-fit:contain;
  filter:grayscale(1);opacity:.62;transition:filter .2s,opacity .2s}
.hp-partners-row img:hover{filter:none;opacity:1}

/* ---- MEDIA ---- */
.hp-media{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.hp-md{background:#fff;border:1px solid #e7eae7;border-radius:16px;overflow:hidden;display:flex;flex-direction:column}
.hp-md-media{position:relative;aspect-ratio:16/10;overflow:hidden;background:#f4f5f4}
.hp-md-media img{width:100%;height:100%;object-fit:cover}
.hp-md-tag{position:absolute;top:12px;left:12px;background:#276B42;color:#fff;font-size:10.5px;
  font-weight:800;letter-spacing:.08em;padding:5px 10px;border-radius:6px}
.hp-md-play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}
.hp-md-play span{width:54px;height:54px;border-radius:999px;background:rgba(255,255,255,.92);
  display:flex;align-items:center;justify-content:center}
.hp-md-play svg{width:20px;height:20px;color:#276B42;margin-left:3px}
.hp-md-body{padding:20px;display:flex;flex-direction:column;flex:1}
.hp-md-body h3{font-size:16px;font-weight:700;margin:0 0 8px;line-height:1.32}
.hp-md-body p{font-size:13px;color:#4a524b;line-height:1.6;flex:1}
.hp-md-link{margin-top:14px;font-size:13px;font-weight:700;color:#276B42;display:inline-flex;align-items:center;gap:6px}
.hp-md-link svg{width:14px;height:14px}

/* ---- SEO ---- */
.hp-seo{max-width:880px;margin:0 auto;text-align:center}
.hp-seo h2{font-size:clamp(22px,2.8vw,32px);font-weight:800;letter-spacing:-.02em;margin:0 0 18px}
.hp-seo p{font-size:14.5px;color:#4a524b;line-height:1.75;margin:0 0 13px}

/* ---- BLOG ---- */
.hp-blog{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.hp-post{background:#fff;border:1px solid #e7eae7;border-radius:14px;overflow:hidden;
  display:flex;flex-direction:column;text-decoration:none;color:inherit;transition:transform .2s,box-shadow .2s}
.hp-post:hover{transform:translateY(-4px);box-shadow:0 18px 40px -18px rgba(20,40,28,.26)}
.hp-post-media{aspect-ratio:16/10;overflow:hidden}
.hp-post-media img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.hp-post:hover .hp-post-media img{transform:scale(1.05)}
.hp-post-body{padding:18px 20px 20px;display:flex;flex-direction:column;flex:1}
.hp-post-tag{font-size:10.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#276B42}
.hp-post-body h3{font-size:15.5px;font-weight:700;line-height:1.36;margin:9px 0 0}
.hp-post-more{margin-top:13px;font-size:12.7px;font-weight:700;color:#276B42;display:inline-flex;align-items:center;gap:6px}
.hp-post-more svg{width:14px;height:14px}

/* ---- reveal ---- */
[data-rv]{opacity:0;transform:translateY(22px);transition:opacity .6s ease,transform .6s ease}
[data-rv].in{opacity:1;transform:none}

/* ---- responsive ---- */
@media(max-width:1080px){
  .hp-cats{grid-template-columns:repeat(3,1fr)}
  .hp-spaces{grid-template-columns:repeat(3,1fr)}
  .hp-rev-grid{grid-template-columns:1fr 1fr}
  .hp-energy,.hp-media,.hp-blog{grid-template-columns:1fr}
  .hp-energy{grid-template-columns:1fr 1fr 1fr}
}
@media(max-width:860px){
  .hp-trust-grid{grid-template-columns:1fr 1fr}
  .hp-trust-i:nth-child(3){border-left:none}
  .hp-energy,.hp-media,.hp-blog{grid-template-columns:1fr}
}
@media(max-width:620px){
  .hp-cats{grid-template-columns:1fr 1fr}
  .hp-spaces{grid-template-columns:1fr 1fr}
  .hp-rev-grid{grid-template-columns:1fr}
  .hp-trust-i+.hp-trust-i{border-left:none}
  .hp-trust-i{border-top:1px solid #e7eae7}
  .hp-prow-head{flex-direction:column;align-items:flex-start;gap:14px}
}

/* =================================================================
   H2 — Autoplay USP marquee (docx p24-25, image10 ref)
   GPU-only transform, hover-pause, reduced-motion guard.
   ================================================================= */
.lh-marquee{position:relative;overflow:hidden;background:#fff;border-top:1px solid #e7eae7;border-bottom:1px solid #e7eae7;padding:16px 0}
.lh-marquee__track{display:flex;gap:60px;width:max-content;will-change:transform;animation:lh-mq 36s linear infinite}
.lh-marquee:hover .lh-marquee__track,
.lh-marquee:focus-within .lh-marquee__track{animation-play-state:paused}
.lh-marquee__i{display:inline-flex;align-items:center;gap:10px;font-size:14.5px;font-weight:600;color:#1a1a1a;white-space:nowrap;flex:0 0 auto}
.lh-marquee__i svg{width:22px;height:22px;flex:0 0 auto;color:#276B42}
@keyframes lh-mq{from{transform:translateX(0)}to{transform:translateX(calc(-50% - 30px))}}
@media (prefers-reduced-motion:reduce){.lh-marquee__track{animation:none}}

/* H3 — Best-sellers heading centered (docx p26, image12 ref) */
.hp-prow-head--c{flex-direction:column;align-items:center;text-align:center;gap:6px}
.hp-prow-head--c .hp-prow-h-sub{font-size:14px;color:#7f877f;margin:0}
.hp-prow-head--c .hp-arrows{margin-top:14px}

/* H6 — Retailer logos auto-scroll (v2 docx p43: 不要灰色亮起来，要一开始就是彩色的) */
.lh-retailers{overflow:hidden;padding:8px 0}
.lh-retailers__track{display:flex;gap:72px;align-items:center;width:max-content;animation:lh-mq 42s linear infinite;will-change:transform}
.lh-retailers:hover .lh-retailers__track,
.lh-retailers:focus-within .lh-retailers__track{animation-play-state:paused}
.lh-retailers__i{flex:0 0 auto;height:64px;display:grid;place-items:center;padding:0 4px}
/* v2: 默认彩色 (filter:none, opacity:1)，hover 微缩放反馈 */
.lh-retailers__i img{max-height:42px;max-width:160px;width:auto;height:auto;object-fit:contain;filter:none;opacity:1;transition:transform .2s}
.lh-retailers__i:hover img,.lh-retailers__i:focus img{transform:scale(1.06)}
@media(max-width:720px){.lh-retailers__i{height:54px}.lh-retailers__i img{max-height:36px;max-width:130px}.lh-retailers__track{gap:48px}}

/* =================================================================
   v8 0527 docx #3 — 圆形分类: 一行 5 个, 箭头在两侧, 文字居中
   ================================================================= */
.lh-circats{padding:clamp(20px,3vw,30px) 0 clamp(8px,1.5vw,16px);background:#fff;border-bottom:0}
.lh-circats__wrap{max-width:1280px;margin:0 auto;padding:0 64px;position:relative}
.lh-circats__head{display:flex;align-items:center;justify-content:center;margin-bottom:18px}
.lh-circats__head h2{font-size:clamp(20px,2.4vw,26px);font-weight:800;margin:0;color:#1a1a1a;letter-spacing:-.01em;text-align:center}
.lh-circats__arrows{display:none}  /* 标题旁的箭头隐藏，改在 track 两侧 */
/* track: 一行 5 个等宽, 居中, 不溢出 */
.lh-circats__track{display:grid;grid-template-columns:repeat(5,1fr);gap:clamp(12px,1.8vw,24px);overflow:hidden;padding:6px 0 12px;scroll-snap-type:x mandatory;scroll-behavior:smooth}
.lh-circats__track::-webkit-scrollbar{display:none}
/* 第 6~10 个隐藏，避免半个 */
.lh-circats__i:nth-child(n+6){display:none}
.lh-circats__i{flex:0 0 auto;width:100%;text-align:center;text-decoration:none;color:#1a1a1a;scroll-snap-align:start}
.lh-circats__pic{aspect-ratio:1/1;border-radius:50%;overflow:hidden;background:#f3f5f3;border:1px solid #eef1ee;transition:transform .25s,box-shadow .25s,border-color .25s;max-width:140px;margin:0 auto}
.lh-circats__pic img{width:100%;height:100%;object-fit:cover;display:block}
.lh-circats__i:hover .lh-circats__pic{transform:translateY(-3px);box-shadow:0 8px 22px rgba(39,107,66,.18);border-color:#276B42}
.lh-circats__lbl{display:block;margin-top:10px;font-size:13.5px;font-weight:600;line-height:1.3;text-align:center}
/* 两侧箭头，在 wrap 内的左右居中浮于内容上方 */
.lh-circats__arrow{position:absolute;top:50%;transform:translateY(-30%);width:38px;height:38px;border:1px solid #e5e7eb;background:#fff;border-radius:50%;cursor:pointer;display:grid;place-items:center;color:#1a1a1a;transition:.15s;z-index:2;box-shadow:0 2px 8px rgba(0,0,0,.06)}
.lh-circats__arrow:hover{background:#276B42;color:#fff;border-color:#276B42}
.lh-circats__arrow svg{width:16px;height:16px}
.lh-circats__arrow--prev{left:8px}
.lh-circats__arrow--next{right:8px}
@media(max-width:760px){
  .lh-circats__wrap{padding:0 24px}
  .lh-circats__track{grid-template-columns:repeat(3,1fr)}
  .lh-circats__i:nth-child(n+4){display:none}
  .lh-circats__arrow{display:none}
}
@media(max-width:480px){.lh-circats__track{grid-template-columns:repeat(2,1fr)}.lh-circats__i:nth-child(n+3){display:none}}

/* =================================================================
   v3 docx H6 修正 — 保留 H2 + 副标题, "espace" 绿色斜体, 标签在图下方
   ================================================================= */
.hp-spaces--v2{margin-top:8px}
/* 标签从叠在图上 → 移到图片下方，文字深色 */
.hp-spaces--v2 .hp-space b{position:static;color:#1a1a1a;font-weight:500;font-size:14.5px;text-align:center;display:block;margin-top:12px;text-shadow:none;letter-spacing:.01em}
.hp-spaces--v2 .hp-space{overflow:visible;background:transparent;aspect-ratio:auto;text-decoration:none;display:flex;flex-direction:column}
.hp-spaces--v2 .hp-space img{aspect-ratio:1/1;border-radius:14px;overflow:hidden;width:100%;height:auto;object-fit:cover}
.hp-spaces--v2 .hp-space::after{display:none}

/* 0527 docx #5: par espace v8 — 5 visible, 左右箭头, 减小间隙, 细体字 */
.hp-spaces-wrap{position:relative;padding:0 56px}
.hp-spaces--v8{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
.hp-spaces--v8 .hp-space:nth-child(n+6){display:none}
.hp-spaces-arrow{position:absolute;top:36%;transform:translateY(-50%);width:38px;height:38px;border:1px solid #e5e7eb;background:#fff;border-radius:50%;cursor:pointer;display:grid;place-items:center;color:#1a1a1a;transition:.15s;z-index:2;box-shadow:0 2px 8px rgba(0,0,0,.06)}
.hp-spaces-arrow:hover{background:#276B42;color:#fff;border-color:#276B42}
.hp-spaces-arrow svg{width:16px;height:16px}
.hp-spaces-arrow--prev{left:8px}
.hp-spaces-arrow--next{right:8px}
@media(max-width:960px){.hp-spaces--v8{grid-template-columns:repeat(3,1fr)}.hp-spaces--v8 .hp-space:nth-child(n+4){display:none}}
@media(max-width:560px){.hp-spaces--v8{grid-template-columns:repeat(2,1fr)}.hp-spaces--v8 .hp-space:nth-child(n+3){display:none}.hp-spaces-wrap{padding:0 24px}.hp-spaces-arrow{display:none}}

/* =================================================================
   v2 docx H7 — Reviews: 3 cards left-aligned (was 4 centered)
   ================================================================= */
.hp-rev-top--l{flex-direction:column;align-items:flex-start;text-align:left;gap:6px;margin-bottom:24px}
.hp-rev-top--l .hp-rev-stars{font-size:18px}
.hp-rev-grid--3{grid-template-columns:repeat(3,1fr)}
@media(max-width:960px){.hp-rev-grid--3{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.hp-rev-grid--3{grid-template-columns:1fr}}

/* v4 docx #8/#9 — Solid full-width buttons for Énergie + Médias */
.hp-en-btn,.hp-md-btn{display:flex;align-items:center;justify-content:center;gap:8px;background:#276B42;color:#fff;text-decoration:none;padding:13px 18px;border-radius:8px;font-size:13px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;transition:background .15s,transform .15s;margin-top:auto}
.hp-en-btn:hover,.hp-md-btn:hover{background:#1d5232;transform:translateY(-1px)}
.hp-md-btn{padding:11px 16px}
.hp-md-btn svg{width:13px;height:13px}
/* Media badge color variants (CNEWS red, BFM dark, AMBASSADEUR green) */
.hp-md-tag--green{background:#276B42 !important;color:#fff}
.hp-md-tag--red{background:#c01230 !important;color:#fff}
.hp-md-tag--dark{background:#1a1a1a !important;color:#fff}

/* v4 docx #9 LOGO — grid tiles always colored (replaces marquee) */
.lh-retailers-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:0 auto;max-width:1100px}
.lh-rt-tile{background:#fff;border:1px solid #e7eae7;border-radius:14px;padding:22px 18px;display:grid;place-items:center;min-height:100px;transition:box-shadow .2s,transform .2s,border-color .2s}
.lh-rt-tile:hover{box-shadow:0 8px 22px rgba(20,40,28,.1);transform:translateY(-2px);border-color:rgba(39,107,66,.3)}
.lh-rt-tile img{max-height:42px;max-width:140px;width:auto;height:auto;object-fit:contain;filter:none;opacity:1}
@media(max-width:760px){.lh-retailers-grid{grid-template-columns:repeat(2,1fr)}}

/* v4 docx #7 — Reviews ref: inline rating, Judge.me logo, product chips */
.hp-rev-judgeme{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:#7f877f;margin-top:4px}
.hp-rev-judgeme b{color:#0f9d8a;font-weight:700;font-size:13px}
.hp-rev__head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;gap:8px}
.hp-rev__rate{display:inline-flex;align-items:center;gap:6px;font-size:12.5px}
.hp-rev__rate .hp-stars{font-size:13px}
.hp-rev__rate b{color:#1a1a1a;font-weight:700}
.hp-rev__who{font-size:11.5px;color:#888;white-space:nowrap}
.hp-rev__cta{display:inline-flex;align-items:center;gap:4px;color:#276B42;font-weight:700;font-size:13px;text-decoration:none;margin-top:12px}
.hp-rev__cta:hover{text-decoration:underline}
.hp-rev__prod{margin-top:14px;padding-top:12px;border-top:1px solid #eef1ee;display:flex;gap:10px;align-items:flex-start}
.hp-rev__prod img{width:42px;height:42px;border-radius:8px;object-fit:cover;flex:0 0 auto}
.hp-rev__prod b{display:block;font-size:12.5px;font-weight:700;line-height:1.3;margin:0 0 5px}
.hp-rev__chips{display:flex;flex-wrap:wrap;gap:4px}
.hp-rev__chip{display:inline-block;background:#f7f9f7;border:1px solid #e5e7eb;border-radius:999px;font-size:10.5px;font-weight:600;padding:3px 8px;color:#555;letter-spacing:.01em}

/* =================================================================
   0527 final pass — true 5-up carousels + tightened vertical rhythm
   ================================================================= */
.lh-circats{padding:clamp(14px,2vw,22px) 0 clamp(6px,1vw,10px)}
.lh-circats__head{margin-bottom:12px}
.lh-circats__wrap{padding:0 58px}
.lh-circats__track{
  --cc-gap:18px;
  display:flex !important;
  grid-template-columns:none !important;
  gap:var(--cc-gap);
  overflow-x:auto;
  overflow-y:hidden;
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  padding:4px 2px 10px;
}
.lh-circats__i,
.lh-circats__i:nth-child(n+6){
  display:block !important;
  flex:0 0 calc((100% - 72px) / 5);
  min-width:0;
}
.lh-circats__pic{max-width:118px}
.lh-circats__lbl{font-weight:500;font-size:13px}
.lh-circats__arrow{top:54%;transform:translateY(-50%)}

.hp-sec--best{padding-top:clamp(26px,3.4vw,44px)}
.hp-sec--best .hp-prow-head{margin-bottom:18px}
.hp-track{
  display:flex !important;
  grid-template-columns:none !important;
  gap:14px;
  overflow-x:auto;
  overflow-y:hidden;
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  padding:2px 48px 8px;
}
.hp-track > .hp-pcard,
.hp-track > .hp-pcard:nth-child(n+5){
  display:flex !important;
  flex:0 0 calc((100% - 56px) / 5);
  min-width:0;
}
.hp-arrow--side{top:40%}
.hp-bdg{font-size:10.5px;padding:6px 10px;max-width:calc(100% - 52px);white-space:normal;line-height:1.15}
.hp-bdgs{right:48px}
.hp-pc-fav{top:9px;right:9px}
.hp-pc-body{gap:6px}
.hp-pc-pvc{font-size:11.5px;padding:6px 11px;margin-bottom:2px}

.hp-sec--spaces{padding-top:clamp(26px,3.5vw,48px);padding-bottom:clamp(40px,5vw,64px)}
.hp-sec--spaces .hp-head{margin-bottom:22px !important}
.hp-spaces-wrap{padding:0 56px}
.hp-spaces--v8{
  display:flex !important;
  grid-template-columns:none !important;
  gap:14px;
  overflow-x:auto;
  overflow-y:hidden;
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  padding:2px 0 6px;
}
.hp-spaces--v8 .hp-space,
.hp-spaces--v8 .hp-space:nth-child(n+6){
  display:flex !important;
  flex:0 0 calc((100% - 56px) / 5);
  min-width:0;
  scroll-snap-align:start;
}
.hp-spaces--v8 .hp-space img{border-radius:8px}
.hp-spaces--v8 .hp-space b{font-size:13px;font-weight:400;margin-top:9px}
.hp-spaces-arrow{top:39%}

.hp-sec--reviews{padding-top:clamp(38px,5vw,58px);padding-bottom:clamp(42px,5vw,64px)}
.hp-sec--reviews .hp-rev-top--l{margin-bottom:6px}
.hp-sec--reviews h2{margin-top:0 !important}
.hp-sec--reviews .hp-rev-grid--3{margin-top:18px !important}

@media(max-width:1100px){
  .lh-circats__i,
  .lh-circats__i:nth-child(n+6){flex-basis:calc((100% - 54px) / 4)}
  .hp-track > .hp-pcard,
  .hp-track > .hp-pcard:nth-child(n+5),
  .hp-spaces--v8 .hp-space,
  .hp-spaces--v8 .hp-space:nth-child(n+6){flex-basis:calc((100% - 42px) / 4)}
}
@media(max-width:760px){
  .lh-circats__wrap,.hp-spaces-wrap{padding:0 24px}
  .lh-circats__i,
  .lh-circats__i:nth-child(n+6){flex-basis:calc((100% - 18px) / 2)}
  .hp-track > .hp-pcard,
  .hp-track > .hp-pcard:nth-child(n+5),
  .hp-spaces--v8 .hp-space,
  .hp-spaces--v8 .hp-space:nth-child(n+6){flex-basis:calc((100% - 14px) / 2)}
  .hp-track{padding-left:0;padding-right:0}
  .lh-circats__arrow,.hp-spaces-arrow,.hp-arrow--side{display:none}
}

.hp-hero{min-height:clamp(470px,58vh,610px)}
.hp-hero .hp-wrap{max-width:1280px}
.hp-hero-in{max-width:620px;margin-left:clamp(10px,4vw,72px)}
.hp-hero-rate{background:rgba(255,255,255,.95);color:#1a1a1a !important;padding:8px 16px;margin-bottom:20px}
.hp-hero-rate b{color:#1a1a1a}
.hp-hero-tags{display:grid;grid-template-columns:max-content max-content;gap:10px 12px;margin-bottom:26px}
.hp-hero-tags span{justify-content:flex-start}
.hp-hero-tags span:nth-child(3){grid-column:1 / -1;width:max-content}
.hp-hero-cta{gap:14px 18px}
.hp-hero-seen-v2{margin-left:0}
.hp-btn--light{min-width:190px;color:#276B42}

/* 0527 hero correction: match the compact client reference */
.hp-hero{min-height:clamp(420px,48vh,520px)}
.hp-hero-bg::after{background:linear-gradient(100deg,rgba(6,18,9,.86) 0%,rgba(15,48,16,.68) 50%,rgba(23,58,16,.18) 100%)}
.hp-hero .hp-wrap{max-width:1180px;padding:0 clamp(30px,4.2vw,58px)}
.hp-hero-in{max-width:520px;margin-left:0}
.hp-hero-rate{
  gap:8px;
  padding:6px 12px;
  margin-bottom:18px;
  border-radius:999px;
  font-size:12px;
  line-height:1;
  border:0;
  box-shadow:none;
  backdrop-filter:none;
}
.hp-hero-rate b{font-size:12px;font-weight:800;color:#1a1a1a}
.hp-hero-rate > span:first-child{font-size:12px !important;letter-spacing:1px !important}
.hp-hero-cert{font-size:11px;font-weight:600;background:#dff6e9;color:#23a05b;padding:5px 10px;margin-left:2px}
.hp-hero h1{font-size:clamp(32px,3.9vw,42px);line-height:1.12;margin-bottom:18px;max-width:520px}
.hp-hero p{font-size:clamp(15px,1.45vw,18px);line-height:1.45;max-width:510px !important;margin-bottom:18px}
.hp-hero-tags{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  margin-bottom:28px;
}
.hp-hero-tags span,
.hp-hero-tags span:nth-child(3){
  width:auto;
  grid-column:auto;
  display:flex;
  align-items:center;
  gap:10px;
  padding:0;
  border:0 !important;
  background:transparent !important;
  backdrop-filter:none;
  font-size:15px;
  font-weight:700;
  color:#fff !important;
}
.hp-hero-tags svg{
  width:23px;
  height:23px;
  padding:5px;
  border-radius:50%;
  color:#35d16f !important;
  background:rgba(35,147,78,.45);
  flex:0 0 auto;
}
.hp-hero-cta{
  display:grid;
  grid-template-columns:minmax(190px,224px) auto;
  align-items:center;
  gap:18px;
}
.hp-hero-cta .hp-btn--primary{
  height:48px;
  padding:0 26px;
  border-radius:999px;
  font-size:14px;
  font-weight:800;
}
.hp-hero-seen-v2{
  margin-left:0;
  gap:8px;
  font-size:12px;
  color:#fff;
  white-space:nowrap;
}
.hp-hero-media{
  margin-left:0;
  border-radius:5px;
  font-size:11px;
  padding:5px 9px;
}
@media(max-width:760px){
  .hp-hero{min-height:520px}
  .hp-hero-in{max-width:100%}
  .hp-hero-cta{grid-template-columns:1fr;align-items:start}
  .hp-hero-seen-v2{flex-wrap:wrap}
}

/* 0527 hero spacing fix: title must stay on 2 lines, not 3 */
.hp-hero{min-height:clamp(420px,46vh,500px)}
.hp-hero .hp-wrap{padding-left:clamp(42px,6vw,86px)}
.hp-hero-in{max-width:680px}
.hp-hero-rate{margin-bottom:18px}
.hp-hero h1{
  max-width:680px;
  font-size:clamp(35px,4.15vw,50px);
  line-height:1.08;
  margin-bottom:18px;
}
.hp-hero p{
  max-width:660px !important;
  font-size:clamp(16px,1.55vw,20px);
  line-height:1.42;
  margin-bottom:18px;
}
.hp-hero-tags{gap:11px;margin-bottom:26px}
.hp-hero-tags span{font-size:16px}
.hp-hero-cta{grid-template-columns:260px auto;gap:28px}
.hp-hero-cta .hp-btn--primary{height:52px}
@media(max-width:900px){
  .hp-hero-in{max-width:600px}
  .hp-hero h1{max-width:600px;font-size:clamp(32px,5vw,44px)}
  .hp-hero p{max-width:560px !important}
}

.lh-circats{padding:clamp(18px,2.4vw,28px) 0 clamp(12px,1.5vw,18px)}
.lh-circats__wrap{max-width:980px;padding:0 58px}
.lh-circats__head{margin-bottom:16px;text-align:center}
.lh-circats__head h2{font-size:clamp(21px,2.4vw,28px)}
.lh-circats__head h2 em{color:#276B42;font-style:italic;font-weight:800}
.lh-circats__head p{margin:8px 0 0;font-size:12px;color:#7f877f}
.lh-circats__track{gap:24px;padding:2px 0 14px}
.lh-circats__i,.lh-circats__i:nth-child(n+6){flex-basis:calc((100% - 96px) / 5)}
.lh-circats__pic{max-width:124px}
.lh-circats__lbl{font-size:12.5px;font-weight:500}
.lh-circats__arrow{top:57%;box-shadow:none;border-color:#edf0ed}
.lh-circats__arrow--prev{left:0}
.lh-circats__arrow--next{right:0}

.hp-sec--best{padding-top:clamp(20px,2.6vw,34px);padding-bottom:clamp(32px,4vw,48px)}
.hp-sec--best .hp-wrap{max-width:1120px}
.hp-bv-wrap{padding:0 48px}
.hp-track{padding:0;gap:16px}
.hp-track > .hp-pcard,.hp-track > .hp-pcard:nth-child(n+5){flex-basis:calc((100% - 64px) / 5)}
.hp-arrow--side{top:43%;width:38px;height:38px;box-shadow:0 2px 8px rgba(0,0,0,.06)}
.hp-arrow--side.hp-arrow--prev{left:0}
.hp-arrow--side.hp-arrow--next{right:0}
.hp-bdg{font-size:10px;padding:5px 8px;max-width:calc(100% - 46px);line-height:1.1}
.hp-bdgs{top:8px;left:8px;right:42px}
.hp-bdg--solar{bottom:8px;left:8px;font-size:9px;padding:5px 8px}
.hp-pc-media{aspect-ratio:1/1.05}
.hp-pc-body{padding:12px 12px 14px}
.hp-pc-name{font-size:12.4px;min-height:35px}
.hp-pc-price b{font-size:17px}
.hp-pc-stock{font-size:11.5px}
.hp-pc-stock::before{content:"✓";width:16px;height:16px;display:inline-grid;place-items:center;border-radius:50%;background:#45ad57;color:#fff;font-size:11px;line-height:1}

.hp-sec--spaces{padding-top:clamp(28px,3.5vw,44px);padding-bottom:clamp(34px,4.6vw,56px)}
.hp-sec--spaces .hp-wrap{max-width:1120px}
.hp-dots{display:flex;justify-content:center;gap:10px;margin-bottom:18px}
.hp-dots span{width:7px;height:7px;border-radius:50%;background:#c8cdd0}
.hp-dots span:first-child{background:#1a1a1a}
.hp-sec--spaces .hp-head{margin-bottom:28px !important}
.hp-space-mosaic{display:grid;grid-template-columns:2fr 1fr 1fr;grid-auto-rows:190px;gap:14px;margin:0 auto 26px}
.hp-space-tile{display:flex;flex-direction:column;color:#18221b;text-decoration:none;min-width:0}
.hp-space-tile img{width:100%;height:100%;object-fit:cover;border-radius:8px;display:block}
.hp-space-tile b{font-size:13px;font-weight:600;text-align:center;margin-top:7px;line-height:1.2}
.hp-space-tile--large{grid-row:span 2}
.hp-space-tile--large img{height:calc(100% - 26px)}
.hp-room-title{text-align:center;font-size:clamp(24px,3vw,34px);font-weight:800;letter-spacing:-.01em;color:#172034;margin:18px 0 18px}
.hp-room-title em{color:#3a9d5f;font-style:normal}
.hp-rooms-wrap{position:relative;padding:0 44px}
.hp-room-track{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:0 0 8px;scrollbar-width:none}
.hp-room-track::-webkit-scrollbar{display:none}
.hp-room-card{flex:0 0 calc((100% - 56px) / 5);scroll-snap-align:start;color:#172034;text-decoration:none;min-width:0}
.hp-room-card img{width:100%;aspect-ratio:1.2/1;object-fit:cover;border-radius:8px}
.hp-room-card b{display:block;text-align:center;font-size:12.5px;font-weight:600;margin-top:8px;line-height:1.2}
.hp-rooms-wrap .hp-spaces-arrow{display:grid;top:43%}
.hp-rooms-wrap .hp-spaces-arrow--prev{left:0}
.hp-rooms-wrap .hp-spaces-arrow--next{right:0}

/* 0527 alignment fix: keep captions in their own rows */
.hp-sec--spaces{padding-top:clamp(32px,4vw,54px)}
.hp-sec--spaces .hp-wrap{max-width:1180px}
.hp-sec--spaces .hp-head{margin-bottom:34px !important}
.hp-space-mosaic{
  display:grid;
  grid-template-columns:minmax(0,1.18fr) minmax(0,.82fr) minmax(0,.82fr);
  grid-template-rows:220px 220px;
  gap:22px 26px;
  align-items:start;
  margin:0 auto 44px;
}
.hp-space-tile{
  display:grid;
  grid-template-rows:1fr 32px;
  gap:10px;
  min-width:0;
  min-height:0;
  color:#17201a;
  text-decoration:none;
}
.hp-space-tile img{
  width:100%;
  height:100%;
  min-height:0;
  object-fit:cover;
  border-radius:8px;
  display:block;
}
.hp-space-tile b{
  display:block;
  align-self:start;
  margin:0;
  font-size:15px;
  font-weight:700;
  line-height:1.2;
  text-align:center;
  color:#17201a;
}
.hp-space-tile--large{grid-row:1 / span 2}
.hp-space-tile--large img{height:100%}
.hp-room-title{margin:18px 0 28px;font-size:clamp(30px,3.8vw,46px);line-height:1.08}
.hp-rooms-wrap{padding:0 54px}
.hp-room-track{gap:18px}
.hp-room-card{flex-basis:calc((100% - 72px) / 5)}
.hp-room-card img{aspect-ratio:1.34/1;border-radius:8px}
.hp-room-card b{font-size:13px;font-weight:600}
.hp-rooms-wrap .hp-spaces-arrow{top:46%;width:42px;height:42px}
.hp-rooms-wrap .hp-spaces-arrow--prev{left:0}
.hp-rooms-wrap .hp-spaces-arrow--next{right:0}

/* 0527 mosaic hard fix: no row-span overflow, no title overlap */
.hp-space-mosaic{
  grid-template-columns:1.45fr 1fr 1fr;
  grid-template-rows:auto auto;
  gap:20px 24px;
  align-items:start;
  margin-bottom:54px;
}
.hp-space-tile{
  display:flex;
  flex-direction:column;
  gap:10px;
  height:auto;
  min-height:0;
}
.hp-space-tile img{
  flex:0 0 auto;
  height:210px;
  object-fit:cover;
  border-radius:8px;
}
.hp-space-tile b{
  flex:0 0 24px;
  margin:0;
  line-height:24px;
}
.hp-space-tile--large{
  grid-row:1 / span 2;
}
.hp-space-tile--large img{
  height:calc(420px + 20px + 24px);
}
.hp-room-title{
  clear:both;
  position:relative;
  z-index:1;
  margin-top:8px;
  margin-bottom:30px;
}

.hp-sec--reviews{padding-top:clamp(34px,4vw,52px)}
.hp-sec--reviews .hp-wrap{max-width:1120px}
.hp-sec--reviews .hp-rev-top--l{margin-bottom:8px}
.hp-sec--reviews .hp-rev-stars{font-size:20px !important}
.hp-sec--reviews .hp-rev-top--l + h2{font-size:clamp(34px,4vw,48px) !important;line-height:1.08;margin-bottom:14px !important}
.hp-sec--reviews .hp-rev-judgeme{font-size:16px;margin-bottom:18px}
.hp-sec--reviews .hp-rev-judgeme b{display:inline-flex;align-items:center;gap:7px;font-size:17px;color:#31a29b}
.hp-sec--reviews .hp-rev-judgeme b::before{content:"J";display:inline-grid;place-items:center;width:30px;height:30px;background:#31a29b;color:#fff;border-radius:2px;font-weight:800}

@media(max-width:900px){
  .hp-hero-tags{grid-template-columns:1fr}
  .hp-hero-tags span:nth-child(3){grid-column:auto;width:auto}
  .lh-circats__wrap,.hp-bv-wrap,.hp-rooms-wrap{padding-left:24px;padding-right:24px}
  .lh-circats__i,.lh-circats__i:nth-child(n+6),
  .hp-track > .hp-pcard,.hp-track > .hp-pcard:nth-child(n+5),
  .hp-room-card{flex-basis:calc((100% - 16px) / 2)}
  .hp-space-mosaic{grid-template-columns:1fr 1fr;grid-auto-rows:150px}
  .hp-space-tile--large{grid-column:1 / -1;grid-row:span 2}
}

@media(max-width:900px){
  .hp-space-mosaic{
    grid-template-columns:1fr 1fr;
    grid-template-rows:none;
    gap:18px;
  }
  .hp-space-tile img{height:170px}
  .hp-space-tile--large{grid-column:1 / -1;grid-row:auto}
  .hp-space-tile--large img{height:260px}
  .hp-room-card{flex-basis:calc((100% - 18px) / 2)}
}

/* ================================================================
   0527 final home rhythm: one width system + no overlap
   ================================================================ */
#main{--home-w:1080px}
#main .hp-wrap,
.lh-circats__wrap,
.hp-sec--best .hp-wrap,
.hp-sec--spaces .hp-wrap,
.hp-sec--reviews .hp-wrap{max-width:var(--home-w) !important}

.hp-hero{
  min-height:540px !important;
  display:flex;
  align-items:center;
}
.hp-hero .hp-wrap{
  max-width:var(--home-w) !important;
  padding:0 28px !important;
}
.hp-hero-in{
  width:min(560px,100%);
  max-width:560px !important;
  margin-left:0 !important;
}
.hp-hero-rate{
  margin-bottom:18px !important;
  padding:6px 13px !important;
}
.hp-hero h1{
  max-width:560px !important;
  font-size:42px !important;
  line-height:1.12 !important;
  margin-bottom:16px !important;
}
.hp-hero p{
  max-width:540px !important;
  font-size:17px !important;
  line-height:1.48 !important;
  margin-bottom:18px !important;
}
.hp-hero-tags{
  gap:10px !important;
  margin-bottom:24px !important;
}
.hp-hero-tags span{font-size:14px !important}
.hp-hero-tags svg{width:21px !important;height:21px !important}
.hp-hero-cta{
  grid-template-columns:220px auto !important;
  gap:22px !important;
}
.hp-hero-cta .hp-btn--primary{height:50px !important}

.lh-circats{padding-top:30px !important;padding-bottom:18px !important}
.hp-sec--best{padding-top:34px !important;padding-bottom:46px !important}
.hp-sec--spaces{padding-top:56px !important;padding-bottom:64px !important}
.hp-sec--spaces .hp-head{margin-bottom:30px !important}

.hp-space-mosaic{
  display:grid !important;
  grid-template-columns:1.35fr 1fr 1fr !important;
  grid-template-rows:230px 230px !important;
  gap:18px !important;
  margin:0 auto 42px !important;
}
.hp-space-tile{
  position:relative !important;
  display:block !important;
  height:100% !important;
  overflow:hidden !important;
  border-radius:8px !important;
  background:#f3f5f3 !important;
}
.hp-space-tile--large{
  grid-row:1 / span 2 !important;
}
.hp-space-tile img,
.hp-space-tile--large img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  border-radius:8px !important;
  display:block !important;
}
.hp-space-tile b{
  position:absolute !important;
  left:0 !important;
  right:0 !important;
  bottom:0 !important;
  height:auto !important;
  margin:0 !important;
  padding:9px 10px 10px !important;
  background:linear-gradient(180deg,rgba(255,255,255,0),rgba(255,255,255,.95) 38%,#fff 100%) !important;
  color:#17201a !important;
  font-size:13px !important;
  font-weight:700 !important;
  line-height:1.2 !important;
  text-align:center !important;
}
.hp-room-title{
  margin:0 0 28px !important;
  font-size:38px !important;
  line-height:1.12 !important;
}
.hp-rooms-wrap{padding:0 48px !important}
.hp-room-track{gap:16px !important}
.hp-room-card{flex-basis:calc((100% - 64px) / 5) !important}
.hp-room-card img{aspect-ratio:1.28 / 1 !important}
.hp-rooms-wrap .hp-spaces-arrow{
  top:42% !important;
  width:40px !important;
  height:40px !important;
}

@media(max-width:900px){
  .hp-hero{min-height:560px !important}
  .hp-hero h1{font-size:34px !important}
  .hp-hero-cta{grid-template-columns:1fr !important}
  .hp-space-mosaic{
    grid-template-columns:1fr 1fr !important;
    grid-template-rows:210px 210px 210px !important;
  }
  .hp-space-tile--large{grid-column:1 / -1 !important;grid-row:auto !important}
  .hp-room-card{flex-basis:calc((100% - 16px) / 2) !important}
}

/* ================================================================
   0527 clean reset: stable hero + unified middle grid
   ================================================================ */
#main{
  --home-w:1120px;
  --home-pad:28px;
}
#main .hp-wrap,
#main .lh-circats__wrap,
#main .hp-sec--best .hp-wrap,
#main .hp-sec--spaces .hp-wrap,
#main .hp-sec--reviews .hp-wrap{
  max-width:var(--home-w) !important;
  margin-left:auto !important;
  margin-right:auto !important;
  padding-left:var(--home-pad) !important;
  padding-right:var(--home-pad) !important;
}

.hp-hero{
  min-height:600px !important;
  height:auto !important;
  padding:0 !important;
  display:flex !important;
  align-items:center !important;
}
.hp-hero-bg::after{
  background:linear-gradient(100deg,rgba(4,18,7,.9) 0%,rgba(18,58,18,.72) 52%,rgba(30,71,20,.2) 100%) !important;
}
.hp-hero .hp-wrap{
  max-width:1120px !important;
  padding-left:44px !important;
  padding-right:44px !important;
}
.hp-hero-in{
  width:100% !important;
  max-width:690px !important;
  margin:0 !important;
}
.hp-hero-rate{
  margin:0 0 22px !important;
  padding:8px 15px !important;
  min-height:38px !important;
  background:#fff !important;
  color:#1a1a1a !important;
  border:0 !important;
  box-shadow:none !important;
}
.hp-hero-rate b{
  color:#1a1a1a !important;
  font-size:13px !important;
  line-height:1 !important;
}
.hp-hero-cert{
  background:#dcf6e8 !important;
  color:#1b9b57 !important;
  padding:6px 11px !important;
  font-size:12px !important;
}
.hp-hero h1{
  max-width:690px !important;
  font-size:48px !important;
  line-height:1.08 !important;
  letter-spacing:0 !important;
  margin:0 0 20px !important;
}
.hp-hero p{
  max-width:660px !important;
  font-size:18px !important;
  line-height:1.45 !important;
  margin:0 0 22px !important;
}
.hp-hero-tags{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:13px !important;
  margin:0 0 32px !important;
}
.hp-hero-tags span,
.hp-hero-tags span:nth-child(3){
  width:auto !important;
  grid-column:auto !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  color:#fff !important;
  font-size:16px !important;
  line-height:1.25 !important;
  font-weight:700 !important;
}
.hp-hero-tags svg{
  width:26px !important;
  height:26px !important;
  padding:6px !important;
  border-radius:50% !important;
  background:rgba(31,126,69,.75) !important;
  color:#5cff98 !important;
  flex:0 0 26px !important;
}
.hp-hero-cta{
  display:flex !important;
  align-items:center !important;
  gap:26px !important;
  flex-wrap:wrap !important;
}
.hp-hero-cta .hp-btn--primary{
  width:230px !important;
  height:54px !important;
  justify-content:center !important;
  padding:0 28px !important;
  font-size:15px !important;
}
.hp-hero-seen-v2{
  margin:0 !important;
  display:inline-flex !important;
  align-items:center !important;
  gap:10px !important;
  white-space:nowrap !important;
  font-size:13px !important;
}
.hp-hero-media{
  margin:0 !important;
  padding:7px 12px !important;
  border-radius:6px !important;
  font-size:12px !important;
}

.lh-circats{
  padding-top:32px !important;
  padding-bottom:22px !important;
}
.lh-circats__wrap{
  max-width:980px !important;
}
.hp-sec--best{
  padding-top:34px !important;
  padding-bottom:54px !important;
}
.hp-sec--best .hp-wrap{
  max-width:1120px !important;
}
.hp-bv-wrap{
  padding-left:48px !important;
  padding-right:48px !important;
}
.hp-track{
  gap:16px !important;
  padding:0 !important;
}
.hp-track > .hp-pcard,
.hp-track > .hp-pcard:nth-child(n+5){
  flex:0 0 calc((100% - 64px) / 5) !important;
}
.hp-pcard,
.hp-pcard a,
.hp-pc-media{
  overflow:visible !important;
}
.hp-pcard{
  isolation:isolate !important;
}
.hp-pc-media{
  border-radius:14px 14px 0 0 !important;
}
.hp-pc-media img{
  border-radius:14px 14px 0 0 !important;
}
.hp-bdgs{
  top:-9px !important;
  left:8px !important;
  right:auto !important;
  z-index:5 !important;
}
.hp-bdg{
  box-shadow:0 5px 12px rgba(228,50,43,.22) !important;
}
.hp-pc-fav{
  z-index:6 !important;
}

.hp-sec--spaces{
  padding-top:70px !important;
  padding-bottom:78px !important;
  overflow:visible !important;
}
.hp-sec--spaces .hp-wrap{
  max-width:1120px !important;
  overflow:visible !important;
}
.hp-sec--spaces .hp-head{
  margin-bottom:32px !important;
}
.hp-space-mosaic{
  display:grid !important;
  grid-template-columns:1.38fr 1fr 1fr !important;
  grid-template-rows:224px 224px !important;
  column-gap:22px !important;
  row-gap:22px !important;
  align-items:stretch !important;
  margin:0 0 64px !important;
  height:auto !important;
  overflow:visible !important;
}
.hp-space-tile,
.hp-space-tile--large{
  position:relative !important;
  display:grid !important;
  grid-template-rows:minmax(0,1fr) 26px !important;
  gap:10px !important;
  height:100% !important;
  min-height:0 !important;
  border-radius:8px !important;
  overflow:visible !important;
  background:transparent !important;
}
.hp-space-tile--large{
  grid-row:1 / span 2 !important;
}
.hp-space-tile img,
.hp-space-tile--large img{
  width:100% !important;
  height:100% !important;
  min-height:0 !important;
  object-fit:cover !important;
  display:block !important;
  border-radius:8px !important;
}
.hp-space-tile b{
  position:static !important;
  display:block !important;
  height:26px !important;
  margin:0 !important;
  padding:0 8px !important;
  background:transparent !important;
  color:#17201a !important;
  font-size:13.5px !important;
  font-weight:400 !important;
  line-height:26px !important;
  text-align:center !important;
}
.hp-room-title{
  position:relative !important;
  z-index:2 !important;
  clear:both !important;
  display:block !important;
  margin:0 0 30px !important;
  padding:0 !important;
  text-align:center !important;
  font-size:40px !important;
  line-height:1.12 !important;
}
.hp-rooms-wrap{
  position:relative !important;
  padding-left:50px !important;
  padding-right:50px !important;
}
.hp-room-track{
  gap:18px !important;
  padding:0 0 4px !important;
}
.hp-room-card{
  flex:0 0 calc((100% - 72px) / 5) !important;
}
.hp-room-card img{
  width:100% !important;
  aspect-ratio:1.28 / 1 !important;
  object-fit:cover !important;
  border-radius:8px !important;
}
.hp-room-card b{
  margin-top:9px !important;
  font-size:12.5px !important;
  line-height:1.2 !important;
  font-weight:400 !important;
  letter-spacing:0 !important;
}

@media(max-width:900px){
  #main{--home-pad:20px}
  .hp-hero{min-height:620px !important}
  .hp-hero .hp-wrap{padding-left:24px !important;padding-right:24px !important}
  .hp-hero h1{font-size:38px !important}
  .hp-hero p{font-size:16px !important}
  .hp-space-mosaic{
    grid-template-columns:1fr 1fr !important;
    grid-template-rows:210px 210px 210px !important;
    gap:16px !important;
  }
  .hp-space-tile--large{
    grid-column:1 / -1 !important;
    grid-row:auto !important;
  }
  .hp-room-title{font-size:32px !important}
  .hp-room-card{flex-basis:calc((100% - 18px) / 2) !important}
}

@media(max-width:760px){
  #main{
    overflow-x:hidden !important;
  }
  #main .hp-wrap,
  #main .lh-circats__wrap,
  #main .hp-sec--best .hp-wrap,
  #main .hp-sec--spaces .hp-wrap,
  #main .hp-sec--reviews .hp-wrap{
    max-width:100% !important;
    padding-left:18px !important;
    padding-right:18px !important;
  }
  .lh-circats__wrap{
    padding-left:44px !important;
    padding-right:44px !important;
  }
  .lh-circats__track{
    display:flex !important;
    gap:28px !important;
    overflow-x:auto !important;
    padding-bottom:18px !important;
  }
  .lh-circats__i,
  .lh-circats__i:nth-child(n+3),
  .lh-circats__i:nth-child(n+6){
    display:block !important;
    flex:0 0 calc((100% - 28px) / 2) !important;
  }
  .lh-circats__pic{
    max-width:118px !important;
  }
  .lh-circats__lbl{
    font-size:14px !important;
  }
  .hp-sec--best{
    padding-top:44px !important;
    padding-bottom:56px !important;
  }
  .hp-sec--best .hp-prow-head h2{
    font-size:34px !important;
    line-height:1.12 !important;
  }
  .hp-bv-wrap{
    padding-left:0 !important;
    padding-right:0 !important;
    overflow:visible !important;
  }
  .hp-track{
    display:flex !important;
    gap:16px !important;
    overflow-x:auto !important;
    overflow-y:visible !important;
    padding:12px 4px 8px !important;
    scroll-snap-type:x mandatory !important;
  }
  .hp-track > .hp-pcard,
  .hp-track > .hp-pcard:nth-child(n+5){
    display:flex !important;
    flex:0 0 min(76vw,290px) !important;
    max-width:min(76vw,290px) !important;
    scroll-snap-align:center !important;
  }
  .hp-pc-media{
    aspect-ratio:1 / .92 !important;
  }
  .hp-bdgs{
    top:-7px !important;
    left:10px !important;
    max-width:calc(100% - 58px) !important;
  }
  .hp-bdg{
    font-size:11px !important;
    line-height:1.15 !important;
    padding:6px 9px !important;
    white-space:normal !important;
  }
  .hp-bdg--solar{
    bottom:8px !important;
    left:10px !important;
    font-size:9.5px !important;
    padding:5px 9px !important;
  }
  .hp-pc-body{
    padding:14px 15px 16px !important;
  }
  .hp-pc-name{
    font-size:14px !important;
    min-height:40px !important;
  }
  .hp-pc-price b{
    font-size:20px !important;
  }
  .hp-arrow--side{
    display:flex !important;
    top:auto !important;
    bottom:-54px !important;
    width:38px !important;
    height:38px !important;
  }
  .hp-arrow--side.hp-arrow--prev{left:18px !important}
  .hp-arrow--side.hp-arrow--next{right:18px !important}
  .hp-sec--spaces{
    padding-top:58px !important;
  }
  .hp-space-mosaic{
    grid-template-columns:1fr !important;
    grid-template-rows:none !important;
    gap:18px !important;
  }
  .hp-space-tile,
  .hp-space-tile--large{
    grid-column:auto !important;
    grid-row:auto !important;
    height:230px !important;
  }
  .hp-room-card{
    flex-basis:min(72vw,260px) !important;
  }
}

@media(min-width:761px){
  .hp-sec--best .hp-wrap{
    max-width:1600px !important;
    padding-left:70px !important;
    padding-right:70px !important;
  }
  .hp-bv-wrap{
    padding-left:60px !important;
    padding-right:60px !important;
    overflow:visible !important;
  }
  .hp-track{
    display:flex !important;
    gap:36px !important;
    overflow-x:auto !important;
    padding:34px 2px 8px !important;
    scroll-snap-type:x mandatory !important;
  }
  .hp-track > .hp-pcard,
  .hp-track > .hp-pcard:nth-child(n+5){
    flex:0 0 calc((100% - 108px) / 4) !important;
    max-width:calc((100% - 108px) / 4) !important;
    scroll-snap-align:start !important;
  }
  .hp-pcard{
    overflow:visible !important;
  }
  .hp-pc-media{
    overflow:visible !important;
    isolation:isolate !important;
  }
  .hp-pc-media img{
    overflow:hidden !important;
  }
  .hp-bdgs{
    top:-24px !important;
    left:16px !important;
    right:auto !important;
    z-index:8 !important;
    max-width:none !important;
  }
  .hp-sec--best .hp-bdgs .hp-bdg,
  .hp-sec--best .hp-bdgs .hp-bdg.hp-bdg--remises{
    white-space:nowrap !important;
    max-width:none !important;
    min-width:0 !important;
    width:auto !important;
    height:42px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    font-size:18px !important;
    font-weight:800 !important;
    line-height:1 !important;
    padding:0 18px !important;
    border-radius:7px !important;
    box-shadow:none !important;
    letter-spacing:0 !important;
    text-transform:none !important;
  }
  .hp-sec--best .hp-bdgs .hp-bdg--remises{
    background:#e65a2e !important;
    color:#fff !important;
  }
  .hp-arrow--side.hp-arrow--prev{
    left:0 !important;
  }
  .hp-arrow--side.hp-arrow--next{
    right:0 !important;
  }
}

/* 0527 final: best sellers must show 4 cards with reference-like card width */
@media(min-width:761px){
  #main .hp-sec--best .hp-wrap{
    max-width:1500px !important;
    padding-left:64px !important;
    padding-right:64px !important;
  }
  #main .hp-sec--best .hp-bv-wrap{
    padding-left:72px !important;
    padding-right:72px !important;
    overflow:visible !important;
  }
  #main .hp-sec--best .hp-track{
    display:flex !important;
    gap:36px !important;
    justify-content:flex-start !important;
    overflow-x:auto !important;
    overflow-y:visible !important;
    padding:34px 0 10px !important;
    scroll-snap-type:x mandatory !important;
  }
  #main .hp-sec--best .hp-track > .hp-pcard,
  #main .hp-sec--best .hp-track > .hp-pcard:nth-child(n+5){
    display:flex !important;
    flex:0 0 292px !important;
    width:292px !important;
    max-width:292px !important;
    min-width:292px !important;
    scroll-snap-align:start !important;
  }
  #main .hp-sec--best .hp-pcard{
    overflow:visible !important;
    border-radius:14px !important;
  }
  #main .hp-sec--best .hp-pc-media{
    overflow:visible !important;
    border-radius:14px 14px 0 0 !important;
  }
  #main .hp-sec--best .hp-pc-media img{
    display:block !important;
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    border-radius:14px 14px 0 0 !important;
  }
  #main .hp-sec--best .hp-bdgs{
    top:-24px !important;
    left:16px !important;
    right:auto !important;
    z-index:20 !important;
    max-width:none !important;
    pointer-events:none !important;
  }
  #main .hp-sec--best .hp-bdgs .hp-bdg,
  #main .hp-sec--best .hp-bdgs .hp-bdg.hp-bdg--remises{
    height:42px !important;
    padding:0 18px !important;
    border-radius:7px !important;
    font-size:18px !important;
    line-height:1 !important;
    font-weight:800 !important;
    white-space:nowrap !important;
    box-shadow:none !important;
    background:#e15a34 !important;
    color:#fff !important;
  }
  #main .hp-sec--best .hp-arrow--side.hp-arrow--prev{
    left:18px !important;
  }
  #main .hp-sec--best .hp-arrow--side.hp-arrow--next{
    right:18px !important;
  }
}
@media(min-width:1500px){
  #main .hp-sec--best .hp-track{
    justify-content:center !important;
  }
}

/* 0527 final: mobile spaces mosaic must not overlap the next title */
@media(max-width:760px){
  #main .hp-sec--spaces{
    padding-top:44px !important;
    padding-bottom:58px !important;
    overflow:hidden !important;
  }
  #main .hp-sec--spaces .hp-wrap{
    max-width:100% !important;
    padding-left:28px !important;
    padding-right:28px !important;
    overflow:visible !important;
  }
  #main .hp-sec--spaces .hp-head{
    margin-bottom:24px !important;
  }
  #main .hp-sec--spaces .hp-head h2{
    font-size:30px !important;
    line-height:1.12 !important;
  }
  #main .hp-sec--spaces .hp-head p{
    font-size:14px !important;
    line-height:1.45 !important;
  }
  #main .hp-space-mosaic{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    grid-template-rows:none !important;
    gap:18px 14px !important;
    margin:0 0 38px !important;
    height:auto !important;
    overflow:visible !important;
    align-items:start !important;
  }
  #main .hp-space-tile,
  #main .hp-space-tile--large{
    display:grid !important;
    grid-template-rows:auto auto !important;
    grid-column:auto !important;
    grid-row:auto !important;
    gap:8px !important;
    height:auto !important;
    min-height:0 !important;
    overflow:visible !important;
  }
  #main .hp-space-tile--large{
    grid-column:1 / -1 !important;
  }
  #main .hp-space-tile img,
  #main .hp-space-tile--large img{
    width:100% !important;
    height:148px !important;
    aspect-ratio:auto !important;
    object-fit:cover !important;
    border-radius:8px !important;
  }
  #main .hp-space-tile--large img{
    height:230px !important;
  }
  #main .hp-space-tile b{
    position:static !important;
    display:block !important;
    height:auto !important;
    min-height:20px !important;
    margin:0 !important;
    padding:0 2px !important;
    color:#17201a !important;
    background:transparent !important;
    font-size:13px !important;
    font-weight:500 !important;
    line-height:1.25 !important;
    text-align:center !important;
  }
  #main .hp-room-title{
    clear:both !important;
    position:relative !important;
    z-index:1 !important;
    margin:18px 0 22px !important;
    padding:0 !important;
    font-size:34px !important;
    line-height:1.04 !important;
    text-align:center !important;
  }
  #main .hp-rooms-wrap{
    padding-left:42px !important;
    padding-right:42px !important;
  }
  #main .hp-room-track{
    gap:14px !important;
    padding-bottom:4px !important;
  }
  #main .hp-room-card{
    flex:0 0 min(70vw,230px) !important;
  }
  #main .hp-room-card img{
    aspect-ratio:1.22 / 1 !important;
    border-radius:8px !important;
  }
  #main .hp-room-card b{
    font-size:13px !important;
    font-weight:500 !important;
    line-height:1.2 !important;
  }
}
@media(max-width:430px){
  #main .hp-sec--spaces .hp-wrap{
    padding-left:22px !important;
    padding-right:22px !important;
  }
  #main .hp-space-tile img,
  #main .hp-space-tile--large img{
    height:136px !important;
  }
  #main .hp-space-tile--large img{
    height:210px !important;
  }
  #main .hp-room-title{
    font-size:31px !important;
  }
}

/* 0527 emergency cleanup: remove carousel/mosaic drift */
@media(min-width:761px){
  #main .hp-sec--best .hp-wrap{
    max-width:1500px !important;
    padding-left:48px !important;
    padding-right:48px !important;
  }
  #main .hp-sec--best .hp-bv-wrap{
    width:1372px !important;
    max-width:100% !important;
    margin-left:auto !important;
    margin-right:auto !important;
    padding-left:48px !important;
    padding-right:48px !important;
    overflow:hidden !important;
    box-sizing:border-box !important;
  }
  #main .hp-sec--best .hp-track{
    width:1276px !important;
    max-width:100% !important;
    margin:0 auto !important;
    gap:36px !important;
    padding:34px 0 10px !important;
    overflow-x:auto !important;
    overflow-y:visible !important;
    scroll-padding-left:0 !important;
    scroll-snap-type:x mandatory !important;
  }
  #main .hp-sec--best .hp-track > .hp-pcard,
  #main .hp-sec--best .hp-track > .hp-pcard:nth-child(n+5){
    flex:0 0 292px !important;
    width:292px !important;
    min-width:292px !important;
    max-width:292px !important;
  }
  #main .hp-sec--best .hp-arrow--side.hp-arrow--prev{
    left:0 !important;
  }
  #main .hp-sec--best .hp-arrow--side.hp-arrow--next{
    right:0 !important;
  }
}
@media(max-width:760px){
  #main .hp-sec--spaces .hp-wrap{
    padding-left:24px !important;
    padding-right:24px !important;
  }
  #main .hp-space-mosaic{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    grid-auto-rows:auto !important;
    grid-template-rows:auto !important;
    gap:18px 14px !important;
    margin:0 0 42px !important;
    overflow:visible !important;
  }
  #main .hp-space-mosaic .hp-space-tile,
  #main .hp-space-mosaic .hp-space-tile--large{
    grid-column:auto !important;
    grid-row:auto !important;
    display:block !important;
    height:auto !important;
    min-height:0 !important;
    margin:0 !important;
    overflow:visible !important;
  }
  #main .hp-space-mosaic .hp-space-tile--large{
    grid-column:1 / -1 !important;
  }
  #main .hp-space-mosaic .hp-space-tile img,
  #main .hp-space-mosaic .hp-space-tile--large img{
    display:block !important;
    width:100% !important;
    height:140px !important;
    min-height:0 !important;
    max-height:none !important;
    aspect-ratio:auto !important;
    object-fit:cover !important;
    border-radius:8px !important;
  }
  #main .hp-space-mosaic .hp-space-tile--large img{
    height:220px !important;
  }
  #main .hp-space-mosaic .hp-space-tile b{
    display:block !important;
    position:static !important;
    height:auto !important;
    margin:8px 0 0 !important;
    padding:0 !important;
    line-height:1.22 !important;
    font-size:14px !important;
    font-weight:600 !important;
    text-align:center !important;
    color:#17201a !important;
    background:transparent !important;
  }
  #main .hp-room-title{
    margin:28px 0 24px !important;
    font-size:32px !important;
    line-height:1.04 !important;
  }
}
@media(max-width:430px){
  #main .hp-space-mosaic .hp-space-tile img{
    height:132px !important;
  }
  #main .hp-space-mosaic .hp-space-tile--large img{
    height:206px !important;
  }
}

/* 0527 detail pass: product cards match the reference rhythm */
#main .hp-sec--best .hp-track{
  align-items:flex-start !important;
}
#main .hp-sec--best .hp-pcard,
#main .hp-sec--best .hp-pcard a{
  height:auto !important;
  min-height:0 !important;
}
#main .hp-sec--best .hp-pc-media{
  aspect-ratio:1.08 / 1 !important;
  height:auto !important;
}
#main .hp-sec--best .hp-pc-body{
  display:flex !important;
  flex-direction:column !important;
  gap:8px !important;
  flex:0 0 auto !important;
  padding:18px 18px 20px !important;
}
#main .hp-sec--best .hp-pc-pvc{
  order:1 !important;
  margin:0 0 4px !important;
  padding:8px 16px !important;
  font-size:15px !important;
  line-height:1 !important;
  background:#df5a34 !important;
}
#main .hp-sec--best .hp-pc-price{
  order:2 !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  gap:4px !important;
  margin:0 !important;
  padding:0 !important;
}
#main .hp-sec--best .hp-pc-price b{
  font-size:22px !important;
  line-height:1.08 !important;
  font-weight:800 !important;
}
#main .hp-sec--best .hp-pc-oldprice{
  font-size:16px !important;
  line-height:1.15 !important;
  color:#a9aca9 !important;
}
#main .hp-sec--best .hp-pc-name{
  order:3 !important;
  min-height:0 !important;
  margin:6px 0 0 !important;
  font-size:17px !important;
  line-height:1.35 !important;
  font-weight:500 !important;
  -webkit-line-clamp:2 !important;
}
#main .hp-sec--best .hp-pc-rate{
  order:4 !important;
  margin-top:4px !important;
  font-size:14px !important;
}
#main .hp-sec--best .hp-stars{
  font-size:15px !important;
}
#main .hp-sec--best .hp-pc-stock{
  order:5 !important;
  margin-top:20px !important;
  font-size:15px !important;
  font-weight:500 !important;
  color:#28312b !important;
}
#main .hp-sec--best .hp-pc-stock::before{
  width:18px !important;
  height:18px !important;
  background:#58ad55 !important;
  content:"✓" !important;
  display:inline-grid !important;
  place-items:center !important;
  color:#fff !important;
  font-size:13px !important;
  line-height:1 !important;
}
@media(min-width:761px){
  #main .hp-sec--best .hp-bv-wrap{
    width:1640px !important;
    padding-left:64px !important;
    padding-right:64px !important;
    overflow:visible !important;
  }
  #main .hp-sec--best .hp-track{
    width:1512px !important;
    gap:34px !important;
    overflow:hidden !important;
  }
  #main .hp-sec--best .hp-track > .hp-pcard,
  #main .hp-sec--best .hp-track > .hp-pcard:nth-child(n+5){
    flex-basis:275px !important;
    width:275px !important;
    min-width:275px !important;
    max-width:275px !important;
  }
  #main .hp-sec--best .hp-bdgs{
    top:-18px !important;
    left:0 !important;
  }
  #main .hp-sec--best .hp-bdgs .hp-bdg,
  #main .hp-sec--best .hp-bdgs .hp-bdg.hp-bdg--remises{
    height:38px !important;
    border-radius:4px !important;
    padding:0 14px !important;
    font-size:18px !important;
    background:#df5a34 !important;
  }
  #main .hp-sec--best .hp-pc-fav{
    top:auto !important;
    right:14px !important;
    bottom:14px !important;
    width:42px !important;
    height:42px !important;
    z-index:9 !important;
  }
  #main .hp-sec--best .hp-bdg--solar{
    bottom:14px !important;
    left:14px !important;
    padding:7px 12px !important;
    font-size:11px !important;
  }
}

/* 0527 precision pass: equal product card geometry */
@media(min-width:761px){
  #main .hp-sec--best .hp-track{
    align-items:stretch !important;
    padding-top:24px !important;
  }
  #main .hp-sec--best .hp-pcard,
  #main .hp-sec--best .hp-track > .hp-pcard,
  #main .hp-sec--best .hp-track > .hp-pcard:nth-child(n+5){
    height:540px !important;
    min-height:540px !important;
    max-height:540px !important;
    border-radius:12px !important;
    overflow:visible !important;
    background:#fff !important;
  }
  #main .hp-sec--best .hp-pcard a{
    display:grid !important;
    grid-template-rows:230px 310px !important;
    height:540px !important;
    min-height:540px !important;
    max-height:540px !important;
    overflow:hidden !important;
    border-radius:12px !important;
  }
  #main .hp-sec--best .hp-pc-media{
    height:230px !important;
    min-height:230px !important;
    max-height:230px !important;
    aspect-ratio:auto !important;
    overflow:hidden !important;
    border-radius:12px 12px 0 0 !important;
    background:#f4f5f4 !important;
  }
  #main .hp-sec--best .hp-pc-media img{
    height:230px !important;
    min-height:230px !important;
    max-height:230px !important;
    object-fit:cover !important;
    border-radius:12px 12px 0 0 !important;
  }
  #main .hp-sec--best .hp-pc-body{
    height:310px !important;
    min-height:310px !important;
    max-height:310px !important;
    padding:18px 18px 18px !important;
    display:grid !important;
    grid-template-rows:36px 52px 50px 28px 1fr 24px !important;
    gap:0 !important;
    overflow:hidden !important;
  }
  #main .hp-sec--best .hp-pc-pvc{
    align-self:start !important;
    justify-self:start !important;
    height:31px !important;
    margin:0 !important;
    padding:0 14px !important;
    border-radius:999px !important;
    font-size:13.5px !important;
    line-height:31px !important;
  }
  #main .hp-sec--best .hp-pc-price{
    align-self:start !important;
    justify-self:start !important;
    height:52px !important;
    min-height:52px !important;
    max-height:52px !important;
    overflow:hidden !important;
  }
  #main .hp-sec--best .hp-pc-price b{
    font-size:21px !important;
    line-height:1.05 !important;
  }
  #main .hp-sec--best .hp-pc-oldprice{
    font-size:14.5px !important;
    line-height:1.2 !important;
  }
  #main .hp-sec--best .hp-pc-name{
    height:46px !important;
    min-height:46px !important;
    max-height:46px !important;
    margin:0 !important;
    overflow:hidden !important;
    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;
    text-overflow:ellipsis !important;
    font-size:15.5px !important;
    line-height:1.45 !important;
    font-weight:600 !important;
  }
  #main .hp-sec--best .hp-pc-rate{
    height:24px !important;
    min-height:24px !important;
    max-height:24px !important;
    margin:0 !important;
    overflow:hidden !important;
    align-items:center !important;
    font-size:13px !important;
  }
  #main .hp-sec--best .hp-stars{
    font-size:13.5px !important;
    letter-spacing:1px !important;
    white-space:nowrap !important;
  }
  #main .hp-sec--best .hp-pc-stock{
    align-self:end !important;
    height:24px !important;
    margin:0 !important;
    font-size:13px !important;
    line-height:24px !important;
  }
  #main .hp-sec--best .hp-pc-stock::before{
    width:17px !important;
    height:17px !important;
    font-size:12px !important;
  }
  #main .hp-sec--best .hp-bdgs{
    top:-16px !important;
    left:12px !important;
  }
  #main .hp-sec--best .hp-bdgs .hp-bdg,
  #main .hp-sec--best .hp-bdgs .hp-bdg.hp-bdg--remises{
    height:30px !important;
    padding:0 11px !important;
    border-radius:4px !important;
    font-size:14px !important;
    line-height:30px !important;
    font-weight:800 !important;
  }
  #main .hp-sec--best .hp-pc-fav{
    width:34px !important;
    height:34px !important;
    right:12px !important;
    bottom:12px !important;
  }
  #main .hp-sec--best .hp-pc-fav svg{
    width:18px !important;
    height:18px !important;
  }
  #main .hp-sec--best .hp-bdg--solar{
    bottom:12px !important;
    left:12px !important;
    height:25px !important;
    padding:0 10px !important;
    font-size:10px !important;
    line-height:25px !important;
  }
}

/* 0527 final alignment: old-site middle width + exactly 4 best-seller cards */
@media(min-width:761px){
  #main{
    --home-w:1200px !important;
    --home-pad:28px !important;
  }
  #main .hp-wrap,
  #main .lh-circats__wrap,
  #main .hp-sec--spaces .hp-wrap,
  #main .hp-sec--reviews .hp-wrap{
    max-width:1200px !important;
    padding-left:28px !important;
    padding-right:28px !important;
  }
  #main .hp-sec--best{
    padding-top:48px !important;
    padding-bottom:54px !important;
  }
  #main .hp-sec--best .hp-wrap{
    max-width:1200px !important;
    padding-left:28px !important;
    padding-right:28px !important;
  }
  #main .hp-sec--best .hp-prow-head{
    margin-bottom:36px !important;
  }
  #main .hp-sec--best .hp-bv-wrap{
    width:100% !important;
    max-width:1144px !important;
    margin:0 auto !important;
    padding:0 !important;
    overflow:visible !important;
  }
  #main .hp-sec--best .hp-track{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:26px !important;
    width:100% !important;
    max-width:1144px !important;
    margin:0 auto !important;
    padding:18px 0 0 !important;
    overflow:visible !important;
    scroll-snap-type:none !important;
  }
  #main .hp-sec--best .hp-track > .hp-pcard{
    display:flex !important;
    width:auto !important;
    min-width:0 !important;
    max-width:none !important;
    flex:none !important;
    height:520px !important;
    min-height:520px !important;
    max-height:520px !important;
  }
  #main .hp-sec--best .hp-track > .hp-pcard:nth-child(n+5){
    display:none !important;
  }
  #main .hp-sec--best .hp-pcard a{
    grid-template-rows:214px 306px !important;
    height:520px !important;
    min-height:520px !important;
    max-height:520px !important;
  }
  #main .hp-sec--best .hp-pc-media,
  #main .hp-sec--best .hp-pc-media img{
    height:214px !important;
    min-height:214px !important;
    max-height:214px !important;
    border-radius:10px 10px 0 0 !important;
  }
  #main .hp-sec--best .hp-pc-body{
    height:306px !important;
    min-height:306px !important;
    max-height:306px !important;
    grid-template-rows:34px 50px 46px 26px 1fr 22px !important;
    padding:16px 16px 17px !important;
  }
  #main .hp-sec--best .hp-pc-name{
    height:44px !important;
    min-height:44px !important;
    max-height:44px !important;
    font-size:15px !important;
    line-height:1.45 !important;
  }
  #main .hp-sec--best .hp-bdgs{
    top:-14px !important;
    left:10px !important;
  }
  #main .hp-sec--best .hp-bdgs .hp-bdg,
  #main .hp-sec--best .hp-bdgs .hp-bdg.hp-bdg--remises{
    height:28px !important;
    padding:0 10px !important;
    border-radius:4px !important;
    font-size:13px !important;
    line-height:28px !important;
  }
  #main .hp-sec--best .hp-pc-pvc{
    height:30px !important;
    line-height:30px !important;
    font-size:13px !important;
    padding:0 13px !important;
  }
  #main .hp-sec--best .hp-pc-price b{
    font-size:20px !important;
  }
  #main .hp-sec--best .hp-pc-oldprice{
    font-size:13.5px !important;
  }
  #main .hp-sec--best .hp-pc-rate,
  #main .hp-sec--best .hp-pc-stock{
    font-size:12.5px !important;
  }
  #main .hp-sec--best .hp-stars{
    font-size:12.5px !important;
  }
  #main .hp-sec--best .hp-pc-fav{
    width:32px !important;
    height:32px !important;
    right:11px !important;
    bottom:11px !important;
  }
  #main .hp-sec--best .hp-bdg--solar{
    height:23px !important;
    line-height:23px !important;
    bottom:11px !important;
    left:11px !important;
    padding:0 9px !important;
    font-size:9.5px !important;
  }
  #main .hp-sec--best .hp-arrow--side{
    display:none !important;
  }
}

/* 0527 strict final: wide middle, compact four-card best-seller block */
@media(min-width:761px){
  #main{
    --home-w:1280px !important;
    --home-pad:32px !important;
  }
  #main .hp-wrap,
  #main .lh-circats__wrap,
  #main .hp-sec--spaces .hp-wrap,
  #main .hp-sec--reviews .hp-wrap{
    max-width:1280px !important;
    padding-left:32px !important;
    padding-right:32px !important;
  }
  #main .hp-sec--best{
    padding-top:44px !important;
    padding-bottom:52px !important;
  }
  #main .hp-sec--best .hp-wrap{
    max-width:1280px !important;
    padding-left:32px !important;
    padding-right:32px !important;
  }
  #main .hp-sec--best .hp-prow-head{
    margin-bottom:28px !important;
  }
  #main .hp-sec--best .hp-prow-head h2{
    font-size:34px !important;
    line-height:1.1 !important;
  }
  #main .hp-sec--best .hp-prow-h-sub{
    font-size:14px !important;
    margin-top:8px !important;
  }
  #main .hp-sec--best .hp-bv-wrap{
    width:100% !important;
    max-width:1120px !important;
    margin:0 auto !important;
    padding:0 !important;
    overflow:visible !important;
  }
  #main .hp-sec--best .hp-track{
    display:grid !important;
    grid-template-columns:repeat(4, 1fr) !important;
    gap:24px !important;
    width:100% !important;
    max-width:1120px !important;
    margin:0 auto !important;
    padding:16px 0 0 !important;
    overflow:visible !important;
  }
  #main .hp-sec--best .hp-track > .hp-pcard{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    height:404px !important;
    min-height:404px !important;
    max-height:404px !important;
    border:1px solid #e8ebe8 !important;
    border-radius:8px !important;
    overflow:visible !important;
    box-shadow:0 8px 22px rgba(20,40,28,.04) !important;
  }
  #main .hp-sec--best .hp-track > .hp-pcard:nth-child(n+5){
    display:none !important;
  }
  #main .hp-sec--best .hp-pcard a{
    display:grid !important;
    grid-template-rows:180px 224px !important;
    height:404px !important;
    min-height:404px !important;
    max-height:404px !important;
    overflow:hidden !important;
    border-radius:8px !important;
  }
  #main .hp-sec--best .hp-pc-media,
  #main .hp-sec--best .hp-pc-media img{
    height:180px !important;
    min-height:180px !important;
    max-height:180px !important;
    border-radius:8px 8px 0 0 !important;
    object-fit:cover !important;
  }
  #main .hp-sec--best .hp-pc-body{
    height:224px !important;
    min-height:224px !important;
    max-height:224px !important;
    display:grid !important;
    grid-template-rows:30px 46px 40px 22px 1fr 20px !important;
    padding:14px 14px 14px !important;
    overflow:hidden !important;
    gap:0 !important;
  }
  #main .hp-sec--best .hp-pc-pvc{
    height:26px !important;
    line-height:26px !important;
    padding:0 11px !important;
    border-radius:999px !important;
    font-size:12px !important;
    font-weight:800 !important;
    margin:0 !important;
  }
  #main .hp-sec--best .hp-pc-price{
    height:46px !important;
    min-height:46px !important;
    max-height:46px !important;
    margin:0 !important;
    padding:0 !important;
    gap:2px !important;
    overflow:hidden !important;
  }
  #main .hp-sec--best .hp-pc-price b{
    font-size:19px !important;
    line-height:1.05 !important;
  }
  #main .hp-sec--best .hp-pc-oldprice{
    font-size:12.5px !important;
    line-height:1.2 !important;
  }
  #main .hp-sec--best .hp-pc-name{
    height:38px !important;
    min-height:38px !important;
    max-height:38px !important;
    margin:0 !important;
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    font-size:13px !important;
    line-height:1.42 !important;
    font-weight:600 !important;
  }
  #main .hp-sec--best .hp-pc-rate{
    height:20px !important;
    min-height:20px !important;
    max-height:20px !important;
    margin:0 !important;
    gap:5px !important;
    align-items:center !important;
    overflow:hidden !important;
    font-size:11.5px !important;
    color:#8b928b !important;
  }
  #main .hp-sec--best .hp-stars{
    font-size:11.5px !important;
    letter-spacing:.8px !important;
  }
  #main .hp-sec--best .hp-pc-stock{
    height:20px !important;
    margin:0 !important;
    align-self:end !important;
    line-height:20px !important;
    font-size:11.5px !important;
    color:#276B42 !important;
    font-weight:600 !important;
  }
  #main .hp-sec--best .hp-pc-stock::before{
    width:14px !important;
    height:14px !important;
    font-size:9px !important;
  }
  #main .hp-sec--best .hp-bdgs{
    top:-11px !important;
    left:8px !important;
    z-index:12 !important;
  }
  #main .hp-sec--best .hp-bdgs .hp-bdg,
  #main .hp-sec--best .hp-bdgs .hp-bdg.hp-bdg--remises{
    height:24px !important;
    line-height:24px !important;
    padding:0 9px !important;
    border-radius:3px !important;
    font-size:11.5px !important;
    font-weight:800 !important;
    background:#df5a34 !important;
  }
  #main .hp-sec--best .hp-bdg--solar{
    height:20px !important;
    line-height:20px !important;
    bottom:8px !important;
    left:8px !important;
    padding:0 8px !important;
    font-size:8.5px !important;
  }
  #main .hp-sec--best .hp-bdg--solar::before{
    width:7px !important;
    height:7px !important;
  }
  #main .hp-sec--best .hp-pc-fav{
    width:30px !important;
    height:30px !important;
    right:8px !important;
    bottom:8px !important;
    box-shadow:0 2px 7px rgba(0,0,0,.12) !important;
  }
  #main .hp-sec--best .hp-pc-fav svg{
    width:15px !important;
    height:15px !important;
  }
}


/* ---- 06.010 页面末尾最终锁定块
   来源：index0528.html:9058
   说明：由页面底部 <style> 抽离，保持原加载优先级。
   ---- */
/* v5 docx: 上面 trust strip 与下面 footer 合并 — 整片绿色, 白色文字, 白底瓦片 logo */
/* v7 fix: 用 Shopify .container 同样的 padding 计算方式，保证左右边缘完全对齐 footer */
.v15-trust-strip{background:#276B42;padding-top:44px;padding-bottom:36px;padding-left:var(--container-outer-width,24px);padding-right:var(--container-outer-width,24px);border-top:0;border-bottom:1px solid rgba(255,255,255,.12);position:relative;margin:0;box-sizing:border-box}
.v15-trust-inner{max-width:none;margin:0;display:grid;grid-template-columns:1.1fr 1.1fr 1fr;gap:48px;align-items:start;padding:0}
@media(max-width:900px){.v15-trust-inner{grid-template-columns:1fr;gap:32px}}
.v15-trust-col h3{margin:0 0 16px;font-size:13px;font-weight:800;color:rgba(255,255,255,.95);letter-spacing:.08em;text-transform:uppercase}
.v15-trust-logos{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.v15-trust-logos img{height:32px;width:auto;object-fit:contain;background:#fff;border:0;border-radius:6px;padding:6px 10px;transition:transform .15s,box-shadow .15s}
.v15-trust-logos img:hover{transform:translateY(-2px);box-shadow:0 4px 14px rgba(0,0,0,.18)}
.v15-trust-col--shipping img{height:36px}
.v15-trust-col span{color:rgba(255,255,255,.78) !important}
.v15-trust-col a{color:#fff !important}
.v15-trust-eco{display:inline-flex;align-items:center;gap:8px;margin-top:12px;padding:6px 12px;background:#e8f5e9;border-radius:6px;font-size:12.5px;color:#1b5e20;font-weight:600}
.v15-trust-eco img{height:24px;border:0;padding:0;background:none}
.v15-trust-rating{display:flex;align-items:center;gap:14px}
.v15-trust-rating-stars{display:flex;gap:3px}
/* v5: trust strip on green — stars now use TrustPilot-style white-on-green-bg blocks */
.v15-trust-rating-stars svg{width:22px;height:22px;background:#00b67a;padding:3px;color:#fff;fill:#fff;border-radius:3px}
.v15-trust-rating-score{font-size:14px;color:rgba(255,255,255,.85)}
.v15-trust-rating-score strong{color:#fff;font-weight:800;font-size:16px}
.v15-trust-rating-score a{color:#fff;text-decoration:underline;text-decoration-color:rgba(255,255,255,.4)}
.v15-trust-rating-logo{margin-top:10px;display:inline-flex;align-items:center;gap:6px;font-size:13px;color:rgba(255,255,255,.85);font-weight:600}
.v15-trust-rating-logo svg{width:18px;height:18px;color:#00ff95;fill:#00ff95}

/* v5: 清理后的 footer 底部条 — 不重复支付图标，仅版权 + cookies + 国家选择 */
.lh-foot-copy{color:rgba(255,255,255,.78);font-size:12.5px;font-weight:500;letter-spacing:.01em}
.lh-foot-cookies{color:rgba(255,255,255,.78);font-size:12.5px}
.lh-foot-cookies a{color:#fff;text-decoration:underline;text-decoration-color:rgba(255,255,255,.4);font-weight:600}
.lh-foot-cookies a:hover{text-decoration-color:#fff}

/* =============================================================
   v5 docx — Footer polish: 干掉丑陋的方框 social, 统一字号, hover
   ============================================================= */
/* 列标题统一更紧凑 */
.footer .footer__item-title,
.footer .footer__heading{
  font-size:11.5px !important;
  font-weight:800 !important;
  letter-spacing:.14em !important;
  text-transform:uppercase !important;
  color:rgba(255,255,255,.95) !important;
  margin-bottom:18px !important;
  position:relative;
  padding-bottom:10px;
}
.footer .footer__item-title::after,
.footer .footer__heading::after{
  content:"";position:absolute;left:0;bottom:0;width:24px;height:2px;background:rgba(255,255,255,.4);border-radius:2px
}
/* 链接 hover 加下划线 */
.footer a{transition:color .15s,opacity .15s}
.footer .footer__menu a,
.footer .footer__menu-list a,
.footer .footer__link{
  color:rgba(255,255,255,.85) !important;
  text-decoration:none !important;
  font-size:13.5px !important;
  font-weight:500 !important;
  line-height:1.7 !important;
}
.footer .footer__menu a:hover,
.footer .footer__menu-list a:hover,
.footer .footer__link:hover{
  color:#fff !important;
  text-decoration:underline !important;
  text-decoration-color:rgba(255,255,255,.5) !important;
  text-underline-offset:3px;
}
/* INFORMATIONS 段落字号统一 + 强调 */
.footer .footer__item p,
.footer .footer__item div{
  font-size:13.5px;
  line-height:1.7;
  color:rgba(255,255,255,.85)
}
.footer .footer__item p strong,
.footer .footer__item div strong{color:#fff;font-weight:700}

/* 社交图标 — 干掉方框, 改成圆形 ghost 风格 */
.footer .social-media,
.footer .footer__social-media,
.footer .social-media__list{
  display:flex !important;flex-wrap:wrap !important;gap:10px !important;padding:0 !important;margin:0 !important;list-style:none !important
}
.footer .social-media__item,
.footer .footer__social-media-item{padding:0 !important;margin:0 !important;border:0 !important;background:0 !important;list-style:none !important;outline:0 !important;box-shadow:none !important}
.footer .social-media__item::before,
.footer .social-media__item::after{display:none !important;content:none !important}
.footer .social-media__link,
.footer .footer__social-media-link{
  display:inline-grid !important;place-items:center !important;
  width:36px !important;height:36px !important;min-width:36px !important;min-height:36px !important;
  background:rgba(255,255,255,.14) !important;
  border:0 !important;outline:0 !important;box-shadow:none !important;
  border-radius:50% !important;
  color:#fff !important;
  transition:background .18s,transform .18s !important;
  padding:0 !important;text-decoration:none !important;
  box-sizing:border-box !important
}
.footer .social-media__link:hover,
.footer .footer__social-media-link:hover,
.footer .social-media__link:focus-visible,
.footer .footer__social-media-link:focus-visible{
  background:#fff !important;
  color:#276B42 !important;
  transform:translateY(-2px) !important;
  outline:0 !important
}
.footer .social-media__link svg,
.footer .footer__social-media-link svg{
  width:15px !important;height:15px !important;
  fill:currentColor !important;color:currentColor !important
}

/* 4列footer 间距 + 顶部留白调整 */
.footer .footer__inner{padding-top:8px;padding-bottom:24px;gap:48px}
.footer .footer__item-list{gap:clamp(24px,3vw,48px)}
@media(min-width:900px){.footer .footer__item-list{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr}}

/* 国家选择器 button — chip 样式 */
.footer .select--small{
  background:rgba(255,255,255,.08) !important;
  border:1px solid rgba(255,255,255,.18) !important;
  color:#fff !important;
  border-radius:999px !important;
  padding:8px 16px !important;
  font-size:13px !important;font-weight:600 !important;
  transition:background .15s,border-color .15s
}
.footer .select--small:hover{background:rgba(255,255,255,.16) !important;border-color:rgba(255,255,255,.32) !important}

@media(max-width:760px){
  body{
    overflow-x:hidden !important;
  }
  .v15-trust-strip{
    padding:30px 18px 28px !important;
    overflow:hidden !important;
  }
  .v15-trust-inner{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:30px !important;
    width:100% !important;
  }
  .v15-trust-col{
    min-width:0 !important;
  }
  .v15-trust-col h3{
    font-size:13px !important;
    letter-spacing:.08em !important;
    margin-bottom:14px !important;
  }
  .v15-trust-logos{
    display:flex !important;
    flex-wrap:wrap !important;
    gap:8px !important;
    max-width:100% !important;
  }
  .v15-trust-logos img{
    height:30px !important;
    max-width:86px !important;
    padding:6px 8px !important;
    border-radius:6px !important;
  }
  .v15-trust-logos img[alt="PayPal"]{
    max-width:96px !important;
  }
  .v15-trust-col > span{
    display:block !important;
    max-width:100% !important;
    font-size:13px !important;
    line-height:1.55 !important;
    overflow-wrap:anywhere !important;
  }
  .v15-trust-rating{
    align-items:flex-start !important;
    gap:12px !important;
    flex-wrap:wrap !important;
  }
  .v15-trust-rating-stars svg{
    width:20px !important;
    height:20px !important;
  }
  .v15-trust-rating-score strong{
    font-size:15px !important;
  }
  .v15-trust-rating-score{
    font-size:13px !important;
  }
  .v15-trust-rating-logo{
    font-size:13px !important;
    line-height:1.4 !important;
  }
  #shopify-section-sections--25458834145659__footer .footer,
  .footer{
    overflow:hidden !important;
  }
  .footer .container{
    padding-left:18px !important;
    padding-right:18px !important;
  }
  .footer .footer__inner{
    padding-top:28px !important;
    padding-bottom:28px !important;
    gap:24px !important;
  }
  .footer .footer__item-list{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:26px !important;
  }
  .footer .footer__item,
  .footer .footer__item-content{
    min-width:0 !important;
    max-width:100% !important;
  }
  .footer .footer__item p,
  .footer .footer__item div,
  .footer .footer__item a{
    max-width:100% !important;
    overflow-wrap:anywhere !important;
    word-break:normal !important;
  }
  .footer .footer__aside{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:14px !important;
    align-items:start !important;
  }
}

/* 0527 footer width reset: trust strip and footer share one centered rhythm */
.v15-trust-strip,
#shopify-section-sections--25458834145659__footer .footer{
  width:100% !important;
  max-width:100% !important;
  box-sizing:border-box !important;
  overflow:hidden !important;
}
.v15-trust-strip{
  padding-left:0 !important;
  padding-right:0 !important;
}
.v15-trust-inner,
#shopify-section-sections--25458834145659__footer .footer .container{
  width:min(100%,1180px) !important;
  max-width:1180px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  padding-left:28px !important;
  padding-right:28px !important;
  box-sizing:border-box !important;
}
.v15-trust-inner{
  grid-template-columns:1fr 1fr 1fr !important;
  gap:44px !important;
}
#shopify-section-sections--25458834145659__footer .footer .footer__inner{
  padding-left:0 !important;
  padding-right:0 !important;
}
@media(max-width:900px){
  .v15-trust-inner{
    grid-template-columns:1fr !important;
    gap:34px !important;
  }
}
@media(max-width:760px){
  html,
  body{
    max-width:100% !important;
    overflow-x:hidden !important;
  }
  .v15-trust-strip{
    padding:34px 0 34px !important;
  }
  .v15-trust-inner,
  #shopify-section-sections--25458834145659__footer .footer .container{
    width:100% !important;
    max-width:100% !important;
    padding-left:34px !important;
    padding-right:34px !important;
  }
  .v15-trust-col{
    min-width:0 !important;
  }
  .v15-trust-logos{
    gap:8px !important;
    max-width:100% !important;
  }
  .v15-trust-logos img{
    flex:0 0 auto !important;
    max-width:88px !important;
    height:31px !important;
    padding:6px 8px !important;
  }
  .v15-trust-logos img[alt="PayPal"]{
    max-width:110px !important;
  }
  .v15-trust-col > span{
    max-width:100% !important;
    overflow-wrap:break-word !important;
    line-height:1.55 !important;
  }
  .v15-trust-rating{
    display:grid !important;
    grid-template-columns:auto 1fr !important;
    column-gap:12px !important;
    row-gap:12px !important;
    align-items:center !important;
  }
  .v15-trust-rating-logo{
    max-width:100% !important;
    line-height:1.45 !important;
    overflow-wrap:break-word !important;
  }
  #shopify-section-sections--25458834145659__footer .footer .footer__inner{
    padding-top:42px !important;
    padding-bottom:34px !important;
  }
  #shopify-section-sections--25458834145659__footer .footer .footer__item-list{
    grid-template-columns:1fr !important;
    gap:30px !important;
  }
  #shopify-section-sections--25458834145659__footer .footer .footer__item,
  #shopify-section-sections--25458834145659__footer .footer .footer__item-content{
    min-width:0 !important;
    max-width:100% !important;
  }
  #shopify-section-sections--25458834145659__footer .footer .footer__item p,
  #shopify-section-sections--25458834145659__footer .footer .footer__item div,
  #shopify-section-sections--25458834145659__footer .footer .footer__item a{
    max-width:100% !important;
    overflow-wrap:break-word !important;
    word-break:normal !important;
  }
}
@media(max-width:430px){
  .v15-trust-inner,
  #shopify-section-sections--25458834145659__footer .footer .container{
    padding-left:28px !important;
    padding-right:28px !important;
  }
}

/* 0527 final: footer/trust spacing normalized */
.v15-trust-strip{
  background:#276B42 !important;
  padding-top:46px !important;
  padding-bottom:42px !important;
}
.v15-trust-inner,
#shopify-section-sections--25458834145659__footer .footer .container{
  max-width:1180px !important;
}
#shopify-section-sections--25458834145659__footer .footer{
  background:#276B42 !important;
}
#shopify-section-sections--25458834145659__footer .footer .footer__inner{
  border-top:1px solid rgba(255,255,255,.18) !important;
  padding-top:54px !important;
}
@media(max-width:760px){
  .v15-trust-strip{
    padding:36px 0 38px !important;
  }
  .v15-trust-inner,
  #shopify-section-sections--25458834145659__footer .footer .container{
    padding-left:34px !important;
    padding-right:34px !important;
  }
  .v15-trust-inner{
    gap:36px !important;
  }
  .v15-trust-col h3,
  #shopify-section-sections--25458834145659__footer .footer .footer__item-title,
  #shopify-section-sections--25458834145659__footer .footer .footer__heading{
    margin-bottom:18px !important;
  }
  .v15-trust-logos{
    row-gap:10px !important;
    column-gap:10px !important;
  }
  .v15-trust-logos img{
    height:34px !important;
    max-width:92px !important;
    padding:7px 10px !important;
  }
  .v15-trust-logos img[alt="PayPal"]{
    max-width:118px !important;
  }
  .v15-trust-col > span{
    margin-top:16px !important;
    font-size:15px !important;
    line-height:1.55 !important;
  }
  #shopify-section-sections--25458834145659__footer .footer .footer__inner{
    padding-top:54px !important;
    padding-bottom:36px !important;
  }
  #shopify-section-sections--25458834145659__footer .footer .footer__item-list{
    gap:36px !important;
  }
}
@media(max-width:430px){
  .v15-trust-inner,
  #shopify-section-sections--25458834145659__footer .footer .container{
    padding-left:28px !important;
    padding-right:28px !important;
  }
  .v15-trust-logos img{
    height:32px !important;
    max-width:86px !important;
    padding-left:8px !important;
    padding-right:8px !important;
  }
  .v15-trust-logos img[alt="PayPal"]{
    max-width:108px !important;
  }
}

/* 0527 site-wide width final: match legacy Shopify container */
:root{
  --lh-legacy-container: min(calc(100vw - 80px), 1520px);
}
@media(min-width:761px){
  #main .hp-wrap,
  #main .lh-circats__wrap,
  #main .hp-sec--best .hp-wrap,
  #main .hp-sec--spaces .hp-wrap,
  #main .hp-sec--reviews .hp-wrap,
  #main .hp-sec--soft .hp-wrap,
  #main .hp-sec--tint .hp-wrap,
  #main .hp-sec > .hp-wrap,
  .v15-trust-inner,
  #shopify-section-sections--25458834145659__footer .footer .container{
    width:var(--lh-legacy-container) !important;
    max-width:var(--lh-legacy-container) !important;
    margin-left:auto !important;
    margin-right:auto !important;
    padding-left:0 !important;
    padding-right:0 !important;
    box-sizing:border-box !important;
  }
  #main .hp-sec--best .hp-bv-wrap,
  #main .hp-sec--best .hp-track{
    width:var(--lh-legacy-container) !important;
    max-width:var(--lh-legacy-container) !important;
    margin-left:auto !important;
    margin-right:auto !important;
    padding-left:0 !important;
    padding-right:0 !important;
  }
  #main .hp-sec--best .hp-track{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:24px !important;
    overflow:visible !important;
  }
  #main .hp-sec--best .hp-track > .hp-pcard{
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    height:474px !important;
    min-height:474px !important;
    max-height:474px !important;
  }
  #main .hp-sec--best .hp-track > .hp-pcard:nth-child(n+5){
    display:none !important;
  }
  #main .hp-sec--best .hp-pcard,
  #main .hp-sec--best .hp-pc-media{
    overflow:visible !important;
  }
  #main .hp-sec--best .hp-pcard a{
    display:grid !important;
    grid-template-rows:250px 224px !important;
    height:474px !important;
    min-height:474px !important;
    max-height:474px !important;
    overflow:visible !important;
  }
  #main .hp-sec--best .hp-pc-media{
    height:250px !important;
    min-height:250px !important;
    max-height:250px !important;
    border-radius:8px 8px 0 0 !important;
    overflow:visible !important;
  }
  #main .hp-sec--best .hp-pc-media img{
    height:250px !important;
    min-height:250px !important;
    max-height:250px !important;
    border-radius:8px 8px 0 0 !important;
    object-fit:cover !important;
    object-position:center center !important;
    transform:none !important;
    filter:none !important;
    transition:opacity .22s ease !important;
  }
  #main .hp-sec--best .hp-pcard:hover,
  #main .hp-sec--best .hp-pcard:hover .day,
  #main .hp-sec--best .hp-pcard:hover .night,
  #main .hp-sec--best .hp-pc-media:hover img{
    transform:none !important;
    filter:none !important;
  }
  #main .hp-sec--best .hp-pc-body{
    height:224px !important;
    min-height:224px !important;
    max-height:224px !important;
  }
  #main .hp-sec--best .hp-bdgs{
    top:-12px !important;
    left:0 !important;
    z-index:30 !important;
    pointer-events:none !important;
  }
  #main .hp-sec--best .hp-bdgs .hp-bdg,
  #main .hp-sec--best .hp-bdgs .hp-bdg.hp-bdg--remises{
    height:24px !important;
    line-height:24px !important;
    padding:0 10px !important;
    border-radius:4px 4px 4px 0 !important;
    font-size:11.5px !important;
    font-weight:800 !important;
    background:#df5a34 !important;
    color:#fff !important;
    box-shadow:none !important;
  }
  #shopify-section-sections--25458834145659__footer .footer .footer__inner{
    border-top:0 !important;
  }
  .v15-trust-strip{
    border-bottom:0 !important;
  }
  #shopify-section-sections--25458834145659__footer .footer{
    border-top:0 !important;
  }
  #shopify-section-sections--25458834145659__footer .footer .footer__inner::before{
    content:none !important;
    display:none !important;
  }
}
@media(max-width:760px){
  #main .hp-wrap,
  #main .lh-circats__wrap,
  #main .hp-sec--best .hp-wrap,
  #main .hp-sec--spaces .hp-wrap,
  #main .hp-sec--reviews .hp-wrap,
  #main .hp-sec > .hp-wrap,
  .v15-trust-inner,
  #shopify-section-sections--25458834145659__footer .footer .container{
    width:100% !important;
    max-width:100% !important;
    padding-left:24px !important;
    padding-right:24px !important;
    box-sizing:border-box !important;
  }
  #main .hp-sec--best .hp-bdgs{
    top:-10px !important;
    left:8px !important;
  }
  #main .hp-sec--best .hp-bdgs .hp-bdg,
  #main .hp-sec--best .hp-bdgs .hp-bdg.hp-bdg--remises{
    border-radius:4px 4px 4px 0 !important;
  }
  .v15-trust-strip{
    border-bottom:0 !important;
  }
  #shopify-section-sections--25458834145659__footer .footer{
    border-top:0 !important;
  }
  #shopify-section-sections--25458834145659__footer .footer .footer__inner{
    border-top:0 !important;
  }
}

/* 0528 final — large-screen container, title rhythm, product/scene proportions */
:root{
  --lh-legacy-container: min(calc(100vw - 80px), 1520px) !important;
  --lh-green-0528:#3a9d5f;
}
#main{
  --g:#3a9d5f !important;
  --gd:#2f8450 !important;
  --gl:#3a9d5f !important;
}
#main .hp-btn--primary,
#main .hp-md-tag{
  background:#3a9d5f !important;
}
#main .hp-head h2 em,
#main .lh-circats__head h2 em,
#main .hp-prow-head h2 em,
#main .hp-room-title em,
#main .hp-en-link,
#main .hp-md-link,
#main .hp-post-tag,
#main .hp-post-more{
  color:#3a9d5f !important;
}
#main .hp-head,
#main .lh-circats__head,
#main .hp-prow-head{
  margin-bottom:18px !important;
}
#main .hp-head h2,
#main .lh-circats__head h2,
#main .hp-prow-head h2{
  font-size:28px !important;
  line-height:1.18 !important;
  letter-spacing:-.01em !important;
  margin:0 0 8px !important;
}
#main .hp-head p,
#main .lh-circats__head p,
#main .hp-prow-h-sub{
  font-size:13px !important;
  line-height:1.45 !important;
  color:#7f877f !important;
  margin:0 !important;
}
.lh-marquee{
  padding:12px 0 !important;
}
.lh-marquee__track{
  width:var(--lh-legacy-container) !important;
  max-width:var(--lh-legacy-container) !important;
  margin:0 auto !important;
  display:flex !important;
  justify-content:space-between !important;
  gap:22px !important;
  animation:none !important;
  transform:none !important;
}
.lh-marquee__track .lh-marquee__i[aria-hidden="true"]{
  display:none !important;
}
.lh-marquee__i{
  font-size:12px !important;
  gap:8px !important;
}
.lh-marquee__i svg{
  width:16px !important;
  height:16px !important;
  color:#3a9d5f !important;
}
#main .lh-circats{
  padding:28px 0 22px !important;
}
#main .lh-circats__wrap{
  width:var(--lh-legacy-container) !important;
  max-width:var(--lh-legacy-container) !important;
  padding-left:56px !important;
  padding-right:56px !important;
}
#main .lh-circats__track{
  grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  gap:18px !important;
  padding-top:4px !important;
}
#main .lh-circats__pic{
  max-width:132px !important;
}
#main .lh-circats__lbl{
  margin-top:9px !important;
  font-size:12.5px !important;
  font-weight:500 !important;
}
@media(min-width:761px){
  #main .hp-wrap,
  #main .hp-sec--best .hp-wrap,
  #main .hp-sec--best .hp-bv-wrap,
  #main .hp-sec--best .hp-track,
  #main .hp-sec--spaces .hp-wrap,
  #main .hp-sec--reviews .hp-wrap,
  #main .hp-sec > .hp-wrap,
  .v15-trust-inner,
  #shopify-section-sections--25458834145659__footer .footer .container{
    width:var(--lh-legacy-container) !important;
    max-width:var(--lh-legacy-container) !important;
    padding-left:0 !important;
    padding-right:0 !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
  #main .hp-sec--best{
    padding-top:34px !important;
    padding-bottom:52px !important;
  }
  #main .hp-sec--best .hp-track{
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:26px !important;
    overflow:visible !important;
  }
  #main .hp-sec--best .hp-track > .hp-pcard{
    height:516px !important;
    min-height:516px !important;
    max-height:516px !important;
    border-radius:8px !important;
  }
  #main .hp-sec--best .hp-pcard a{
    display:grid !important;
    grid-template-rows:auto 206px !important;
    height:516px !important;
    min-height:516px !important;
    max-height:516px !important;
    overflow:visible !important;
  }
  #main .hp-sec--best .hp-pc-media{
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    aspect-ratio:9/10 !important;
    border-radius:8px 8px 0 0 !important;
    overflow:visible !important;
  }
  #main .hp-sec--best .hp-pc-media img{
    height:100% !important;
    min-height:0 !important;
    max-height:none !important;
    object-fit:cover !important;
    object-position:center center !important;
    border-radius:8px 8px 0 0 !important;
    transform:none !important;
    filter:none !important;
    transition:opacity .22s ease !important;
  }
  #main .hp-sec--best .hp-pcard:hover,
  #main .hp-sec--best .hp-pcard:hover .day,
  #main .hp-sec--best .hp-pcard:hover .night,
  #main .hp-sec--best .hp-pc-media:hover img{
    transform:none !important;
    filter:none !important;
  }
  #main .hp-sec--best .hp-pc-body{
    height:206px !important;
    min-height:206px !important;
    max-height:206px !important;
    display:grid !important;
    grid-template-rows:30px 42px 38px 23px 1fr 20px !important;
    padding:12px 14px 14px !important;
    gap:0 !important;
    overflow:hidden !important;
  }
  #main .hp-sec--best .hp-pc-name{
    height:36px !important;
    min-height:36px !important;
    max-height:36px !important;
    -webkit-line-clamp:2 !important;
    font-size:13px !important;
    line-height:1.38 !important;
    margin:0 !important;
  }
  #main .hp-sec--best .hp-pc-rate{
    height:20px !important;
    margin:0 !important;
  }
  #main .hp-sec--best .hp-pc-stock{
    align-self:end !important;
  }
  #main .hp-sec--best .hp-bdgs{
    top:-12px !important;
    left:0 !important;
  }
  #main .hp-sec--best .hp-bdgs .hp-bdg,
  #main .hp-sec--best .hp-bdgs .hp-bdg.hp-bdg--remises{
    height:24px !important;
    line-height:24px !important;
    padding:0 10px !important;
    border-radius:4px 4px 4px 0 !important;
    font-size:11px !important;
    background:#df5a34 !important;
  }
  #main .hp-sec--spaces{
    padding-top:48px !important;
    padding-bottom:58px !important;
  }
  #main .hp-space-mosaic{
    width:100% !important;
    display:grid !important;
    grid-template-columns:2fr 1fr 1fr !important;
    grid-auto-rows:auto !important;
    gap:16px !important;
    margin-bottom:34px !important;
  }
  #main .hp-space-mosaic .hp-space-tile{
    min-height:0 !important;
  }
  #main .hp-space-mosaic .hp-space-tile img{
    width:100% !important;
    height:auto !important;
    aspect-ratio:1/1 !important;
    object-fit:cover !important;
    border-radius:8px !important;
  }
  #main .hp-space-mosaic .hp-space-tile--large{
    grid-row:span 2 !important;
  }
  #main .hp-space-mosaic .hp-space-tile--large img{
    height:auto !important;
    aspect-ratio:1/1 !important;
  }
  #main .hp-space-mosaic .hp-space-tile b{
    margin-top:8px !important;
    font-size:12.5px !important;
    font-weight:500 !important;
    line-height:1.2 !important;
  }
  #mini-cart::before{
    left:calc(var(--mini-cart-arrow-x, 280px) - 9px) !important;
    right:auto !important;
  }
}
@media(max-width:760px){
  .lh-marquee__track{
    width:100% !important;
    padding:0 18px !important;
    overflow-x:auto !important;
    justify-content:flex-start !important;
  }
  .lh-marquee__track .lh-marquee__i[aria-hidden="true"]{
    display:none !important;
  }
  #main .hp-head h2,
  #main .lh-circats__head h2,
  #main .hp-prow-head h2,
  #main .hp-room-title{
    font-size:28px !important;
  }
  #main .hp-space-mosaic{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:16px !important;
  }
  #main .hp-space-mosaic .hp-space-tile--large{
    grid-column:1 / -1 !important;
    grid-row:auto !important;
  }
  #main .hp-space-mosaic .hp-space-tile img,
  #main .hp-space-mosaic .hp-space-tile--large img{
    height:auto !important;
    aspect-ratio:1/1 !important;
    object-fit:cover !important;
    border-radius:8px !important;
  }
  #main .hp-sec--best .hp-pc-media{
    aspect-ratio:9/10 !important;
    height:auto !important;
  }
  #main .hp-sec--best .hp-pc-media img{
    height:100% !important;
    transform:none !important;
    filter:none !important;
  }
}

/* 0528 restore — footer keeps original width rhythm */
@media(min-width:761px){
  .v15-trust-inner,
  #shopify-section-sections--25458834145659__footer .footer .container{
    width:min(calc(100vw - 80px),1520px) !important;
    max-width:min(calc(100vw - 80px),1520px) !important;
    margin-left:auto !important;
    margin-right:auto !important;
    padding-left:0 !important;
    padding-right:0 !important;
    box-sizing:border-box !important;
  }
}

/* 0528 restore — par espace must reserve its own height, no overlap with rooms */
@media(min-width:761px){
  #main .hp-sec--spaces{
    overflow:visible !important;
  }
  #main .hp-sec--spaces .hp-wrap{
    overflow:visible !important;
  }
  #main .hp-space-mosaic{
    display:grid !important;
    grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr) !important;
    grid-template-rows:auto auto !important;
    grid-auto-rows:auto !important;
    column-gap:16px !important;
    row-gap:18px !important;
    align-items:start !important;
    margin:0 0 64px !important;
    height:auto !important;
    min-height:0 !important;
    overflow:visible !important;
  }
  #main .hp-space-mosaic .hp-space-tile,
  #main .hp-space-mosaic .hp-space-tile--large{
    position:relative !important;
    display:block !important;
    align-self:start !important;
    height:auto !important;
    min-height:0 !important;
    overflow:visible !important;
    background:transparent !important;
  }
  #main .hp-space-mosaic .hp-space-tile--large{
    grid-row:1 / span 2 !important;
  }
  #main .hp-space-mosaic .hp-space-tile img,
  #main .hp-space-mosaic .hp-space-tile--large img{
    position:static !important;
    display:block !important;
    width:100% !important;
    height:auto !important;
    aspect-ratio:1/1 !important;
    object-fit:cover !important;
    border-radius:8px !important;
  }
  #main .hp-space-mosaic .hp-space-tile b{
    position:static !important;
    display:block !important;
    height:24px !important;
    margin:8px 0 0 !important;
    padding:0 !important;
    color:#17201a !important;
    background:transparent !important;
    font-size:12.5px !important;
    font-weight:500 !important;
    line-height:24px !important;
    text-align:center !important;
  }
  #main .hp-room-title{
    position:relative !important;
    z-index:1 !important;
    clear:both !important;
    margin:0 0 26px !important;
    padding-top:0 !important;
  }
  #main .hp-rooms-wrap{
    position:relative !important;
    z-index:1 !important;
    clear:both !important;
  }
}

/* 0528 refine — tighter category circles and aligned space mosaic */
@media(min-width:761px){
  #main .lh-circats__wrap{
    width:var(--lh-legacy-container) !important;
    max-width:var(--lh-legacy-container) !important;
    padding-left:56px !important;
    padding-right:56px !important;
  }
  #main .lh-circats__track{
    width:min(100%,980px) !important;
    max-width:980px !important;
    margin-left:auto !important;
    margin-right:auto !important;
    grid-template-columns:repeat(5,150px) !important;
    justify-content:space-between !important;
    gap:22px !important;
  }
  #main .lh-circats__pic{
    width:144px !important;
    max-width:144px !important;
  }
  #main .lh-circats__arrow--prev{
    left:calc(50% - 560px) !important;
  }
  #main .lh-circats__arrow--next{
    right:calc(50% - 560px) !important;
  }

  #main .hp-space-mosaic{
    --space-gap:16px;
    display:grid !important;
    grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr) !important;
    grid-template-rows:repeat(2,minmax(0,1fr)) !important;
    gap:var(--space-gap) !important;
    align-items:stretch !important;
    margin:0 0 86px !important;
    aspect-ratio:2 / 1 !important;
    height:auto !important;
    min-height:0 !important;
    overflow:visible !important;
  }
  #main .hp-space-mosaic .hp-space-tile,
  #main .hp-space-mosaic .hp-space-tile--large{
    display:block !important;
    position:relative !important;
    height:100% !important;
    min-height:0 !important;
    overflow:visible !important;
  }
  #main .hp-space-mosaic .hp-space-tile--large{
    grid-row:1 / span 2 !important;
  }
  #main .hp-space-mosaic .hp-space-tile img,
  #main .hp-space-mosaic .hp-space-tile--large img{
    display:block !important;
    width:100% !important;
    height:100% !important;
    min-height:0 !important;
    aspect-ratio:auto !important;
    object-fit:cover !important;
    border-radius:8px !important;
  }
  #main .hp-space-mosaic .hp-space-tile b{
    position:absolute !important;
    left:0 !important;
    right:0 !important;
    bottom:-25px !important;
    height:18px !important;
    margin:0 !important;
    padding:0 !important;
    color:#17201a !important;
    background:transparent !important;
    font-size:12.5px !important;
    font-weight:500 !important;
    line-height:18px !important;
    text-align:center !important;
  }
  #main .hp-room-title{
    margin-top:0 !important;
    margin-bottom:28px !important;
  }
  #main .hp-rooms-wrap{
    margin-top:0 !important;
  }
}
@media(min-width:761px) and (max-width:1180px){
  #main .lh-circats__track{
    width:min(100%,860px) !important;
    grid-template-columns:repeat(5,132px) !important;
    gap:16px !important;
  }
  #main .lh-circats__pic{
    width:128px !important;
    max-width:128px !important;
  }
  #main .lh-circats__arrow--prev{left:10px !important;}
  #main .lh-circats__arrow--next{right:10px !important;}
}

/* 0528 final pass — product text rhythm and scene labels must breathe */
@media(min-width:761px){
  #main .hp-sec--best .hp-track > .hp-pcard{
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
  }
  #main .hp-sec--best .hp-pcard a{
    display:flex !important;
    flex-direction:column !important;
    height:100% !important;
    min-height:0 !important;
    max-height:none !important;
    overflow:visible !important;
  }
  #main .hp-sec--best .hp-pc-body{
    display:flex !important;
    flex-direction:column !important;
    height:auto !important;
    min-height:174px !important;
    max-height:none !important;
    padding:12px 14px 15px !important;
    gap:7px !important;
    overflow:hidden !important;
  }
  #main .hp-sec--best .hp-pc-pvc{
    margin:0 !important;
    align-self:flex-start !important;
    flex:0 0 auto !important;
  }
  #main .hp-sec--best .hp-pc-name{
    height:auto !important;
    min-height:36px !important;
    max-height:36px !important;
    margin:0 !important;
    padding:0 !important;
    font-size:13px !important;
    font-weight:700 !important;
    line-height:18px !important;
    -webkit-line-clamp:2 !important;
  }
  #main .hp-sec--best .hp-pc-rate{
    height:18px !important;
    min-height:18px !important;
    margin:0 !important;
    padding:0 !important;
    gap:6px !important;
    line-height:18px !important;
  }
  #main .hp-sec--best .hp-pc-price{
    height:auto !important;
    min-height:39px !important;
    margin:0 !important;
    padding:0 !important;
    gap:1px !important;
    flex:0 0 auto !important;
  }
  #main .hp-sec--best .hp-pc-price b{
    line-height:22px !important;
  }
  #main .hp-sec--best .hp-pc-oldprice{
    line-height:16px !important;
  }
  #main .hp-sec--best .hp-pc-stock{
    height:20px !important;
    min-height:20px !important;
    margin:0 !important;
    padding:0 !important;
    align-self:flex-start !important;
    line-height:20px !important;
  }

  #main .hp-space-mosaic{
    display:grid !important;
    grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr) !important;
    grid-template-rows:repeat(2,clamp(250px,18vw,360px)) !important;
    column-gap:16px !important;
    row-gap:20px !important;
    align-items:stretch !important;
    aspect-ratio:auto !important;
    height:auto !important;
    margin:0 0 58px !important;
    overflow:visible !important;
  }
  #main .hp-space-mosaic .hp-space-tile,
  #main .hp-space-mosaic .hp-space-tile--large{
    display:grid !important;
    grid-template-rows:minmax(0,1fr) 20px !important;
    gap:6px !important;
    height:100% !important;
    min-height:0 !important;
    overflow:visible !important;
    background:transparent !important;
  }
  #main .hp-space-mosaic .hp-space-tile--large{
    grid-row:1 / span 2 !important;
  }
  #main .hp-space-mosaic .hp-space-tile img,
  #main .hp-space-mosaic .hp-space-tile--large img{
    position:static !important;
    display:block !important;
    width:100% !important;
    height:100% !important;
    min-height:0 !important;
    aspect-ratio:auto !important;
    object-fit:cover !important;
    border-radius:8px !important;
  }
  #main .hp-space-mosaic .hp-space-tile b{
    position:static !important;
    display:block !important;
    height:20px !important;
    margin:0 !important;
    padding:0 !important;
    color:#17201a !important;
    background:transparent !important;
    font-size:12.5px !important;
    font-weight:500 !important;
    line-height:20px !important;
    text-align:center !important;
  }
}
@media(max-width:760px){
  #main .hp-space-mosaic .hp-space-tile,
  #main .hp-space-mosaic .hp-space-tile--large{
    display:grid !important;
    grid-template-rows:minmax(0,1fr) 20px !important;
    gap:6px !important;
  }
  #main .hp-space-mosaic .hp-space-tile b{
    position:static !important;
    height:20px !important;
    margin:0 !important;
    line-height:20px !important;
  }
}

/* 0528 final pass — category circles stay grouped on wide screens */
@media(min-width:761px){
  #main .lh-circats__wrap{
    width:var(--lh-legacy-container) !important;
    max-width:var(--lh-legacy-container) !important;
    padding-left:0 !important;
    padding-right:0 !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
  #main .lh-circats__track{
    width:100% !important;
    max-width:100% !important;
    margin-left:auto !important;
    margin-right:auto !important;
    display:flex !important;
    grid-template-columns:none !important;
    justify-content:flex-start !important;
    gap:24px !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    padding:4px 0 12px !important;
    scroll-padding-left:0 !important;
  }
  #main .lh-circats__i,
  #main .lh-circats__i:nth-child(n+6){
    display:block !important;
    flex:0 0 calc((100% - 120px) / 6) !important;
    width:calc((100% - 120px) / 6) !important;
    max-width:calc((100% - 120px) / 6) !important;
    min-width:0 !important;
  }
  #main .lh-circats__pic{
    width:min(100%,184px) !important;
    max-width:184px !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
  #main .lh-circats__lbl{
    margin-top:9px !important;
    font-size:13px !important;
    line-height:1.25 !important;
  }
  #main .lh-circats__arrow--prev{
    left:-56px !important;
  }
  #main .lh-circats__arrow--next{
    right:-56px !important;
  }
}
@media(min-width:761px) and (max-width:1180px){
  #main .lh-circats__track{
    width:100% !important;
    max-width:100% !important;
    gap:18px !important;
  }
  #main .lh-circats__i,
  #main .lh-circats__i:nth-child(n+6){
    flex:0 0 calc((100% - 72px) / 5) !important;
    width:calc((100% - 72px) / 5) !important;
    max-width:calc((100% - 72px) / 5) !important;
    min-width:0 !important;
  }
  #main .lh-circats__pic{
    width:min(100%,154px) !important;
    max-width:154px !important;
  }
  #main .lh-circats__arrow--prev{left:10px !important;}
  #main .lh-circats__arrow--next{right:10px !important;}
}

/* ============================================================
   99. EOF 最终锁定层

   说明：
   1. 这是统一 CSS 的真正最后一层，只放全站最容易被覆盖的兜底规则。
   2. 禁止再在 HTML 或 JS 中追加视觉样式；需要调样式就改这里或前面的对应模块。
   3. 当前锁定：公告栏单行、Promos 白字、一级导航下拉、热卖卡片等高、footer 白字。
   ============================================================ */

/* 顶部公告栏：保持单行居中，文字过长时省略，不允许换行。 */
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
  display:grid !important;
  grid-template-columns:44px minmax(0,1fr) 44px !important;
  align-items:center !important;
  min-height:34px !important;
}
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__list{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  min-width:0 !important;
  overflow:hidden !important;
}
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message,
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message p,
.announcement-bar__message,
.announcement-bar__message p{
  display:block !important;
  max-width:100% !important;
  margin:0 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  line-height:1.2 !important;
}

/* Promos 百分号：固定红色圆点和白色百分号。 */
.header__inline-navigation .header__linklist-link .promos-pct-dot,
.header__linklist-link .promos-pct-dot,
.promos-pct-dot{
  display:inline-grid !important;
  place-items:center !important;
  flex:0 0 22px !important;
  width:22px !important;
  height:22px !important;
  min-width:22px !important;
  min-height:22px !important;
  border:0 !important;
  border-radius:50% !important;
  background:#e00023 !important;
  color:#fff !important;
  font-size:12px !important;
  font-weight:800 !important;
  line-height:1 !important;
  text-align:center !important;
}

/* 一级导航：hover 或键盘 focus 时显示二级导航。 */
.header__linklist-item.has-dropdown > .mega-menu[hidden]{
  display:block !important;
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
  transform:translateY(8px) !important;
}
.header__linklist-item.has-dropdown:hover > .mega-menu[hidden],
.header__linklist-item.has-dropdown:focus-within > .mega-menu[hidden],
.header__linklist-item.has-dropdown:hover > .mega-menu,
.header__linklist-item.has-dropdown:focus-within > .mega-menu{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:auto !important;
  transform:translateY(0) !important;
}

/* 首页热卖：桌面端显示 4 个产品，卡片、图片、内容高度全部一致。 */
@media (min-width:761px){
  #main .hp-sec--best .hp-track{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    column-gap:34px !important;
    row-gap:0 !important;
    align-items:stretch !important;
    overflow:visible !important;
  }
  #main .hp-sec--best .hp-track > article.hp-pcard{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    height:510px !important;
    min-height:510px !important;
    max-height:510px !important;
    overflow:visible !important;
    border-radius:8px !important;
  }
  #main .hp-sec--best .hp-track > article.hp-pcard:nth-child(n+5){
    display:none !important;
  }
  #main .hp-sec--best .hp-track > article.hp-pcard > a{
    display:grid !important;
    grid-template-rows:288px 220px !important;
    height:510px !important;
    min-height:510px !important;
    max-height:510px !important;
    overflow:visible !important;
  }
  #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media{
    position:relative !important;
    height:288px !important;
    min-height:288px !important;
    max-height:288px !important;
    aspect-ratio:auto !important;
    overflow:visible !important;
    border-radius:8px 8px 0 0 !important;
    background:#f4f5f4 !important;
  }
  #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media img,
  #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media .day,
  #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media .night{
    position:absolute !important;
    inset:0 !important;
    width:100% !important;
    height:100% !important;
    min-height:100% !important;
    max-height:100% !important;
    object-fit:cover !important;
    border-radius:8px 8px 0 0 !important;
    transform:none !important;
  }
  #main .hp-sec--best .hp-track > article.hp-pcard:hover,
  #main .hp-sec--best .hp-track > article.hp-pcard:hover img,
  #main .hp-sec--best .hp-track > article.hp-pcard:hover .day,
  #main .hp-sec--best .hp-track > article.hp-pcard:hover .night{
    transform:none !important;
  }
  #main .hp-sec--best .hp-track > article.hp-pcard:hover img,
  #main .hp-sec--best .hp-track > article.hp-pcard:hover .day,
  #main .hp-sec--best .hp-track > article.hp-pcard:hover .night{
    filter:brightness(.72) !important;
  }
  #main .hp-sec--best .hp-track > article.hp-pcard .hp-bdgs{
    position:absolute !important;
    left:0 !important;
    top:-16px !important;
    z-index:5 !important;
  }
  #main .hp-sec--best .hp-track > article.hp-pcard .hp-bdgs .hp-bdg,
  #main .hp-sec--best .hp-track > article.hp-pcard .hp-bdgs .hp-bdg.hp-bdg--remises{
    height:32px !important;
    padding:0 14px !important;
    border-radius:6px 6px 6px 0 !important;
    font-size:13px !important;
    font-weight:800 !important;
    line-height:32px !important;
    white-space:nowrap !important;
  }
  #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-body{
    display:flex !important;
    flex-direction:column !important;
    height:220px !important;
    min-height:220px !important;
    max-height:220px !important;
    padding:18px 18px 16px !important;
    gap:7px !important;
    overflow:hidden !important;
  }
  #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-name{
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    min-height:36px !important;
    max-height:36px !important;
    overflow:hidden !important;
    font-size:14px !important;
    line-height:18px !important;
  }
  #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-rate{
    min-height:18px !important;
    max-height:18px !important;
    line-height:18px !important;
  }
  #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-price{
    min-height:39px !important;
    max-height:39px !important;
    margin:0 !important;
    padding:0 !important;
  }
  #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-stock{
    min-height:20px !important;
    max-height:20px !important;
    margin-top:auto !important;
    line-height:20px !important;
  }
}

/* Footer：绿色区域所有标题、正文、链接都使用白色系。 */
.site-footer,
.footer,
.lh-footer,
.footer-trust,
.footer__wrapper,
.v15-trust-strip,
#shopify-section-sections--25458834145659__footer .footer,
.shopify-section--footer .footer,
footer.footer{
  background:#276b42 !important;
  color:rgba(255,255,255,.82) !important;
}
.site-footer *,
.footer *,
.lh-footer *,
.footer-trust *,
.footer__wrapper *,
.v15-trust-strip *,
#shopify-section-sections--25458834145659__footer .footer *,
.shopify-section--footer .footer *,
footer.footer *{
  color:rgba(255,255,255,.82) !important;
}
.site-footer h1,.site-footer h2,.site-footer h3,.site-footer h4,.site-footer strong,.site-footer b,
.footer h1,.footer h2,.footer h3,.footer h4,.footer strong,.footer b,
.lh-footer h1,.lh-footer h2,.lh-footer h3,.lh-footer h4,.lh-footer strong,.lh-footer b,
.footer-trust h1,.footer-trust h2,.footer-trust h3,.footer-trust h4,.footer-trust strong,.footer-trust b,
.footer__wrapper h1,.footer__wrapper h2,.footer__wrapper h3,.footer__wrapper h4,.footer__wrapper strong,.footer__wrapper b,
.v15-trust-strip h1,.v15-trust-strip h2,.v15-trust-strip h3,.v15-trust-strip h4,.v15-trust-strip strong,.v15-trust-strip b,
#shopify-section-sections--25458834145659__footer .footer .heading,
#shopify-section-sections--25458834145659__footer .footer .footer__item-title,
#shopify-section-sections--25458834145659__footer .footer strong,
#shopify-section-sections--25458834145659__footer .footer b,
.shopify-section--footer .footer .heading,
.shopify-section--footer .footer .footer__item-title,
.shopify-section--footer .footer strong,
.shopify-section--footer .footer b,
footer.footer .heading,
footer.footer .footer__item-title,
footer.footer strong,
footer.footer b{
  color:#fff !important;
}

/* 100. Demo 页面入口样式
   说明：demo.html 是给内部核对所有模板页面使用的入口页。
   样式也收口在统一 CSS 内，页面本身不写 <style>，避免再次产生多处 CSS 覆盖。 */
.demo-page{
  margin:0;
  min-height:100vh;
  background:#f4f8f5;
  color:#17211b;
}
.demo-shell{
  width:min(1180px,calc(100% - 48px));
  margin:0 auto;
  padding:54px 0 72px;
}
.demo-hero{
  padding:34px 38px;
  border:1px solid rgba(23,33,27,.08);
  border-radius:14px;
  background:#fff;
  box-shadow:0 18px 45px rgba(20,52,34,.08);
}
.demo-logo{
  display:inline-flex;
  align-items:center;
  margin-bottom:24px;
}
.demo-logo img{
  display:block;
  width:170px;
  height:auto;
}
.demo-eyebrow,
.demo-kicker{
  margin:0 0 8px;
  color:#2f7249;
  font-size:12px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.demo-hero h1{
  margin:0;
  color:#17211b;
  font-size:clamp(38px,4vw,64px);
  line-height:1.02;
  letter-spacing:0;
}
.demo-intro{
  max-width:680px;
  margin:18px 0 0;
  color:#637067;
  font-size:18px;
  line-height:1.55;
}
.demo-group{
  margin-top:34px;
}
.demo-group-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:24px;
  margin-bottom:16px;
}
.demo-group h2{
  margin:0;
  color:#17211b;
  font-size:26px;
  line-height:1.2;
  letter-spacing:0;
}
.demo-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}
.demo-card{
  display:flex;
  min-height:116px;
  flex-direction:column;
  justify-content:space-between;
  gap:18px;
  padding:22px;
  border:1px solid rgba(23,33,27,.1);
  border-radius:12px;
  background:#fff;
  color:#17211b;
  text-decoration:none;
  box-shadow:0 12px 34px rgba(20,52,34,.06);
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.demo-card:hover{
  transform:translateY(-2px);
  border-color:rgba(47,114,73,.38);
  box-shadow:0 18px 42px rgba(20,52,34,.1);
}
.demo-card span{
  color:#17211b;
  font-size:20px;
  font-weight:800;
  line-height:1.2;
}
.demo-card small{
  color:#6c756f;
  font-size:14px;
  line-height:1.45;
}
@media (max-width:900px){
  .demo-shell{
    width:min(100% - 28px,760px);
    padding:28px 0 44px;
  }
  .demo-hero{
    padding:26px 22px;
    border-radius:12px;
  }
  .demo-grid{
    grid-template-columns:1fr;
  }
  .demo-group-head{
    display:block;
  }
  .demo-logo img{
    width:140px;
  }
}

/* 101. 热卖卡片优先级最终补丁
   说明：前面旧规则使用 body #main 且带 !important，本补丁用同等/更高优先级放在 EOF，确保最终尺寸生效。 */
@media (min-width:761px){
  body #main .hp-sec--best .hp-track{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    column-gap:34px !important;
    row-gap:0 !important;
    align-items:stretch !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard{
    display:block !important;
    box-sizing:border-box !important;
    width:100% !important;
    min-width:0 !important;
    height:510px !important;
    min-height:510px !important;
    max-height:510px !important;
    overflow:visible !important;
    border-radius:8px !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard:nth-child(n+5){
    display:none !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard > a{
    display:grid !important;
    grid-template-rows:288px 220px !important;
    box-sizing:border-box !important;
    height:510px !important;
    min-height:510px !important;
    max-height:510px !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media{
    position:relative !important;
    display:block !important;
    box-sizing:border-box !important;
    width:100% !important;
    height:288px !important;
    min-height:288px !important;
    max-height:288px !important;
    aspect-ratio:auto !important;
    overflow:visible !important;
    border-radius:8px 8px 0 0 !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media img,
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media .day,
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media .night{
    position:absolute !important;
    inset:0 !important;
    width:100% !important;
    height:100% !important;
    min-height:100% !important;
    max-height:100% !important;
    object-fit:cover !important;
    border-radius:8px 8px 0 0 !important;
    transform:none !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-body{
    display:flex !important;
    flex-direction:column !important;
    box-sizing:border-box !important;
    height:220px !important;
    min-height:220px !important;
    max-height:220px !important;
    padding:18px 18px 16px !important;
    gap:7px !important;
    overflow:hidden !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-name{
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    min-height:36px !important;
    max-height:36px !important;
    overflow:hidden !important;
    font-size:14px !important;
    line-height:18px !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-bdgs{
    position:absolute !important;
    left:0 !important;
    top:-16px !important;
    z-index:5 !important;
  }
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-bdgs .hp-bdg,
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-bdgs .hp-bdg.hp-bdg--remises{
    height:32px !important;
    padding:0 14px !important;
    border-radius:6px 6px 6px 0 !important;
    font-size:13px !important;
    line-height:32px !important;
    white-space:nowrap !important;
  }
}

/* 103. 全站头部真正 EOF 锁定
   说明：
   - 本段必须位于文件最后，专门压住前面合并进来的 theme/site/final 旧规则。
   - 解决移动端公告文字被轮播位移裁掉、右侧出现邮件+两个搜索+账户+购物车的问题。
   - 移动端最终只保留：左侧汉堡、居中 logo、右侧一个搜索和购物车。 */
@media (max-width:999px){
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
    display:flex !important;
    grid-template-columns:none !important;
    align-items:center !important;
    justify-content:center !important;
    min-height:44px !important;
    height:44px !important;
    padding:0 14px !important;
    overflow:hidden !important;
  }
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar > .tap-area,
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar > button[data-action]{
    display:none !important;
  }
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__list{
    display:block !important;
    flex:1 1 auto !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    height:44px !important;
    overflow:hidden !important;
    text-align:center !important;
  }
  #shopify-section-sections--25458834178427__announcement-bar announcement-bar-item:not([hidden]),
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__item:not([hidden]){
    display:block !important;
    position:static !important;
    transform:none !important;
    translate:none !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    height:44px !important;
    overflow:hidden !important;
  }
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message,
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message p{
    display:block !important;
    position:static !important;
    transform:none !important;
    translate:none !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    height:44px !important;
    margin:0 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    color:#fff !important;
    text-align:center !important;
    font-size:12px !important;
    font-weight:800 !important;
    line-height:44px !important;
  }

  #shopify-section-sections--25458834178427__header .header__wrapper{
    display:grid !important;
    grid-template-columns:44px minmax(0,1fr) auto !important;
    align-items:center !important;
    column-gap:10px !important;
    min-height:72px !important;
    padding:0 !important;
  }
  #shopify-section-sections--25458834178427__header .header__inline-navigation{
    grid-column:1 !important;
    display:flex !important;
    justify-content:flex-start !important;
  }
  #shopify-section-sections--25458834178427__header .header__logo{
    grid-column:2 !important;
    justify-self:center !important;
  }
  #shopify-section-sections--25458834178427__header .header__secondary-links{
    grid-column:3 !important;
    display:flex !important;
    justify-self:end !important;
  }
  #shopify-section-sections--25458834178427__header .header__icon-list{
    display:flex !important;
    align-items:center !important;
    gap:14px !important;
  }
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper{
    display:none !important;
  }
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper.hidden-desk,
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper[aria-controls="mini-cart"]{
    display:inline-flex !important;
  }
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper.hidden-pocket,
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper.hidden-lap,
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper.hidden-phone,
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper[aria-controls="newsletter-popup"],
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper[aria-label="Compte"]{
    display:none !important;
  }
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper svg{
    width:24px !important;
    height:24px !important;
  }
}

@media (min-width:1000px){
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper.hidden-desk{
    display:none !important;
  }
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper.hidden-pocket.hidden-lap,
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper.hidden-phone,
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper[aria-controls="mini-cart"]{
    display:inline-flex !important;
  }
}

/* ============================================================
   106. 2026-06-22 全站最终审计修复层

   重要说明：
   - 这一段必须保留在统一 CSS 文件最后，专门压住历史合并进来的旧规则。
   - 用户要求“所有页面 CSS 收口到一个 CSS，并有中文备注”，所以这里按需求点逐条备注。
   - 如果后续还要调头部、footer、首页分类、热卖卡，请优先改这一段，避免再产生多处覆盖。
   ============================================================ */

/* 106-1 顶部公告栏：桌面端必须单行完整显示，不能像截图那样换成两行。 */
#shopify-section-sections--25458834178427__announcement-bar,
#shopify-section-sections--25458834178427__announcement-bar section,
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
  background:#282828 !important;
}
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
  display:grid !important;
  grid-template-columns:56px minmax(0,1fr) 56px !important;
  align-items:center !important;
  width:100% !important;
  min-height:40px !important;
  height:40px !important;
  padding:0 28px !important;
  overflow:hidden !important;
}
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__list,
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__item,
#shopify-section-sections--25458834178427__announcement-bar announcement-bar-item:not([hidden]){
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  min-width:0 !important;
  max-width:100% !important;
  height:40px !important;
  overflow:hidden !important;
}
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message,
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message p{
  display:block !important;
  width:auto !important;
  max-width:100% !important;
  height:40px !important;
  margin:0 !important;
  color:#fff !important;
  font-size:13px !important;
  font-weight:800 !important;
  line-height:40px !important;
  letter-spacing:0 !important;
  text-align:center !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}

/* 106-2 Promos 百分号：红圆底必须是白色百分号，不能出现红底黑字。 */
.header__linklist-link .promos-pct-dot,
.promos-pct-dot{
  display:inline-grid !important;
  place-items:center !important;
  width:22px !important;
  height:22px !important;
  min-width:22px !important;
  min-height:22px !important;
  margin-left:7px !important;
  border:0 !important;
  border-radius:999px !important;
  background:#df1f2d !important;
  color:#fff !important;
  font-size:12px !important;
  font-weight:900 !important;
  line-height:1 !important;
  text-align:center !important;
}

/* 106-3 一级导航 hover：鼠标放上去必须弹出二级导航；hidden 属性由本段显式覆盖。 */
@media (min-width:1000px){
  .header__linklist-item.has-dropdown{
    position:relative !important;
  }
  .header__linklist-item.has-dropdown > .mega-menu,
  .header__linklist-item.has-dropdown > .nav-dropdown{
    display:block !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
  }
  .header__linklist-item.has-dropdown > .mega-menu{
    position:fixed !important;
    top:calc(var(--announcement-bar-height,40px) + 80px) !important;
    left:0 !important;
    right:0 !important;
    width:100vw !important;
    max-width:none !important;
    transform:none !important;
    z-index:80 !important;
  }
  .header__linklist-item.has-dropdown:hover > .mega-menu,
  .header__linklist-item.has-dropdown:focus-within > .mega-menu,
  .header__linklist-item.has-dropdown:hover > .nav-dropdown,
  .header__linklist-item.has-dropdown:focus-within > .nav-dropdown{
    display:block !important;
    visibility:visible !important;
    opacity:1 !important;
    pointer-events:auto !important;
  }
}

/* 106-4 移动端头部：只保留一个搜索图标，去掉邮件、重复搜索和账户；logo 居中不挤压。 */
@media (max-width:999px){
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
    grid-template-columns:1fr !important;
    height:44px !important;
    min-height:44px !important;
    padding:0 20px !important;
  }
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar > button,
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar > .tap-area{
    display:none !important;
  }
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__list,
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__item,
  #shopify-section-sections--25458834178427__announcement-bar announcement-bar-item:not([hidden]),
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message,
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message p{
    height:44px !important;
    line-height:44px !important;
  }
  #shopify-section-sections--25458834178427__header .header__wrapper{
    display:grid !important;
    grid-template-columns:44px minmax(0,1fr) auto !important;
    gap:10px !important;
    align-items:center !important;
    min-height:72px !important;
  }
  #shopify-section-sections--25458834178427__header .header__inline-navigation{
    grid-column:1 !important;
  }
  #shopify-section-sections--25458834178427__header .header__logo{
    grid-column:2 !important;
    justify-self:center !important;
  }
  #shopify-section-sections--25458834178427__header .header__secondary-links{
    grid-column:3 !important;
    justify-self:end !important;
  }
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-list{
    display:flex !important;
    align-items:center !important;
    gap:15px !important;
  }
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper{
    display:none !important;
  }
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper.hidden-desk[aria-label="Recherche"],
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper[aria-controls="mini-cart"]{
    display:inline-flex !important;
  }
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper.hidden-pocket,
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper.hidden-lap,
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper.hidden-phone,
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper[aria-controls="newsletter-popup"],
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper[aria-label="Compte"]{
    display:none !important;
  }
}

/* 106-5 首页分类圆圈：容器宽度与下方模块一致，默认显示 6 个，圆圈更大且更紧凑。 */
@media (min-width:1000px){
  #main .lh-circats__wrap{
    width:min(1520px,calc(100% - 96px)) !important;
    margin:0 auto !important;
    padding:52px 0 56px !important;
  }
  #main .lh-circats__track{
    display:grid !important;
    grid-template-columns:repeat(6,minmax(0,1fr)) !important;
    gap:28px !important;
    align-items:start !important;
    overflow:visible !important;
  }
  #main .lh-circats__i{
    display:grid !important;
    justify-items:center !important;
    gap:12px !important;
    min-width:0 !important;
    text-align:center !important;
  }
  #main .lh-circats__i:nth-child(n+7){
    display:none !important;
  }
  #main .lh-circats__pic{
    width:168px !important;
    height:168px !important;
    border-radius:50% !important;
  }
  #main .lh-circats__pic img{
    width:100% !important;
    height:100% !important;
    object-fit:contain !important;
  }
  #main .lh-circats__lbl{
    display:block !important;
    max-width:180px !important;
    color:#202720 !important;
    font-size:15px !important;
    font-weight:700 !important;
    line-height:1.25 !important;
  }
}

/* 106-6 首页热卖产品：4 个卡片一行，图片/内容/整卡等高，名称两行省略，角标与图片左边对齐。 */
@media (min-width:761px){
  body #main .hp-sec--best .hp-wrap{
    width:min(1520px,calc(100% - 96px)) !important;
    margin:0 auto !important;
  }
  body #main .hp-sec--best .hp-track{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:34px !important;
    align-items:stretch !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-track > .hp-pcard,
  body #main .hp-sec--best .hp-track > article.hp-pcard{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    height:584px !important;
    min-height:584px !important;
    max-height:584px !important;
    border-radius:8px !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-track > .hp-pcard:nth-child(n+5){
    display:none !important;
  }
  body #main .hp-sec--best .hp-track > .hp-pcard > a{
    display:grid !important;
    grid-template-rows:330px 254px !important;
    height:584px !important;
    min-height:584px !important;
    max-height:584px !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-pc-media{
    position:relative !important;
    width:100% !important;
    height:330px !important;
    min-height:330px !important;
    max-height:330px !important;
    aspect-ratio:auto !important;
    overflow:visible !important;
    border-radius:8px 8px 0 0 !important;
    background:#f5f6f4 !important;
  }
  body #main .hp-sec--best .hp-pc-media img,
  body #main .hp-sec--best .hp-pc-media .day,
  body #main .hp-sec--best .hp-pc-media .night{
    position:absolute !important;
    inset:0 !important;
    display:block !important;
    width:100% !important;
    height:100% !important;
    min-height:100% !important;
    max-height:100% !important;
    object-fit:cover !important;
    border-radius:8px 8px 0 0 !important;
    transform:none !important;
    filter:none !important;
  }
  body #main .hp-sec--best .hp-pcard:hover .hp-pc-media img,
  body #main .hp-sec--best .hp-pcard:hover .hp-pc-media .day,
  body #main .hp-sec--best .hp-pcard:hover .hp-pc-media .night{
    transform:none !important;
    filter:brightness(.72) !important;
  }
  body #main .hp-sec--best .hp-bdgs{
    position:absolute !important;
    left:0 !important;
    top:-16px !important;
    z-index:5 !important;
    display:flex !important;
    align-items:flex-start !important;
  }
  body #main .hp-sec--best .hp-bdgs .hp-bdg,
  body #main .hp-sec--best .hp-bdgs .hp-bdg.hp-bdg--remises{
    height:32px !important;
    padding:0 13px !important;
    border-radius:5px 5px 5px 0 !important;
    background:#d95f39 !important;
    color:#fff !important;
    font-size:13px !important;
    font-weight:800 !important;
    line-height:32px !important;
    white-space:nowrap !important;
  }
  body #main .hp-sec--best .hp-pc-body{
    display:grid !important;
    grid-template-rows:34px 48px 22px 54px 22px !important;
    gap:8px !important;
    height:254px !important;
    min-height:254px !important;
    max-height:254px !important;
    padding:20px 18px 18px !important;
    overflow:hidden !important;
  }
  body #main .hp-sec--best .hp-pc-name{
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    min-height:44px !important;
    max-height:44px !important;
    overflow:hidden !important;
    color:#17211b !important;
    font-size:16px !important;
    font-weight:800 !important;
    line-height:22px !important;
  }
  body #main .hp-sec--best .hp-pc-rate,
  body #main .hp-sec--best .hp-pc-price,
  body #main .hp-sec--best .hp-pc-stock{
    margin:0 !important;
    overflow:hidden !important;
  }
}

/* 106-7 Footer：绿色 footer 内所有文本都强制为白色系，解决服务器截图里上半段黑字问题。 */
.shopify-section-group-footer-group,
.shopify-section-group-footer-group *,
.shopify-section--footer,
.shopify-section--footer *,
.footer,
.footer *,
footer,
footer *,
.v15-trust-strip,
.v15-trust-strip *,
.text-with-icons,
.text-with-icons *{
  color:rgba(255,255,255,.84) !important;
}
.shopify-section-group-footer-group h1,
.shopify-section-group-footer-group h2,
.shopify-section-group-footer-group h3,
.shopify-section-group-footer-group h4,
.shopify-section-group-footer-group b,
.shopify-section-group-footer-group strong,
.shopify-section--footer h1,
.shopify-section--footer h2,
.shopify-section--footer h3,
.shopify-section--footer h4,
.shopify-section--footer b,
.shopify-section--footer strong,
.footer h1,
.footer h2,
.footer h3,
.footer h4,
.footer b,
.footer strong,
footer h1,
footer h2,
footer h3,
footer h4,
footer b,
footer strong,
.text-with-icons h1,
.text-with-icons h2,
.text-with-icons h3,
.text-with-icons h4,
.text-with-icons b,
.text-with-icons strong{
  color:#fff !important;
}
.shopify-section-group-footer-group,
.shopify-section--footer,
.footer,
footer,
.v15-trust-strip,
.text-with-icons{
  background:#276b42 !important;
}

/* 106-8 移动端热卖卡：横向滑动时卡片宽度固定，不再互相挤压。 */
@media (max-width:760px){
  body #main .hp-sec--best .hp-track{
    display:flex !important;
    gap:16px !important;
    overflow-x:auto !important;
    scroll-snap-type:x mandatory !important;
    padding:18px 24px 8px !important;
  }
  body #main .hp-sec--best .hp-track > .hp-pcard{
    flex:0 0 280px !important;
    width:280px !important;
    min-width:280px !important;
    max-width:280px !important;
    scroll-snap-align:start !important;
  }
  body #main .hp-sec--best .hp-pc-media{
    height:260px !important;
    min-height:260px !important;
    max-height:260px !important;
  }
}

/* ============================================================
   107. 首页热卖区宽度与卡片尺寸二次锁定

   说明：
   - 旧规则里存在 max-width:1120px 的限制，导致 4 个产品被压窄。
   - 用户要求“每个 section 宽度与老官网一致”“4 个产品排好且图片高度宽度一致”。
   - 本段使用与旧规则同级/更高优先级选择器，并同时设置 width 与 max-width。
   ============================================================ */
@media (min-width:761px){
  body #main section.hp-sec.hp-sec--best > div.hp-wrap,
  body #main .hp-sec--best .hp-wrap{
    width:min(1520px,calc(100% - 96px)) !important;
    max-width:1520px !important;
    min-width:0 !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
  body #main section.hp-sec.hp-sec--best .hp-bv-wrap{
    width:100% !important;
    max-width:1520px !important;
    margin-left:auto !important;
    margin-right:auto !important;
    overflow:visible !important;
  }
  body #main section.hp-sec.hp-sec--best .hp-track,
  body #main .hp-sec--best .hp-track{
    width:100% !important;
    max-width:1520px !important;
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    column-gap:34px !important;
    row-gap:0 !important;
    align-items:stretch !important;
    overflow:visible !important;
  }
  body #main section.hp-sec.hp-sec--best .hp-track > article.hp-pcard,
  body #main .hp-sec--best .hp-track > article.hp-pcard{
    width:100% !important;
    min-width:0 !important;
    height:584px !important;
    min-height:584px !important;
    max-height:584px !important;
    overflow:visible !important;
    border-radius:8px !important;
  }
  body #main section.hp-sec.hp-sec--best .hp-track > article.hp-pcard:nth-child(n+5),
  body #main .hp-sec--best .hp-track > article.hp-pcard:nth-child(n+5){
    display:none !important;
  }
  body #main section.hp-sec.hp-sec--best .hp-track > article.hp-pcard > a,
  body #main .hp-sec--best .hp-track > article.hp-pcard > a{
    display:grid !important;
    grid-template-rows:330px 254px !important;
    height:584px !important;
    min-height:584px !important;
    max-height:584px !important;
    overflow:visible !important;
  }
  body #main section.hp-sec.hp-sec--best .hp-track > article.hp-pcard .hp-pc-media,
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media{
    position:relative !important;
    width:100% !important;
    height:330px !important;
    min-height:330px !important;
    max-height:330px !important;
    overflow:visible !important;
    border-radius:8px 8px 0 0 !important;
  }
  body #main section.hp-sec.hp-sec--best .hp-track > article.hp-pcard .hp-pc-media img,
  body #main section.hp-sec.hp-sec--best .hp-track > article.hp-pcard .hp-pc-media .day,
  body #main section.hp-sec.hp-sec--best .hp-track > article.hp-pcard .hp-pc-media .night,
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media img,
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media .day,
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media .night{
    position:absolute !important;
    inset:0 !important;
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    border-radius:8px 8px 0 0 !important;
    transform:none !important;
  }
  body #main section.hp-sec.hp-sec--best .hp-track > article.hp-pcard .hp-pc-body,
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-body{
    display:grid !important;
    grid-template-rows:34px 48px 22px 54px 22px !important;
    gap:8px !important;
    height:254px !important;
    min-height:254px !important;
    max-height:254px !important;
    padding:20px 18px 18px !important;
    overflow:hidden !important;
  }
}

/* 107-1 移动端热卖卡二次锁定：所有卡片宽度一致，不允许后面的产品沿用桌面宽度。 */
@media (max-width:760px){
  body #main section.hp-sec.hp-sec--best .hp-track > article.hp-pcard,
  body #main .hp-sec--best .hp-track > article.hp-pcard{
    flex:0 0 280px !important;
    width:280px !important;
    min-width:280px !important;
    max-width:280px !important;
    height:482px !important;
    min-height:482px !important;
    max-height:482px !important;
  }
  body #main section.hp-sec.hp-sec--best .hp-track > article.hp-pcard > a,
  body #main .hp-sec--best .hp-track > article.hp-pcard > a{
    display:grid !important;
    grid-template-rows:260px 220px !important;
    height:482px !important;
    min-height:482px !important;
    max-height:482px !important;
  }
  body #main section.hp-sec.hp-sec--best .hp-track > article.hp-pcard .hp-pc-media,
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media{
    width:100% !important;
    min-width:100% !important;
    max-width:100% !important;
    height:260px !important;
    min-height:260px !important;
    max-height:260px !important;
    overflow:visible !important;
  }
  body #main section.hp-sec.hp-sec--best .hp-track > article.hp-pcard .hp-pc-media img,
  body #main section.hp-sec.hp-sec--best .hp-track > article.hp-pcard .hp-pc-media .day,
  body #main section.hp-sec.hp-sec--best .hp-track > article.hp-pcard .hp-pc-media .night,
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media img,
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media .day,
  body #main .hp-sec--best .hp-track > article.hp-pcard .hp-pc-media .night{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
  }
}

/* ============================================================
   108. 2026-06-22 截图审计后的全站头尾保险

   说明：
   - 这一段只修复刚刚截图审计发现的共性问题：移动端公告栏文字被截、
     footer/trust strip 上半段仍可能被行内 style 染成黑/灰。
   - 不改首页热卖、分类、应用场景等已对齐模块，避免反复把好的地方改坏。
   ============================================================ */

/* 108-1 移动端顶部公告：在 430px 宽度也要一行完整读完，不能只剩 “LIVRAISON À 1...”。 */
@media (max-width:999px){
  #shopify-section-sections--25458834178427__announcement-bar,
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
    --announcement-bar-height:36px !important;
  }
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
    display:grid !important;
    grid-template-columns:1fr !important;
    height:36px !important;
    min-height:36px !important;
    padding:0 10px !important;
    overflow:hidden !important;
  }
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__list,
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__item,
  #shopify-section-sections--25458834178427__announcement-bar announcement-bar-item:not([hidden]),
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message,
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message p{
    width:100% !important;
    min-width:100% !important;
    max-width:100% !important;
    height:36px !important;
    min-height:36px !important;
    line-height:36px !important;
    overflow:visible !important;
    text-overflow:clip !important;
  }
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__item,
  #shopify-section-sections--25458834178427__announcement-bar announcement-bar-item:not([hidden]){
    display:flex !important;
    flex:0 0 100% !important;
    align-items:center !important;
    justify-content:center !important;
  }
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__item[hidden],
  #shopify-section-sections--25458834178427__announcement-bar announcement-bar-item[hidden]{
    display:none !important;
    width:0 !important;
    min-width:0 !important;
    max-width:0 !important;
    flex:0 0 0 !important;
  }
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message{
    display:block !important;
    flex:0 0 100% !important;
  }
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message p{
    font-size:10px !important;
    font-weight:800 !important;
    white-space:nowrap !important;
    text-align:center !important;
  }
}

/* 108-2 Footer/trust strip 白字最终保险：覆盖 HTML 里遗留的 style="color:#666"。 */
.v15-trust-strip,
.v15-trust-strip *,
.v15-trust-strip [style],
.shopify-section-group-footer-group,
.shopify-section-group-footer-group *,
.shopify-section-group-footer-group [style],
.shopify-section--footer,
.shopify-section--footer *,
.shopify-section--footer [style],
footer.footer,
footer.footer *,
footer.footer [style]{
  color:rgba(255,255,255,.84) !important;
}
.v15-trust-strip h1,
.v15-trust-strip h2,
.v15-trust-strip h3,
.v15-trust-strip strong,
.v15-trust-strip b,
.shopify-section-group-footer-group h1,
.shopify-section-group-footer-group h2,
.shopify-section-group-footer-group h3,
.shopify-section-group-footer-group h4,
.shopify-section-group-footer-group strong,
.shopify-section-group-footer-group b,
.shopify-section--footer h1,
.shopify-section--footer h2,
.shopify-section--footer h3,
.shopify-section--footer h4,
.shopify-section--footer strong,
.shopify-section--footer b,
footer.footer h1,
footer.footer h2,
footer.footer h3,
footer.footer h4,
footer.footer strong,
footer.footer b{
  color:#fff !important;
}
.v15-trust-strip svg,
.shopify-section-group-footer-group svg,
.shopify-section--footer svg,
footer.footer svg{
  color:currentColor !important;
}

/* ============================================================
   110. 2026-06-22 最终文件末尾锁定
   说明：本文件历史上存在多段重复 CSS。这里必须放在文件最后，
   用普通选择器覆盖所有前文规则，保证截图审计结果稳定。
============================================================ */

/* 110-1 首页分类：一行 6 个，版心跟热卖模块一致，文字不拆行。 */
@media (min-width:1000px){
  #main .lh-circats{
    overflow:hidden !important;
  }

  #main .lh-circats__viewport{
    width:min(1520px, calc(100% - 96px)) !important;
    max-width:1520px !important;
    margin-inline:auto !important;
    overflow:visible !important;
  }

  #main .lh-circats__track{
    display:grid !important;
    grid-template-columns:repeat(6, minmax(0, 1fr)) !important;
    gap:22px !important;
    align-items:start !important;
  }

  #main .lh-circats__i{
    min-width:0 !important;
    width:auto !important;
  }

  #main .lh-circats__lbl{
    max-width:none !important;
    white-space:nowrap !important;
    overflow:visible !important;
    text-overflow:clip !important;
    font-size:14px !important;
    line-height:1.15 !important;
    letter-spacing:0 !important;
  }
}

/* 110-2 首页热卖：四张卡片图片同宽高、内容同高度、长标题省略。 */
@media (min-width:1000px){
  #main .hp-products .hp-pc-grid{
    grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
    gap:36px !important;
    align-items:stretch !important;
  }

  #main .hp-products .hp-pc-card{
    height:584px !important;
    display:grid !important;
    grid-template-rows:330px 254px !important;
    overflow:visible !important;
  }

  #main .hp-products .hp-pc-media{
    height:330px !important;
    aspect-ratio:auto !important;
    overflow:visible !important;
    border-radius:8px 8px 0 0 !important;
  }

  #main .hp-products .hp-pc-media img,
  #main .hp-products .hp-pc-media .day,
  #main .hp-products .hp-pc-media .night{
    width:100% !important;
    height:100% !important;
    display:block !important;
    object-fit:cover !important;
    border-radius:8px 8px 0 0 !important;
    transform:none !important;
    filter:none !important;
  }

  #main .hp-products .hp-pc-card:hover .hp-pc-media img,
  #main .hp-products .hp-pc-card:hover .hp-pc-media .day,
  #main .hp-products .hp-pc-card:hover .hp-pc-media .night{
    transform:none !important;
    filter:none !important;
  }

  #main .hp-products .hp-pc-body{
    height:254px !important;
    min-height:254px !important;
    display:flex !important;
    flex-direction:column !important;
    justify-content:flex-start !important;
    gap:8px !important;
    padding:32px 18px 18px !important;
  }

  #main .hp-products .hp-pc-title{
    min-height:42px !important;
    max-height:42px !important;
    overflow:hidden !important;
    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;
  }
}


/* ============================================================
   113. 2026-06-22 全站截图验收锁定层（真实 EOF 追加）

   说明：前文存在大量重复合并样式，apply_patch 曾命中中间重复块。
   本段用脚本追加到文件真实末尾，确保浏览器最后加载它。

   覆盖需求：
   - 顶部公告栏一行显示，不换行、不截断；
   - 移动端头部只保留一个搜索图标和购物车；
   - 一级导航 hover 显示二级导航；
   - PROMOS 百分号为红底白字；
   - 首页热卖 4 个产品卡等宽等高、图片高度一致、长标题两行省略；
   - 图片角标左对齐且半露出图片外，左下角直角；
   - hover 不放大、不模糊；
   - footer 与 trust strip 保持原绿底，所有文字白色系。
   ============================================================ */

/* 113-1 顶部公告栏：桌面一行居中。 */
#shopify-section-sections--25458834178427__announcement-bar,
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
  --announcement-bar-height:38px !important;
  background:#282828 !important;
}
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
  display:grid !important;
  grid-template-columns:46px minmax(0,1fr) 46px !important;
  align-items:center !important;
  min-height:38px !important;
  height:38px !important;
  max-height:38px !important;
  padding:0 38px !important;
  overflow:hidden !important;
}
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__list{
  grid-column:2 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  min-width:0 !important;
  height:38px !important;
  overflow:hidden !important;
}
#shopify-section-sections--25458834178427__announcement-bar announcement-bar-item,
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__item{
  flex:0 0 100% !important;
  width:100% !important;
  min-width:0 !important;
  height:38px !important;
}
#shopify-section-sections--25458834178427__announcement-bar announcement-bar-item[hidden],
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__item[hidden]{
  display:none !important;
  flex-basis:0 !important;
  width:0 !important;
}
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message,
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message p{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  height:38px !important;
  min-height:38px !important;
  max-height:38px !important;
  margin:0 !important;
  color:#fff !important;
  font-size:13px !important;
  font-weight:800 !important;
  line-height:38px !important;
  letter-spacing:0 !important;
  text-align:center !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:clip !important;
}

/* 113-2 PROMOS 的 %：固定红圆白字。 */
.header__linklist-link .promos-pct-dot,
.header__inline-navigation .promos-pct-dot,
.promos-pct-dot{
  display:inline-grid !important;
  place-items:center !important;
  width:22px !important;
  height:22px !important;
  min-width:22px !important;
  min-height:22px !important;
  margin-left:7px !important;
  border-radius:50% !important;
  background:#e00023 !important;
  color:#fff !important;
  font-size:12px !important;
  font-weight:900 !important;
  line-height:1 !important;
  text-align:center !important;
  vertical-align:middle !important;
}

/* 113-3 桌面一级导航 hover：强制显示二级菜单。 */
@media (min-width:1000px){
  .header__linklist{ overflow:visible !important; }
  .header__linklist-item.has-dropdown > .mega-menu,
  .header__linklist-item.has-dropdown > .mega-menu[hidden],
  .header__linklist-item.has-dropdown > .nav-dropdown,
  .header__linklist-item.has-dropdown > .nav-dropdown[hidden]{
    display:block !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
    transform:translateY(6px) !important;
    transition:opacity .14s ease, transform .14s ease !important;
  }
  .header__linklist-item.has-dropdown:hover > .mega-menu,
  .header__linklist-item.has-dropdown:focus-within > .mega-menu,
  .header__linklist-item.has-dropdown:hover > .mega-menu[hidden],
  .header__linklist-item.has-dropdown:focus-within > .mega-menu[hidden],
  .header__linklist-item.has-dropdown:hover > .nav-dropdown,
  .header__linklist-item.has-dropdown:focus-within > .nav-dropdown,
  .header__linklist-item.has-dropdown:hover > .nav-dropdown[hidden],
  .header__linklist-item.has-dropdown:focus-within > .nav-dropdown[hidden]{
    visibility:visible !important;
    opacity:1 !important;
    pointer-events:auto !important;
    transform:translateY(0) !important;
  }
}

/* 113-4 移动端头部：公告不截，右侧只保留一个搜索 + 购物车。 */
@media (max-width:999px){
  #shopify-section-sections--25458834178427__announcement-bar,
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
    --announcement-bar-height:36px !important;
  }
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
    grid-template-columns:1fr !important;
    min-height:36px !important;
    height:36px !important;
    max-height:36px !important;
    padding:0 8px !important;
  }
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar > button,
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar > .tap-area{
    display:none !important;
  }
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__list,
  #shopify-section-sections--25458834178427__announcement-bar announcement-bar-item,
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__item,
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message,
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message p{
    min-height:36px !important;
    height:36px !important;
    max-height:36px !important;
    line-height:36px !important;
  }
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message p{
    font-size:10px !important;
    font-weight:800 !important;
    white-space:nowrap !important;
  }
  #shopify-section-sections--25458834178427__header .header__wrapper{
    display:grid !important;
    grid-template-columns:44px minmax(0,1fr) auto !important;
    align-items:center !important;
    gap:10px !important;
    min-height:72px !important;
    padding:0 16px !important;
  }
  #shopify-section-sections--25458834178427__header .header__logo{
    grid-column:2 !important;
    justify-self:center !important;
  }
  #shopify-section-sections--25458834178427__header .header__logo-image{
    width:150px !important;
    max-width:42vw !important;
    height:auto !important;
  }
  #shopify-section-sections--25458834178427__header .header__secondary-links{
    grid-column:3 !important;
    justify-self:end !important;
  }
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-list{
    display:flex !important;
    align-items:center !important;
    gap:16px !important;
  }
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper{
    display:none !important;
  }
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper.hidden-desk[aria-label="Recherche"],
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper[aria-controls="mini-cart"]{
    display:inline-flex !important;
  }
}

/* 113-5 首页 Nos meilleures ventes：四个产品同宽同高，图片和内容区固定。 */
@media (min-width:1000px){
  body #main .hp-sec--best .hp-wrap,
  body #main .hp-sec--best .hp-bv-wrap{
    width:min(1520px,calc(100% - 96px)) !important;
    max-width:1520px !important;
    margin-inline:auto !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-track{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:34px !important;
    align-items:stretch !important;
    width:100% !important;
    max-width:1520px !important;
    margin:0 !important;
    padding:24px 0 10px !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-track > .hp-pcard,
  body #main .hp-sec--best .hp-track > article.hp-pcard{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    height:586px !important;
    min-height:586px !important;
    max-height:586px !important;
    border:1px solid #e5e9e5 !important;
    border-radius:8px !important;
    background:#fff !important;
    box-shadow:0 12px 32px rgba(25,39,31,.06) !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-track > .hp-pcard:nth-child(n+5){
    display:none !important;
  }
  body #main .hp-sec--best .hp-track > .hp-pcard > a{
    display:grid !important;
    grid-template-rows:332px 252px !important;
    width:100% !important;
    height:586px !important;
    min-height:586px !important;
    max-height:586px !important;
    color:inherit !important;
    text-decoration:none !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-pc-media{
    position:relative !important;
    width:100% !important;
    height:332px !important;
    min-height:332px !important;
    max-height:332px !important;
    aspect-ratio:auto !important;
    border-radius:8px 8px 0 0 !important;
    background:#f5f7f5 !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-pc-media img,
  body #main .hp-sec--best .hp-pc-media .day,
  body #main .hp-sec--best .hp-pc-media .night{
    position:absolute !important;
    inset:0 !important;
    display:block !important;
    width:100% !important;
    height:100% !important;
    min-width:100% !important;
    min-height:100% !important;
    object-fit:cover !important;
    object-position:center center !important;
    border-radius:8px 8px 0 0 !important;
    transform:none !important;
    filter:none !important;
  }
  body #main .hp-sec--best .hp-pcard:hover .hp-pc-media img,
  body #main .hp-sec--best .hp-pcard:hover .hp-pc-media .day,
  body #main .hp-sec--best .hp-pcard:hover .hp-pc-media .night{
    transform:none !important;
  }
  body #main .hp-sec--best .hp-pcard:hover .hp-pc-media .night{
    filter:brightness(.78) !important;
  }
  body #main .hp-sec--best .hp-bdgs{
    position:absolute !important;
    left:0 !important;
    top:-16px !important;
    z-index:6 !important;
    display:flex !important;
    align-items:flex-start !important;
    pointer-events:none !important;
  }
  body #main .hp-sec--best .hp-bdgs .hp-bdg,
  body #main .hp-sec--best .hp-bdgs .hp-bdg.hp-bdg--remises{
    height:32px !important;
    padding:0 14px !important;
    border-radius:5px 5px 5px 0 !important;
    background:#d75f3b !important;
    color:#fff !important;
    font-size:13px !important;
    font-weight:800 !important;
    line-height:32px !important;
    letter-spacing:0 !important;
    white-space:nowrap !important;
  }
  body #main .hp-sec--best .hp-bdg--solar{
    left:18px !important;
    bottom:18px !important;
    height:28px !important;
    padding:0 15px !important;
    border-radius:999px !important;
    font-size:12px !important;
    font-weight:800 !important;
    line-height:28px !important;
  }
  body #main .hp-sec--best .hp-pc-fav{
    right:18px !important;
    bottom:18px !important;
    width:38px !important;
    height:38px !important;
    border-radius:50% !important;
  }
  body #main .hp-sec--best .hp-pc-body{
    display:grid !important;
    grid-template-rows:30px 42px 44px 22px 24px !important;
    gap:8px !important;
    height:252px !important;
    min-height:252px !important;
    max-height:252px !important;
    padding:20px 18px 18px !important;
    overflow:hidden !important;
  }
  body #main .hp-sec--best .hp-pc-pvc,
  body #main .hp-sec--best .hp-pc-price,
  body #main .hp-sec--best .hp-pc-name,
  body #main .hp-sec--best .hp-pc-rate,
  body #main .hp-sec--best .hp-pc-stock{
    margin:0 !important;
    overflow:hidden !important;
  }
  body #main .hp-sec--best .hp-pc-name{
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    height:44px !important;
    min-height:44px !important;
    max-height:44px !important;
    color:#17211b !important;
    font-size:16px !important;
    font-weight:800 !important;
    line-height:22px !important;
  }
}

/* 113-6 移动端热卖：横向滑动卡片，不相互挤压。 */
@media (max-width:999px){
  body #main .hp-sec--best .hp-track{
    display:flex !important;
    flex-wrap:nowrap !important;
    gap:16px !important;
    overflow-x:auto !important;
    overflow-y:visible !important;
    padding:22px 24px 14px !important;
    scroll-snap-type:x mandatory !important;
  }
  body #main .hp-sec--best .hp-track > .hp-pcard,
  body #main .hp-sec--best .hp-track > article.hp-pcard,
  body #main .hp-sec--best .hp-track > .hp-pcard:nth-child(n+5){
    display:block !important;
    flex:0 0 282px !important;
    width:282px !important;
    min-width:282px !important;
    max-width:282px !important;
    height:492px !important;
    min-height:492px !important;
    max-height:492px !important;
    overflow:visible !important;
    scroll-snap-align:start !important;
  }
  body #main .hp-sec--best .hp-track > .hp-pcard > a{
    display:grid !important;
    grid-template-rows:262px 228px !important;
    height:492px !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-pc-media{
    height:262px !important;
    min-height:262px !important;
    max-height:262px !important;
  }
}

/* 113-7 Footer/trust strip：绿色背景保留，文字一律白色系。 */
.v15-trust-strip,
.v15-trust-strip *,
.v15-trust-strip [style],
.shopify-section-group-footer-group,
.shopify-section-group-footer-group *,
.shopify-section-group-footer-group [style],
.shopify-section--footer,
.shopify-section--footer *,
.shopify-section--footer [style],
footer.footer,
footer.footer *,
footer.footer [style]{
  color:rgba(255,255,255,.86) !important;
}
.v15-trust-strip h1,
.v15-trust-strip h2,
.v15-trust-strip h3,
.v15-trust-strip h4,
.v15-trust-strip strong,
.v15-trust-strip b,
.v15-trust-strip .heading,
.v15-trust-strip .v15-trust-rating-score,
.v15-trust-strip .v15-trust-rating-score *,
.shopify-section-group-footer-group h1,
.shopify-section-group-footer-group h2,
.shopify-section-group-footer-group h3,
.shopify-section-group-footer-group h4,
.shopify-section-group-footer-group strong,
.shopify-section-group-footer-group b,
.shopify-section-group-footer-group .heading,
.shopify-section-group-footer-group .footer__item-title,
.shopify-section--footer h1,
.shopify-section--footer h2,
.shopify-section--footer h3,
.shopify-section--footer h4,
.shopify-section--footer strong,
.shopify-section--footer b,
.shopify-section--footer .heading,
.shopify-section--footer .footer__item-title,
footer.footer h1,
footer.footer h2,
footer.footer h3,
footer.footer h4,
footer.footer strong,
footer.footer b,
footer.footer .heading,
footer.footer .footer__item-title{
  color:#fff !important;
}
.v15-trust-strip a,
.v15-trust-strip a *,
.shopify-section-group-footer-group a,
.shopify-section-group-footer-group a *,
.shopify-section--footer a,
.shopify-section--footer a *,
footer.footer a,
footer.footer a *{
  color:#fff !important;
}
.v15-trust-strip svg,
.shopify-section-group-footer-group svg,
.shopify-section--footer svg,
footer.footer svg{
  color:currentColor !important;
  fill:currentColor !important;
  stroke:currentColor !important;
}

/* ==========================================================================
   117. 2026-06-22 真正文件末尾兜底
   说明：这里位于 CSS 文件最后，用最少规则压住前面重复历史规则。
   ========================================================================== */

/* 117-1 配送条：一行居中，窄屏用省略号，不换行、不截头。 */
#shopify-section-sections--25458834178427__announcement-bar,
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
  height:40px !important;
  min-height:40px !important;
  max-height:40px !important;
  overflow:hidden !important;
}
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
  display:grid !important;
  grid-template-columns:44px minmax(0,1fr) 44px !important;
  align-items:center !important;
}
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__list,
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__item,
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message{
  min-width:0 !important;
  width:100% !important;
  height:40px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  overflow:hidden !important;
}
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message p{
  max-width:100% !important;
  margin:0 !important;
  color:#fff !important;
  font-weight:800 !important;
  line-height:40px !important;
  text-align:center !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
@media (max-width:760px){
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
    grid-template-columns:32px minmax(0,1fr) 32px !important;
    padding:0 10px !important;
  }
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message p{
    font-size:12px !important;
  }
}

/* 117-2 导航：一级菜单 hover 必须显示二级菜单。 */
@media (min-width:1000px){
  .header__linklist-item.has-dropdown > .mega-menu,
  .header__linklist-item.has-dropdown > .mega-menu[hidden]{
    display:block !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
    transform:translateY(8px) !important;
  }
  .header__linklist-item.has-dropdown:hover > .mega-menu,
  .header__linklist-item.has-dropdown:focus-within > .mega-menu,
  .header__linklist-item.has-dropdown:hover > .mega-menu[hidden],
  .header__linklist-item.has-dropdown:focus-within > .mega-menu[hidden]{
    visibility:visible !important;
    opacity:1 !important;
    pointer-events:auto !important;
    transform:translateY(0) !important;
  }
}

/* 117-3 PROMOS %：红底白字。 */
.promos-pct-dot,
.header__linklist-link .promos-pct-dot{
  display:inline-grid !important;
  place-items:center !important;
  width:22px !important;
  height:22px !important;
  min-width:22px !important;
  border-radius:50% !important;
  background:#e00023 !important;
  color:#fff !important;
  font-size:12px !important;
  font-weight:900 !important;
  line-height:1 !important;
}

/* 117-4 移动端头部：隐藏邮件图标和桌面搜索，只保留一个搜索。 */
@media (max-width:999px){
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper[aria-controls="newsletter-popup"],
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper.hidden-pocket.hidden-lap[aria-label="Recherche"]{
    display:none !important;
  }
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper.hidden-desk[aria-label="Recherche"]{
    display:inline-grid !important;
  }
}
@media (min-width:1000px){
  #shopify-section-sections--25458834178427__header .header__secondary-links .header__icon-wrapper.hidden-desk[aria-label="Recherche"]{
    display:none !important;
  }
}

/* 117-5 首页热卖：桌面 4 卡等宽等高，图片高一致，标题最多两行。 */
@media (min-width:1000px){
  body #main .hp-sec--best .hp-wrap,
  body #main .hp-sec--best .hp-bv-wrap{
    width:min(1320px,calc(100% - 96px)) !important;
    max-width:1320px !important;
    margin-inline:auto !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-track{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:34px !important;
    align-items:stretch !important;
    width:100% !important;
    max-width:1320px !important;
    margin:0 auto !important;
    padding:28px 0 8px !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-track > .hp-pcard{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    height:552px !important;
    min-height:552px !important;
    max-height:552px !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-track > .hp-pcard:nth-child(n+5){
    display:none !important;
  }
  body #main .hp-sec--best .hp-pcard > a{
    display:grid !important;
    grid-template-rows:296px 254px !important;
    height:552px !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-pc-media{
    position:relative !important;
    height:296px !important;
    min-height:296px !important;
    max-height:296px !important;
    border-radius:8px 8px 0 0 !important;
    overflow:hidden !important;
  }
  body #main .hp-sec--best .hp-pc-media img,
  body #main .hp-sec--best .hp-pc-media .day{
    position:absolute !important;
    inset:0 !important;
    display:block !important;
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    object-position:center center !important;
    border-radius:8px 8px 0 0 !important;
    opacity:1 !important;
    visibility:visible !important;
    transform:none !important;
    filter:none !important;
  }
  body #main .hp-sec--best .hp-pc-media .night{
    display:none !important;
  }
  body #main .hp-sec--best .hp-pcard:hover .hp-pc-media img,
  body #main .hp-sec--best .hp-pcard:hover .hp-pc-media .day{
    transform:none !important;
    filter:brightness(.88) !important;
  }
  body #main .hp-sec--best .hp-pc-body{
    display:grid !important;
    grid-template-rows:30px 42px 44px 22px 24px !important;
    gap:8px !important;
    height:254px !important;
    min-height:254px !important;
    max-height:254px !important;
    padding:18px 18px 17px !important;
    overflow:hidden !important;
  }
  body #main .hp-sec--best .hp-pc-name{
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    height:44px !important;
    line-height:22px !important;
    overflow:hidden !important;
  }
}

/* 117-6 图片模块：能量、媒体、文章卡显示真实图，不露灰块。 */
body #main .hp-en-media img,
body #main .hp-md-media img,
body #main .hp-post-media img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  opacity:1 !important;
  visibility:visible !important;
  transform:none !important;
  filter:none !important;
}

/* 117-7 Footer：绿底不改，所有文字和链接保持白色系。 */
.v15-trust-strip,
.v15-trust-strip *,
.v15-trust-strip [style],
.shopify-section-group-footer-group,
.shopify-section-group-footer-group *,
.shopify-section-group-footer-group [style],
.shopify-section--footer,
.shopify-section--footer *,
.shopify-section--footer [style],
footer.footer,
footer.footer *,
footer.footer [style]{
  color:rgba(255,255,255,.84) !important;
}
.v15-trust-strip h1,
.v15-trust-strip h2,
.v15-trust-strip h3,
.v15-trust-strip h4,
.v15-trust-strip strong,
.v15-trust-strip b,
.v15-trust-strip .heading,
.shopify-section-group-footer-group .heading,
.shopify-section-group-footer-group .footer__item-title,
.shopify-section-group-footer-group strong,
.shopify-section-group-footer-group b,
.shopify-section--footer .heading,
.shopify-section--footer .footer__item-title,
.shopify-section--footer strong,
.shopify-section--footer b,
footer.footer .heading,
footer.footer .footer__item-title,
footer.footer strong,
footer.footer b{
  color:#fff !important;
}
.v15-trust-strip a,
.v15-trust-strip a *,
.shopify-section-group-footer-group a,
.shopify-section-group-footer-group a *,
.shopify-section--footer a,
.shopify-section--footer a *,
footer.footer a,
footer.footer a *{
  color:#fff !important;
}

/* ==========================================================================
   120. 2026-06-23 真正文件最后规则
   说明：锚定 117-7 唯一注释后追加，确保在 CSS 真实末尾覆盖前面所有重复规则。
   ========================================================================== */

/* 120-1 顶部配送条：一行居中，不换行、不裁切。 */
.shopify-section--announcement-bar,
.shopify-section--announcement-bar .announcement-bar,
#shopify-section-sections--25458834178427__announcement-bar,
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
  height:42px !important;
  min-height:42px !important;
  max-height:42px !important;
  overflow:hidden !important;
}
.shopify-section--announcement-bar .announcement-bar,
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
  display:grid !important;
  grid-template-columns:52px minmax(0,1fr) 52px !important;
  align-items:center !important;
  padding:0 28px !important;
  background:#242424 !important;
}
.shopify-section--announcement-bar .announcement-bar__list,
.shopify-section--announcement-bar .announcement-bar__item,
.shopify-section--announcement-bar .announcement-bar__message,
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__list,
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__item,
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message{
  width:100% !important;
  min-width:0 !important;
  height:42px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  overflow:hidden !important;
}
.shopify-section--announcement-bar .announcement-bar__message p,
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message p{
  display:block !important;
  width:100% !important;
  max-width:1120px !important;
  margin:0 auto !important;
  color:#fff !important;
  font-size:13px !important;
  font-weight:800 !important;
  line-height:42px !important;
  letter-spacing:.02em !important;
  text-align:center !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
.shopify-section--announcement-bar .announcement-bar > button,
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar > button{
  width:42px !important;
  height:42px !important;
  color:#fff !important;
}
@media (max-width:760px){
  .shopify-section--announcement-bar .announcement-bar,
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
    grid-template-columns:34px minmax(0,1fr) 34px !important;
    padding:0 8px !important;
  }
  .shopify-section--announcement-bar .announcement-bar__message p,
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message p{
    max-width:calc(100vw - 92px) !important;
    font-size:11px !important;
    letter-spacing:.01em !important;
  }
}

/* 120-2 桌面导航：hover 一级菜单时显示二级菜单，覆盖 hidden 属性。 */
@media (min-width:1000px){
  .header__linklist{
    display:flex !important;
    align-items:center !important;
    gap:28px !important;
    flex-wrap:nowrap !important;
  }
  .header__linklist-link{
    display:inline-flex !important;
    align-items:center !important;
    gap:8px !important;
    white-space:nowrap !important;
    color:#171717 !important;
    font-weight:700 !important;
  }
  .header__linklist-item.has-dropdown{
    position:relative !important;
  }
  .header__linklist-item.has-dropdown > .mega-menu,
  .header__linklist-item.has-dropdown > .mega-menu[hidden]{
    display:block !important;
    position:absolute !important;
    left:50% !important;
    top:calc(100% + 24px) !important;
    z-index:80 !important;
    width:min(1180px,calc(100vw - 96px)) !important;
    transform:translateX(-50%) translateY(10px) !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
  }
  .header__linklist-item.has-dropdown:hover > .mega-menu,
  .header__linklist-item.has-dropdown:focus-within > .mega-menu,
  .header__linklist-item.has-dropdown:hover > .mega-menu[hidden],
  .header__linklist-item.has-dropdown:focus-within > .mega-menu[hidden]{
    transform:translateX(-50%) translateY(0) !important;
    visibility:visible !important;
    opacity:1 !important;
    pointer-events:auto !important;
  }
  .header__linklist-item.has-dropdown > .nav-dropdown,
  .header__linklist-item.has-dropdown > .nav-dropdown[hidden]{
    display:block !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
  }
  .header__linklist-item.has-dropdown:hover > .nav-dropdown,
  .header__linklist-item.has-dropdown:focus-within > .nav-dropdown,
  .header__linklist-item.has-dropdown:hover > .nav-dropdown[hidden],
  .header__linklist-item.has-dropdown:focus-within > .nav-dropdown[hidden]{
    visibility:visible !important;
    opacity:1 !important;
    pointer-events:auto !important;
  }
}

/* 120-3 PROMOS 圆点：红底白字。 */
.promos-pct-dot,
.promos-pct-dot *,
.header__linklist-link .promos-pct-dot,
.header__linklist-link .promos-pct-dot *{
  color:#fff !important;
  fill:#fff !important;
}
.promos-pct-dot,
.header__linklist-link .promos-pct-dot{
  display:inline-grid !important;
  place-items:center !important;
  width:24px !important;
  height:24px !important;
  min-width:24px !important;
  border-radius:999px !important;
  background:#e00023 !important;
  font-size:12px !important;
  font-weight:900 !important;
  line-height:1 !important;
}

/* 120-4 移动端头部：去掉邮件图标和重复搜索，只留一个搜索。 */
@media (max-width:999px){
  .header__secondary-links .header__icon-wrapper[aria-controls="newsletter-popup"],
  .header__secondary-links .header__icon-wrapper.hidden-pocket.hidden-lap[aria-label="Recherche"]{
    display:none !important;
  }
  .header__secondary-links .header__icon-wrapper.hidden-desk[aria-label="Recherche"]{
    display:inline-grid !important;
  }
  .header__secondary-links .header__icon-list{
    display:flex !important;
    align-items:center !important;
    gap:16px !important;
  }
}
@media (min-width:1000px){
  .header__secondary-links .header__icon-wrapper.hidden-desk[aria-label="Recherche"]{
    display:none !important;
  }
}

/* 120-5 首页热卖：4 个产品卡等宽、等高、图片高一致、文字不拉高。 */
@media (min-width:1000px){
  #main .hp-sec--best{
    overflow:hidden !important;
  }
  #main .hp-sec--best .hp-wrap,
  #main .hp-sec--best .hp-bv-wrap{
    width:min(1220px,calc(100% - 96px)) !important;
    max-width:1220px !important;
    margin-inline:auto !important;
    overflow:visible !important;
  }
  #main .hp-sec--best [data-scroller]{
    overflow:visible !important;
  }
  #main .hp-sec--best .hp-track{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:32px !important;
    align-items:stretch !important;
    width:100% !important;
    margin:0 auto !important;
    padding:32px 0 10px !important;
    overflow:visible !important;
  }
  #main .hp-sec--best .hp-track > .hp-pcard{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    height:548px !important;
    min-height:548px !important;
    max-height:548px !important;
    overflow:visible !important;
  }
  #main .hp-sec--best .hp-track > .hp-pcard:nth-child(n+5){
    display:none !important;
  }
  #main .hp-sec--best .hp-pcard > a{
    display:grid !important;
    grid-template-rows:294px 254px !important;
    height:548px !important;
    min-height:548px !important;
    max-height:548px !important;
    overflow:visible !important;
    border-radius:8px !important;
    border:1px solid #e6ebe7 !important;
    background:#fff !important;
    box-shadow:0 14px 30px rgba(23,34,27,.04) !important;
  }
  #main .hp-sec--best .hp-pc-media{
    position:relative !important;
    height:294px !important;
    min-height:294px !important;
    max-height:294px !important;
    border-radius:8px 8px 0 0 !important;
    overflow:hidden !important;
    background:#f5f7f4 !important;
  }
  #main .hp-sec--best .hp-pc-media img,
  #main .hp-sec--best .hp-pc-media .day{
    position:absolute !important;
    inset:0 !important;
    z-index:1 !important;
    display:block !important;
    width:100% !important;
    height:100% !important;
    max-width:none !important;
    max-height:none !important;
    object-fit:cover !important;
    object-position:center center !important;
    border-radius:8px 8px 0 0 !important;
    opacity:1 !important;
    visibility:visible !important;
    transform:none !important;
    filter:none !important;
  }
  #main .hp-sec--best .hp-pc-media .night{
    display:none !important;
  }
  #main .hp-sec--best .hp-pcard:hover .hp-pc-media img,
  #main .hp-sec--best .hp-pcard:hover .hp-pc-media .day{
    transform:none !important;
    filter:brightness(.88) !important;
  }
  #main .hp-sec--best .hp-bdgs{
    position:absolute !important;
    left:0 !important;
    top:-17px !important;
    z-index:6 !important;
    display:flex !important;
    align-items:flex-start !important;
    pointer-events:none !important;
  }
  #main .hp-sec--best .hp-bdg--remises{
    height:34px !important;
    padding:0 15px !important;
    border-radius:5px 5px 5px 0 !important;
    background:#d55e38 !important;
    color:#fff !important;
    font-size:14px !important;
    font-weight:800 !important;
    line-height:34px !important;
    white-space:nowrap !important;
    box-shadow:none !important;
  }
  #main .hp-sec--best .hp-bdg--solar{
    position:absolute !important;
    left:16px !important;
    bottom:18px !important;
    z-index:5 !important;
    height:28px !important;
    min-width:88px !important;
    padding:0 14px !important;
    border-radius:999px !important;
    background:#f4ad3d !important;
    color:#fff !important;
    font-size:12px !important;
    font-weight:800 !important;
    line-height:28px !important;
    letter-spacing:.04em !important;
  }
  #main .hp-sec--best .hp-bdg--solar::before{
    content:"" !important;
    display:inline-block !important;
    width:8px !important;
    height:8px !important;
    margin-right:7px !important;
    border:2px solid #fff !important;
    border-radius:50% !important;
    vertical-align:middle !important;
  }
  #main .hp-sec--best .hp-pc-fav{
    position:absolute !important;
    right:16px !important;
    bottom:16px !important;
    z-index:7 !important;
    width:42px !important;
    height:42px !important;
    border-radius:50% !important;
    background:#fff !important;
    box-shadow:0 5px 14px rgba(0,0,0,.14) !important;
  }
  #main .hp-sec--best .hp-pc-body{
    display:grid !important;
    grid-template-rows:34px 50px 26px 48px 28px !important;
    gap:6px !important;
    height:254px !important;
    min-height:254px !important;
    max-height:254px !important;
    padding:18px 18px 16px !important;
    overflow:hidden !important;
  }
  #main .hp-sec--best .hp-pc-pvc{
    align-self:start !important;
    width:max-content !important;
    max-width:100% !important;
    height:30px !important;
    padding:0 16px !important;
    border-radius:999px !important;
    background:#d85f39 !important;
    color:#fff !important;
    font-size:14px !important;
    font-weight:800 !important;
    line-height:30px !important;
  }
  #main .hp-sec--best .hp-pc-name{
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    height:48px !important;
    max-height:48px !important;
    overflow:hidden !important;
    color:#18201b !important;
    font-size:17px !important;
    font-weight:800 !important;
    line-height:24px !important;
  }
  #main .hp-sec--best .hp-pc-rate{
    display:flex !important;
    align-items:center !important;
    gap:8px !important;
    height:24px !important;
    margin:0 !important;
    color:#89908a !important;
    font-size:14px !important;
    line-height:24px !important;
  }
  #main .hp-sec--best .hp-stars{
    color:#f5a623 !important;
    font-size:16px !important;
    line-height:1 !important;
    letter-spacing:1px !important;
  }
  #main .hp-sec--best .hp-pc-price{
    display:block !important;
    height:46px !important;
    color:#18201b !important;
    line-height:1.18 !important;
  }
  #main .hp-sec--best .hp-pc-price b{
    display:block !important;
    color:#101814 !important;
    font-size:24px !important;
    font-weight:900 !important;
    line-height:28px !important;
  }
  #main .hp-sec--best .hp-pc-oldprice{
    display:block !important;
    margin-top:2px !important;
    color:#a3a7a3 !important;
    font-size:14px !important;
    line-height:16px !important;
  }
  #main .hp-sec--best .hp-pc-stock{
    display:flex !important;
    align-items:center !important;
    gap:8px !important;
    height:26px !important;
    color:#2f7445 !important;
    font-size:14px !important;
    font-weight:800 !important;
  }
  #main .hp-sec--best .hp-pc-stock::before{
    content:"✓" !important;
    display:grid !important;
    place-items:center !important;
    width:19px !important;
    height:19px !important;
    border-radius:50% !important;
    background:#5aac5c !important;
    color:#fff !important;
    font-size:13px !important;
    font-weight:900 !important;
    line-height:1 !important;
  }
}

/* 120-6 首页中段图片：防止灰块、压字、错位。 */
#main .hp-space-mosaic{
  align-items:start !important;
  margin-bottom:44px !important;
}
#main .hp-space-tile{
  display:grid !important;
  grid-template-rows:auto 24px !important;
  gap:10px !important;
  text-decoration:none !important;
}
#main .hp-space-tile img,
#main .hp-space-tile--large img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  border-radius:8px !important;
  opacity:1 !important;
  visibility:visible !important;
  filter:none !important;
  transform:none !important;
}
#main .hp-space-tile b{
  display:block !important;
  height:24px !important;
  margin:0 !important;
  color:#1d251f !important;
  font-size:13px !important;
  font-weight:700 !important;
  line-height:24px !important;
  text-align:center !important;
}
#main .hp-room-title{
  margin:30px 0 28px !important;
  text-align:center !important;
}
#main .hp-en-media,
#main .hp-md-media,
#main .hp-post-media{
  position:relative !important;
  overflow:hidden !important;
  background:#eef2ef !important;
}
#main .hp-en-media::before,
#main .hp-en-media::after,
#main .hp-md-media::before,
#main .hp-md-media::after,
#main .hp-post-media::before,
#main .hp-post-media::after{
  display:none !important;
  content:none !important;
}
#main .hp-en-media img,
#main .hp-md-media img,
#main .hp-post-media img{
  position:absolute !important;
  inset:0 !important;
  z-index:1 !important;
  display:block !important;
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  max-height:none !important;
  object-fit:cover !important;
  object-position:center center !important;
  opacity:1 !important;
  visibility:visible !important;
  filter:none !important;
  transform:none !important;
  mix-blend-mode:normal !important;
}
#main .hp-md-tag,
#main .hp-md-play{
  z-index:2 !important;
}
@media (min-width:1000px){
  #main .hp-space-mosaic{
    grid-template-columns:2fr 1fr 1fr !important;
    grid-auto-rows:184px !important;
    gap:14px !important;
  }
  #main .hp-space-tile--large{
    grid-row:span 2 !important;
  }
}
@media (max-width:760px){
  #main .hp-space-mosaic{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:18px !important;
  }
  #main .hp-space-tile,
  #main .hp-space-tile--large{
    grid-column:auto !important;
    grid-row:auto !important;
  }
  #main .hp-space-tile img,
  #main .hp-space-tile--large img{
    height:auto !important;
    aspect-ratio:1.28 / 1 !important;
  }
  #main .hp-room-title{
    margin:28px 0 20px !important;
    font-size:34px !important;
    line-height:1.08 !important;
  }
}

/* 120-7 Footer：绿底不改，所有文字和链接转白色系。 */
/* ==========================================================================
   125. 最终头部 / 首页 / 图片锁定层
   --------------------------------------------------------------------------
   插入位置说明：本段位于最终 footer 白字块之前，已经晚于所有旧头部、首页、
   商品卡、图片模块规则；后面的 footer 白字块不会影响这些模块。
   ========================================================================== */

/* 125-1 顶部公告：PC 不换行；M 端清掉旧 186px 宽度和省略号。 */
body .announcement-bar,
body .announcement-bar--multiple{
  height:42px !important;
  min-height:42px !important;
  overflow:hidden !important;
  background:#262626 !important;
}
body .announcement-bar__item[hidden],
body announcement-bar-item[hidden]{ display:none !important; }
body .announcement-bar__list{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  max-width:none !important;
  height:42px !important;
  padding:0 72px !important;
  overflow:hidden !important;
}
body announcement-bar-item.announcement-bar__item:not([hidden]),
body .announcement-bar__message,
body .announcement-bar__message p{
  display:block !important;
  width:100% !important;
  max-width:none !important;
  min-width:0 !important;
  height:42px !important;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;
  color:#fff !important;
  font-weight:800 !important;
  text-align:center !important;
  white-space:nowrap !important;
  text-overflow:clip !important;
}
body .announcement-bar__message p{
  font-size:14px !important;
  line-height:42px !important;
  letter-spacing:.015em !important;
}
body .announcement-bar .tap-area{
  position:absolute !important;
  top:0 !important;
  z-index:3 !important;
  display:grid !important;
  place-items:center !important;
  width:52px !important;
  height:42px !important;
  color:#fff !important;
}
body .announcement-bar .tap-area[data-action="prev"]{ left:22px !important; }
body .announcement-bar .tap-area[data-action="next"]{ right:22px !important; }
@media (max-width:999px){
  body .announcement-bar,
  body .announcement-bar--multiple,
  body .announcement-bar__list,
  body announcement-bar-item.announcement-bar__item:not([hidden]),
  body .announcement-bar__message,
  body .announcement-bar__message p{
    height:40px !important;
    min-height:40px !important;
  }
  body .announcement-bar__list{
    padding:0 36px !important;
  }
  body .announcement-bar__message p{
    font-size:9.5px !important;
    line-height:40px !important;
    letter-spacing:0 !important;
  }
  body .announcement-bar .tap-area{
    width:36px !important;
    height:40px !important;
  }
  body .announcement-bar .tap-area[data-action="prev"]{ left:6px !important; }
  body .announcement-bar .tap-area[data-action="next"]{ right:6px !important; }
}

/* 125-2 一级导航 hover 显示二级菜单，PROMOS 圆点白字。 */
body .shopify-section--header,
body .header,
body .header__wrapper,
body desktop-navigation{ overflow:visible !important; }
body .header__linklist{
  display:flex !important;
  align-items:center !important;
  flex-wrap:nowrap !important;
  gap:30px !important;
  white-space:nowrap !important;
}
body .header__linklist-link{
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  color:#181c1a !important;
  font-size:16px !important;
  font-weight:800 !important;
  line-height:1 !important;
  white-space:nowrap !important;
}
body .header__linklist-item.has-dropdown:hover > .mega-menu,
body .header__linklist-item.has-dropdown:focus-within > .mega-menu,
body .header__linklist-item.mm-plus:hover > .nav-dropdown,
body .header__linklist-item.mm-plus:focus-within > .nav-dropdown{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:auto !important;
}
body .mega-menu{
  position:absolute !important;
  left:0 !important;
  right:0 !important;
  top:100% !important;
  z-index:80 !important;
  min-height:300px !important;
  padding:40px 0 !important;
  background:#fff !important;
  border-top:1px solid #e7ebe7 !important;
  box-shadow:0 18px 36px rgba(16,24,20,.08) !important;
}
body .promos-pct-dot{
  display:inline-grid !important;
  place-items:center !important;
  width:24px !important;
  height:24px !important;
  border-radius:999px !important;
  background:#df2638 !important;
  color:#fff !important;
  font-size:13px !important;
  font-weight:900 !important;
  line-height:1 !important;
}
@media (max-width:999px){
  body .header__icon-wrapper[aria-controls="newsletter-popup"],
  body .header__icon-wrapper.hidden-phone,
  body .header__icon-wrapper.hidden-pocket.hidden-lap{ display:none !important; }
  body .header__icon-wrapper[aria-label="Recherche"].hidden-desk{
    display:inline-grid !important;
    place-items:center !important;
  }
}

/* 125-3 首页热卖产品：4 列等高，图片等高，文字省略，不再 hover 模糊放大。 */
@media (min-width:1000px){
  body #main .hp-sec--best .hp-wrap,
  body #main .hp-sec--best .hp-bv-wrap{
    width:min(1220px, calc(100% - 96px)) !important;
    max-width:1220px !important;
    margin-left:auto !important;
    margin-right:auto !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best [data-scroller]{ overflow:visible !important; }
  body #main .hp-sec--best .hp-track{
    display:grid !important;
    grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
    gap:30px !important;
    width:100% !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-track > .hp-pcard{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    height:552px !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-track > .hp-pcard:nth-child(n+5){ display:none !important; }
  body #main .hp-sec--best .hp-pcard > a{
    display:grid !important;
    grid-template-rows:292px 260px !important;
    height:552px !important;
    overflow:visible !important;
    border:1px solid #e5e9e5 !important;
    border-radius:12px !important;
    background:#fff !important;
    box-shadow:0 14px 32px rgba(17,24,20,.045) !important;
  }
  body #main .hp-sec--best .hp-pc-media{
    position:relative !important;
    width:100% !important;
    height:292px !important;
    overflow:visible !important;
    border-radius:12px 12px 0 0 !important;
    background:#f5f7f5 !important;
  }
  body #main .hp-sec--best .hp-pc-media img,
  body #main .hp-sec--best .hp-pc-media .day,
  body #main .hp-sec--best .hp-pc-media .night{
    display:block !important;
    width:100% !important;
    height:292px !important;
    border-radius:12px 12px 0 0 !important;
    object-fit:cover !important;
    object-position:center center !important;
    opacity:1 !important;
    visibility:visible !important;
    filter:none !important;
    transform:none !important;
  }
  body #main .hp-sec--best .hp-pcard:hover .hp-pc-media img,
  body #main .hp-sec--best .hp-pcard:hover .hp-pc-media .day,
  body #main .hp-sec--best .hp-pcard:hover .hp-pc-media .night{
    filter:none !important;
    transform:none !important;
  }
  body #main .hp-sec--best .hp-bdg--remises{
    position:absolute !important;
    left:0 !important;
    top:-15px !important;
    height:34px !important;
    padding:0 15px !important;
    border-radius:4px 7px 7px 0 !important;
    background:#d85f39 !important;
    color:#fff !important;
    font-size:13px !important;
    font-weight:800 !important;
    line-height:34px !important;
    white-space:nowrap !important;
  }
  body #main .hp-sec--best .hp-pc-name{
    display:block !important;
    height:26px !important;
    max-height:26px !important;
    overflow:hidden !important;
    white-space:nowrap !important;
    text-overflow:ellipsis !important;
  }
}

/* 125-4 首页中段与深层模块图片：固定比例、文字不压图、禁止灰块。 */
body #main .hp-space-mosaic{
  width:min(1220px, calc(100% - 96px)) !important;
  max-width:1220px !important;
  margin:0 auto 54px !important;
  align-items:start !important;
}
body #main .hp-space-tile{
  display:grid !important;
  grid-template-rows:auto 26px !important;
  gap:12px !important;
  overflow:visible !important;
}
body #main .hp-space-tile img,
body #main .hp-space-tile--large img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  border-radius:8px !important;
  object-fit:cover !important;
  object-position:center center !important;
  opacity:1 !important;
  visibility:visible !important;
  filter:none !important;
  transform:none !important;
}
body #main .hp-space-tile b{
  display:block !important;
  height:26px !important;
  margin:0 !important;
  color:#1d251f !important;
  font-size:13px !important;
  font-weight:700 !important;
  line-height:26px !important;
  text-align:center !important;
}
@media (min-width:1000px){
  body #main .hp-space-mosaic{
    display:grid !important;
    grid-template-columns:2fr 1fr 1fr !important;
    grid-auto-rows:184px !important;
    gap:14px !important;
  }
  body #main .hp-space-tile--large{ grid-row:span 2 !important; }
}
body #main .hp-en-media,
body #main .hp-md-media,
body .feature-media,
body .v13-install-card-media,
body .usecase-card{
  background-size:cover !important;
  background-position:center center !important;
  background-repeat:no-repeat !important;
}
body #main .hp-en:nth-child(1) .hp-en-media{ background-image:url("home-media/energie-solaire.webp") !important; }
body #main .hp-en:nth-child(2) .hp-en-media{ background-image:url("home-media/energie-230v.webp") !important; }
body #main .hp-en:nth-child(3) .hp-en-media{ background-image:url("home-media/energie-12v.webp") !important; }
body #main .hp-md:nth-child(1) .hp-md-media{ background-image:url("home-media/media-jean-marc.webp") !important; }
body #main .hp-md:nth-child(2) .hp-md-media{ background-image:url("home-media/media-cnews.webp") !important; }
body #main .hp-md:nth-child(3) .hp-md-media{ background-image:url("home-media/media-bfm.webp") !important; }
body #main .hp-en-media img,
body #main .hp-md-media img,
body .feature-media img,
body .v13-install-card-media img,
body .usecase-card img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center center !important;
  opacity:1 !important;
  visibility:visible !important;
  filter:none !important;
  transform:none !important;
}
body .usecase-card:hover,
body .usecase-card:hover img{
  transform:none !important;
  filter:none !important;
}

/* 126. 公告栏 ID 级覆盖：旧规则用了 #shopify-section...，必须同级覆盖才不会省略。 */
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message,
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message p,
.shopify-section--announcement-bar .announcement-bar__message,
.shopify-section--announcement-bar .announcement-bar__message p{
  width:100% !important;
  max-width:none !important;
  min-width:0 !important;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;
  text-overflow:clip !important;
  white-space:nowrap !important;
}
#shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message p,
.shopify-section--announcement-bar .announcement-bar__message p{
  color:#fff !important;
  font-weight:800 !important;
  text-align:center !important;
}
@media (min-width:1000px){
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message p,
  .shopify-section--announcement-bar .announcement-bar__message p{
    font-size:14px !important;
    line-height:42px !important;
  }
}
@media (max-width:999px){
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message p,
  .shopify-section--announcement-bar .announcement-bar__message p{
    font-size:9.5px !important;
    line-height:40px !important;
    letter-spacing:0 !important;
  }
}

/* 126-1 移动端公告完整显示：手机宽度不够放一整句，允许两行，但不截字、不跑偏。 */
@media (max-width:640px){
  #shopify-section-sections--25458834178427__announcement-bar,
  #shopify-section-sections--25458834178427__announcement-bar section,
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar,
  .shopify-section--announcement-bar,
  .shopify-section--announcement-bar section,
  .shopify-section--announcement-bar .announcement-bar{
    height:54px !important;
    min-height:54px !important;
    overflow:hidden !important;
  }
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__list,
  .shopify-section--announcement-bar .announcement-bar__list{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:100% !important;
    max-width:none !important;
    height:54px !important;
    min-height:54px !important;
    padding:0 42px !important;
    overflow:hidden !important;
  }
  #shopify-section-sections--25458834178427__announcement-bar announcement-bar-item:not([hidden]),
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__item:not([hidden]),
  .shopify-section--announcement-bar announcement-bar-item:not([hidden]),
  .shopify-section--announcement-bar .announcement-bar__item:not([hidden]){
    display:block !important;
    flex:1 1 auto !important;
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
    height:54px !important;
    min-height:54px !important;
    overflow:hidden !important;
  }
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message,
  .shopify-section--announcement-bar .announcement-bar__message{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:100% !important;
    max-width:none !important;
    height:54px !important;
    min-height:54px !important;
    overflow:hidden !important;
  }
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar__message p,
  .shopify-section--announcement-bar .announcement-bar__message p{
    display:block !important;
    width:100% !important;
    max-width:none !important;
    height:auto !important;
    min-height:0 !important;
    overflow:visible !important;
    color:#fff !important;
    font-size:10px !important;
    font-weight:800 !important;
    line-height:14px !important;
    text-align:center !important;
    text-overflow:clip !important;
    white-space:normal !important;
  }
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar > button,
  #shopify-section-sections--25458834178427__announcement-bar .announcement-bar > .tap-area,
  .shopify-section--announcement-bar .announcement-bar > button,
  .shopify-section--announcement-bar .announcement-bar > .tap-area{
    top:0 !important;
    width:38px !important;
    height:54px !important;
  }
}

/* 127. PC 二级导航定位：用视窗居中，避免第一个菜单向左溢出被裁切。 */
@media (min-width:1000px){
  body .header__linklist-item.has-dropdown > .mega-menu,
  body .header__linklist-item.mm-plus > .nav-dropdown{
    position:fixed !important;
    top:124px !important;
    left:50% !important;
    right:auto !important;
    width:min(1180px, calc(100vw - 80px)) !important;
    max-width:calc(100vw - 80px) !important;
    min-width:0 !important;
    transform:translateX(-50%) !important;
    z-index:120 !important;
    overflow:visible !important;
  }
  body .header__linklist-item.has-dropdown > .mega-menu{
    box-sizing:border-box !important;
    padding-left:40px !important;
    padding-right:40px !important;
  }
}

.v15-trust-strip,
.v15-trust-strip *,
.v15-trust-strip [style],
.shopify-section-group-footer-group,
.shopify-section-group-footer-group *,
.shopify-section-group-footer-group [style],
.shopify-section--footer,
.shopify-section--footer *,
.shopify-section--footer [style],
footer,
footer *,
footer [style]{
  color:rgba(255,255,255,.84) !important;
}
.v15-trust-strip h1,
.v15-trust-strip h2,
.v15-trust-strip h3,
.v15-trust-strip h4,
.v15-trust-strip strong,
.v15-trust-strip b,
.v15-trust-strip .heading,
.shopify-section-group-footer-group h1,
.shopify-section-group-footer-group h2,
.shopify-section-group-footer-group h3,
.shopify-section-group-footer-group h4,
.shopify-section-group-footer-group strong,
.shopify-section-group-footer-group b,
.shopify-section-group-footer-group .heading,
.shopify-section-group-footer-group .footer__item-title,
.shopify-section--footer h1,
.shopify-section--footer h2,
.shopify-section--footer h3,
.shopify-section--footer h4,
.shopify-section--footer strong,
.shopify-section--footer b,
.shopify-section--footer .heading,
.shopify-section--footer .footer__item-title,
footer h1,
footer h2,
footer h3,
footer h4,
footer strong,
footer b,
footer .heading,
footer .footer__item-title{
  color:#fff !important;
}
.v15-trust-strip a,
.v15-trust-strip a *,
.shopify-section-group-footer-group a,
.shopify-section-group-footer-group a *,
.shopify-section--footer a,
.shopify-section--footer a *,
footer a,
footer a *{
  color:#fff !important;
}

/* ==========================================================================
   130. 0623 真正 EOF 最终覆盖
   说明：
   - 上面仍保留了历史补丁，避免动到太多旧代码；本段在文件真正末尾，专门压住最后残留覆盖。
   - 需求对应：公告栏不换行/不截字、导航 hover 弹出、PROMOS 白字、热卖 4 卡等高等宽、
     夜景 hover 不模糊放大、隐藏 hover 图不被误判破图、footer 全白字。
   ========================================================================== */

:root{
  --lh-final-content:1520px;
  --lh-final-orange:#d85f39;
  --lh-final-yellow:#f4ad3d;
  --lh-final-text:#18221b;
}

/* 顶部黑条：PC 一行，移动端两行居中，不被浏览器宽度截断。 */
body .announcement-bar,
body .announcement-bar--multiple,
body #shopify-section-sections--25458834178427__announcement-bar,
body #shopify-section-sections--25458834178427__announcement-bar .announcement-bar{
  height:42px !important;
  min-height:42px !important;
  overflow:hidden !important;
  background:#262626 !important;
}
body .announcement-bar__list,
body .announcement-bar__item:not([hidden]),
body announcement-bar-item.announcement-bar__item:not([hidden]),
body .announcement-bar__message,
body .announcement-bar__message p{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  max-width:none !important;
  min-width:0 !important;
  height:42px !important;
  margin:0 !important;
  padding:0 !important;
  color:#fff !important;
  font-size:14px !important;
  font-weight:800 !important;
  line-height:42px !important;
  text-align:center !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:clip !important;
}
body .announcement-bar__list{ padding:0 72px !important; }
body .announcement-bar .tap-area{ top:0 !important; height:42px !important; }

/* PC 导航：一级不换行，二级 hover/focus 必须可见。 */
@media (min-width:1000px){
  body .header,
  body .header__wrapper,
  body .shopify-section--header{
    overflow:visible !important;
  }
  body .header__inline-navigation,
  body .header__linklist{
    display:flex !important;
    align-items:center !important;
    flex-wrap:nowrap !important;
    white-space:nowrap !important;
    min-width:0 !important;
  }
  body .header__linklist-link{
    display:inline-flex !important;
    align-items:center !important;
    gap:8px !important;
    white-space:nowrap !important;
    color:#1b1d1c !important;
    font-weight:700 !important;
    line-height:1 !important;
  }
  body .header__linklist-item.has-dropdown > .mega-menu,
  body .header__linklist-item.mm-plus > .nav-dropdown,
  body .header__linklist-item.has-dropdown > .mega-menu[hidden]{
    display:block !important;
    position:fixed !important;
    top:124px !important;
    left:50% !important;
    right:auto !important;
    width:min(1180px, calc(100vw - 80px)) !important;
    max-width:calc(100vw - 80px) !important;
    min-width:0 !important;
    padding-left:40px !important;
    padding-right:40px !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
    transform:translateX(-50%) translateY(8px) !important;
    z-index:120 !important;
    overflow:visible !important;
    box-sizing:border-box !important;
  }
  body .header__linklist-item.has-dropdown:hover > .mega-menu,
  body .header__linklist-item.has-dropdown:focus-within > .mega-menu,
  body .header__linklist-item.mm-plus:hover > .nav-dropdown,
  body .header__linklist-item.mm-plus:focus-within > .nav-dropdown,
  body .header__linklist-item.has-dropdown:hover > .mega-menu[hidden],
  body .header__linklist-item.has-dropdown:focus-within > .mega-menu[hidden]{
    display:block !important;
    visibility:visible !important;
    opacity:1 !important;
    pointer-events:auto !important;
    transform:translateX(-50%) translateY(0) !important;
  }
}

/* PROMOS 百分号：红底白字，黑字问题直接锁死。 */
body .promos-pct-dot,
body .promos-pct-dot *,
body .header__linklist-link .promos-pct-dot,
body .header__linklist-link .promos-pct-dot *{
  color:#fff !important;
}
body .promos-pct-dot,
body .header__linklist-link .promos-pct-dot{
  display:inline-grid !important;
  place-items:center !important;
  width:24px !important;
  height:24px !important;
  min-width:24px !important;
  border-radius:999px !important;
  background:#df2638 !important;
  font-size:13px !important;
  font-weight:900 !important;
  line-height:1 !important;
}

/* 移动端头部：去掉邮件和重复搜索，只留一个搜索。 */
@media (max-width:999px){
  body .announcement-bar,
  body .announcement-bar--multiple,
  body .announcement-bar__list,
  body .announcement-bar__item:not([hidden]),
  body announcement-bar-item.announcement-bar__item:not([hidden]),
  body .announcement-bar__message,
  body .announcement-bar__message p{
    height:54px !important;
    min-height:54px !important;
    font-size:10px !important;
    line-height:14px !important;
    white-space:normal !important;
    overflow:visible !important;
  }
  body .announcement-bar__list{ padding:0 34px !important; }
  body .announcement-bar .tap-area{ width:34px !important; height:54px !important; }
  body .announcement-bar .tap-area[data-action="prev"]{ left:4px !important; }
  body .announcement-bar .tap-area[data-action="next"]{ right:4px !important; }
  body .header__icon-list [aria-controls="newsletter-popup"],
  body .header__icon-list a[aria-label="Newsletter"],
  body .header__icon-list a[aria-label="Recherche"].hidden-pocket,
  body .header__icon-list a[aria-label="Recherche"].hidden-lap,
  body .header__icon-list a[aria-label="Recherche"].hidden-pocket.hidden-lap{
    display:none !important;
  }
  body .header__icon-list a[aria-label="Recherche"].hidden-desk{
    display:inline-grid !important;
  }
}

/* 分类圆圈：与热卖同宽，6/7 个一行展示，间距紧凑。 */
@media (min-width:1000px){
  body #main .lh-circats,
  body #main .lh-circats__wrap,
  body #main .lh-circats__viewport{
    width:min(var(--lh-final-content), calc(100% - 120px)) !important;
    max-width:var(--lh-final-content) !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
  body #main .lh-circats__track{
    display:flex !important;
    align-items:flex-start !important;
    justify-content:center !important;
    gap:34px !important;
  }
  body #main .lh-circats__item{
    flex:0 0 142px !important;
    width:142px !important;
  }
  body #main .lh-circats__circle{
    width:138px !important;
    height:138px !important;
  }
}

/* 热卖：4 个产品等宽等高；图片区域统一 330px；名称过长两行省略。 */
@media (min-width:1000px){
  body #main .hp-sec--best,
  body #main .hp-sec--best .hp-bv-wrap{
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-wrap,
  body #main .hp-sec--best .hp-bv-wrap{
    width:min(var(--lh-final-content), calc(100% - 120px)) !important;
    max-width:var(--lh-final-content) !important;
    margin-left:auto !important;
    margin-right:auto !important;
    padding-left:0 !important;
    padding-right:0 !important;
  }
  body #main .hp-sec--best [data-scroller]{
    width:100% !important;
    overflow:visible !important;
    padding-top:28px !important;
  }
  body #main .hp-sec--best .hp-track{
    display:grid !important;
    grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
    gap:34px !important;
    width:100% !important;
    max-width:100% !important;
    margin:0 !important;
    padding:0 !important;
    overflow:visible !important;
    align-items:stretch !important;
    scroll-snap-type:none !important;
  }
  body #main .hp-sec--best .hp-track > .hp-pcard{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    height:584px !important;
    min-height:584px !important;
    max-height:584px !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-track > .hp-pcard:nth-child(n+5){ display:none !important; }
  body #main .hp-sec--best .hp-pcard > a{
    display:grid !important;
    grid-template-rows:330px 254px !important;
    width:100% !important;
    height:584px !important;
    min-height:584px !important;
    max-height:584px !important;
    overflow:visible !important;
    border:1px solid #e6ebe7 !important;
    border-radius:10px !important;
    background:#fff !important;
    box-shadow:0 14px 30px rgba(23,34,27,.045) !important;
  }
  body #main .hp-sec--best .hp-pc-media{
    position:relative !important;
    width:100% !important;
    height:330px !important;
    min-height:330px !important;
    max-height:330px !important;
    overflow:visible !important;
    border-radius:10px 10px 0 0 !important;
    background:#f5f7f4 !important;
  }
  body #main .hp-sec--best .hp-pc-media img,
  body #main .hp-sec--best .hp-pc-media .day,
  body #main .hp-sec--best .hp-pc-media .night{
    position:absolute !important;
    inset:0 !important;
    display:block !important;
    width:100% !important;
    height:330px !important;
    min-width:100% !important;
    min-height:330px !important;
    max-width:none !important;
    max-height:330px !important;
    border-radius:10px 10px 0 0 !important;
    object-fit:cover !important;
    object-position:center center !important;
    opacity:1 !important;
    filter:none !important;
    transform:none !important;
  }
  body #main .hp-sec--best .hp-pc-media .day{ visibility:visible !important; }
  body #main .hp-sec--best .hp-pc-media .night{ visibility:hidden !important; opacity:1 !important; }
  body #main .hp-sec--best .hp-pcard:hover .hp-pc-media .day{
    visibility:hidden !important;
    opacity:0 !important;
    filter:none !important;
    transform:none !important;
  }
  body #main .hp-sec--best .hp-pcard:hover .hp-pc-media .night{
    visibility:visible !important;
    opacity:1 !important;
    filter:none !important;
    transform:none !important;
  }
  body #main .hp-sec--best .hp-pcard:hover,
  body #main .hp-sec--best .hp-pcard:hover img{
    transform:none !important;
    filter:none !important;
  }
  body #main .hp-sec--best .hp-bdgs{
    position:absolute !important;
    left:0 !important;
    top:-16px !important;
    z-index:8 !important;
    pointer-events:none !important;
  }
  body #main .hp-sec--best .hp-bdg--remises{
    position:static !important;
    height:32px !important;
    padding:0 14px !important;
    border-radius:5px 5px 5px 0 !important;
    background:var(--lh-final-orange) !important;
    color:#fff !important;
    font-size:13px !important;
    font-weight:800 !important;
    line-height:32px !important;
    white-space:nowrap !important;
  }
  body #main .hp-sec--best .hp-bdg--solar{
    position:absolute !important;
    left:16px !important;
    bottom:18px !important;
    z-index:6 !important;
    height:26px !important;
    padding:0 13px !important;
    border-radius:999px !important;
    background:var(--lh-final-yellow) !important;
    color:#fff !important;
    font-size:11px !important;
    font-weight:800 !important;
    line-height:26px !important;
    letter-spacing:.02em !important;
    text-transform:uppercase !important;
  }
  body #main .hp-sec--best .hp-bdg--solar::before{
    content:"" !important;
    display:inline-block !important;
    width:8px !important;
    height:8px !important;
    margin-right:7px !important;
    border:2px solid #fff !important;
    border-radius:50% !important;
    vertical-align:middle !important;
  }
  body #main .hp-sec--best .hp-pc-fav{
    position:absolute !important;
    right:14px !important;
    bottom:14px !important;
    z-index:7 !important;
    width:38px !important;
    height:38px !important;
    border-radius:50% !important;
    background:#fff !important;
    box-shadow:0 5px 14px rgba(0,0,0,.13) !important;
  }
  body #main .hp-sec--best .hp-pc-body{
    display:grid !important;
    grid-template-rows:30px 44px 24px 46px 26px !important;
    gap:7px !important;
    height:254px !important;
    min-height:254px !important;
    max-height:254px !important;
    padding:18px 18px 16px !important;
    overflow:hidden !important;
  }
  body #main .hp-sec--best .hp-pc-pvc{
    align-self:start !important;
    justify-self:start !important;
    height:30px !important;
    padding:0 16px !important;
    border-radius:999px !important;
    background:var(--lh-final-orange) !important;
    color:#fff !important;
    font-size:14px !important;
    font-weight:800 !important;
    line-height:30px !important;
    white-space:nowrap !important;
  }
  body #main .hp-sec--best .hp-pc-name{
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    height:44px !important;
    min-height:44px !important;
    max-height:44px !important;
    margin:0 !important;
    overflow:hidden !important;
    color:var(--lh-final-text) !important;
    font-size:16px !important;
    font-weight:800 !important;
    line-height:22px !important;
  }
  body #main .hp-sec--best .hp-pc-rate{
    display:flex !important;
    align-items:center !important;
    gap:8px !important;
    height:24px !important;
    color:#909790 !important;
    font-size:13px !important;
    line-height:24px !important;
    overflow:hidden !important;
  }
  body #main .hp-sec--best .hp-stars{
    color:#f5a623 !important;
    font-size:15px !important;
    letter-spacing:1px !important;
    white-space:nowrap !important;
  }
  body #main .hp-sec--best .hp-pc-price{
    display:flex !important;
    flex-direction:column !important;
    justify-content:center !important;
    height:46px !important;
    margin:0 !important;
    overflow:hidden !important;
  }
  body #main .hp-sec--best .hp-pc-price b{
    color:#111 !important;
    font-size:21px !important;
    font-weight:900 !important;
    line-height:24px !important;
  }
  body #main .hp-sec--best .hp-pc-oldprice{
    color:#a8ada8 !important;
    font-size:14px !important;
    line-height:18px !important;
  }
  body #main .hp-sec--best .hp-pc-stock{
    display:flex !important;
    align-items:center !important;
    gap:8px !important;
    height:26px !important;
    margin:0 !important;
    color:#397c46 !important;
    font-size:14px !important;
    font-weight:800 !important;
    line-height:26px !important;
  }
  body #main .hp-sec--best .hp-pc-stock::before{
    content:"✓" !important;
    display:inline-grid !important;
    place-items:center !important;
    width:18px !important;
    height:18px !important;
    border-radius:50% !important;
    background:#61af5d !important;
    color:#fff !important;
    font-size:12px !important;
    font-weight:900 !important;
    line-height:1 !important;
  }
}

/* 移动端热卖横向滑动，不把 4 个卡片挤成细条。 */
@media (max-width:999px){
  body #main .hp-sec--best .hp-wrap,
  body #main .hp-sec--best .hp-bv-wrap{
    width:100% !important;
    max-width:100% !important;
    padding-left:0 !important;
    padding-right:0 !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best [data-scroller]{
    overflow-x:auto !important;
    overflow-y:visible !important;
    padding:24px 18px 8px !important;
    scroll-snap-type:x mandatory !important;
    scrollbar-width:none !important;
  }
  body #main .hp-sec--best [data-scroller]::-webkit-scrollbar{ display:none !important; }
  body #main .hp-sec--best .hp-track{
    display:flex !important;
    flex-wrap:nowrap !important;
    gap:16px !important;
    width:max-content !important;
    max-width:none !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-track > .hp-pcard,
  body #main .hp-sec--best .hp-track > .hp-pcard:nth-child(n+5){
    display:block !important;
    flex:0 0 min(78vw, 318px) !important;
    width:min(78vw, 318px) !important;
    height:500px !important;
    min-height:500px !important;
    max-height:500px !important;
    scroll-snap-align:start !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-pcard > a{
    display:grid !important;
    grid-template-rows:255px 245px !important;
    height:500px !important;
    border:1px solid #e6ebe7 !important;
    border-radius:10px !important;
    background:#fff !important;
    overflow:visible !important;
  }
  body #main .hp-sec--best .hp-pc-media,
  body #main .hp-sec--best .hp-pc-media img,
  body #main .hp-sec--best .hp-pc-media .day{
    height:255px !important;
    border-radius:10px 10px 0 0 !important;
    object-fit:cover !important;
    object-position:center center !important;
    filter:none !important;
    transform:none !important;
  }
  body #main .hp-sec--best .hp-pc-media .night{
    visibility:hidden !important;
    opacity:1 !important;
  }
  body #main .hp-sec--best .hp-pc-body{
    display:grid !important;
    grid-template-rows:28px 42px 22px 44px 24px !important;
    gap:7px !important;
    height:245px !important;
    padding:16px 16px 14px !important;
    overflow:hidden !important;
  }
  body #main .hp-sec--best .hp-pc-name{
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    height:42px !important;
    overflow:hidden !important;
    line-height:21px !important;
  }
}

/* 应用场景：容器宽度恢复、图片与文字分离，不压标题。 */
body #main .hp-space-mosaic{
  width:min(var(--lh-final-content), calc(100% - 120px)) !important;
  max-width:var(--lh-final-content) !important;
  margin:0 auto 56px !important;
  align-items:start !important;
}
body #main .hp-space-tile{
  display:grid !important;
  grid-template-rows:minmax(0,1fr) 24px !important;
  gap:10px !important;
  overflow:visible !important;
}
body #main .hp-space-tile img,
body #main .hp-space-tile--large img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  border-radius:8px !important;
  object-fit:cover !important;
  object-position:center center !important;
  opacity:1 !important;
  visibility:visible !important;
  filter:none !important;
  transform:none !important;
}
body #main .hp-space-tile b{
  display:block !important;
  height:24px !important;
  margin:0 !important;
  color:#1d251f !important;
  font-size:13px !important;
  font-weight:700 !important;
  line-height:24px !important;
  text-align:center !important;
}

/* 热卖 hover 夜景图：用最高 specificity 盖掉旧规则的 opacity:0，避免被破图脚本误判。 */
body #main section.hp-sec.hp-sec--best .hp-bv-wrap .hp-track > article.hp-pcard .hp-pc-media img.night,
body #main section.hp-sec.hp-sec--best .hp-bv-wrap .hp-track > article.hp-pcard .hp-pc-media .night,
body #main section.hp-sec.hp-sec--best .hp-track > article.hp-pcard .hp-pc-media img.night,
body #main section.hp-sec.hp-sec--best .hp-track > article.hp-pcard .hp-pc-media .night{
  opacity:1 !important;
  visibility:hidden !important;
  filter:none !important;
  transform:none !important;
}
body #main section.hp-sec.hp-sec--best .hp-bv-wrap .hp-track > article.hp-pcard:hover .hp-pc-media img.day,
body #main section.hp-sec.hp-sec--best .hp-bv-wrap .hp-track > article.hp-pcard:hover .hp-pc-media .day,
body #main section.hp-sec.hp-sec--best .hp-track > article.hp-pcard:hover .hp-pc-media img.day,
body #main section.hp-sec.hp-sec--best .hp-track > article.hp-pcard:hover .hp-pc-media .day{
  opacity:0 !important;
  visibility:hidden !important;
  filter:none !important;
  transform:none !important;
}
body #main section.hp-sec.hp-sec--best .hp-bv-wrap .hp-track > article.hp-pcard:hover .hp-pc-media img.night,
body #main section.hp-sec.hp-sec--best .hp-bv-wrap .hp-track > article.hp-pcard:hover .hp-pc-media .night,
body #main section.hp-sec.hp-sec--best .hp-track > article.hp-pcard:hover .hp-pc-media img.night,
body #main section.hp-sec.hp-sec--best .hp-track > article.hp-pcard:hover .hp-pc-media .night{
  opacity:1 !important;
  visibility:visible !important;
  filter:none !important;
  transform:none !important;
}

/* ============================================================
   2026-06-24 真实尾部最终覆盖：PC 二级菜单片区
   ------------------------------------------------------------
   文件前面有多套旧 mega-menu 样式，这一段放在最后一个非 footer 模块后，
   专门修复下拉菜单片区：全宽白底、内容居中、图片不溢出、Accessoires
   保持五个配件图标一排。
   ============================================================ */
@media (min-width:1000px){
  html body .header__linklist-item.has-dropdown{ position:static !important; }
  html body .header__linklist-item.has-dropdown:hover::before,
  html body .header__linklist-item.has-dropdown:focus-within::before,
  html body .mega-menu::after{ display:none !important; content:none !important; }

  html body .header__linklist-item.has-dropdown > .mega-menu,
  html body .header__linklist-item.has-dropdown > .mega-menu[hidden]{
    display:block !important;
    position:fixed !important;
    top:124px !important;
    left:0 !important;
    right:0 !important;
    width:100vw !important;
    max-width:none !important;
    min-width:0 !important;
    height:auto !important;
    min-height:0 !important;
    max-height:calc(100vh - 124px) !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:#fff !important;
    box-shadow:0 18px 34px rgba(21,31,24,.10) !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
    transform:none !important;
    overflow:hidden !important;
    z-index:130 !important;
    box-sizing:border-box !important;
  }
  html body .header__linklist-item.has-dropdown:hover > .mega-menu,
  html body .header__linklist-item.has-dropdown:focus-within > .mega-menu,
  html body .header__linklist-item.has-dropdown:hover > .mega-menu[hidden],
  html body .header__linklist-item.has-dropdown:focus-within > .mega-menu[hidden]{
    visibility:visible !important;
    opacity:1 !important;
    pointer-events:auto !important;
  }

  html body .mega-menu.mm-uniform > .container{
    width:min(1180px, calc(100vw - 96px)) !important;
    max-width:1180px !important;
    margin:0 auto !important;
    padding:42px 0 44px !important;
    box-sizing:border-box !important;
  }
  html body .mm-uniform .mega-menu__inner{
    display:grid !important;
    grid-template-columns:minmax(220px,.78fr) minmax(220px,.78fr) minmax(300px,374px) !important;
    align-items:start !important;
    gap:56px !important;
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
    overflow:visible !important;
  }
  html body .mm-uniform .mega-menu__column{ min-width:0 !important; margin:0 !important; padding:0 !important; }
  html body .mm-uniform .linklist{ display:grid !important; gap:12px !important; margin:0 !important; padding:0 !important; }
  html body .mm-uniform .linklist__item{ margin:0 !important; padding:0 !important; list-style:none !important; }
  html body .mm-uniform .linklist__item a{
    color:#252927 !important;
    font-size:15px !important;
    line-height:1.36 !important;
    font-weight:500 !important;
    letter-spacing:0 !important;
    text-decoration:none !important;
  }
  html body .mm-uniform .mm-col-title,
  html body .mm-uniform .mm-col-title-link{
    margin:0 0 14px !important;
    color:#276B42 !important;
    font-size:12px !important;
    line-height:1.2 !important;
    font-weight:800 !important;
    letter-spacing:.12em !important;
    text-transform:uppercase !important;
    text-decoration:none !important;
  }
  html body .mm-uniform .mega-menu__images-wrapper{
    display:grid !important;
    grid-template-columns:1fr !important;
    justify-self:end !important;
    gap:14px !important;
    width:100% !important;
    max-width:374px !important;
    margin:0 !important;
    padding:0 !important;
    overflow:visible !important;
  }
  html body .mm-uniform .mega-menu__image-push{ display:block !important; width:100% !important; margin:0 !important; padding:0 !important; text-decoration:none !important; }
  html body .mm-uniform .mega-menu__image-wrapper{
    display:block !important;
    width:100% !important;
    aspect-ratio:374 / 427 !important;
    margin:0 !important;
    border-radius:8px !important;
    overflow:hidden !important;
    background:#f6f8f6 !important;
  }
  html body .mm-uniform .mega-menu__image{ display:block !important; width:100% !important; height:100% !important; object-fit:cover !important; object-position:center center !important; transform:none !important; filter:none !important; }
  html body .mm-uniform .mega-menu__heading{
    display:block !important;
    margin:12px 0 0 !important;
    color:#276B42 !important;
    font-size:13px !important;
    line-height:1.2 !important;
    font-weight:800 !important;
    letter-spacing:.08em !important;
    text-align:center !important;
    text-transform:uppercase !important;
  }
  html body #desktop-menu-4.mm-uniform > .container{ width:min(1240px, calc(100vw - 96px)) !important; max-width:1240px !important; }
  html body #desktop-menu-4.mm-uniform .mega-menu__inner{ grid-template-columns:minmax(160px,.55fr) minmax(160px,.55fr) minmax(520px,748px) !important; gap:42px !important; }
  html body #desktop-menu-4.mm-uniform .mega-menu__images-wrapper{ grid-template-columns:repeat(2, minmax(0,1fr)) !important; max-width:748px !important; gap:22px !important; }
  html body #desktop-menu-5.mm-uniform > .container{ width:min(980px, calc(100vw - 96px)) !important; max-width:980px !important; padding:36px 0 38px !important; }
  html body #desktop-menu-5.mm-uniform .mega-menu__inner{ display:block !important; }
  html body #desktop-menu-5 .mm-accessory-strip{ display:grid !important; grid-template-columns:repeat(5, minmax(0,1fr)) !important; align-items:end !important; justify-items:center !important; gap:34px !important; width:100% !important; margin:0 auto !important; padding:0 !important; }
  html body #desktop-menu-5 .mm-accessory-card{ display:grid !important; justify-items:center !important; gap:12px !important; min-width:0 !important; color:#111 !important; text-decoration:none !important; }
  html body #desktop-menu-5 .mm-accessory-img{ display:grid !important; place-items:center !important; width:132px !important; height:102px !important; }
  html body #desktop-menu-5 .mm-accessory-img img{ display:block !important; width:100% !important; height:100% !important; object-fit:contain !important; transform:none !important; }
  html body #desktop-menu-5 .mm-accessory-label{ color:#1d251f !important; font-size:11px !important; line-height:1.2 !important; font-weight:800 !important; letter-spacing:.08em !important; text-align:center !important; text-transform:uppercase !important; }
}

/* Footer：绿底保留，顶部信任条和底部所有文字强制白色系。 */
body .v15-trust-strip,
body .v15-trust-strip *,
body .v15-trust-strip [style],
body .shopify-section-group-footer-group,
body .shopify-section-group-footer-group *,
body .shopify-section-group-footer-group [style],
body .shopify-section--footer,
body .shopify-section--footer *,
body .shopify-section--footer [style],
body footer,
body footer *,
body footer [style]{
  color:rgba(255,255,255,.84) !important;
}
body .v15-trust-strip h1,
body .v15-trust-strip h2,
body .v15-trust-strip h3,
body .v15-trust-strip h4,
body .v15-trust-strip h5,
body .v15-trust-strip h6,
body .v15-trust-strip strong,
body .v15-trust-strip b,
body .v15-trust-strip .heading,
body .v15-trust-strip .v15-trust-rating-score,
body .v15-trust-strip .v15-trust-rating-score strong,
body .shopify-section-group-footer-group h1,
body .shopify-section-group-footer-group h2,
body .shopify-section-group-footer-group h3,
body .shopify-section-group-footer-group h4,
body .shopify-section-group-footer-group h5,
body .shopify-section-group-footer-group h6,
body .shopify-section-group-footer-group strong,
body .shopify-section-group-footer-group b,
body .shopify-section-group-footer-group .heading,
body .shopify-section-group-footer-group .footer__item-title,
body .shopify-section--footer h1,
body .shopify-section--footer h2,
body .shopify-section--footer h3,
body .shopify-section--footer h4,
body .shopify-section--footer h5,
body .shopify-section--footer h6,
body .shopify-section--footer strong,
body .shopify-section--footer b,
body .shopify-section--footer .heading,
body .shopify-section--footer .footer__item-title,
body footer h1,
body footer h2,
body footer h3,
body footer h4,
body footer h5,
body footer h6,
body footer strong,
body footer b,
body footer .heading,
body footer .footer__item-title{
  color:#fff !important;
}
body .v15-trust-strip a,
body .v15-trust-strip a *,
body .shopify-section-group-footer-group a,
body .shopify-section-group-footer-group a *,
body .shopify-section--footer a,
body .shopify-section--footer a *,
body footer a,
body footer a *{
  color:#fff !important;
}
/* ============================================================
   2026-06-24 EOF 最终覆盖：PC 二级导航
   ------------------------------------------------------------
   文件内有多段历史 mega-menu 规则。此块固定在真正文件末尾，
   专门防止二级菜单被旧规则变成窄圆角浮层、图片外溢或灰色遮罩。
   ============================================================ */
@media (min-width:1000px){
  html body .header__linklist-item.has-dropdown{position:static!important}
  html body .header__linklist-item.has-dropdown:hover::before,
  html body .header__linklist-item.has-dropdown:focus-within::before,
  html body .mega-menu::before,
  html body .mega-menu::after{display:none!important;content:none!important}
  html body .header__linklist-item.has-dropdown>.mega-menu,
  html body .header__linklist-item.has-dropdown>.mega-menu[hidden]{
    display:block!important;position:fixed!important;top:124px!important;left:0!important;right:0!important;
    width:100vw!important;max-width:none!important;min-width:0!important;height:auto!important;min-height:0!important;
    max-height:calc(100vh - 124px)!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;
    background:#fff!important;box-shadow:0 18px 34px rgba(21,31,24,.10)!important;clip-path:none!important;
    visibility:hidden!important;opacity:0!important;pointer-events:none!important;transform:none!important;overflow:hidden!important;
    z-index:130!important;box-sizing:border-box!important
  }
  html body .header__linklist-item.has-dropdown:hover>.mega-menu,
  html body .header__linklist-item.has-dropdown:focus-within>.mega-menu,
  html body .header__linklist-item.has-dropdown:hover>.mega-menu[hidden],
  html body .header__linklist-item.has-dropdown:focus-within>.mega-menu[hidden]{visibility:visible!important;opacity:1!important;pointer-events:auto!important}
  html body .mega-menu.mm-uniform>.container{width:min(1180px,calc(100vw - 96px))!important;max-width:1180px!important;margin:0 auto!important;padding:42px 0 44px!important;box-sizing:border-box!important}
  html body .mm-uniform .mega-menu__inner{display:grid!important;grid-template-columns:minmax(220px,.78fr) minmax(220px,.78fr) minmax(300px,374px)!important;align-items:start!important;gap:56px!important;width:100%!important;margin:0!important;padding:0!important;overflow:visible!important}
  html body .mm-uniform .mega-menu__column{min-width:0!important;margin:0!important;padding:0!important}
  html body .mm-uniform .linklist{display:grid!important;gap:12px!important;margin:0!important;padding:0!important}
  html body .mm-uniform .linklist__item{margin:0!important;padding:0!important;list-style:none!important}
  html body .mm-uniform .linklist__item a{color:#252927!important;font-size:15px!important;line-height:1.36!important;font-weight:500!important;letter-spacing:0!important;text-decoration:none!important}
  html body .mm-uniform .mm-col-title,
  html body .mm-uniform .mm-col-title-link{margin:0 0 14px!important;color:#276B42!important;font-size:12px!important;line-height:1.2!important;font-weight:800!important;letter-spacing:.12em!important;text-transform:uppercase!important;text-decoration:none!important}
  html body .mm-uniform .mega-menu__images-wrapper{display:grid!important;grid-template-columns:1fr!important;justify-self:end!important;gap:14px!important;width:100%!important;max-width:374px!important;margin:0!important;padding:0!important;overflow:visible!important}
  html body .mm-uniform .mega-menu__image-push{display:block!important;width:100%!important;margin:0!important;padding:0!important;text-decoration:none!important}
  html body .mm-uniform .mega-menu__image-wrapper{display:block!important;width:100%!important;aspect-ratio:374/427!important;margin:0!important;border-radius:8px!important;overflow:hidden!important;background:#f6f8f6!important}
  html body .mm-uniform .mega-menu__image{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center center!important;transform:none!important;filter:none!important}
  html body .mm-uniform .mega-menu__heading{display:block!important;margin:12px 0 0!important;color:#276B42!important;font-size:13px!important;line-height:1.2!important;font-weight:800!important;letter-spacing:.08em!important;text-align:center!important;text-transform:uppercase!important}
  html body #desktop-menu-4.mm-uniform>.container{width:min(1240px,calc(100vw - 96px))!important;max-width:1240px!important}
  html body #desktop-menu-4.mm-uniform .mega-menu__inner{grid-template-columns:minmax(160px,.55fr) minmax(160px,.55fr) minmax(520px,748px)!important;gap:42px!important}
  html body #desktop-menu-4.mm-uniform .mega-menu__images-wrapper{grid-template-columns:repeat(2,minmax(0,1fr))!important;max-width:748px!important;gap:22px!important}
  html body #desktop-menu-5.mm-uniform>.container{width:min(980px,calc(100vw - 96px))!important;max-width:980px!important;padding:36px 0 38px!important}
  html body #desktop-menu-5.mm-uniform .mega-menu__inner{display:block!important}
  html body #desktop-menu-5 .mm-accessory-strip{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;align-items:end!important;justify-items:center!important;gap:34px!important;width:100%!important;margin:0 auto!important;padding:0!important}
  html body #desktop-menu-5 .mm-accessory-card{display:grid!important;justify-items:center!important;gap:12px!important;min-width:0!important;color:#111!important;text-decoration:none!important}
  html body #desktop-menu-5 .mm-accessory-img{display:grid!important;place-items:center!important;width:132px!important;height:102px!important}
  html body #desktop-menu-5 .mm-accessory-img img{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;transform:none!important}
  html body #desktop-menu-5 .mm-accessory-label{color:#1d251f!important;font-size:11px!important;line-height:1.2!important;font-weight:800!important;letter-spacing:.08em!important;text-align:center!important;text-transform:uppercase!important}
}

/* 2026-08-13 — authoritative template mini-cart behavior and compact rows. */
html body .lh-mini-cart-trigger{position:relative!important}
html body #mini-cart.mini-cart{
  top:var(--mini-cart-top,86px)!important;left:var(--mini-cart-left,auto)!important;right:auto!important;
  width:var(--mini-cart-width,390px)!important;max-width:calc(100vw - 24px)!important;height:auto!important;
  max-height:var(--mini-cart-max-height,calc(100vh - 110px))!important;overflow:hidden!important;
  pointer-events:none!important;box-sizing:border-box!important
}
html body #mini-cart.mini-cart[open]{pointer-events:auto!important}
html body #mini-cart::before{left:var(--mini-cart-arrow-x,335px)!important;right:auto!important;transform:translateX(-50%) rotate(45deg)!important}
html body #mini-cart .drawer__header{position:relative!important;display:flex!important;align-items:center!important;justify-content:center!important;min-height:54px!important;padding:14px 48px 12px 18px!important;box-sizing:border-box!important}
html body #mini-cart .drawer__title{display:block!important;width:100%!important;margin:0!important;font-size:16px!important;line-height:1.3!important;text-align:center!important}
html body #mini-cart .drawer__close-button{display:grid!important;place-items:center!important;right:14px!important;top:10px!important;width:36px!important;height:36px!important;padding:8px!important;border:0!important;background:transparent!important;cursor:pointer!important;z-index:3!important}
html body #mini-cart .drawer__content{display:block!important;max-height:calc(var(--mini-cart-max-height,calc(100vh - 110px)) - 54px)!important;padding:0 16px 16px!important;overflow-y:auto!important;overscroll-behavior:contain!important;box-sizing:border-box!important;text-align:left!important}
html body #mini-cart .cart-empty{margin:0!important;padding:28px 8px!important;color:#666!important;font-size:14px!important;text-align:center!important}
html body #mini-cart .cart-mini-list{display:block!important}
html body #mini-cart .cart-mini-row{display:grid!important;grid-template-columns:64px minmax(0,1fr) auto!important;gap:12px!important;align-items:start!important;margin:0!important;padding:14px 0!important;border-bottom:1px solid #ecefec!important;background:#fff!important}
html body #mini-cart .cart-mini-row__image,html body #mini-cart .cart-mini-row__image img{display:block!important;width:64px!important;height:64px!important;border-radius:8px!important}
html body #mini-cart .cart-mini-row__image img{object-fit:cover!important;background:#f3f5f3!important}
html body #mini-cart .cart-mini-row__info{min-width:0!important}
html body #mini-cart .cart-mini-row__info h3{display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;overflow:hidden!important;margin:0 0 4px!important;color:#202420!important;font-size:13px!important;line-height:1.35!important;font-weight:750!important}
html body #mini-cart .cart-mini-row__info h3 a{color:inherit!important;text-decoration:none!important}
html body #mini-cart .cart-mini-row__info small{display:block!important;margin-bottom:7px!important;color:#747974!important;font-size:11px!important}
html body #mini-cart .cart-mini-row__controls{display:flex!important;align-items:center!important;gap:7px!important;min-height:28px!important}
html body #mini-cart .cart-mini-row__controls button:not(.cart-mini-row__remove){display:grid!important;place-items:center!important;width:26px!important;height:26px!important;padding:0!important;border:1px solid #d9ded9!important;border-radius:50%!important;background:#fff!important;color:#202420!important;font-size:15px!important;cursor:pointer!important}
html body #mini-cart .cart-mini-row__controls span{min-width:18px!important;text-align:center!important;font-size:12px!important;font-weight:700!important}
html body #mini-cart .cart-mini-row__remove{margin-left:4px!important;padding:4px!important;border:0!important;background:transparent!important;color:#707570!important;font-size:11px!important;text-decoration:underline!important;cursor:pointer!important}
html body #mini-cart .cart-mini-row__price{padding-top:2px!important;color:#202420!important;font-size:13px!important;line-height:1.3!important;white-space:nowrap!important}
html body #mini-cart .cart-mini-summary{position:sticky!important;bottom:-16px!important;margin:0 -16px -16px!important;padding:14px 16px 16px!important;border-top:1px solid #e1e5e1!important;background:#fff!important;box-shadow:0 -9px 20px rgba(25,35,28,.06)!important}
html body #mini-cart .cart-mini-summary>div{display:flex!important;justify-content:space-between!important;gap:16px!important;margin-bottom:12px!important;color:#202420!important;font-size:15px!important}
html body #mini-cart .cart-mini-view,html body #mini-cart .cart-mini-checkout{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;height:42px!important;border-radius:999px!important;font-size:13px!important;font-weight:800!important;text-decoration:none!important;box-sizing:border-box!important;cursor:pointer!important}
html body #mini-cart .cart-mini-view{margin-bottom:8px!important;border:1px solid #276b42!important;background:#fff!important;color:#276b42!important}
html body #mini-cart .cart-mini-checkout{border:1px solid #276b42!important;background:#276b42!important;color:#fff!important}

/* Production Shopify theme parity: the cart is a stable right-side drawer,
   never a floating box whose position changes with the header icon.  Keep
   these rules scoped to generated locale pages so the authored root template
   remains untouched. */
html body[data-locale-dir] #mini-cart.mini-cart{
  position:fixed!important;inset:0 0 0 auto!important;top:0!important;right:0!important;left:auto!important;
  width:min(430px,100vw)!important;max-width:100vw!important;height:100dvh!important;max-height:none!important;
  border:0!important;border-radius:0!important;background:#fff!important;overflow:hidden!important;
  opacity:1!important;visibility:visible!important;pointer-events:none!important;
  transform:translateX(100%)!important;transition:transform .3s cubic-bezier(.33,1,.68,1)!important;
  box-shadow:none!important;z-index:999999!important
}
html body[data-locale-dir] #mini-cart.mini-cart[open]{
  pointer-events:auto!important;transform:translateX(0)!important;
  box-shadow:-100vw 0 0 100vw rgba(20,24,20,.34),-18px 0 45px rgba(20,30,22,.16)!important
}
html body[data-locale-dir] #mini-cart::before{display:none!important}
html body[data-locale-dir] #mini-cart>.drawer__overlay{position:absolute!important;inset:0!important;background:transparent!important;pointer-events:none!important}
html body[data-locale-dir] #mini-cart .drawer__header{position:relative!important;z-index:2!important;min-height:72px!important;padding:20px 24px!important;border-bottom:1px solid #e7ebe7!important;background:#fff!important}
html body[data-locale-dir] #mini-cart .drawer__close-button{display:grid!important;place-items:center!important;width:42px!important;height:42px!important;cursor:pointer!important}
html body[data-locale-dir] #mini-cart .drawer__content{position:relative!important;z-index:1!important;max-height:calc(100dvh - 72px)!important;padding:0 24px 24px!important;overflow-y:auto!important;background:#fff!important}
html body[data-locale-dir].lh-mini-cart-open{overflow:hidden!important}
@media(max-width:719px){
  html body #mini-cart.mini-cart{border-radius:12px!important}
  html body #mini-cart::before{display:none!important}
  html body #mini-cart .cart-mini-row{grid-template-columns:56px minmax(0,1fr)!important}
  html body #mini-cart .cart-mini-row__image,html body #mini-cart .cart-mini-row__image img{width:56px!important;height:56px!important}
  html body #mini-cart .cart-mini-row__price{grid-column:2!important;margin-top:-3px!important}
}

/* 2026-08-13 — official lumihome.com service strip.
   Geometry, colors and the four SVG assets mirror the live store. */
html body .lh-service-strip,
html body .lh-service-strip *{
  color:#333!important;
  box-sizing:border-box!important;
}
html body .lh-service-strip{
  display:block!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
  background:#f7f9f7!important;
  overflow:hidden!important;
}
html body .lh-service-strip__inner{
  width:min(1600px,calc(100% - 110px))!important;
  max-width:1600px!important;
  margin:0 auto!important;
  padding:40px 0!important;
}
html body .lh-service-strip__list{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:48px!important;
  align-items:start!important;
  width:100%!important;
}
html body .lh-service-strip__item{
  display:block!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  text-align:center!important;
}
html body .lh-service-strip__icon{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  height:50px!important;
  margin:0 0 16px!important;
}
html body .lh-service-strip__icon img{
  display:block!important;
  width:100px!important;
  height:50px!important;
  max-width:100px!important;
  object-fit:contain!important;
}
html body .lh-service-strip__item h2{
  margin:0 0 13px!important;
  color:#333!important;
  font-family:Poppins,sans-serif!important;
  font-size:12px!important;
  line-height:1.23!important;
  font-weight:600!important;
  letter-spacing:1px!important;
  text-transform:uppercase!important;
}
html body .lh-service-strip__item p{
  margin:0!important;
  color:#333!important;
  font-family:Poppins,sans-serif!important;
  font-size:15px!important;
  line-height:26px!important;
  font-weight:400!important;
}
html body .lh-service-strip__dots{display:none!important}
html body .lh-inline-official-icon{
  display:inline-block!important;
  width:25px!important;
  height:16px!important;
  margin:0 6px 0 0!important;
  object-fit:contain!important;
  vertical-align:-3px!important;
}
html body .lh-official-stars{
  display:inline-block!important;
  width:92px!important;
  height:auto!important;
  max-width:92px!important;
  object-fit:contain!important;
  vertical-align:middle!important;
}
html body .product-official-copy{font-size:16px!important;line-height:1.75!important}
html body .product-official-copy h2,
html body .product-official-copy h3{margin:0 0 16px!important;color:#1b211d!important}
html body .product-official-copy p{margin:0 0 18px!important}
html body .product-official-copy img{display:block!important;max-width:100%!important;height:auto!important;margin:22px auto!important}

@media(max-width:719px){
  html body .lh-service-strip__inner{
    width:100%!important;
    max-width:none!important;
    padding:34px 0 22px!important;
  }
  html body .lh-service-strip__list{
    display:flex!important;
    gap:0!important;
    width:100%!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    scroll-snap-type:x mandatory!important;
    scrollbar-width:none!important;
    -webkit-overflow-scrolling:touch!important;
  }
  html body .lh-service-strip__list::-webkit-scrollbar{display:none!important}
  html body .lh-service-strip__item{
    flex:0 0 100%!important;
    width:100%!important;
    padding:0 28px!important;
    scroll-snap-align:start!important;
  }
  html body .lh-service-strip__dots{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;
    margin:18px 0 0!important;
  }
  html body .lh-service-strip__dot{
    display:block!important;
    width:6px!important;
    height:6px!important;
    border-radius:50%!important;
    background:#c6cbc7!important;
  }
  html body .lh-service-strip__dot.is-active{background:#276b42!important}
}
.lh-consent{position:fixed;z-index:100000;left:24px;bottom:24px;width:min(440px,calc(100vw - 32px));padding:18px 20px;border:1px solid #dce5df;border-radius:12px;background:#fff;box-shadow:0 18px 50px rgba(14,40,24,.2);font-family:Poppins,Arial,sans-serif;color:#1d2821}.lh-consent p{margin:0 0 14px;font-size:13px;line-height:1.55}.lh-consent div{display:flex;justify-content:flex-end;gap:10px}.lh-consent button{min-height:40px;padding:0 18px;border:1px solid #276c43;border-radius:999px;background:#fff;color:#276c43;font-weight:700;cursor:pointer}.lh-consent [data-consent-accept]{background:#276c43;color:#fff}@media(max-width:600px){.lh-consent{left:16px;bottom:16px;padding:16px}.lh-consent div{justify-content:stretch}.lh-consent button{flex:1}}

/* 2026-08-20 — mobile announcement geometry from the Shopify header.
   The arrows retain their authored width; the central message consumes the
   remaining row instead of shrinking its text to an 86px sliver. */
@media(max-width:719px){
  html body .announcement-bar{display:flex!important;align-items:center!important;width:100%!important;padding:0!important}
  html body .announcement-bar__list{display:flex!important;flex:1 1 auto!important;align-items:center!important;justify-content:center!important;width:auto!important;min-width:0!important;padding:0!important}
  html body .announcement-bar__item,
  html body .announcement-bar__item:not([hidden]),
  html body announcement-bar-item.announcement-bar__item:not([hidden]){flex:1 1 100%!important;width:100%!important;min-width:0!important;padding:0!important}
  html body .announcement-bar__message{display:flex!important;flex:1 1 auto!important;align-items:center!important;justify-content:center!important;width:100%!important;min-width:0!important;padding:6px 0!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important}
  html body .announcement-bar__message p{display:flex!important;flex:1 1 auto!important;align-items:center!important;justify-content:center!important;width:100%!important;min-width:0!important;margin:0!important;padding:0!important;white-space:nowrap!important;overflow:visible!important;text-overflow:clip!important;font-size:9px!important;line-height:14px!important}
  html body .announcement-bar__message .lh-inline-official-icon{width:18px!important;height:14px!important;margin-right:4px!important;filter:brightness(0) invert(1)!important}
}

/* 2026-08-20 — 0819 Word requirement: keep the user-manual upload slot
   separate from the supplied technical drawing. The client folder contains
   no genuine manual PDF, so the slot is visible but deliberately inert. */
.pdf-chip--pending{
  cursor:default;
  border-style:dashed;
  background:#f7f8f7;
  color:#454b47;
}
.pdf-chip--pending .pdf-icon-red{background:#7b817d}
.pdf-chip--pending .pdf-size{font-style:italic}
.pdf-chip--pending:hover{border-color:#cfd5d1;box-shadow:none}

/* 2026-08-20 — 0819 all-market completion.
   These rules extend the downloaded Shopify typography, spacing and borders;
   they do not replace the approved header, footer or homepage composition. */
.lh0819-pdp-facts{
  border-top:1px solid #e3e8e4;
  border-bottom:1px solid #e3e8e4;
  background:#fff;
}
.lh0819-pdp-facts__inner{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  width:min(1280px,calc(100% - 48px));
  margin:0 auto;
}
.lh0819-pdp-fact{
  display:grid;
  grid-template-columns:38px minmax(0,1fr);
  grid-template-rows:auto auto;
  gap:2px 14px;
  min-height:116px;
  padding:25px 30px;
  border-right:1px solid #e3e8e4;
  align-content:center;
}
.lh0819-pdp-fact:last-child{border-right:0}
.lh0819-pdp-fact img{grid-row:1/3;width:34px;height:34px;object-fit:contain;align-self:center}
.lh0819-pdp-fact span{color:#6a716c;font-size:12px;line-height:1.4;letter-spacing:.04em;text-transform:uppercase}
.lh0819-pdp-fact strong{color:#1d221f;font-size:14px;line-height:1.45;font-weight:650;overflow-wrap:anywhere}
.lh0819-media-slot{padding:54px 24px;background:#f6f8f6}
.lh0819-media-slot__inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:40px;
  width:min(1120px,100%);
  min-height:170px;
  margin:0 auto;
  padding:36px 42px;
  border:1px dashed #c9d3cc;
  border-radius:2px;
  background:#fff;
}
.lh0819-media-slot h2{margin:6px 0 8px;color:#1d221f;font-size:clamp(24px,3vw,34px);line-height:1.2;font-weight:700}
.lh0819-media-slot p{max-width:680px;margin:0;color:#626963;font-size:14px;line-height:1.65}
.lh0819-media-slot img{width:68px;height:68px;object-fit:contain;opacity:.7}
.lh0819-section-heading{margin:0 0 24px;color:#1d221f;font-size:clamp(26px,3vw,38px);line-height:1.22;text-align:center}
.lh0819-generic-specs{grid-template-columns:repeat(2,minmax(0,1fr))}
.lh0819-document-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.lh0819-document-card{display:flex;align-items:flex-start;gap:14px;min-height:96px;padding:20px;border:1px solid #dce3de;background:#fff}
.lh0819-document-card.is-pending{border-style:dashed;background:#f8f9f8}
.lh0819-document-card img{flex:0 0 32px;width:32px;height:32px;object-fit:contain;opacity:.72}
.lh0819-document-card strong,.lh0819-document-card span{display:block}
.lh0819-document-card strong{margin:0 0 5px;color:#242a26;font-size:14px;line-height:1.4}
.lh0819-document-card span{color:#707671;font-size:12px;line-height:1.5}
.ls-stock-row{align-items:flex-start!important;gap:8px!important}
.ls-eta{display:inline-flex!important;align-items:flex-start!important;gap:5px!important;color:#636a65!important;font-size:11px!important;line-height:1.4!important}
.ls-eta img{flex:0 0 18px;width:18px!important;height:18px!important;object-fit:contain!important}

/* Account, search and cart follow the 0819 Word grids at the Shopify widths. */
.acct-grid{align-items:stretch!important;gap:28px!important}
.acct-grid>div{border-color:#dde4df!important;border-radius:2px!important;box-shadow:none!important}
.acct-grid input{min-height:46px;border-color:#cdd6cf!important;border-radius:2px!important}
.cart-grid{align-items:start!important;gap:34px!important}
.cart-grid>div{border-color:#dde4df!important;border-radius:2px!important;box-shadow:none!important}
[data-live-search-results] .ls-card{border-color:#dde4df!important;border-radius:2px!important}

/* Loyalty/referral keeps the supplied 0604/0819 composition and uses the
   downloaded theme's sharper surfaces instead of generic pill-card styling. */
.lh0604-program-hero,.lh0604-referral-hero{border-radius:0!important}
.lh0604-step,.lh0604-action-card,.lh0604-tier,.lh0604-contact-card,.lh0604-referral-box{
  border-radius:2px!important;
  box-shadow:none!important;
}
.lh0604-step,.lh0604-action-card,.lh0604-tier{border-color:#dce4de!important}
.lh0604-btn{min-height:46px;border-radius:2px!important}
.lh0604-action-card__icon img,.lh0604-step__icon img{display:block;width:34px;height:34px;object-fit:contain;margin:auto}

@media(max-width:991px){
  .lh0819-pdp-facts__inner{grid-template-columns:repeat(2,minmax(0,1fr))}
  .lh0819-pdp-fact:nth-child(2){border-right:0}
  .lh0819-pdp-fact:nth-child(-n+2){border-bottom:1px solid #e3e8e4}
}
@media(max-width:719px){
  .lh0819-pdp-facts__inner{grid-template-columns:1fr;width:100%}
  .lh0819-pdp-fact,.lh0819-pdp-fact:nth-child(2){min-height:84px;padding:17px 22px;border-right:0;border-bottom:1px solid #e3e8e4}
  .lh0819-pdp-fact:last-child{border-bottom:0}
  .lh0819-media-slot{padding:28px 16px}
  .lh0819-media-slot__inner{min-height:0;padding:24px;gap:18px}
  .lh0819-media-slot img{width:48px;height:48px}
  .lh0819-generic-specs,.lh0819-document-grid{grid-template-columns:1fr}
  .lh0819-section-heading{text-align:left;font-size:26px}
  .acct-grid,.cart-grid{grid-template-columns:1fr!important;gap:18px!important}
  .acct-grid>div{padding:24px 18px!important}
  .ls-stock-row{flex-direction:column!important}
}

/* Official downloaded check badge replaces all legacy Unicode checkmarks. */
html body .short-desc-list li::before,
html body .hp-pc-stock::before,
html body #main .hp-sec--best .hp-pc-stock::before{
  content:""!important;
  display:block!important;
  width:18px!important;
  height:18px!important;
  border:0!important;
  border-radius:0!important;
  background-color:transparent!important;
  background-image:url('catalog/badge-check-6adc69d05d84.svg')!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  background-size:contain!important;
}
