/* Mobile test: one product per row on product grids. */
@media screen and (max-width: 767.98px) {
  .products.row {
    --bs-gutter-x: 0;
    --bs-gutter-y: 1rem;
    justify-content: center;
    row-gap: 1rem;
  }

  .products.row > .product-miniature,
  .products.row > .js-product-miniature,
  #js-product-list .products.row > .product-miniature,
  #js-product-list .products.row > .js-product-miniature,
  #content .products.row > .product-miniature,
  #content .products.row > .js-product-miniature {
    flex: 0 0 90% !important;
    max-width: 90% !important;
    width: 90% !important;
  }

  .products.row .product-miniature {
    margin-bottom: 1rem;
    overflow: hidden;
    border: 1px solid rgba(33, 37, 41, 0.10);
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 4px 14px rgba(33, 37, 41, 0.06);
  }

  .products.row .product-miniature__image-container,
  .products.row .thumbnail-container {
    width: 100%;
    margin: 0 auto;
    background: #fff;
  }

  .products.row .product-miniature img {
    width: 100%;
    height: auto;
    object-fit: contain;
  }

  .products.row .product-miniature__infos__top,
  .products.row .product-miniature__infos__bottom {
    padding-left: 0.9rem;
    padding-right: 0.9rem;
  }

  .products.row .product-miniature__title {
    font-size: 1.08rem;
    line-height: 1.35;
  }

  .products.row .product-miniature .btn.btn-primary {
    width: 100% !important;
    max-width: 320px;
    min-height: 44px;
    margin-left: auto;
    margin-right: auto;
  }
}

.product-miniature__description-link {
  color: inherit;
  text-decoration: none;
}

.product-miniature__description {
  margin: 0.35rem 0 0;
  color: #6c757d;
  font-size: 0.875rem;
  line-height: 1.35;
}

/* Mobile test: clearer product card info block */
@media screen and (max-width: 767.98px) {
  .products.row .product-miniature .card {
    overflow: hidden;
    border: 1px solid rgba(33, 37, 41, 0.10);
    border-radius: 12px;
    background: #fff;
  }

  .products.row .product-miniature__infos.card-body {
    padding: 0.85rem 1rem 1rem;
    border-top: 1px solid rgba(33, 37, 41, 0.08);
    background: #fffdf9;
  }

  .products.row .product-miniature__infos__top,
  .products.row .product-miniature__infos__bottom {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .products.row .product-miniature__title {
    display: -webkit-box;
    margin: 0;
    overflow: hidden;
    color: #6f5a32;
    font-size: 1.02rem;
    font-weight: 650;
    line-height: 1.28;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }

  .products.row .product-miniature__description {
    display: -webkit-box;
    margin: 0.35rem 0 0;
    overflow: hidden;
    color: #74716d;
    font-size: 0.86rem;
    line-height: 1.35;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }

  .products.row .product-miniature__infos__bottom {
    display: flex;
    flex-direction: column;
    gap: 0.65rem;
    margin-top: 0.65rem;
  }

  .products.row .product-miniature__prices {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    min-height: 0;
  }

  .products.row .product-miniature__price {
    display: inline-flex;
    align-items: center;
    width: auto;
    min-height: 34px;
    padding: 0.24rem 0.72rem;
    border-radius: 999px;
    background: #f5ead8;
    color: #1f2933;
    font-size: 1.05rem;
    font-weight: 750;
    line-height: 1;
  }

  .products.row .product-miniature form {
    margin-top: 0.1rem !important;
  }

  .products.row .product-miniature .btn.btn-primary {
    min-height: 46px;
    border-radius: 8px;
  }
}

/* Mobile test: centered product card copy and prices */
@media screen and (max-width: 767.98px) {
  .products.row .product-miniature__infos.card-body {
    text-align: center;
  }

  .products.row .product-miniature__title,
  .products.row .product-miniature__description {
    text-align: center;
  }

  .products.row .product-miniature__description-link {
    display: block;
  }

  .products.row .product-miniature__prices {
    justify-content: center;
    flex-wrap: wrap;
    gap: 0.4rem 0.55rem;
  }

  .products.row .product-miniature__discount-price {
    width: 100%;
    text-align: center;
    line-height: 1;
  }

  .products.row .product-miniature__regular-price {
    display: inline-block;
    color: #9b4b43;
    font-size: 0.9rem;
    line-height: 1.2;
    text-decoration: line-through;
  }

  .products.row .product-miniature form {
    justify-content: center;
  }
}

/* Mobile test: stronger centered title and promo price stack */
@media screen and (max-width: 767.98px) {
  .products.row .product-miniature__title {
    font-size: 1.14rem;
    font-weight: 750;
    line-height: 1.24;
  }

  .products.row .product-miniature__prices {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.42rem;
    text-align: center;
  }

  .products.row .product-miniature__price {
    align-self: center;
    justify-content: center;
    margin-left: auto;
    margin-right: auto;
    min-width: 0;
    text-align: center;
  }

  .products.row .product-miniature__discount-price {
    display: flex;
    width: 100%;
    justify-content: center;
    text-align: center;
  }

  .products.row .product-miniature__regular-price {
    margin-left: auto;
    margin-right: auto;
  }
}

/* Mobile test: product page premium layout */
@media screen and (max-width: 767.98px) {
  .page-product .product__col {
    display: flex;
    flex-direction: column;
    margin-top: 0.75rem;
    padding: 0 1rem 1.25rem;
    text-align: center;
  }

  .page-product .product__name {
    order: 1;
    margin: 0 auto 0.75rem;
    max-width: 92%;
    color: #6f5a32;
    font-size: 1.45rem;
    font-weight: 780;
    line-height: 1.18;
    text-align: center;
  }

  .page-product .product__prices .prices__wrapper {
    align-items: center;
    gap: 0.55rem !important;
    margin-bottom: 0.9rem !important;
    text-align: center;
  }

  .page-product .product__prices {
    order: 2;
    margin-bottom: 0.65rem;
  }

  .page-product .product__description-mobile-highlight {
    order: 3;
  }

  .page-product .product__description-short {
    order: 4;
  }

  .page-product .product__actions {
    order: 5;
  }

  .page-product .product__prices .d-flex.align-items-center.gap-2 {
    justify-content: center;
    width: 100%;
  }

  .page-product .product__current-price {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 0.38rem 0.9rem;
    border-radius: 10px;
    background: #d30000;
    color: #fff;
    font-size: 1.35rem;
    font-weight: 800;
    line-height: 1;
    box-shadow: 0 6px 16px rgba(211, 0, 0, 0.18);
  }

  .page-product .product__discount {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.25rem;
    width: 100%;
    color: #9b4b43;
    text-align: center;
  }

  .page-product .product__price-regular {
    color: #8f6d6d;
    font-size: 1rem;
    text-decoration: line-through;
  }

  .page-product .product__discount-amount {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: fit-content;
    padding: 0.2rem 0.55rem;
    border: 1px solid rgba(211, 0, 0, 0.18);
    border-radius: 999px;
    background: #fff5f2;
    color: #b42318;
    font-size: 0.82rem;
    font-weight: 650;
  }

  .page-product .product__tax-info {
    justify-content: center;
    color: #8b8580;
    font-size: 0.82rem;
  }

  .page-product .product__description-short {
    margin: 0.85rem auto 1rem;
    max-width: 92%;
    padding: 0.85rem 0.95rem;
    border: 1px solid rgba(33, 37, 41, 0.08);
    border-radius: 12px;
    background: #fffdf9;
    color: #5f6469;
    font-size: 0.95rem;
    line-height: 1.45;
    text-align: center;
  }

  .page-product .product__description-short h2,
  .page-product .product__description-short h3,
  .page-product .product__description-short p {
    margin-left: auto;
    margin-right: auto;
    text-align: center;
  }

  .page-product .product__description-short h2,
  .page-product .product__description-short h3 {
    margin-bottom: 0.45rem;
    color: #6f5a32;
    font-size: 1.05rem;
    font-weight: 720;
    line-height: 1.25;
  }

  .page-product .product__description-short p {
    margin-bottom: 0;
  }

  .page-product .product__add-to-cart .row.g-2 {
    justify-content: center;
    row-gap: 0.7rem;
  }

  .page-product .product-actions__quantity,
  .page-product .product-actions__button.add {
    width: 100%;
    max-width: 360px;
    flex: 0 0 100%;
  }

  .page-product .product__add-to-cart .input-group {
    justify-content: center;
    margin-bottom: 0 !important;
  }

  .page-product .product__add-to-cart .product-actions__button button {
    width: 100% !important;
    min-height: 50px;
    border-radius: 9px;
    font-weight: 700;
  }
}

/* Mobile test: hard-center category card prices */
@media screen and (max-width: 767.98px) {
  .products.row .product-miniature__infos__bottom {
    align-items: center !important;
    text-align: center !important;
  }

  .products.row .product-miniature__prices {
    display: flex !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    padding: 0 !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
  }

  .products.row .product-miniature__prices > * {
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
  }

  .products.row .product-miniature__price {
    display: inline-flex !important;
    width: fit-content !important;
    max-width: max-content !important;
    margin: 0 auto !important;
    align-self: center !important;
    justify-content: center !important;
    text-align: center !important;
  }

  .products.row .product-miniature__discount-price {
    display: flex !important;
    width: 100% !important;
    justify-content: center !important;
    align-items: center !important;
    margin: 0 auto !important;
    text-align: center !important;
  }

  .products.row .product-miniature__regular-price {
    display: inline-block !important;
    width: fit-content !important;
    margin: 0 auto !important;
    text-align: center !important;
  }
}

/* Mobile test: keep category add-to-cart button full width */
@media screen and (max-width: 767.98px) {
  .products.row .product-miniature form {
    width: 100% !important;
    max-width: 100% !important;
    justify-content: center !important;
  }

  .products.row .product-miniature form .product-actions__button,
  .products.row .product-miniature form .add {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
  }

  .products.row .product-miniature form .btn.btn-primary,
  .products.row .product-miniature form button[data-button-action='add-to-cart'] {
    width: 100% !important;
    max-width: 100% !important;
    min-height: 46px;
  }
}

/* Mobile test: product page add-to-cart stays in content */
@media screen and (max-width: 767.98px) {
  .page-product .product__add-to-cart .product-actions__button button,
  .page-product .product__add-to-cart .product-actions__button .btn,
  .page-product .product__add-to-cart button[data-button-action='add-to-cart'] {
    position: static !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    z-index: auto !important;
    transform: none !important;
    display: inline-flex !important;
    width: 100% !important;
    max-width: 360px !important;
    margin: 0 auto !important;
  }

  .page-product .product__add-to-cart .product-actions__button.add {
    display: flex !important;
    justify-content: center !important;
  }
}

/* Mobile test: product page floating add-to-cart centered */
@media screen and (max-width: 767.98px) {
  .page-product .product__add-to-cart .product-actions__button button,
  .page-product .product__add-to-cart .product-actions__button .btn,
  .page-product .product__add-to-cart button[data-button-action='add-to-cart'] {
    position: fixed !important;
    left: 50% !important;
    right: auto !important;
    bottom: calc(0.75rem + env(safe-area-inset-bottom)) !important;
    z-index: 1040 !important;
    transform: translateX(-50%) !important;
    display: inline-flex !important;
    justify-content: center !important;
    width: calc(100vw - 2rem) !important;
    max-width: 520px !important;
    margin: 0 !important;
    min-height: 52px !important;
    border-radius: 10px !important;
    box-shadow: 0 10px 24px rgba(13, 110, 253, 0.28);
  }
}

/* Mobile test: product page soft price badge */
@media screen and (max-width: 767.98px) {
  .page-product .product__current-price {
    min-height: 40px;
    padding: 0.36rem 0.9rem;
    border-radius: 999px;
    background: #f5ead8 !important;
    color: #1f2933 !important;
    font-size: 1.28rem;
    font-weight: 780;
    line-height: 1;
    box-shadow: 0 6px 16px rgba(111, 90, 50, 0.12) !important;
  }

  .page-product .product__discount-amount {
    border-color: rgba(111, 90, 50, 0.16);
    background: #fff8ef;
    color: #7b5d3b;
  }
}

/* Mobile test: larger category card typography and softer price badge shape */
@media screen and (max-width: 767.98px) {
  .products.row .product-miniature__title {
    font-size: 1.22rem;
    font-weight: 780;
    line-height: 1.24;
  }

  .products.row .product-miniature__description {
    font-size: 0.96rem;
    line-height: 1.38;
  }

  .products.row .product-miniature__price {
    min-height: 38px;
    padding: 0.36rem 0.82rem;
    border-radius: 11px !important;
    font-size: 1.18rem;
    font-weight: 800;
    line-height: 1;
  }

  .products.row .product-miniature__regular-price {
    font-size: 0.98rem;
  }
}

/* Mobile test: stronger category card title and promo price */
@media screen and (max-width: 767.98px) {
  .products.row .product-miniature__title {
    font-size: 1.32rem;
    font-weight: 820;
    line-height: 1.22;
  }

  .products.row .product-miniature__price {
    min-height: 42px;
    padding: 0.42rem 0.95rem;
    font-size: 1.32rem;
    font-weight: 850;
    letter-spacing: 0;
  }

  .products.row .product-miniature__regular-price {
    font-size: 1.06rem;
    line-height: 1.25;
  }
}

/* Mobile test: rebalance category title and product page price */
@media screen and (max-width: 767.98px) {
  .products.row .product-miniature__title {
    font-size: 1.4rem;
    font-weight: 830;
    line-height: 1.2;
  }

  .products.row .product-miniature__description {
    font-size: 1rem;
    line-height: 1.38;
  }

  .page-product .product__current-price {
    min-height: 38px;
    padding: 0.32rem 0.82rem;
    font-size: 1.12rem;
    font-weight: 760;
  }
}

/* Mobile test: raise product description and strengthen category titles */
@media screen and (max-width: 767.98px) {
  .page-product .product__col {
    display: flex;
    flex-direction: column;
  }

  .page-product .product__name {
    order: 1;
  }

  .page-product .product__description-short {
    order: 2;
    margin: 0.25rem auto 0.95rem;
    max-width: 94%;
    padding: 1rem 1.05rem;
    border: 1px solid rgba(111, 90, 50, 0.18);
    border-radius: 12px;
    background: #fff8ef;
    color: #3f4448;
    font-size: 1rem;
    line-height: 1.48;
    box-shadow: 0 8px 20px rgba(111, 90, 50, 0.08);
  }

  .page-product .product__description-short h2,
  .page-product .product__description-short h3 {
    color: #6f5a32;
    font-size: 1.18rem;
    font-weight: 800;
    line-height: 1.25;
  }

  .page-product .product__prices {
    order: 3;
  }

  .page-product .product__actions {
    order: 4;
  }

  .page-product .product__current-price {
    min-height: 40px;
    padding: 0.36rem 0.9rem;
    font-size: 1.28rem;
    font-weight: 780;
  }

  .products.row .product-miniature__title {
    font-size: 1.5rem;
    font-weight: 850;
    line-height: 1.16;
  }
}

/* Mobile test: keep category card descriptions visible */
@media screen and (max-width: 767.98px) {
  .products.row .product-miniature__description-link {
    display: block !important;
    width: 100% !important;
    margin-top: 0.42rem !important;
  }

  .products.row .product-miniature__description {
    display: -webkit-box !important;
    margin: 0 auto !important;
    max-width: 92% !important;
    overflow: hidden !important;
    color: #696560 !important;
    font-size: 1rem !important;
    font-weight: 450 !important;
    line-height: 1.4 !important;
    text-align: center !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
  }
}

/* Mobile test: readable product price and higher full description */
@media screen and (max-width: 767.98px) {
  .page-product .product__current-price {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: fit-content !important;
    min-width: 112px !important;
    min-height: 42px !important;
    margin: 0 auto !important;
    padding: 0.38rem 0.95rem !important;
    border: 1px solid rgba(111, 90, 50, 0.18) !important;
    border-radius: 11px !important;
    background: #efe1c8 !important;
    color: #1f2933 !important;
    font-size: 1.28rem !important;
    font-weight: 820 !important;
    line-height: 1 !important;
    text-align: center !important;
    opacity: 1 !important;
    box-shadow: 0 8px 18px rgba(111, 90, 50, 0.14) !important;
  }

  .page-product .product__current-price * {
    color: inherit !important;
    opacity: 1 !important;
  }

  .page-product .product + .row {
    display: flex;
    flex-direction: column;
  }

  .page-product .product + .row > .col-lg-6.col-xl-7 {
    order: 1;
  }

  .page-product .product + .row > .order-lg-1 {
    order: 2;
  }

  .page-product #description.info {
    margin: 1rem 0 1.25rem;
    overflow: hidden;
    border: 1px solid rgba(111, 90, 50, 0.16);
    border-radius: 12px;
    background: #fff8ef;
    box-shadow: 0 8px 20px rgba(111, 90, 50, 0.08);
  }

  .page-product #description .accordion-button {
    padding: 1rem 0.95rem;
    color: #1f2933;
    font-size: 1.35rem;
    font-weight: 820;
    background: #fff8ef;
  }

  .page-product #description .accordion-body {
    padding: 0 0.95rem 1rem;
    color: #3f4448;
    font-size: 1rem;
    line-height: 1.5;
  }
}

/* Mobile test: full description above price and clearer product price */
.product__description-mobile-highlight {
  display: none;
}

@media screen and (max-width: 767.98px) {
  .page-product .product__description-mobile-highlight {
    display: block;
    order: 2;
    margin: 0.35rem auto 0.95rem;
    max-width: 94%;
    padding: 1rem 1.05rem;
    border: 1px solid rgba(111, 90, 50, 0.18);
    border-radius: 12px;
    background: #fff8ef;
    color: #3f4448;
    font-size: 1rem;
    line-height: 1.48;
    text-align: center;
    box-shadow: 0 8px 20px rgba(111, 90, 50, 0.08);
  }

  .page-product .product__description-mobile-highlight h2,
  .page-product .product__description-mobile-highlight h3 {
    margin: 0 0 0.45rem;
    color: #6f5a32;
    font-size: 1.18rem;
    font-weight: 800;
    line-height: 1.25;
    text-align: center;
  }

  .page-product .product__description-mobile-highlight p {
    margin: 0;
    text-align: center;
  }

  .page-product .product__description-short {
    display: none !important;
  }

  .page-product #description.info {
    display: none !important;
  }

  .page-product .product__prices {
    order: 3;
  }

  .page-product .product__current-price,
  .page-product .product__current-price span,
  .page-product .product__current-price * {
    color: #2f2417 !important;
    opacity: 1 !important;
    text-shadow: none !important;
  }

  .page-product .product__current-price {
    display: inline-grid !important;
    place-items: center !important;
    width: auto !important;
    min-width: 118px !important;
    min-height: 44px !important;
    margin: 0 auto !important;
    padding: 0.42rem 1rem !important;
    border: 1px solid #d8c39e !important;
    border-radius: 10px !important;
    background: #f5ead8 !important;
    font-size: 1.28rem !important;
    font-weight: 850 !important;
    line-height: 1 !important;
    text-align: center !important;
    box-shadow: 0 8px 18px rgba(111, 90, 50, 0.14) !important;
  }
}

/* Mobile test: keep short summary and force readable product price */
@media screen and (max-width: 767.98px) {
  .page-product .product__description-short {
    display: block !important;
    order: 2 !important;
    margin: 0.35rem auto 0.75rem !important;
    max-width: 94% !important;
    padding: 0.9rem 1rem !important;
    border: 1px solid rgba(111, 90, 50, 0.16) !important;
    border-radius: 12px !important;
    background: #fffdf9 !important;
    color: #3f4448 !important;
    font-size: 0.98rem !important;
    line-height: 1.45 !important;
    text-align: center !important;
    box-shadow: 0 6px 16px rgba(111, 90, 50, 0.06) !important;
  }

  .page-product .product__description-short h2,
  .page-product .product__description-short h3,
  .page-product .product__description-short p {
    color: inherit !important;
    text-align: center !important;
  }

  .page-product .product__description-short h2,
  .page-product .product__description-short h3 {
    margin-bottom: 0.4rem !important;
    color: #6f5a32 !important;
    font-size: 1.12rem !important;
    font-weight: 780 !important;
    line-height: 1.25 !important;
  }

  .page-product .product__description-mobile-highlight {
    order: 3 !important;
    margin-top: 0 !important;
  }

  .page-product .product__prices {
    order: 4 !important;
  }

  .page-product .product__current-price,
  .page-product .product__current-price span,
  .page-product .product__current-price * {
    color: #2a2118 !important;
    -webkit-text-fill-color: #2a2118 !important;
    opacity: 1 !important;
    text-shadow: none !important;
  }

  .page-product .product__current-price {
    background: #f0dfc1 !important;
    border-color: #d2bb91 !important;
  }
}

/* Mobile test: logo, header icons, menu ergonomics and product text font */
@media screen and (max-width: 767.98px) {
  .header-bottom .header-bottom__row {
    align-items: center !important;
    min-height: 58px;
  }

  .header-bottom .logo {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 118px;
    max-width: 150px;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .header-bottom .logo .navbar-brand {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    max-width: 145px !important;
    max-height: 44px !important;
    padding: 0 !important;
  }

  .header-bottom .logo img.logo,
  .header-bottom .navbar-brand .logo {
    display: block !important;
    width: auto !important;
    max-width: 145px !important;
    max-height: 42px !important;
    object-fit: contain;
  }

  .header-block__action-btn {
    min-width: 44px;
    min-height: 44px;
    align-items: center;
    justify-content: center;
    padding: 0.45rem !important;
  }

  #_mobile_user_info svg {
    width: 28px !important;
    height: 28px !important;
  }

  #_mobile_cart svg {
    width: 30px !important;
    height: 30px !important;
  }

  .header-block__badge {
    font-size: 0.72rem;
    min-width: 1.85em;
    height: 1.85em;
    line-height: 1.85;
  }

  .main-menu .material-icons,
  .main-menu svg {
    font-size: 2rem !important;
    width: 2rem !important;
    height: 2rem !important;
  }

  .main-menu__offcanvas .offcanvas-header {
    min-height: 62px;
    padding: 0.85rem 1rem;
    border-bottom: 1px solid rgba(33, 37, 41, 0.08);
  }

  .main-menu__offcanvas .btn-close {
    width: 1.25rem;
    height: 1.25rem;
    padding: 0.65rem;
  }

  .main-menu__back-button .btn {
    min-height: 44px;
    font-size: 1.05rem;
    font-weight: 750;
  }

  .main-menu__mobile .menu__list {
    margin: 0;
    padding: 0.4rem 0;
  }

  .main-menu__mobile .menu__link {
    display: flex;
    align-items: center;
    min-height: 56px;
    padding: 0.95rem 1.15rem !important;
    border-bottom: 1px solid rgba(33, 37, 41, 0.08);
    color: #24282d;
    font-size: 1.18rem;
    font-weight: 780;
    line-height: 1.25;
    text-decoration: none;
  }

  .main-menu__mobile .menu__link:active,
  .main-menu__mobile .menu__link:focus,
  .main-menu__mobile .menu__link:hover {
    background: #fff8ef;
    color: #6f5a32;
  }

  .page-product .product__description-short,
  .page-product .product__description-mobile-highlight,
  .page-product .product__description-short p,
  .page-product .product__description-mobile-highlight p,
  .page-product #description .accordion-body {
    font-family: "Avenir Next", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  }
}

/* Mobile test: final header/menu/card refinement pass */
@media screen and (max-width: 767.98px) {
  .header-bottom,
  .header-bottom__container,
  .header-bottom__row {
    position: relative !important;
  }

  .header-bottom .logo {
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    z-index: 4 !important;
    display: flex !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: 138px !important;
    margin: 0 !important;
    transform: translate(-50%, -50%) !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  .header-bottom .logo .navbar-brand,
  .header-bottom .logo h1 {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1 !important;
  }

  .header-bottom .logo img.logo,
  .header-bottom .navbar-brand .logo {
    display: block !important;
    max-width: 132px !important;
    max-height: 38px !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  .main-menu .material-icons,
  .main-menu svg {
    font-size: 1.72rem !important;
    width: 1.72rem !important;
    height: 1.72rem !important;
  }

  #_mobile_user_info svg {
    width: 25px !important;
    height: 25px !important;
  }

  #_mobile_cart {
    margin-right: 0.7rem !important;
  }

  #_mobile_cart svg {
    width: 27px !important;
    height: 27px !important;
  }

  .header-block__action-btn {
    min-width: 40px;
    min-height: 40px;
  }

  .main-menu__mobile .menu__link {
    min-height: 56px;
    padding: 0.95rem 1.2rem !important;
    border-bottom: 1px solid rgba(111, 90, 50, 0.10);
    color: #25282d;
    font-size: 1.18rem;
    font-weight: 780;
    background: #fff;
  }

  .main-menu__mobile .menu__link:active,
  .main-menu__mobile .menu__link:focus,
  .main-menu__mobile .menu__link:hover {
    background: linear-gradient(90deg, rgba(245, 234, 216, 0.72), rgba(255, 255, 255, 0));
    color: #5f4b28;
    box-shadow: inset 4px 0 0 #d8bd6a;
  }

  .products.row > .product-miniature,
  .products.row > .js-product-miniature,
  #js-product-list .products.row > .product-miniature,
  #js-product-list .products.row > .js-product-miniature,
  #content .products.row > .product-miniature,
  #content .products.row > .js-product-miniature {
    flex-basis: 86% !important;
    max-width: 86% !important;
    width: 86% !important;
  }

  .products.row .product-miniature__description {
    font-family: Georgia, "Times New Roman", serif;
    font-style: italic;
    color: #6d6258 !important;
    font-weight: 400 !important;
  }

  .page-product .product__add-to-cart .product-actions__button button,
  .page-product .product__add-to-cart button[data-button-action='add-to-cart'] {
    font-family: "Avenir Next", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
    font-size: 1.12rem !important;
    font-weight: 800 !important;
    letter-spacing: 0 !important;
  }
}

/* Mobile test: V1 cleanup for logo, card titles, promo prices and CTA weight */
@media screen and (max-width: 767.98px) {
  .header-bottom__row {
    min-height: 60px !important;
    padding-left: 0.35rem !important;
    padding-right: 0.35rem !important;
  }

  .header-bottom .logo {
    left: 50% !important;
    z-index: 3 !important;
    max-width: 118px !important;
  }

  .header-bottom .logo .navbar-brand {
    overflow: hidden !important;
    max-width: 118px !important;
  }

  .header-bottom .logo img.logo,
  .header-bottom .navbar-brand .logo {
    width: auto !important;
    max-width: 116px !important;
    max-height: 30px !important;
    object-fit: contain !important;
  }

  #_mobile_user_info {
    margin-left: auto !important;
  }

  #_mobile_cart {
    margin-left: 0 !important;
    margin-right: 0.45rem !important;
  }

  #_mobile_user_info svg,
  #_mobile_cart svg {
    width: 24px !important;
    height: 24px !important;
  }

  .main-menu .material-icons,
  .main-menu svg {
    font-size: 1.58rem !important;
    width: 1.58rem !important;
    height: 1.58rem !important;
  }

  .header-block__action-btn {
    min-width: 38px !important;
    min-height: 38px !important;
    padding: 0.35rem !important;
  }

  .products.row .product-miniature__title,
  .products.row .product-miniature__title a {
    color: #5f4b2b !important;
    font-size: 1.62rem !important;
    font-weight: 850 !important;
    line-height: 1.14 !important;
  }

  .products.row .product-miniature__description {
    font-size: 1.08rem !important;
    line-height: 1.34 !important;
  }

  .products.row .product-miniature__discount-price,
  .products.row .product-miniature__price {
    min-width: 122px !important;
    min-height: 48px !important;
    padding: 0.45rem 0.9rem !important;
    border-radius: 11px !important;
    font-size: 1.44rem !important;
    line-height: 1 !important;
  }

  .products.row .product-miniature__regular-price {
    font-size: 1.12rem !important;
  }

  .page-product .product__prices .prices__wrapper {
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
  }

  .page-product .product__discount {
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    text-align: center !important;
  }

  .page-product .product__price-regular {
    color: #8f6d6d !important;
    font-size: 1.08rem !important;
    text-align: center !important;
    text-decoration: line-through !important;
  }

  .page-product .product__discount-amount {
    border: 0 !important;
    background: transparent !important;
    color: #9b4b43 !important;
    font-size: 1.02rem !important;
    font-weight: 650 !important;
  }

  .page-product .product__prices:has(.product__price-regular) .product__current-price {
    display: inline-grid !important;
    place-items: center !important;
    min-width: 122px !important;
    min-height: 48px !important;
    padding: 0.42rem 1rem !important;
    border: 0 !important;
    border-radius: 10px !important;
    background: #d90000 !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    font-size: 1.58rem !important;
    font-weight: 780 !important;
    line-height: 1 !important;
    text-align: center !important;
    box-shadow: 0 8px 18px rgba(217, 0, 0, 0.18) !important;
  }

  .page-product .product__prices:has(.product__price-regular) .product__current-price *,
  .page-product .product__prices:has(.product__price-regular) .product__current-price span {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
  }

  .page-product .product__add-to-cart .product-actions__button button,
  .page-product .product__add-to-cart button[data-button-action='add-to-cart'] {
    font-weight: 620 !important;
  }
}

/* Mobile test: V1 refinement after visual review */
@media screen and (max-width: 767.98px) {
  .header-bottom__row {
    min-height: 62px !important;
    padding-left: 0.35rem !important;
    padding-right: 0.35rem !important;
  }

  .header-bottom .logo {
    max-width: clamp(190px, 55vw, 265px) !important;
  }

  .header-bottom .logo .navbar-brand {
    max-width: clamp(190px, 55vw, 265px) !important;
  }

  .header-bottom .logo img.logo,
  .header-bottom .navbar-brand .logo {
    max-width: clamp(190px, 55vw, 265px) !important;
    max-height: 44px !important;
  }

  #_mobile_user_info {
    margin-left: auto !important;
  }

  #_mobile_cart {
    margin-right: 0.45rem !important;
  }

  .products.row .product-miniature__title,
  .products.row .product-miniature__title a {
    font-size: 1.44rem !important;
    line-height: 1.18 !important;
  }

  .page-product .breadcrumb__wrapper {
    display: none !important;
  }

  .page-product .product,
  .page-product .product__images,
  .page-product .js-images-container {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }

  .page-product .product__images {
    transform: translateY(-0.35rem);
  }

  .page-product .product__description-short,
  .page-product .product__description-mobile-highlight {
    max-width: calc(100% - 2rem) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 1.05rem 1rem !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 12px !important;
    background: #fff !important;
    color: #29313a !important;
    box-shadow: 0 10px 28px rgba(15, 23, 42, 0.06) !important;
  }

  .page-product .product__description-short,
  .page-product .product__description-short p,
  .page-product .product__description-mobile-highlight,
  .page-product .product__description-mobile-highlight p {
    color: #29313a !important;
    font-family: "Avenir Next", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
    font-size: 1.05rem !important;
    font-weight: 450 !important;
    line-height: 1.48 !important;
  }

  .page-product .product__description-short strong,
  .page-product .product__description-mobile-highlight strong,
  .page-product .product__description-short b,
  .page-product .product__description-mobile-highlight b {
    color: #1f2933 !important;
    font-weight: 720 !important;
  }

  .page-product .product__current-price {
    min-width: 122px !important;
    min-height: 48px !important;
    border: 0 !important;
    border-radius: 10px !important;
    background: #1f2933 !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    font-size: 1.42rem !important;
    font-weight: 760 !important;
    box-shadow: 0 9px 20px rgba(15, 23, 42, 0.16) !important;
  }

  .page-product .product__current-price *,
  .page-product .product__current-price span {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
  }

  .page-product .product__prices:has(.product__price-regular) .product__current-price {
    background: #d90000 !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    font-size: 1.54rem !important;
    box-shadow: 0 8px 18px rgba(217, 0, 0, 0.18) !important;
  }

  .page-product .product__add-to-cart .product-actions__button button,
  .page-product .product__add-to-cart button[data-button-action='add-to-cart'] {
    gap: 0.62rem !important;
    align-items: center !important;
    justify-content: center !important;
    font-weight: 600 !important;
  }

  .page-product .product__add-to-cart .product-actions__button button svg,
  .page-product .product__add-to-cart button[data-button-action='add-to-cart'] svg,
  .page-product .product__add-to-cart .product-actions__button button .material-icons,
  .page-product .product__add-to-cart button[data-button-action='add-to-cart'] .material-icons {
    flex: 0 0 auto !important;
    margin-right: 0.18rem !important;
  }

  .main-menu__mobile .menu__item,
  .main-menu__mobile li {
    margin-left: 0 !important;
    padding-left: 0 !important;
  }

  .main-menu__mobile .menu__link,
  .main-menu__mobile .menu__item > a,
  .main-menu__mobile .menu__list a {
    justify-content: flex-start !important;
    width: 100% !important;
    margin-left: 0 !important;
    padding-left: 1.55rem !important;
    text-align: left !important;
    text-indent: 0 !important;
  }
}

/* Mobile test: keep floating product CTA below open offcanvas menus */
@media screen and (max-width: 767.98px) {
  .page-product .product__add-to-cart .product-actions__button button,
  .page-product .product__add-to-cart .product-actions__button .btn,
  .page-product .product__add-to-cart button[data-button-action='add-to-cart'] {
    z-index: 900 !important;
  }
}

/* Mobile test: V1 refinement for header overlap, CTA size and lighter price badge */
@media screen and (max-width: 767.98px) {
  .header-bottom .logo {
    z-index: 2 !important;
    max-width: clamp(170px, 46vw, 225px) !important;
  }

  .header-bottom .logo .navbar-brand {
    max-width: clamp(170px, 46vw, 225px) !important;
  }

  .header-bottom .logo img.logo,
  .header-bottom .navbar-brand .logo {
    max-width: clamp(170px, 46vw, 225px) !important;
    max-height: 40px !important;
  }

  #_mobile_user_info,
  #_mobile_cart,
  .main-menu,
  .header-block {
    position: relative !important;
    z-index: 5 !important;
  }

  #_mobile_user_info {
    margin-left: auto !important;
    margin-right: 0.25rem !important;
  }

  #_mobile_cart {
    margin-left: 0.1rem !important;
    margin-right: 0.5rem !important;
  }

  .products.row > .product-miniature,
  .products.row > .js-product-miniature,
  #js-product-list .products.row > .product-miniature,
  #js-product-list .products.row > .js-product-miniature,
  #content .products.row > .product-miniature,
  #content .products.row > .js-product-miniature {
    flex-basis: 84% !important;
    max-width: 84% !important;
    width: 84% !important;
  }

  .products.row .product-miniature__price,
  .products.row .product-miniature__discount-price {
    min-width: 112px !important;
    min-height: 44px !important;
    padding: 0.36rem 0.78rem !important;
    border-radius: 10px !important;
    font-size: 1.32rem !important;
  }

  .products.row .product-miniature__regular-price {
    font-size: 1.02rem !important;
  }

  .page-product .product__current-price {
    min-width: 118px !important;
    min-height: 48px !important;
    border: 1px solid #d9c8ad !important;
    border-radius: 10px !important;
    background: #fff !important;
    color: #29313a !important;
    -webkit-text-fill-color: #29313a !important;
    font-size: 1.42rem !important;
    font-weight: 780 !important;
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.08) !important;
  }

  .page-product .product__current-price *,
  .page-product .product__current-price span {
    color: #29313a !important;
    -webkit-text-fill-color: #29313a !important;
  }

  .page-product .product__prices:has(.product__price-regular) .product__current-price {
    border: 0 !important;
    background: #d90000 !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
  }

  .page-product .product__prices:has(.product__price-regular) .product__current-price *,
  .page-product .product__prices:has(.product__price-regular) .product__current-price span {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
  }

  .page-product .product__add-to-cart .product-actions__button button,
  .page-product .product__add-to-cart .product-actions__button .btn,
  .page-product .product__add-to-cart button[data-button-action='add-to-cart'] {
    min-height: 56px !important;
    gap: 0.72rem !important;
    font-size: 1.2rem !important;
    font-weight: 620 !important;
  }

  .page-product .product__add-to-cart .product-actions__button button svg,
  .page-product .product__add-to-cart button[data-button-action='add-to-cart'] svg {
    width: 24px !important;
    height: 24px !important;
  }
}

/* Mobile test: restore one-line prod-like header and soften title/price balance */
@media screen and (max-width: 767.98px) {
  .header-bottom__row {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    min-height: 62px !important;
  }

  .header-bottom .main-menu {
    order: 0 !important;
    flex: 0 0 44px !important;
    width: 44px !important;
    max-width: 44px !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .header-bottom .logo {
    order: 1 !important;
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    z-index: 2 !important;
    max-width: clamp(175px, 48vw, 232px) !important;
    transform: translate(-50%, -50%) !important;
  }

  .header-bottom .logo .navbar-brand,
  .header-bottom .logo img.logo,
  .header-bottom .navbar-brand .logo {
    max-width: clamp(175px, 48vw, 232px) !important;
    max-height: 42px !important;
  }

  #_mobile_user_info {
    order: 2 !important;
    flex: 0 0 42px !important;
    width: 42px !important;
    margin-left: auto !important;
    margin-right: 0.18rem !important;
  }

  #_mobile_cart {
    order: 3 !important;
    flex: 0 0 42px !important;
    width: 42px !important;
    margin-left: 0 !important;
    margin-right: 0.45rem !important;
  }

  .header-bottom .main-menu,
  #_mobile_user_info,
  #_mobile_cart {
    position: relative !important;
    z-index: 6 !important;
  }

  .header-bottom .main-menu .header-block__action-btn,
  #_mobile_user_info .header-block__action-btn,
  #_mobile_cart .header-block__action-btn {
    width: 40px !important;
    min-width: 40px !important;
    height: 40px !important;
    min-height: 40px !important;
  }

  .header-bottom .main-menu .material-icons,
  .header-bottom .main-menu svg,
  #_mobile_user_info svg,
  #_mobile_cart svg {
    width: 26px !important;
    height: 26px !important;
    font-size: 1.65rem !important;
  }

  .products.row .product-miniature__title,
  .products.row .product-miniature__title a {
    font-size: 1.32rem !important;
    line-height: 1.2 !important;
  }

  .page-product .product__current-price {
    border: 1px solid #d7b56d !important;
    background: linear-gradient(180deg, #fffdf8 0%, #fbf2e3 100%) !important;
    color: #2c261d !important;
    -webkit-text-fill-color: #2c261d !important;
    box-shadow: 0 9px 20px rgba(151, 115, 48, 0.14) !important;
  }

  .page-product .product__current-price *,
  .page-product .product__current-price span {
    color: #2c261d !important;
    -webkit-text-fill-color: #2c261d !important;
  }

  .page-product .product__prices:has(.product__price-regular) .product__current-price {
    border: 0 !important;
    background: #d90000 !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
  }

  .page-product .product__prices:has(.product__price-regular) .product__current-price *,
  .page-product .product__prices:has(.product__price-regular) .product__current-price span {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
  }
}

/* Mobile test: fixed prod-like header alignment */
@media screen and (max-width: 767.98px) {
  .header-bottom,
  .header-bottom__container,
  .header-bottom__row {
    position: relative !important;
  }

  .header-bottom__row {
    display: block !important;
    min-height: 62px !important;
    height: 62px !important;
    padding: 0 !important;
  }

  .header-bottom .main-menu {
    position: absolute !important;
    left: 0.72rem !important;
    top: 50% !important;
    z-index: 10 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 42px !important;
    max-width: 42px !important;
    height: 42px !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: translateY(-50%) !important;
  }

  .header-bottom .logo {
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    z-index: 2 !important;
    width: auto !important;
    max-width: clamp(178px, 48vw, 232px) !important;
    margin: 0 !important;
    transform: translate(-50%, -50%) !important;
  }

  .header-bottom .logo .navbar-brand,
  .header-bottom .logo img.logo,
  .header-bottom .navbar-brand .logo {
    display: block !important;
    width: auto !important;
    max-width: clamp(178px, 48vw, 232px) !important;
    max-height: 42px !important;
    object-fit: contain !important;
  }

  #_mobile_user_info {
    position: absolute !important;
    right: 3.55rem !important;
    top: 50% !important;
    z-index: 10 !important;
    width: 42px !important;
    max-width: 42px !important;
    height: 42px !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: translateY(-50%) !important;
  }

  #_mobile_cart {
    position: absolute !important;
    right: 0.62rem !important;
    top: 50% !important;
    z-index: 10 !important;
    width: 42px !important;
    max-width: 42px !important;
    height: 42px !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: translateY(-50%) !important;
  }

  .header-bottom .main-menu .header-block,
  #_mobile_user_info .header-block,
  #_mobile_cart .header-block,
  .header-bottom .main-menu .header-block__action-btn,
  #_mobile_user_info .header-block__action-btn,
  #_mobile_cart .header-block__action-btn {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 42px !important;
    min-width: 42px !important;
    height: 42px !important;
    min-height: 42px !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .header-bottom .main-menu .material-icons,
  .header-bottom .main-menu svg,
  #_mobile_user_info svg,
  #_mobile_cart svg {
    width: 26px !important;
    height: 26px !important;
    font-size: 1.65rem !important;
  }

  .search__mobile {
    display: none !important;
  }

  .page-product .product__description-short,
  .page-product .product__description-mobile-highlight {
    background: #fff !important;
    border-color: #e5e7eb !important;
    color: #29313a !important;
  }
}

/* Mobile test: cleaner product price badge variant */
@media screen and (max-width: 767.98px) {
  .page-product .product__current-price {
    display: inline-grid !important;
    place-items: center !important;
    min-width: 126px !important;
    min-height: 50px !important;
    padding: 0.42rem 1.08rem !important;
    border: 1px solid rgba(193, 150, 74, 0.55) !important;
    border-radius: 12px !important;
    background: linear-gradient(180deg, #ffffff 0%, #fff8ec 100%) !important;
    color: #4b3516 !important;
    -webkit-text-fill-color: #4b3516 !important;
    font-size: 1.48rem !important;
    font-weight: 820 !important;
    line-height: 1 !important;
    letter-spacing: 0 !important;
    text-align: center !important;
    box-shadow: 0 10px 22px rgba(109, 79, 28, 0.13), inset 0 1px 0 rgba(255, 255, 255, 0.9) !important;
  }

  .page-product .product__current-price::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    pointer-events: none;
  }

  .page-product .product__current-price *,
  .page-product .product__current-price span {
    color: #4b3516 !important;
    -webkit-text-fill-color: #4b3516 !important;
  }

  .page-product .product__prices:has(.product__price-regular) .product__current-price {
    min-width: 126px !important;
    min-height: 50px !important;
    border: 0 !important;
    background: linear-gradient(180deg, #ef1212 0%, #cf0000 100%) !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    box-shadow: 0 10px 22px rgba(217, 0, 0, 0.2) !important;
  }

  .page-product .product__prices:has(.product__price-regular) .product__current-price *,
  .page-product .product__prices:has(.product__price-regular) .product__current-price span {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
  }
}

/* Mobile test: real menu hook sits after header-bottom, pull it into header row */
@media screen and (max-width: 767.98px) {
  .header-bottom + .main-menu {
    position: relative !important;
    top: -52px !important;
    left: 0.72rem !important;
    z-index: 30 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 44px !important;
    max-width: 44px !important;
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 0 -44px 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    transform: none !important;
  }

  .header-bottom + .main-menu .header-block,
  .header-bottom + .main-menu .header-block__action-btn,
  .header-bottom + .main-menu [data-bs-toggle='offcanvas'] {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 44px !important;
    min-width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .header-bottom + .main-menu .material-icons,
  .header-bottom + .main-menu svg,
  #_mobile_user_info svg,
  #_mobile_cart svg {
    width: 28px !important;
    height: 28px !important;
    font-size: 1.75rem !important;
  }

  #_mobile_user_info,
  #_mobile_cart {
    z-index: 30 !important;
  }

  #_mobile_user_info .header-block__action-btn,
  #_mobile_cart .header-block__action-btn {
    width: 44px !important;
    min-width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
  }
}

/* Mobile test: keep search bar as a clean second row below header */
@media screen and (max-width: 767.98px) {
  .header-bottom {
    position: relative !important;
    z-index: 20 !important;
    margin-bottom: 0 !important;
  }

  .header-bottom + .main-menu {
    pointer-events: none !important;
  }

  .header-bottom + .main-menu .header-block,
  .header-bottom + .main-menu .header-block__action-btn,
  .header-bottom + .main-menu [data-bs-toggle='offcanvas'] {
    pointer-events: auto !important;
  }

  #searchCanvas,
  .search__offcanvas_,
  .js-search-offcanvas_ {
    position: relative !important;
    top: auto !important;
    z-index: 8 !important;
    display: block !important;
    width: 100% !important;
    height: auto !important;
    margin-top: 0 !important;
    padding: 0 0 0.45rem !important;
    transform: none !important;
    background: #fff !important;
    border: 0 !important;
    visibility: visible !important;
  }

  #searchCanvas .offcanvas-header {
    display: block !important;
    width: 100% !important;
    min-height: 0 !important;
    padding: 0 0.5rem !important;
  }

  #_mobile_search,
  #_mobile_search .search-widgets,
  #_mobile_search form {
    width: 100% !important;
  }

  #_mobile_search .search-widgets,
  #_mobile_search .search-widgets form {
    position: relative !important;
    margin: 0 !important;
  }

  #_mobile_search input[type='search'],
  #_mobile_search .js-search-input {
    height: 46px !important;
    padding-left: 1.1rem !important;
    padding-right: 3.6rem !important;
    border-radius: 22px !important;
    background: #f1f1f1 !important;
  }

  #_mobile_search .search,
  #_mobile_search .js-search-icon {
    right: 0.15rem !important;
    top: 50% !important;
    width: 46px !important;
    height: 46px !important;
    transform: translateY(-50%) !important;
  }
}

/* Mobile test: menu hook is now inside the header row; restore normal search row */
@media screen and (max-width: 767.98px) {
  .header-bottom + .main-menu {
    position: static !important;
    top: auto !important;
    left: auto !important;
    width: auto !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
  }

  .header-bottom .main-menu {
    position: absolute !important;
    left: 0.72rem !important;
    top: 50% !important;
    z-index: 30 !important;
    width: 44px !important;
    max-width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: translateY(-50%) !important;
  }

  .header-bottom .main-menu .header-block,
  .header-bottom .main-menu .header-block__action-btn,
  .header-bottom .main-menu [data-bs-toggle='offcanvas'],
  #_mobile_user_info .header-block__action-btn,
  #_mobile_cart .header-block__action-btn {
    width: 44px !important;
    min-width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
  }

  .header-bottom .main-menu .material-icons,
  .header-bottom .main-menu svg,
  #_mobile_user_info svg,
  #_mobile_cart svg {
    width: 27px !important;
    height: 27px !important;
    font-size: 1.7rem !important;
  }

  #searchCanvas,
  .search__offcanvas_,
  .js-search-offcanvas_ {
    clear: both !important;
    margin-top: 0 !important;
    padding-top: 0 !important;
  }
}

/* Mobile test: final header polish */
@media screen and (max-width: 767.98px) {
  .header-bottom .logo,
  .header-bottom .logo .navbar-brand,
  .header-bottom .logo img.logo,
  .header-bottom .navbar-brand .logo {
    max-width: clamp(205px, 54vw, 255px) !important;
  }

  .header-bottom .logo img.logo,
  .header-bottom .navbar-brand .logo {
    max-height: 43px !important;
  }

  #_mobile_search .search,
  #_mobile_search .js-search-icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1 !important;
    padding: 0 !important;
    text-align: center !important;
  }

  #_mobile_search .search::before,
  #_mobile_search .js-search-icon::before {
    line-height: 1 !important;
  }
}

/* Mobile test: logo balance between hamburger and account icons */
@media screen and (max-width: 767.98px) {
  .header-bottom .logo {
    left: 47% !important;
  }

  .header-bottom .logo,
  .header-bottom .logo .navbar-brand,
  .header-bottom .logo img.logo,
  .header-bottom .navbar-brand .logo {
    max-width: clamp(205px, 53vw, 248px) !important;
  }

  #_mobile_user_info {
    right: 3.7rem !important;
  }

  #_mobile_cart {
    right: 0.62rem !important;
  }
}

/* Mobile test: header final balance */
@media screen and (max-width: 767.98px) {
  .header-bottom .logo {
    left: 44.8% !important;
  }

  #_mobile_user_info svg {
    width: 24px !important;
    height: 24px !important;
  }

  #_mobile_user_info .header-block__action-btn {
    width: 40px !important;
    min-width: 40px !important;
    height: 40px !important;
    min-height: 40px !important;
  }
}

/* Mobile test: subtle category product detail link */
@media screen and (max-width: 767.98px) {
  .products.row .product-miniature__details-link {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: calc(100% - 2.4rem) !important;
    min-height: 42px !important;
    margin: 1rem auto 0.35rem !important;
    border: 1px solid rgba(111, 90, 50, 0.22) !important;
    border-radius: 10px !important;
    background: rgba(255, 255, 255, 0.72) !important;
    color: #6f5a32 !important;
    font-family: "Avenir Next", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
    font-size: 0.98rem !important;
    font-weight: 650 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    box-shadow: 0 6px 16px rgba(15, 23, 42, 0.04) !important;
  }

  .products.row .product-miniature__details-link:active,
  .products.row .product-miniature__details-link:focus,
  .products.row .product-miniature__details-link:hover {
    border-color: rgba(111, 90, 50, 0.38) !important;
    background: rgba(255, 248, 239, 0.92) !important;
    color: #4f3d1d !important;
  }

  .products.row .product-miniature__details-link + form {
    margin-top: 0.55rem !important;
  }
}

/* Mobile test: tighter category card action area */
@media screen and (max-width: 767.98px) {
  .products.row .product-miniature__infos__bottom {
    padding-bottom: 0.8rem !important;
  }

  .products.row .product-miniature__prices {
    margin-bottom: 0.25rem !important;
  }

  .products.row .product-miniature__details-link {
    width: calc(100% - 3.5rem) !important;
    min-height: 38px !important;
    margin: 0.45rem auto 0.25rem !important;
    border-radius: 9px !important;
    font-size: 0.95rem !important;
  }

  .products.row .product-miniature__details-link + form,
  .products.row .product-miniature__infos__bottom > form {
    margin-top: 0.45rem !important;
  }

  .products.row .product-miniature__infos__bottom form .btn,
  .products.row .product-miniature__infos__bottom button[data-button-action='add-to-cart'] {
    min-height: 50px !important;
  }
}

/* Mobile test: category actions order price/cart/details */
@media screen and (max-width: 767.98px) {
  .products.row .product-miniature__infos__bottom {
    padding-bottom: 0.55rem !important;
  }

  .products.row .product-miniature__prices {
    margin-bottom: 0.1rem !important;
  }

  .products.row .product-miniature__infos__bottom > form {
    margin-top: 0.45rem !important;
    margin-bottom: 0 !important;
  }

  .products.row .product-miniature__infos__bottom > form .btn,
  .products.row .product-miniature__infos__bottom > form button[data-button-action='add-to-cart'] {
    min-height: 48px !important;
  }

  .products.row .product-miniature__details-link {
    width: calc(100% - 4rem) !important;
    min-height: 36px !important;
    margin: 0.5rem auto 0 !important;
    font-size: 0.92rem !important;
  }
}

/* Mobile test: details link in the slot just above cart */
@media screen and (max-width: 767.98px) {
  .products.row .product-miniature__infos__bottom {
    padding-bottom: 0.65rem !important;
  }

  .products.row .product-miniature__prices {
    margin-bottom: 0.2rem !important;
  }

  .products.row .product-miniature__details-link {
    width: calc(100% - 4.2rem) !important;
    min-height: 36px !important;
    margin: 0.65rem auto 0.45rem !important;
    font-size: 0.92rem !important;
  }

  .products.row .product-miniature__details-link + form,
  .products.row .product-miniature__infos__bottom > form {
    margin-top: 0.35rem !important;
    margin-bottom: 0 !important;
  }

  .products.row .product-miniature__infos__bottom > form .btn,
  .products.row .product-miniature__infos__bottom > form button[data-button-action='add-to-cart'] {
    min-height: 50px !important;
  }
}

/* Mobile test: reduce gap under regular category prices */
@media screen and (max-width: 767.98px) {
  .products.row .product-miniature__prices {
    margin-top: 0.65rem !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }

  .products.row .product-miniature__price:not(.product-miniature__discount-price) {
    margin-bottom: 0 !important;
  }

  .products.row .product-miniature__prices + .product-miniature__details-link,
  .products.row .product-miniature__details-link {
    margin-top: 0.38rem !important;
    margin-bottom: 0.35rem !important;
  }

  .products.row .product-miniature__details-link + form,
  .products.row .product-miniature__infos__bottom > form {
    margin-top: 0.35rem !important;
  }
}

/* Global test: promo banner above header menu */
.mf-promo-banner {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 36px;
  padding: 0.45rem 1rem;
  background: #b93434;
  color: #fff;
  font-family: "Avenir Next", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 0.98rem;
  font-weight: 650;
  line-height: 1.2;
  text-align: center;
  letter-spacing: 0;
}

.mf-promo-banner strong {
  color: inherit;
  font-weight: 820;
}

@media screen and (max-width: 767.98px) {
  .mf-promo-banner {
    min-height: 34px;
    padding: 0.4rem 0.8rem;
    font-size: 0.92rem;
  }
}

/* Mobile test: refined promo banner */
@media screen and (max-width: 767.98px) {
  .mf-promo-banner {
    min-height: 38px !important;
    padding: 0.48rem 0.9rem !important;
    border: 0 !important;
    background: #b63232 !important;
    color: #fff !important;
    font-size: 0.96rem !important;
    font-weight: 720 !important;
    line-height: 1.15 !important;
    letter-spacing: 0 !important;
    text-shadow: none !important;
    box-shadow: none !important;
  }

  .mf-promo-banner strong {
    display: inline-block !important;
    margin-left: 0.25rem !important;
    color: #fff !important;
    font-weight: 860 !important;
    letter-spacing: 0.01em !important;
  }

  .header-bottom {
    border-top: 0 !important;
  }
}

/* Mobile test: calmer promo banner typography and no divider */
@media screen and (max-width: 767.98px) {
  .mf-promo-banner {
    min-height: 36px !important;
    padding: 0.42rem 0.85rem !important;
    border: 0 !important;
    border-bottom: 0 !important;
    outline: 0 !important;
    background: #b63232 !important;
    color: #fff !important;
    font-size: 0.94rem !important;
    font-weight: 560 !important;
    line-height: 1.18 !important;
    box-shadow: none !important;
  }

  .mf-promo-banner strong {
    margin-left: 0.28rem !important;
    font-weight: 680 !important;
    letter-spacing: 0 !important;
  }

  .mf-promo-banner + .header-bottom__container,
  .header-bottom,
  .header-bottom__container,
  .header-bottom__row {
    border-top: 0 !important;
    box-shadow: none !important;
  }
}

/* Mobile test: remove white hairline above promo banner */
@media screen and (max-width: 767.98px) {
  .mf-promo-banner {
    margin-top: -3px !important;
    padding-top: calc(0.42rem + 3px) !important;
    box-shadow: 0 -4px 0 #b63232 !important;
  }
}

/* Mobile test: slightly larger promo banner text */
@media screen and (max-width: 767.98px) {
  .mf-promo-banner {
    font-size: 1rem !important;
  }
}

/* V1.2.1 - final mobile product ordering fix */
@media screen and (max-width: 767.98px) {
  .page-product .product__col {
    display: flex !important;
    flex-direction: column !important;
  }

  .page-product .product__name {
    order: 1 !important;
  }

  .page-product .product__prices {
    order: 2 !important;
    margin-top: 0 !important;
    margin-bottom: 0.7rem !important;
  }

  .page-product .product__description-mobile-highlight {
    order: 3 !important;
    margin-top: 0 !important;
  }

  .page-product .product__description-short {
    order: 4 !important;
  }

  .page-product .product__actions {
    order: 5 !important;
  }
}

/* V1.3 - checkout mobile, reassurance, social and footer refresh */
@media screen and (max-width: 767.98px) {
  .page-order .delivery-options__list {
    background: transparent !important;
    padding: 0 !important;
    margin-bottom: 1.25rem !important;
  }

  .page-order .delivery-options__item {
    margin-bottom: 0.9rem;
    padding: 1rem 0.95rem;
    border: 1px solid rgba(28, 34, 44, 0.08);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 10px 24px rgba(22, 24, 28, 0.06);
  }

  .page-order .delivery-options__item hr {
    display: none;
  }

  .page-order .delivery-options__item > label {
    display: block;
    width: 100%;
  }

  .page-order .delivery-options__item > label > .row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-areas:
      'left price'
      'delay delay';
    gap: 0.5rem 0.9rem;
    align-items: start;
  }

  .page-order .delivery-option__left {
    grid-area: left;
    width: 100%;
    max-width: none;
    margin: 0;
  }

  .page-order .delivery-option__left .row {
    display: grid;
    grid-template-columns: 1.35rem minmax(78px, 86px) minmax(0, 1fr);
    gap: 0.85rem;
    align-items: center;
    margin: 0;
  }

  .page-order .delivery-option__left .custom-radio {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 1.35rem;
    max-width: 1.35rem;
    padding: 0;
    margin: 0;
  }

  .page-order .delivery-option__left .form-check-input {
    width: 1.3rem;
    height: 1.3rem;
    margin: 0;
    border: 1.5px solid #d4c2a0;
    background-color: #fff;
    box-shadow: none;
  }

  .page-order .delivery-option__left .form-check-input:checked {
    border-color: #c7a96b;
    background-color: #c7a96b;
    box-shadow: 0 0 0 0.25rem rgba(199, 169, 107, 0.16);
  }

  .page-order .delivery-option__left .form-check-round {
    display: none;
  }

  .page-order .carrier {
    width: 100%;
    margin: 0;
  }

  .page-order .carrier .row {
    display: grid;
    grid-template-columns: minmax(78px, 86px) minmax(0, 1fr);
    gap: 0.85rem;
    align-items: center;
    margin: 0;
  }

  .page-order .carrier__logo,
  .page-order .carriere-name-container {
    width: 100%;
    max-width: none;
    padding: 0;
  }

  .page-order .carrier__logo img {
    width: 100%;
    max-width: 86px;
    border-radius: 14px !important;
    background: #fff;
    box-shadow: 0 8px 18px rgba(22, 24, 28, 0.08);
  }

  .page-order .carrier-name {
    display: block;
    margin: 0;
    color: #1f2430;
    font-family: Gantari, Inter, system-ui, sans-serif;
    font-size: 1.28rem;
    font-weight: 700;
    line-height: 1.12;
    letter-spacing: 0;
  }

  .page-order .delivery-option__right {
    grid-area: price;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    align-self: start;
    min-width: 5.4rem;
    padding: 0.48rem 0.82rem;
    border-radius: 999px;
    background: #f7eddc;
    color: #2a2118;
    font-family: Gantari, Inter, system-ui, sans-serif;
    font-size: 1.08rem;
    font-weight: 700;
    line-height: 1;
    box-shadow: inset 0 0 0 1px rgba(199, 169, 107, 0.28);
  }

  .page-order .delivery-option__center {
    grid-area: delay;
    display: block !important;
    width: 100%;
    max-width: none;
    margin: 0;
    padding-left: calc(1.35rem + 0.85rem + 86px + 0.85rem);
    color: #5c6169;
    font-family: Inter, system-ui, sans-serif;
    font-size: 1.02rem;
    line-height: 1.45;
  }

  .page-order .carrier__extra-content-wrapper {
    margin-top: 0.8rem;
    border-top: 1px solid rgba(28, 34, 44, 0.08);
  }

  .page-order .carrier__extra-content {
    padding: 0.9rem 0 0;
    color: #575d66;
    font-size: 0.98rem;
    line-height: 1.5;
  }

  #block-reassurance {
    padding: 0.2rem 0 1.15rem;
  }

  #block-reassurance ul {
    display: grid;
    gap: 0.8rem;
    padding: 0 1rem;
    margin: 0;
    list-style: none;
  }

  #block-reassurance li {
    margin: 0;
  }

  #block-reassurance .block-reassurance-item {
    display: grid;
    grid-template-columns: 3rem minmax(0, 1fr);
    gap: 0.9rem;
    align-items: center;
    padding: 0.95rem 1rem;
    border: 1px solid rgba(28, 34, 44, 0.08);
    border-radius: 16px;
    background: linear-gradient(180deg, #fffdf9 0%, #ffffff 100%);
    box-shadow: 0 10px 24px rgba(22, 24, 28, 0.05);
  }

  #block-reassurance .block-reassurance-item img {
    width: 3rem;
    height: 3rem;
    object-fit: contain;
    padding: 0.45rem;
    border-radius: 14px;
    background: #fbf3e6;
  }

  #block-reassurance .block-reassurance-item .h6 {
    margin: 0;
    color: #262b33;
    font-family: Gantari, Inter, system-ui, sans-serif;
    font-size: 1.1rem;
    font-weight: 650;
    line-height: 1.38;
  }

  .block-social {
    gap: 0.7rem;
    padding-top: 1rem !important;
    padding-bottom: 1.4rem !important;
  }

  .block-social a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.9rem;
    height: 2.9rem;
    margin: 0 !important;
    border-radius: 999px;
    background: #fbf3e6;
    color: #a98540;
    box-shadow: inset 0 0 0 1px rgba(169, 133, 64, 0.16);
  }

  .block-social a svg {
    width: 1.55rem;
    height: 1.55rem;
  }

  .footer__main {
    background: #080808 !important;
  }

  .footer__main .footer__block,
  .footer__main .footer__block__toggle,
  .footer__main .footer__block__content,
  .footer__main .footer__block__content-list,
  .footer__main .footer__block__content-contact {
    background: transparent !important;
  }

  .footer__main .footer__block {
    border-top-color: rgba(255, 255, 255, 0.08) !important;
  }

  .footer__main .footer__block__title,
  .footer__main .footer__block__toggle,
  .footer__main .footer__block__toggle .footer__block__title {
    color: #ffffff !important;
  }

  .footer__main .footer__block__content a,
  .footer__main .footer__block__content li,
  .footer__main .footer__block__content p,
  .footer__main .block-contact,
  .footer__main .block-contact a {
    color: rgba(255, 255, 255, 0.78) !important;
  }
}

/* V1.3.1 - transporteurs mobile, reassurance and socials refinements */
@media screen and (max-width: 767.98px) {
  .page-order .delivery-options__item > label > .row {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    grid-template-areas:
      'left price'
      'delay delay' !important;
    gap: 0.55rem 0.85rem !important;
    align-items: start !important;
  }

  .page-order .delivery-option__left {
    grid-area: left !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
  }

  .page-order .delivery-option__left > .row {
    display: grid !important;
    grid-template-columns: 1.25rem minmax(0, 1fr) !important;
    gap: 0.8rem !important;
    align-items: start !important;
    margin: 0 !important;
  }

  .page-order .delivery-option__left .custom-radio {
    width: 1.25rem !important;
    max-width: 1.25rem !important;
    padding: 0 !important;
    margin-top: 0.45rem !important;
  }

  .page-order .carrier,
  .page-order .carrier .row {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
  }

  .page-order .carrier__logo {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    padding: 0 !important;
    margin: 0 0 0.55rem 0 !important;
  }

  .page-order .carrier__logo img {
    display: block !important;
    width: 78px !important;
    max-width: 78px !important;
    margin: 0 !important;
    border-radius: 14px !important;
  }

  .page-order .carriere-name-container {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    padding: 0 !important;
  }

  .page-order .carrier-name {
    display: -webkit-box !important;
    width: 100% !important;
    overflow: hidden !important;
    white-space: normal !important;
    font-size: 1.02rem !important;
    line-height: 1.18 !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
  }

  .page-order .delivery-option__center {
    grid-area: delay !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 0 0 calc(1.25rem + 0.8rem) !important;
    display: -webkit-box !important;
    overflow: hidden !important;
    color: #5c6169 !important;
    font-size: 0.98rem !important;
    line-height: 1.38 !important;
    text-align: left !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 3 !important;
  }

  .page-order .delivery-option__right {
    grid-area: price !important;
    margin-top: 0.2rem !important;
    font-size: 1rem !important;
  }

  .page-order .carrier__extra-content {
    font-size: 0.95rem !important;
  }

  #block-reassurance,
  .blockreassurance_product,
  .page-product #block-reassurance,
  .page-index #block-reassurance,
  .page-category #block-reassurance {
    padding: 0.35rem 0 1.2rem !important;
  }

  #block-reassurance ul,
  .blockreassurance_product ul {
    display: grid !important;
    gap: 0.8rem !important;
    padding: 0 1rem !important;
    margin: 0 !important;
    list-style: none !important;
  }

  #block-reassurance li,
  .blockreassurance_product li {
    margin: 0 !important;
  }

  #block-reassurance .block-reassurance-item,
  .blockreassurance_product .block-reassurance-item {
    display: grid !important;
    grid-template-columns: 3rem minmax(0, 1fr) !important;
    gap: 0.95rem !important;
    align-items: center !important;
    padding: 0.95rem 1rem !important;
    border: 1px solid rgba(28, 34, 44, 0.08) !important;
    border-radius: 16px !important;
    background: #fffdf9 !important;
    box-shadow: 0 10px 24px rgba(22, 24, 28, 0.05) !important;
  }

  #block-reassurance .block-reassurance-item img,
  .blockreassurance_product .block-reassurance-item img {
    width: 3rem !important;
    height: 3rem !important;
    object-fit: contain !important;
    padding: 0.45rem !important;
    border-radius: 14px !important;
    background: #fbf3e6 !important;
  }

  #block-reassurance .block-reassurance-item .h6,
  #block-reassurance .block-reassurance-item span,
  .blockreassurance_product .block-reassurance-item .h6,
  .blockreassurance_product .block-reassurance-item span {
    margin: 0 !important;
    color: #262b33 !important;
    font-family: Gantari, Inter, system-ui, sans-serif !important;
    font-size: 1.08rem !important;
    font-weight: 650 !important;
    line-height: 1.38 !important;
  }

  .block-social {
    gap: 0.85rem !important;
    padding-top: 1rem !important;
    padding-bottom: 1.45rem !important;
  }

  .block-social a {
    width: auto !important;
    height: auto !important;
    padding: 0 !important;
    margin: 0 0.15rem !important;
    background: transparent !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    color: #a98540 !important;
  }

  .block-social a svg {
    display: block !important;
    width: 2rem !important;
    height: 2rem !important;
    fill: currentColor !important;
  }
}

/* V1.2 - hide empty ps_checkout notification blocks on mobile */
@media screen and (max-width: 767.98px) {
  #ps_checkout-error:has(#ps_checkout-error-text:empty),
  #ps_checkout-canceled:has(strong:empty) {
    display: none !important;
  }
}

/* V1.2.1 - checkout mobile UI refinements */
@media screen and (max-width: 767.98px) {
  .js-address-form label[for="field-phone"]::after,
  .js-address-form label[for="field-phone_mobile"]::after {
    content: " (obligatoire)";
    font-style: italic;
    font-weight: 400;
    color: #8e6d35;
  }

  .page-order .carrier-name {
    font-size: 0.98rem !important;
    font-weight: 650 !important;
    letter-spacing: 0 !important;
  }

  .page-order .delivery-option__center {
    text-align: justify !important;
    text-wrap: pretty !important;
  }

  .page-order .delivery-option__right {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 5.8rem !important;
    padding: 0.5rem 0.9rem !important;
    border: 1px solid rgba(169, 133, 64, 0.22) !important;
    border-radius: 999px !important;
    background: #fbf3e6 !important;
    color: #232833 !important;
    font-size: 1.02rem !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    box-shadow: 0 10px 22px rgba(28, 32, 39, 0.08) !important;
  }

  #block-reassurance .block-reassurance-item,
  .blockreassurance_product .block-reassurance-item {
    border-color: rgba(169, 133, 64, 0.14) !important;
    border-radius: 18px !important;
    background: linear-gradient(180deg, #fffefb 0%, #fff9f1 100%) !important;
    box-shadow: 0 14px 30px rgba(25, 28, 34, 0.06) !important;
  }

  #block-reassurance .block-reassurance-item img,
  .blockreassurance_product .block-reassurance-item img {
    border-radius: 16px !important;
    background: linear-gradient(180deg, #fff8ee 0%, #f9eddc 100%) !important;
    box-shadow: inset 0 0 0 1px rgba(169, 133, 64, 0.1) !important;
  }

  .block-social {
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 0.9rem !important;
  }

  .block-social::before {
    content: "Decouvrez-nous sur les reseaux";
    width: 100%;
    margin-bottom: 0.05rem;
    color: #2a2f37;
    font-size: 0.96rem;
    font-weight: 600;
    text-align: center;
  }

  .block-social a svg {
    width: 2.15rem !important;
    height: 2.15rem !important;
  }
}

/* V1.2.2 - checkout mobile polish without payment changes */
@media screen and (max-width: 767.98px) {
  .page-order .checkout-step.-current .step-title,
  .page-order .checkout-step .content > .h3,
  .page-order .checkout-step .content h2,
  .page-order .checkout-step .content h3 {
    letter-spacing: 0 !important;
  }

  .page-order #customer-form .form-label,
  .page-order .js-address-form .form-label,
  .page-order #customer-form .form-check-label,
  .page-order .js-address-form .form-check-label {
    color: #20252d !important;
    font-size: 1.04rem !important;
    font-weight: 600 !important;
    line-height: 1.32 !important;
  }

  .page-order #customer-form .form-check,
  .page-order .js-address-form .form-check {
    margin-bottom: 0.45rem !important;
  }

  .page-order #customer-form .form-check-input,
  .page-order .js-address-form .form-check-input {
    width: 1.15rem !important;
    height: 1.15rem !important;
    margin-top: 0.18rem !important;
    border-width: 1.5px !important;
  }

  .page-order #customer-form .form-text,
  .page-order .js-address-form .form-text {
    font-size: 0.95rem !important;
  }

  .page-order .carrier-name {
    display: block !important;
    overflow: visible !important;
    white-space: nowrap !important;
    font-size: 0.9rem !important;
    font-weight: 700 !important;
    line-height: 1.18 !important;
    -webkit-line-clamp: unset !important;
  }

  .page-order .delivery-option__center {
    display: block !important;
    overflow: visible !important;
    padding: 0 0.85rem 0 calc(1.25rem + 0.8rem) !important;
    color: #59606a !important;
    font-size: 0.95rem !important;
    line-height: 1.42 !important;
    text-align: justify !important;
    -webkit-line-clamp: unset !important;
  }

  .page-order .delivery-options__item > label {
    padding-right: 0.15rem !important;
  }

  #block-reassurance ul,
  .blockreassurance_product ul {
    gap: 0.95rem !important;
    padding: 0 1rem 0.25rem !important;
  }

  #block-reassurance .block-reassurance-item,
  .blockreassurance_product .block-reassurance-item {
    grid-template-columns: 3.35rem minmax(0, 1fr) !important;
    gap: 1rem !important;
    padding: 1rem 1rem !important;
    border: 1px solid rgba(181, 149, 88, 0.16) !important;
    border-radius: 18px !important;
    background: linear-gradient(180deg, #fffdf9 0%, #fff7ee 100%) !important;
    box-shadow: 0 14px 30px rgba(23, 27, 34, 0.07) !important;
  }

  #block-reassurance .block-reassurance-item img,
  .blockreassurance_product .block-reassurance-item img {
    width: 3.35rem !important;
    height: 3.35rem !important;
    padding: 0.55rem !important;
    border-radius: 16px !important;
    background: #fff !important;
    box-shadow: 0 0 0 1px rgba(181, 149, 88, 0.1) inset, 0 8px 20px rgba(23, 27, 34, 0.06) !important;
  }

  #block-reassurance .block-reassurance-item .h6,
  #block-reassurance .block-reassurance-item span,
  .blockreassurance_product .block-reassurance-item .h6,
  .blockreassurance_product .block-reassurance-item span {
    color: #222831 !important;
    font-size: 1.02rem !important;
    font-weight: 600 !important;
    line-height: 1.42 !important;
  }

  .block-social::before {
    content: "D\00E9 couvrez-nous sur les r\00E9seaux" !important;
    width: 100%;
    margin-bottom: 0.1rem;
    color: #262b33;
    font-size: 0.98rem;
    font-weight: 600;
    text-align: center;
  }
}

/* MF v2.2 mobile A: compact, optically aligned header and current bag icon. */
@media screen and (max-width: 767.98px) {
  .header-bottom__row {
    min-height: 58px !important;
    height: 58px !important;
  }

  .header-bottom .main-menu,
  #_mobile_user_info,
  #_mobile_cart {
    top: 46% !important;
  }

  .header-bottom .logo {
    top: 44.5% !important;
  }

  #searchCanvas,
  .search__offcanvas_,
  .js-search-offcanvas_ {
    margin-top: -4px !important;
    padding-bottom: 0.25rem !important;
  }

  #searchCanvas .offcanvas-header {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  #_mobile_search input[type='search'],
  #_mobile_search .js-search-input {
    height: 44px !important;
  }

  #_mobile_search .search,
  #_mobile_search .js-search-icon {
    width: 44px !important;
    height: 44px !important;
  }

  .products.row .product-miniature [data-button-action='add-to-cart'] .product-miniature__bag-plus,
  .products.row .product-miniature [data-button-action='add-to-cart'] .product-miniature__bag-plus svg {
    width: 22px;
    height: 28px;
  }

  .header-bottom .mf-mobile-logo,
  .header-bottom .mf-mobile-logo .navbar-brand {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  .header-bottom .mf-mobile-logo,
  .header-bottom .mf-mobile-logo .navbar-brand,
  .header-bottom .mf-mobile-logo img.logo {
    width: auto !important;
    max-width: clamp(170px, 46vw, 215px) !important;
    max-height: 40px !important;
    margin: 0 !important;
    padding: 0 !important;
    object-fit: contain !important;
  }

  .header-bottom .mf-mobile-logo img.logo {
    position: static !important;
    inset: auto !important;
    transform: none !important;
  }

  .products.row .product-miniature__infos__bottom {
    gap: 0.28rem !important;
    margin-top: 0.42rem !important;
    padding-bottom: 0.5rem !important;
  }

  .products.row .product-miniature__prices {
    margin-top: 0.22rem !important;
    margin-bottom: 0 !important;
  }

  .products.row .product-miniature__discount-price:empty {
    display: none !important;
    min-width: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .products.row .product-miniature__details-link,
  .products.row .product-miniature__prices + .product-miniature__details-link {
    margin-top: 0.08rem !important;
    margin-bottom: 0 !important;
  }

  .products.row .product-miniature__details-link + form,
  .products.row .product-miniature__infos__bottom > form {
    margin-top: 0.08rem !important;
    margin-bottom: 0 !important;
  }

  .products.row .product-miniature__infos__bottom > form .btn,
  .products.row .product-miniature__infos__bottom > form button[data-button-action='add-to-cart'] {
    min-height: 46px !important;
  }
}

/* MF v2.2e: clearer sale price and compact mobile card actions. */
@media screen and (max-width: 767.98px) {
  .products.row .product-miniature__regular-price {
    font-size: 1.12rem !important;
    font-weight: 650 !important;
    line-height: 1.2 !important;
    text-decoration-thickness: 1.5px !important;
  }

  .products.row .product-miniature__quickview,
  .products.row .product-miniature__quickview_touch {
    display: none !important;
  }

  .products.row .product-miniature__infos__bottom > form {
    display: flex !important;
    justify-content: center !important;
    width: 100% !important;
  }

  .products.row .product-miniature__infos__bottom > form button[data-button-action='add-to-cart'],
  .products.row .product-miniature .btn.btn-primary[data-button-action='add-to-cart'] {
    flex: 0 0 auto !important;
    width: 72% !important;
    max-width: 260px !important;
    min-width: 0 !important;
    min-height: 43px !important;
    margin-right: auto !important;
    margin-left: auto !important;
  }

}

/* MF v2.2k: adaptive mobile header, compact subcategory tags and softer drawer menu. */
@media screen and (max-width: 767.98px) {
  body #header,
  body header.header {
    top: 0 !important;
    margin-top: 0 !important;
    padding-top: 0 !important;
  }

  /* The desktop utility row is empty on mobile and must not reserve space. */
  body #header > .header-top,
  body #header .header-top > .container-md {
    display: none !important;
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* A real promo banner remains in normal flow; an empty one disappears. */
  body #header .mf-promo-banner {
    position: relative !important;
    top: auto !important;
    height: auto !important;
    margin: 0 !important;
  }

  body #header .mf-promo-banner:empty {
    display: none !important;
  }

  body #header .header-bottom,
  body #header .header-bottom__container,
  body #header .header-bottom__row {
    margin-top: 0 !important;
    border-top: 0 !important;
  }

  body #header .header-bottom {
    height: 60px !important;
    min-height: 60px !important;
  }

  body #header .header-bottom__row {
    display: block !important;
    height: 60px !important;
    min-height: 60px !important;
    padding: 0 !important;
  }

  body #header .header-bottom .main-menu,
  body #header #_mobile_user_info,
  body #header #_mobile_cart {
    top: 50% !important;
  }

  body #header .header-bottom .mf-mobile-logo {
    position: absolute !important;
    top: 42.5% !important;
    left: 50% !important;
    width: clamp(150px, 42vw, 174px) !important;
    height: 48px !important;
    max-width: clamp(150px, 42vw, 174px) !important;
    max-height: 48px !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: translate(-50%, -50%) !important;
  }

  body #header .header-bottom .mf-mobile-logo .navbar-brand {
    width: 100% !important;
  }

  body #header .header-bottom .mf-mobile-logo img.logo {
    width: auto !important;
    height: auto !important;
    max-width: 100% !important;
    max-height: 39px !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
    object-fit: contain !important;
  }

  body #searchCanvas,
  body .search__offcanvas_,
  body .js-search-offcanvas_ {
    clear: both !important;
    margin-top: -2px !important;
    padding: 0 0 0.35rem !important;
  }

  body #searchCanvas .offcanvas-header {
    min-height: 0 !important;
    padding: 0 0.55rem !important;
  }

  body #_mobile_search input[type='search'],
  body #_mobile_search .js-search-input {
    height: 48px !important;
    min-height: 48px !important;
    border-radius: 24px !important;
  }

  body #_mobile_search .search,
  body #_mobile_search .js-search-icon {
    width: 48px !important;
    height: 48px !important;
  }

  .main-menu__offcanvas {
    background: linear-gradient(155deg, #fff 0%, #fffdf8 62%, #faf6ff 100%) !important;
  }

  .main-menu__mobile .menu__list {
    padding: 0.55rem 0.65rem 1rem !important;
  }

  .main-menu__mobile .menu__link,
  .main-menu__mobile .menu__item > a,
  .main-menu__mobile .menu__list a {
    min-height: 52px !important;
    margin: 0.16rem 0 !important;
    padding: 0.82rem 1rem !important;
    border: 1px solid transparent !important;
    border-radius: 13px !important;
    background: transparent !important;
    color: #3f3741 !important;
    font-family: "Avenir Next", Avenir, "Segoe UI", Inter, Arial, sans-serif !important;
    font-size: 1rem !important;
    font-weight: 650 !important;
    letter-spacing: 0.012em !important;
    box-shadow: none !important;
  }

  .main-menu__mobile li.current > .menu__link,
  .main-menu__mobile .menu__link[aria-current='page'],
  .main-menu__mobile .menu__link:active,
  .main-menu__mobile .menu__link:focus-visible {
    border-color: rgba(198, 162, 79, 0.34) !important;
    background: linear-gradient(110deg, rgba(255, 247, 224, 0.96), rgba(250, 244, 255, 0.88)) !important;
    color: #69542b !important;
    box-shadow: 0 5px 15px rgba(72, 52, 73, 0.07), inset 3px 0 0 rgba(198, 162, 79, 0.72) !important;
  }

  body.page-category #js-product-list-header #subcategories.subcategories {
    box-sizing: border-box !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    width: 100% !important;
    margin: 0 0 1.15rem !important;
    padding: 0.1rem 0 !important;
    gap: 0.55rem !important;
    overflow: visible !important;
    scroll-snap-type: none !important;
  }

  body.page-category #subcategories .subcategory__wrapper {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    padding: 0 !important;
  }

  body.page-category #subcategories a.subcategory {
    box-sizing: border-box !important;
    display: grid !important;
    grid-template-columns: 34px minmax(0, 1fr) !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 48px !important;
    padding: 0.38rem 0.58rem 0.38rem 0.4rem !important;
    gap: 0.48rem !important;
    border-radius: 15px !important;
  }

  body.page-category #subcategories .subcategory__image {
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
  }

  body.page-category #subcategories .subcategory__name {
    display: -webkit-box !important;
    min-width: 0 !important;
    overflow: hidden !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    font-size: 0.82rem !important;
    line-height: 1.18 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }
}

@media screen and (max-width: 349.98px) {
  body.page-category #js-product-list-header #subcategories.subcategories {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}

/* MF v2.2n: final mobile readability and header balance refinements. */
@media screen and (max-width: 767.98px) {
  body #header .header-bottom .mf-mobile-logo {
    top: 39.5% !important;
    left: 47% !important;
    width: clamp(164px, 46vw, 190px) !important;
    max-width: clamp(164px, 46vw, 190px) !important;
  }

  body #header .header-bottom .mf-mobile-logo img.logo {
    max-height: 42px !important;
  }

  .main-menu__mobile .menu__link,
  .main-menu__mobile .menu__item > a,
  .main-menu__mobile .menu__list a {
    min-height: 64px !important;
    padding: 1rem 1.05rem !important;
    font-size: 1.5rem !important;
    font-weight: 450 !important;
    line-height: 1.2 !important;
    letter-spacing: 0 !important;
  }

  .main-menu__mobile li.current > .menu__link,
  .main-menu__mobile .menu__link[aria-current='page'],
  .main-menu__mobile .menu__link:active,
  .main-menu__mobile .menu__link:focus-visible {
    border-color: rgba(198, 162, 79, 0.22) !important;
    background: #fff !important;
    color: #5d4b2d !important;
    box-shadow: 0 4px 14px rgba(72, 52, 73, 0.06) !important;
  }

  body.page-category #toggle-description {
    border-color: rgba(198, 162, 79, 0.3) !important;
    background: #fff !important;
    color: #5d513d !important;
    box-shadow: 0 4px 12px rgba(72, 52, 73, 0.045) !important;
  }

  body.page-category #toggle-description:hover,
  body.page-category #toggle-description:focus-visible {
    border-color: rgba(198, 162, 79, 0.42) !important;
    background: #fff !important;
    color: #493b25 !important;
  }

  body.page-category #subcategories a.subcategory {
    grid-template-columns: 40px minmax(0, 1fr) !important;
    min-height: 54px !important;
    padding: 0.4rem 0.62rem 0.4rem 0.42rem !important;
  }

  body.page-category #subcategories .subcategory__image {
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
    flex-basis: 40px !important;
  }

  body.page-category #subcategories .subcategory__name {
    font-size: 0.9rem !important;
    font-weight: 650 !important;
    line-height: 1.2 !important;
  }
}

/* MF v2.2w: rebalance the Promo label beside the discount amount. */
@media screen and (max-width: 767.98px) {
  body.page-category #js-product-list .product-miniature .product-flags .badge.on-sale {
    min-height: 41px !important;
    padding: 0.52rem 0.78rem !important;
    border-radius: 10px !important;
    font-size: 1.12rem !important;
  }
}

/* MF v2.2x: make the former category-card price easier to read. */
@media screen and (max-width: 767.98px) {
  body.page-category .products.row .product-miniature__regular-price {
    font-size: 1.35rem !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    text-decoration-thickness: 2px !important;
  }
}

/* MF v2.2y: compact, readable mobile cart product rows. */
@media screen and (max-width: 767.98px) {
  body.page-cart .cart__overview {
    gap: 0.55rem !important;
  }

  body.page-cart .cart__item {
    margin-bottom: 0.55rem !important;
    padding: 0.68rem 0.72rem !important;
    border-radius: 12px !important;
  }

  body.page-cart .cart__item > .product-line {
    position: static !important;
    display: grid !important;
    grid-template-columns: 84px minmax(0, 1fr) !important;
    grid-template-rows: auto auto !important;
    gap: 0.38rem 0.72rem !important;
    align-items: center !important;
    width: 100% !important;
    min-height: 0 !important;
  }

  body.page-cart .cart__item > .product-line > .product-line__image {
    position: static !important;
    display: flex !important;
    grid-area: 1 / 1 / 2 / 2 !important;
    align-items: center !important;
    justify-content: center !important;
    width: 84px !important;
    min-height: 82px !important;
    margin: 0 !important;
    padding: 0.15rem !important;
    transform: none !important;
  }

  body.page-cart .cart__item .product-line__img {
    display: block !important;
    width: 80px !important;
    max-width: 80px !important;
    height: 80px !important;
    margin: 0 !important;
    object-fit: contain !important;
  }

  body.page-cart .cart__item > .product-line > .product-line__content {
    display: contents !important;
  }

  body.page-cart .cart__item .product-line__content-left {
    position: static !important;
    display: flex !important;
    grid-area: 1 / 2 / 2 / 3 !important;
    flex-direction: column !important;
    align-self: center !important;
    gap: 0.2rem !important;
    width: auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
  }

  body.page-cart .cart__item .product-line__title {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: visible !important;
    font-size: 1.02rem !important;
    font-weight: 650 !important;
    line-height: 1.25 !important;
    white-space: normal !important;
    text-overflow: clip !important;
  }

  body.page-cart .cart__item .product-line__item--prices {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 0.18rem 0.4rem !important;
    margin: 0.12rem 0 0 !important;
  }

  body.page-cart .cart__item .product-line__content-right {
    position: static !important;
    display: flex !important;
    grid-area: 2 / 2 / 3 / 3 !important;
    flex-flow: row nowrap !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 0.55rem !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0.25rem 0 0 !important;
    border: 0 !important;
    text-align: left !important;
    transform: none !important;
  }

  body.page-cart .cart__item .product-line__quantity-button {
    flex: 0 0 132px !important;
    width: 132px !important;
    max-width: 132px !important;
    margin: 0 !important;
  }

  body.page-cart .cart__item .product-line__price {
    flex: 0 0 auto !important;
    margin: 0 !important;
    font-size: 1.05rem !important;
    font-weight: 650 !important;
    white-space: nowrap !important;
  }

  body.page-cart .cart__item .product-line__actions {
    position: static !important;
    display: flex !important;
    grid-area: 2 / 1 / 3 / 2 !important;
    align-items: center !important;
    justify-content: center !important;
    width: 84px !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
  }

  body.page-cart .cart__item .product-line__actions .js-remove-from-cart {
    min-height: 0 !important;
    padding: 0.3rem 0.2rem !important;
    font-size: 0.92rem !important;
  }
}

/* MF v2.2z: stronger reassurance typography on mobile checkout pages. */
@media screen and (max-width: 575.98px) {
  body:is(.page-cart, .page-order, .page-order-confirmation) .blockreassurance_product .block-title {
    font-size: 1.12rem !important;
    font-weight: 750 !important;
    line-height: 1.24 !important;
  }

  body:is(.page-cart, .page-order, .page-order-confirmation) .blockreassurance_product p:not(.block-title) {
    font-size: 0.94rem !important;
    line-height: 1.36 !important;
  }
}

/* MF v2.2za: keep the cart quantity value visible in the compact mobile row. */
@media screen and (max-width: 767.98px) {
  body.page-cart .cart__item .product-line__quantity-button,
  body.page-cart .cart__item .quantity-button__group {
    display: flex !important;
    flex: 0 0 132px !important;
    width: 132px !important;
    min-width: 132px !important;
    max-width: 132px !important;
    overflow: visible !important;
  }

  body.page-cart .cart__item .quantity-button__group > button {
    flex: 0 0 42px !important;
    width: 42px !important;
    min-width: 42px !important;
    height: 44px !important;
    padding: 0 !important;
  }

  body.page-cart .cart__item .product-line__quantity-button input,
  body.page-cart .cart__item input.js-cart-line-product-quantity {
    display: block !important;
    flex: 0 0 48px !important;
    width: 48px !important;
    min-width: 48px !important;
    max-width: 48px !important;
    height: 44px !important;
    padding: 0.35rem 0.15rem !important;
    color: #2f2931 !important;
    -webkit-text-fill-color: #2f2931 !important;
    background-color: #fff !important;
    font-size: 1.05rem !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    opacity: 1 !important;
    text-align: center !important;
    visibility: visible !important;
  }
}

/* MF v2.2zb: compact quantity selector on mobile product cards and modules. */
@media screen and (max-width: 767.98px) {
  .products.row .product-miniature .quantity-button {
    display: flex !important;
    justify-content: center !important;
    width: 180px !important;
    min-width: 180px !important;
    max-width: 180px !important;
    margin-right: auto !important;
    margin-left: auto !important;
  }

  .products.row .product-miniature .quantity-button__group {
    display: flex !important;
    width: 180px !important;
    min-width: 180px !important;
    max-width: 180px !important;
    overflow: visible !important;
  }

  .products.row .product-miniature .quantity-button__group > button {
    flex: 0 0 46px !important;
    width: 46px !important;
    min-width: 46px !important;
    height: 44px !important;
    padding: 0 !important;
  }

  .products.row .product-miniature .quantity-button__group > input {
    display: block !important;
    flex: 0 0 88px !important;
    width: 88px !important;
    min-width: 88px !important;
    max-width: 88px !important;
    height: 44px !important;
    padding: 0.35rem !important;
    color: #2f2931 !important;
    -webkit-text-fill-color: #2f2931 !important;
    background: #fff !important;
    font-size: 1.05rem !important;
    font-weight: 600 !important;
    opacity: 1 !important;
    text-align: center !important;
    visibility: visible !important;
  }
}

/* MF v2.2o: larger mobile branding, calm menu states and clearer mobile prices. */
@media screen and (max-width: 767.98px) {
  body #header .header-bottom .mf-mobile-logo {
    top: 37.5% !important;
    left: 44.5% !important;
    width: clamp(178px, 50vw, 205px) !important;
    max-width: clamp(178px, 50vw, 205px) !important;
  }

  body #header .header-bottom .mf-mobile-logo img.logo {
    width: 100% !important;
    max-height: 45px !important;
    object-fit: contain !important;
  }

  .main-menu__mobile li,
  .main-menu__mobile li.category {
    overflow: visible !important;
    background: transparent !important;
    color: inherit !important;
  }

  .main-menu__mobile li.category::before,
  .main-menu__mobile li.category::after {
    display: none !important;
    content: none !important;
  }

  .main-menu__mobile li.current > .menu__link,
  .main-menu__mobile .menu__link.mf-current-link,
  .main-menu__mobile .menu__link[aria-current='page'],
  .main-menu__mobile .menu__link:active,
  .main-menu__mobile .menu__link:focus-visible {
    border-color: rgba(198, 162, 79, 0.28) !important;
    background: linear-gradient(110deg, #fcfaf5 0%, #faf7fc 100%) !important;
    color: #5d4b2d !important;
    box-shadow: 0 5px 14px rgba(72, 52, 73, 0.055), inset 3px 0 0 rgba(198, 162, 79, 0.55) !important;
  }

  body.page-product .product-flags .badge.discount {
    min-height: 34px !important;
    padding: 0.46rem 0.72rem !important;
    border-radius: 9px !important;
    font-size: 1.05rem !important;
    font-weight: 700 !important;
    line-height: 1 !important;
  }

  body.page-product .product__prices:has(.product__price-regular) .product__current-price {
    min-width: 136px !important;
    min-height: 54px !important;
    padding: 0.5rem 1.15rem !important;
    font-size: 1.58rem !important;
  }

  body.page-product .product__price-regular {
    font-size: 1.16rem !important;
    font-weight: 600 !important;
    text-decoration-thickness: 2px !important;
  }

  body.page-category .products.row .product-miniature__price,
  body.page-category .products.row .product-miniature__discount-price {
    min-width: 120px !important;
    min-height: 48px !important;
    padding: 0.42rem 0.88rem !important;
    border-radius: 11px !important;
    font-size: 1.42rem !important;
    line-height: 1.1 !important;
  }

  body.page-category .products.row .product-miniature__regular-price {
    font-size: 1.17rem !important;
  }

  body.page-category .products.row .product-miniature__details-link {
    width: calc(100% - 3.2rem) !important;
    min-height: 42px !important;
    padding: 0.55rem 0.75rem !important;
    font-size: 1.04rem !important;
  }
}

/* MF v2.2p: larger logo and a slightly higher adaptive mobile header. */
@media screen and (max-width: 767.98px) {
  body #header .header-bottom {
    height: 56px !important;
    min-height: 56px !important;
  }

  body #header .header-bottom__row {
    height: 56px !important;
    min-height: 56px !important;
  }

  body #header .header-bottom .main-menu,
  body #header #_mobile_user_info,
  body #header #_mobile_cart {
    top: 46% !important;
  }

  body #header .header-bottom .mf-mobile-logo {
    top: 35% !important;
    left: 43.5% !important;
    width: clamp(190px, 54vw, 222px) !important;
    max-width: clamp(190px, 54vw, 222px) !important;
  }

  body #header .header-bottom .mf-mobile-logo img.logo {
    max-height: 49px !important;
  }

  body #searchCanvas,
  body .search__offcanvas_,
  body .js-search-offcanvas_ {
    margin-top: -4px !important;
  }
}

/* MF v2.2q: prominent mobile promotion badges and an explicit gallery exit. */
@media screen and (max-width: 767.98px) {
  body.page-product .product-flags .badge.on-sale,
  body.page-product .product-flags .badge.discount {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 45px !important;
    padding: 0.62rem 1rem !important;
    border-radius: 11px !important;
    font-size: 1.35rem !important;
    font-weight: 750 !important;
    line-height: 1 !important;
    letter-spacing: 0.01em !important;
    box-shadow: 0 5px 14px rgba(72, 52, 73, 0.12) !important;
  }

  body.page-product .fotorama--fullscreen .fotorama__fullscreen-icon {
    top: calc(env(safe-area-inset-top, 0px) + 12px) !important;
    right: 12px !important;
    z-index: 100005 !important;
    width: 50px !important;
    height: 50px !important;
    border: 1px solid rgba(72, 52, 73, 0.16) !important;
    border-radius: 50% !important;
    background-color: rgba(255, 255, 255, 0.94) !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%233f3741' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='M6 6l12 12M18 6L6 18'/%3E%3C/svg%3E") !important;
    background-position: center !important;
    background-size: 25px 25px !important;
    box-shadow: 0 5px 18px rgba(30, 23, 31, 0.18) !important;
  }
}

/* MF v2.2r: visually align the mobile logo with the header icons. */
@media screen and (max-width: 767.98px) {
  body #header .header-bottom .mf-mobile-logo {
    top: 18% !important;
  }
}

/* MF v2.2s: larger promotional badges on mobile category cards. */
@media screen and (max-width: 767.98px) {
  body.page-category #js-product-list .product-miniature .product-flags .badge.on-sale,
  body.page-category #js-product-list .product-miniature .product-flags .badge.discount {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 46px !important;
    padding: 0.62rem 0.92rem !important;
    border-width: 2px !important;
    border-radius: 11px !important;
    font-size: 1.32rem !important;
    font-weight: 750 !important;
    line-height: 1 !important;
    box-shadow: 0 5px 14px rgba(39, 29, 22, 0.16) !important;
  }
}

/* MF v2.2t: rebalance the numeric discount badge without shrinking Promo. */
@media screen and (max-width: 767.98px) {
  body.page-category #js-product-list .product-miniature .product-flags .badge.discount {
    min-height: 41px !important;
    padding: 0.52rem 0.8rem !important;
    border-radius: 10px !important;
    font-size: 1.16rem !important;
  }
}

/* MF v2.2u: one final, safe increase to the mobile logo. */
@media screen and (max-width: 767.98px) {
  body #header .header-bottom .mf-mobile-logo {
    left: 44% !important;
    width: clamp(198px, 56vw, 232px) !important;
    max-width: clamp(198px, 56vw, 232px) !important;
  }

  body #header .header-bottom .mf-mobile-logo img.logo {
    max-height: 52px !important;
  }
}

/* MF v2.2zc: final mobile type-scale refinements. */
@media screen and (max-width: 767.98px) {
  body.page-product .blockreassurance_product .block-title {
    font-size: 1.12rem !important;
    font-weight: 750 !important;
    line-height: 1.24 !important;
  }

  body.page-product .blockreassurance_product p:not(.block-title) {
    font-size: 0.94rem !important;
    line-height: 1.36 !important;
  }

  .main-menu__mobile .menu__link,
  .main-menu__mobile .menu__item > a,
  .main-menu__mobile .menu__list a {
    min-height: 60px !important;
    padding: 0.9rem 1.05rem !important;
    font-size: 1.32rem !important;
  }

  body.page-category #js-product-list .product-miniature .product-flags .badge.on-sale,
  body.page-index .product-miniature .product-flags .badge.on-sale {
    min-height: 38px !important;
    padding: 0.46rem 0.7rem !important;
    border-radius: 9px !important;
    font-size: 1.02rem !important;
  }

  body.page-product .product-flags .badge.on-sale {
    min-height: 40px !important;
    padding: 0.5rem 0.76rem !important;
    border-radius: 9px !important;
    font-size: 1.1rem !important;
  }
}

/* MF v2.2zd: one-line home excerpts and an adaptive compact header. */
@media screen and (max-width: 767.98px) {
  body.page-index .products.row .product-miniature__description-link {
    display: block !important;
    width: 100% !important;
    margin-top: 0.38rem !important;
  }

  body.page-index .products.row .product-miniature__description {
    display: block !important;
    width: 88% !important;
    min-height: 1.34em !important;
    max-height: 1.34em !important;
    margin: 0 auto !important;
    overflow: hidden !important;
    font-size: 1.02rem !important;
    line-height: 1.34 !important;
    white-space: nowrap !important;
    text-overflow: ellipsis !important;
    -webkit-box-orient: initial !important;
    -webkit-line-clamp: initial !important;
  }

  body:not(:has(.mf-promo-banner:not(:empty), #top-info-bar:not(:empty), .header__banner:not(:empty))) #header .header-bottom,
  body:not(:has(.mf-promo-banner:not(:empty), #top-info-bar:not(:empty), .header__banner:not(:empty))) #header .header-bottom__row {
    height: 50px !important;
    min-height: 50px !important;
  }

  body:not(:has(.mf-promo-banner:not(:empty), #top-info-bar:not(:empty), .header__banner:not(:empty))) #header .header-bottom .main-menu,
  body:not(:has(.mf-promo-banner:not(:empty), #top-info-bar:not(:empty), .header__banner:not(:empty))) #header #_mobile_user_info,
  body:not(:has(.mf-promo-banner:not(:empty), #top-info-bar:not(:empty), .header__banner:not(:empty))) #header #_mobile_cart {
    top: 44% !important;
  }

  body:not(:has(.mf-promo-banner:not(:empty), #top-info-bar:not(:empty), .header__banner:not(:empty))) #header .header-bottom .mf-mobile-logo {
    top: 14% !important;
  }

  body:not(:has(.mf-promo-banner:not(:empty), #top-info-bar:not(:empty), .header__banner:not(:empty))) #searchCanvas,
  body:not(:has(.mf-promo-banner:not(:empty), #top-info-bar:not(:empty), .header__banner:not(:empty))) .search__offcanvas_,
body:not(:has(.mf-promo-banner:not(:empty), #top-info-bar:not(:empty), .header__banner:not(:empty))) .js-search-offcanvas_ {
    margin-top: -6px !important;
  }
}

/* MF v2.2zg: remove mobile search side rails and prevent horizontal drift. */
@media screen and (max-width: 767.98px) {
  html,
  body,
  body #page,
  body #wrapper {
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  body #searchCanvas,
  body .search__offcanvas_,
  body .js-search-offcanvas_ {
    left: 0 !important;
    right: auto !important;
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
  }

  body #searchCanvas .offcanvas-header {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding-right: 12px !important;
    padding-left: 12px !important;
    overflow: hidden !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
  }

  body #_mobile_search {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 48px !important;
    min-height: 48px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    outline: 0 !important;
  }

  body #_mobile_search .search-widgets,
  body #_mobile_search .search-widgets form {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: none !important;
    height: 48px !important;
    min-height: 48px !important;
    margin: 0 !important;
  }

  body #_mobile_search .search-widgets form {
    position: relative !important;
    overflow: visible !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
  }

  body #_mobile_search input[type='search'],
  body #_mobile_search .js-search-input {
    box-sizing: border-box !important;
    display: block !important;
    width: 100% !important;
    height: 48px !important;
    min-height: 48px !important;
    margin: 0 !important;
    padding: 0 60px 0 18px !important;
    border: 0 !important;
    border-radius: 24px !important;
    background: #f1f1f1 !important;
    box-shadow: none !important;
  }

  body #_mobile_search .search,
  body #_mobile_search .js-search-icon {
    position: absolute !important;
    top: 50% !important;
    right: 0 !important;
    bottom: auto !important;
    box-sizing: border-box !important;
    width: 48px !important;
    height: 48px !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: translateY(-50%) !important;
    border: 0 !important;
    border-radius: 12px !important;
    background: #efd8b8 !important;
    box-shadow: none !important;
  }

  body #_mobile_search .clear {
    right: 56px !important;
  }

  body #_mobile_search .search-widgets__dropdown {
    left: 0 !important;
    right: auto !important;
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
  }
}

/* MF v2.2zh: keep the search row just below the mobile logo/icons. */
@media screen and (max-width: 767.98px) {
  body:not(:has(.mf-promo-banner:not(:empty), #top-info-bar:not(:empty), .header__banner:not(:empty))) #searchCanvas,
  body:not(:has(.mf-promo-banner:not(:empty), #top-info-bar:not(:empty), .header__banner:not(:empty))) .search__offcanvas_,
  body:not(:has(.mf-promo-banner:not(:empty), #top-info-bar:not(:empty), .header__banner:not(:empty))) .js-search-offcanvas_ {
    margin-top: 4px !important;
  }
}
