/* ===================================
    CSS Variables - 占位变量
   =================================== */
:root {
  /* --------------------------------------------------------
     中性默认色（占位）
     灰度系主色 + 中性背景/文字，仅作占位，
     项目启动后替换为正式品牌色。
     -------------------------------------------------------- */

  /* 主色调 */
  --color-primary: #4b5563;
  --color-primary-hover: #374151;
  --color-primary-light: #e5e7eb;
  --color-secondary: #6b7280;
  --color-secondary-hover: #4b5563;

  /* 文字颜色 */
  --color-text-heading: #111827;
  --color-text-body: #1a1a1a;
  --color-text-secondary: #6b7280;
  --color-text-muted: #9ca3af;

  /* 边框与分割 */
  --color-border: #e5e7eb;
  --color-border-light: #f3f4f6;

  /* 背景色 */
  --color-bg-primary: #ffffff;
  --color-bg-secondary: #f9fafb;
  --color-bg-tertiary: #f3f4f6;
  --color-bg-card: #ffffff;

  /* 链接与交互 */
  --color-link: #4b5563;
  --color-link-hover: #374151;

  /* 覆盖层 */
  --color-overlay-dark: rgba(17, 24, 39, 0.75);

  /* 标签/徽章背景 */
  --color-tag-bg: #f3f4f6;
  --color-tag-bg-hover: #e5e7eb;

  /* 社交媒体颜色（平台官方品牌色，非项目主色，按需替换） */
  --color-social-facebook: #1877F2;
  --color-social-twitter: #1DA1F2;
  --color-social-linkedin: #0A66C2;
  --color-social-whatsapp: #25D366;
  --color-social-pinterest: #BD081C;
  --color-social-email: #4b5563;

  /* 通用白（彩色背景上的对比文字） */
  --color-white: #ffffff;

  /* 浅遮罩（Mobile 导航，区别于 Modal 的深遮罩） */
  --color-overlay-light: rgba(0, 0, 0, 0.4);

  /* 阴影色 */
  --color-shadow-sm: rgba(0, 0, 0, 0.05);
  --color-shadow-md: rgba(0, 0, 0, 0.1);
  --color-modal-shadow: rgba(17, 24, 39, 0.5);

  /* Modal 专属 */
  --color-modal-close-bg: rgba(255, 255, 255, 0.85);
  --color-modal-panel-from: #111827;
  --color-modal-panel-to: #1f2937;
  --color-modal-text-muted: rgba(255, 255, 255, 0.82);
  --color-modal-text-soft: rgba(255, 255, 255, 0.92);
  --color-modal-accent: #fbbf24;
}

/* Reusable product entry cards */
.ls-product-entry-carousel {
    position: relative;
    padding: 0 52px 42px;
}

.ls-product-entry-carousel .ls-product-entry-track {
    display: flex;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    scroll-behavior: smooth;
}

.ls-product-entry-carousel .ls-product-entry-track::-webkit-scrollbar {
    display: none;
}

.ls-product-entry-carousel .ls-product-entry-grid {
    margin-top: 40px;
    min-width: 100%;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
    flex: 0 0 100%;
    scroll-snap-align: start;
}

.ls-product-entry-carousel .product-carousel-button .fa-solid::before,
.ls-product-entry-carousel .product-carousel-button .fas::before,
.ls-product-entry-grid .category-product-favorite .fa-regular::before,
.ls-product-entry-grid .category-product-favorite .far::before {
    content: "";
    display: block;
    width: 1em;
    height: 1em;
    background-color: currentColor;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
    -webkit-mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: contain;
}

.ls-product-entry-carousel .product-carousel-button .fa-chevron-left::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M14.7 5.3a1 1 0 0 1 0 1.4L9.41 12l5.3 5.3a1 1 0 1 1-1.42 1.4l-6-6a1 1 0 0 1 0-1.4l6-6a1 1 0 0 1 1.42 0Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M14.7 5.3a1 1 0 0 1 0 1.4L9.41 12l5.3 5.3a1 1 0 1 1-1.42 1.4l-6-6a1 1 0 0 1 0-1.4l6-6a1 1 0 0 1 1.42 0Z'/%3E%3C/svg%3E");
}

.ls-product-entry-carousel .product-carousel-button .fa-chevron-right::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M9.3 5.3a1 1 0 0 0 0 1.4L14.59 12l-5.3 5.3a1 1 0 0 0 1.42 1.4l6-6a1 1 0 0 0 0-1.4l-6-6a1 1 0 0 0-1.42 0Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M9.3 5.3a1 1 0 0 0 0 1.4L14.59 12l-5.3 5.3a1 1 0 0 0 1.42 1.4l6-6a1 1 0 0 0 0-1.4l-6-6a1 1 0 0 0-1.42 0Z'/%3E%3C/svg%3E");
}

.ls-product-entry-grid .category-product-favorite .fa-heart::before {
    background-color: transparent;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M21.2 5.7a4.9 4.9 0 0 0-6.9 0L12 8l-2.3-2.3a4.9 4.9 0 0 0-6.9 6.9l2.3 2.3L12 21.8l6.9-6.9 2.3-2.3a4.9 4.9 0 0 0 0-6.9Z' fill='none' stroke='%23FF6A1A' stroke-width='1.65' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    -webkit-mask-image: none;
    mask-image: none;
}

.ls-product-entry-grid .category-product-favorite:hover .fa-heart::before,
.ls-product-entry-grid .category-product-favorite:focus-visible .fa-heart::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 21.35 10.55 20.03C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09A6 6 0 0 1 16.5 3C19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35Z' fill='%23FF6A1A'/%3E%3C/svg%3E");
}

.ls-product-entry-grid .category-product-card {
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 0;
    color: inherit;
    background: #fff;
    border: 0;
    border-radius: 16px;
    box-shadow: none;
    overflow: hidden;
    padding: 22px 16px 28px;
    text-align: center;
    transition: background-color 0.25s ease;
}

.ls-product-entry-grid .category-product-card:hover,
.ls-product-entry-grid .category-product-card:focus-within {
    transform: none;
    box-shadow: none;
    background: #fcf5f0;
}

.ls-product-entry-grid .category-product-link {
    color: inherit;
    text-decoration: none;
    display: flex;
    flex-direction: column;
    align-items: center;
    flex: 1 1 auto;
    min-height: 0;
    height: auto;
}

.ls-product-entry-grid .category-product-favorite {
    position: absolute;
    top: 12px;
    right: 12px;
    width: 28px;
    height: 28px;
    min-width: 28px;
    min-height: 28px;
    border: 0;
    background: #fff;
    border-radius: 999px;
    color: #000;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    font-size: 15px;
    z-index: 4;
    pointer-events: auto;
    flex: 0 0 28px;
}

.ls-product-entry-grid .category-product-favorite .ls-pdp__wishlist-icon,
.single-designer-product-wishlist .ls-pdp__wishlist-icon,
.single-journal-shop-grid .category-product-favorite .ls-pdp__wishlist-icon {
    position: relative;
    width: 16px;
    height: 16px;
}

.ls-product-entry-grid .category-product-favorite i {
    width: 16px;
    height: 16px;
    font-size: 16px;
}

.ls-product-entry-grid .category-product-favorite .fa-solid::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 21.35 10.55 20.03C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09A6 6 0 0 1 16.5 3C19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35Z' fill='%23FF6A1A'/%3E%3C/svg%3E");
}

.ls-product-entry-grid .category-product-favorite .fa-solid,
.single-designer-product-wishlist .ls-pdp__wishlist-icon .fa-solid,
.single-journal-shop-grid .category-product-favorite .ls-pdp__wishlist-icon .fa-solid {
    opacity: 0;
}

.ls-product-entry-grid .category-product-favorite.is-active,
.single-designer-product-wishlist.is-active,
.single-journal-shop-grid .category-product-favorite.is-active {
    color: #FF6A1A;
}

.ls-product-entry-grid .category-product-favorite.is-active .fa-regular,
.single-designer-product-wishlist.is-active .ls-pdp__wishlist-icon .fa-regular,
.single-journal-shop-grid .category-product-favorite.is-active .ls-pdp__wishlist-icon .fa-regular {
    opacity: 0;
}

.ls-product-entry-grid .category-product-favorite.is-active .fa-solid,
.single-designer-product-wishlist.is-active .ls-pdp__wishlist-icon .fa-solid,
.single-journal-shop-grid .category-product-favorite.is-active .ls-pdp__wishlist-icon .fa-solid {
    opacity: 1;
}

.ls-product-entry-grid .category-product-favorite.is-active .fa-solid::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 21.35 10.55 20.03C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09A6 6 0 0 1 16.5 3C19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35Z' fill='%23FF6A1A'/%3E%3C/svg%3E");
}

.ls-product-entry-grid .category-product-badge {
    position: absolute;
    top: 12px;
    left: 12px;
    z-index: 4;
    display: inline-flex;
    align-items: center;
    max-width: 34px;
    height: 34px;
    overflow: hidden;
    border-radius: 999px;
    background: transparent;
    color: #fff;
    transition: max-width 0.28s ease, background-color 0.28s ease;
    pointer-events: none;
}

.ls-product-entry-grid .category-product-badge__icon {
    width: 34px;
    min-width: 34px;
    height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: #fff;
    color: #FF6A1A;
}

.ls-product-entry-grid .category-product-badge__icon svg {
    width: 18px;
    height: 18px;
    display: block;
}

.ls-product-entry-grid .category-product-badge__text {
    display: inline-flex;
    align-items: center;
    padding: 0 14px 0 10px;
    font-size: 11px;
    line-height: 1;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    white-space: nowrap;
    opacity: 0;
    transform: translateX(-6px);
    transition: opacity 0.2s ease, transform 0.28s ease;
}

.ls-product-entry-grid .category-product-badge--new,
.ls-product-entry-grid .category-product-badge--best-seller {
    background: transparent;
}

.ls-product-entry-grid .category-product-card:hover .category-product-badge,
.ls-product-entry-grid .category-product-card:focus-within .category-product-badge {
    max-width: 168px;
    background: rgba(255, 106, 26, 0.92);
}

.ls-product-entry-grid .category-product-card:hover .category-product-badge__text,
.ls-product-entry-grid .category-product-card:focus-within .category-product-badge__text {
    opacity: 1;
    transform: translateX(0);
}

/* Product labels use the same treatment in editorial and designer-card variants. */
.single-journal-shop-grid .category-product-badge,
.single-designer-product-card .category-product-badge {
    position: absolute;
    top: 12px;
    left: 12px;
    z-index: 4;
    display: inline-flex;
    align-items: center;
    max-width: 34px;
    height: 34px;
    overflow: hidden;
    border-radius: 999px;
    background: transparent;
    color: #fff;
    transition: max-width 0.28s ease, background-color 0.28s ease;
    pointer-events: none;
}

.single-journal-shop-grid .category-product-badge__icon,
.single-designer-product-card .category-product-badge__icon {
    width: 34px;
    min-width: 34px;
    height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: #fff;
    color: #FF6A1A;
}

.single-journal-shop-grid .category-product-badge__icon svg,
.single-designer-product-card .category-product-badge__icon svg {
    width: 18px;
    height: 18px;
    display: block;
}

.single-journal-shop-grid .category-product-badge__text,
.single-designer-product-card .category-product-badge__text {
    display: inline-flex;
    align-items: center;
    padding: 0 14px 0 10px;
    font-size: 11px;
    line-height: 1;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    white-space: nowrap;
    opacity: 0;
    transform: translateX(-6px);
    transition: opacity 0.2s ease, transform 0.28s ease;
}

.single-journal-shop-grid .category-product-card:hover .category-product-badge,
.single-journal-shop-grid .category-product-card:focus-within .category-product-badge,
.single-designer-product-card:hover .category-product-badge,
.single-designer-product-card:focus-within .category-product-badge {
    max-width: 168px;
    background: rgba(255, 106, 26, 0.92);
}

.single-journal-shop-grid .category-product-card:hover .category-product-badge__text,
.single-journal-shop-grid .category-product-card:focus-within .category-product-badge__text,
.single-designer-product-card:hover .category-product-badge__text,
.single-designer-product-card:focus-within .category-product-badge__text {
    opacity: 1;
    transform: translateX(0);
}

.ls-product-entry-grid .category-product-image {
    width: auto;
    margin: -22px -16px 24px;
    aspect-ratio: 4 / 3;
    flex: 0 0 auto;
    overflow: hidden;
    background: transparent;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background-color 0.25s ease;
    position: relative;
    z-index: 1;
}

.ls-product-entry-grid .category-product-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
    background: transparent;
    transition: opacity 0.25s ease;
}

.ls-product-entry-grid .category-product-image .product-image-scene {
    position: absolute;
    inset: 0;
    opacity: 0;
    object-fit: cover;
}

.ls-product-entry-grid .category-product-card.has-hover-scene:hover .category-product-image .product-image-default,
.ls-product-entry-grid .category-product-card.has-hover-scene:focus-within .category-product-image .product-image-default {
    opacity: 0;
}

.ls-product-entry-grid .category-product-card.has-hover-scene:hover .category-product-image .product-image-scene,
.ls-product-entry-grid .category-product-card.has-hover-scene:focus-within .category-product-image .product-image-scene {
    opacity: 1;
}

.ls-product-entry-grid .category-product-card:hover .category-product-image,
.ls-product-entry-grid .category-product-card:focus-within .category-product-image {
    background: #fcf5f0;
}

.ls-product-entry-grid .category-product-series {
    font-size: 11px;
    line-height: 1.4;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: #8b8b8b;
    margin: 0;
    text-align: center;
}

.ls-product-entry-grid .category-product-name {
    font-family: 'Marcellus', serif;
    font-size: 17px;
    line-height: 1.16;
    letter-spacing: 0.03em;
    text-transform: uppercase;
    color: #ff6a1a;
    margin: 12px 0 0;
    text-align: center;
    min-height: 0;
}

.ls-product-entry-grid .category-product-footer {
    margin-top: 10px;
    position: static;
    min-height: 0;
    padding-bottom: 0;
}

.ls-product-entry-grid .category-product-price {
    font-family: 'Playfair Display', serif;
    font-size: 19px;
    line-height: 1.2;
    color: #000;
    margin: 0;
    text-align: center;
}

.ls-product-entry-grid .category-product-cart {
    position: absolute;
    right: 0;
    bottom: 0;
    min-width: auto;
    height: auto;
    padding: 0 14px 10px 18px;
    border: 0;
    border-right: 1px solid #FF6A1A;
    border-bottom: 1px solid #FF6A1A;
    border-bottom-right-radius: 15px;
    background: transparent;
    color: #FF6A1A;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    font-size: 12px;
    line-height: 1;
    letter-spacing: 0.04em;
    text-transform: none;
    text-decoration: none;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(135%);
    transition: opacity 0.25s ease, visibility 0.25s ease, transform 0.25s ease, color 0.25s ease;
}

.ls-product-entry-grid .category-product-cart::before {
    content: "Add to Cart";
}

.ls-product-entry-grid .category-product-cart i {
    font-size: 17px;
}

.ls-product-entry-grid .category-product-card:hover .category-product-cart,
.ls-product-entry-grid .category-product-card:focus-within .category-product-cart {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
}

.ls-product-entry-grid .category-product-cart:hover,
.ls-product-entry-grid .category-product-cart:focus-visible {
    background: transparent;
    color: #FF6A1A;
}

.ls-product-entry-carousel .category-product-card {
    flex: 0 0 calc((100% - 54px) / 4);
    scroll-snap-align: start;
}

.ls-product-entry-carousel .product-carousel-button {
    position: absolute;
    top: 50%;
    z-index: 3;
    width: 48px;
    height: 48px;
    border: 1px solid rgba(255, 106, 26, 0.22);
    border-radius: 999px;
    background: #fff;
    color: #FF6A1A;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    box-shadow: 0 10px 24px rgba(32, 22, 15, 0.08);
    transform: translateY(-50%);
    transition: background-color 0.22s ease, border-color 0.22s ease, color 0.22s ease, transform 0.22s ease, box-shadow 0.22s ease, opacity 0.22s ease;
}

.ls-product-entry-carousel .product-carousel-button:hover {
    background: #FF6A1A;
    border-color: #FF6A1A;
    color: #fff;
    transform: translateY(calc(-50% - 1px));
    box-shadow: 0 16px 34px rgba(255, 106, 26, 0.24);
}

.ls-product-entry-carousel .product-carousel-button:disabled {
    opacity: 0.4;
    cursor: default;
    transform: translateY(-50%);
    box-shadow: 0 8px 18px rgba(32, 22, 15, 0.06);
}

.ls-product-entry-carousel .product-carousel-button:disabled:hover,
.ls-product-entry-carousel .product-carousel-button:disabled:focus-visible {
    background: #fff;
    border-color: rgba(255, 106, 26, 0.22);
    color: #FF6A1A;
    transform: translateY(-50%);
}

.ls-product-entry-carousel .product-carousel-button--prev {
    left: 0;
}

.ls-product-entry-carousel .product-carousel-button--next {
    right: 0;
}

.ls-product-entry-carousel .product-carousel-dots {
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

.ls-product-entry-carousel .product-carousel-dot {
    width: 8px;
    height: 8px;
    border: 0;
    border-radius: 999px;
    padding: 0;
    margin: 0;
    background: rgba(23, 18, 14, 0.18);
    cursor: pointer;
    transition: background-color 0.22s ease, transform 0.22s ease;
}

.ls-product-entry-carousel .product-carousel-dot.is-active {
    background: #FF6A1A;
    transform: scale(1.1);
}

@media (max-width: 1200px) {
    .ls-product-entry-carousel .ls-product-entry-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {
    .ls-product-entry-grid .category-product-badge {
        top: 10px;
        left: 10px;
        max-width: 32px;
        height: 32px;
    }

    .ls-product-entry-grid .category-product-badge__icon {
        width: 32px;
        min-width: 32px;
        height: 32px;
    }

    .ls-product-entry-grid .category-product-badge__icon svg {
        width: 18px;
        height: 18px;
    }

    .ls-product-entry-grid .category-product-badge__text {
        padding-right: 12px;
        font-size: 10px;
        letter-spacing: 0.12em;
    }

    .ls-product-entry-grid .category-product-card:hover .category-product-badge,
    .ls-product-entry-grid .category-product-card:focus-within .category-product-badge {
        max-width: 148px;
    }

    .ls-product-entry-carousel {
        padding: 0 40px 38px;
    }

    .ls-product-entry-carousel .product-carousel-button {
        width: 42px;
        height: 42px;
    }

    .ls-product-entry-carousel .ls-product-entry-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 639px) {
    .ls-product-entry-carousel {
        padding: 0 32px 34px;
    }

    .ls-product-entry-carousel .ls-product-entry-grid {
        grid-template-columns: 1fr;
    }
}

.ls-pdp {
    color: #171717;
}

.ls-pdp__breadcrumbs {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 0 0 28px;
    color: #888;
    font-size: 14px;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

article#product-650 > .ls-pdp__breadcrumbs {
    padding-top: 20px;
}

.ls-pdp__breadcrumbs a,
.ls-pdp__shipping-note a,
.ls-pdp__service-links a,
.ls-pdp__accordion-copy a {
    color: #171717;
    text-decoration: none;
}

.ls-pdp__breadcrumbs a:hover,
.ls-pdp__shipping-note a:hover,
.ls-pdp__service-links a:hover,
.ls-pdp__accordion-copy a:hover {
    color: #FF6A1A;
}

.ls-pdp__breadcrumb-sep,
.ls-pdp__service-links span {
    color: #bbb;
}

.ls-pdp__breadcrumb-current {
    color: #777;
}

.ls-pdp__hero {
    display: grid;
    grid-template-columns: minmax(0, 45%) minmax(0, 55%);
    gap: clamp(32px, 4.5vw, 72px);
    align-items: start;
}

.ls-pdp__gallery {
    position: sticky;
    top: 118px;
    align-self: start;
    width: 100%;
    max-width: 100%;
    min-width: 0;
}

.ls-pdp__gallery-carousel {
    position: relative;
    width: 100%;
    max-width: 100%;
    min-width: 0;
}

.ls-pdp__gallery-carousel {
    display: grid;
    gap: clamp(16px, 2.2vw, 22px);
}

.ls-pdp__gallery-stage {
    position: relative;
    width: 100%;
    max-width: 100%;
    overflow: hidden;
    padding: 0;
    border: 1px solid #ece5dc;
    border-radius: 12px;
    background: #f8f5f1;
}

.ls-pdp__gallery-viewport {
    position: relative;
    overflow: hidden;
    width: 100%;
    max-width: 100%;
    height: auto;
    aspect-ratio: 1 / 1;
    background: transparent;
}

.ls-pdp__gallery-viewport.is-portrait-background {
    aspect-ratio: 1 / 1;
}

.ls-pdp__gallery-track {
    position: absolute;
    inset: 0;
    display: flex;
    width: 100%;
    height: 100%;
    align-items: flex-start;
    transition: transform 0.45s ease;
    will-change: transform;
}

.ls-pdp__gallery-slide {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 100%;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    background-color: #fff;
    background-image: url("https://louissanka.wxkntest.com/wp-content/uploads/2026/09/product-background-square.png");
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    cursor: zoom-in;
}

.ls-pdp__gallery-slide.is-portrait-background {
    background-image: url("https://louissanka.wxkntest.com/wp-content/uploads/2026/09/product-background-portrait-5x6-1.png");
}

.ls-pdp__gallery-image {
    display: block;
    width: 100%;
    height: 100%;
    max-width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    object-position: center;
    transform: none;
    transform-origin: 50% 50%;
    transition: none;
}

.ls-pdp__gallery-stage.is-zooming .ls-pdp__gallery-image {
    transform: none;
}

.ls-pdp__gallery-stage,
.ls-pdp__gallery-stage .ls-pdp__gallery-image {
    cursor: zoom-in;
}

.ls-pdp__gallery-stage.is-zooming {
    cursor: none;
}

.ls-pdp__gallery-stage.is-zooming .ls-pdp__gallery-image {
    cursor: none;
}

.ls-pdp__zoom-cue {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 4;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 72px;
    height: 72px;
    border: 1px solid rgba(255, 106, 26, 0.2);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.94);
    box-shadow: 0 18px 32px rgba(43, 30, 23, 0.12);
    color: #FF6A1A;
    opacity: 0;
    pointer-events: none;
    transform: translate(-50%, -50%) scale(0.9);
    transition: opacity 0.18s ease, transform 0.18s ease;
}

.ls-pdp__zoom-cue i {
    font-size: 20px;
}

.ls-pdp__gallery-stage.is-zooming .ls-pdp__zoom-cue {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1);
}

.ls-pdp__badge {
    position: absolute;
    top: 18px;
    left: 18px;
    z-index: 3;
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 0 12px;
    border: 1px solid rgba(23, 23, 23, 0.2);
    background: rgba(255, 255, 255, 0.88);
    color: #171717;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    backdrop-filter: blur(8px);
}

.ls-pdp__badge.is-bestseller {
    border-color: rgba(100, 30, 56, 0.28);
    color: #641e38;
}

.ls-pdp__badge.is-new {
    border-color: rgba(255, 106, 26, 0.28);
    color: #FF6A1A;
}

.ls-pdp__gallery-arrows {
    position: absolute;
    top: 50%;
    right: 14px;
    left: 14px;
    z-index: 3;
    display: flex;
    justify-content: space-between;
    transform: translateY(-50%);
    pointer-events: none;
}

.ls-pdp__gallery-arrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    padding: 0;
    border: 1px solid rgba(255, 106, 26, 0.16);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.86);
    color: #c39a90;
    pointer-events: auto;
    transition: border-color 0.2s ease, color 0.2s ease, background 0.2s ease;
}

.ls-pdp__gallery-arrow:hover {
    border-color: #FF6A1A;
    background: rgba(255, 106, 26, 0.06);
    color: #FF6A1A;
}

.ls-pdp__gallery-arrow:disabled {
    opacity: 0.3;
}

.ls-pdp__gallery-controls {
    display: grid;
    gap: 14px;
}

.ls-pdp__gallery-thumbs {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(88px, 1fr));
    gap: 10px;
}

.ls-pdp__gallery-thumb {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 88px;
    padding: 0;
    border: 1px solid #e7dfd5;
    border-radius: 10px;
    background: #f8f5f1;
    overflow: hidden;
    transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.ls-pdp__gallery-thumb:hover {
    border-color: #FF6A1A;
    transform: translateY(-1px);
}

.ls-pdp__gallery-thumb:focus-visible {
    outline: 0;
    border-color: #FF6A1A;
    box-shadow: 0 0 0 3px rgba(255, 106, 26, 0.14);
}

.ls-pdp__gallery-thumb.is-active {
    border-color: #FF6A1A;
    box-shadow: 0 0 0 1px rgba(255, 106, 26, 0.12);
}

.ls-pdp__gallery-thumb-image {
    display: block;
    width: 100%;
    height: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    object-position: center;
}

.ls-pdp__gallery-dots {
    display: none;
}

.ls-pdp__summary {
    display: grid;
    width: 100%;
    max-width: 100%;
    min-width: 0;
}

body.single-product [id^="wc-stripe-express-checkout"],
body.single-product [id^="wc-stripe-payment-request"],
body.single-product .wc-stripe-payment-request-button,
body.single-product .wc-stripe-payment-request-button-separator {
    display: none !important;
}

.ls-pdp__summary-sticky {
    position: static;
    display: grid;
    gap: 28px;
    align-self: start;
}

.ls-pdp__eyebrow {
    display: none;
}

.ls-pdp__headline {
    display: grid;
    gap: 12px;
}

.ls-pdp__title {
    margin: 0;
    font-size: clamp(36px, 4vw, 52px);
    line-height: 1.04;
    font-weight: 500;
}

.ls-pdp__price-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px 18px;
}

.ls-pdp__price {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 8px 12px;
    font-size: 30px;
    line-height: 1.2;
    font-weight: 600;
}

.ls-pdp__price .amount {
    white-space: nowrap;
}

.ls-pdp__price del {
    color: #999;
    opacity: 1;
}

.ls-pdp__price ins {
    background: transparent;
    text-decoration: none;
}

.ls-pdp__stock .stock {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    margin: 0;
    padding: 0 12px;
    border-radius: 999px;
    background: rgba(255, 106, 26, 0.08);
    color: #FF6A1A;
    font-size: 13px;
}

.ls-pdp__shipping-note,
.ls-pdp__excerpt,
.ls-pdp__service-line,
.ls-pdp__service-links {
    margin: 0;
    color: #555;
    font-size: 14px;
    line-height: 1.7;
}

.ls-pdp__stock-note {
    display: grid;
    gap: 10px;
}

.ls-pdp__stock-copy {
    margin: 0;
    color: #8f3d24;
    font-size: 14px;
    font-weight: 500;
}

.ls-pdp__stock-meter {
    display: block;
    width: 100%;
    height: 4px;
    background: #efe7e2;
}

.ls-pdp__stock-meter-bar {
    display: block;
    height: 100%;
    background: #8f3d24;
}

.ls-pdp__excerpt > *:first-child,
.ls-pdp__accordion-copy > *:first-child {
    margin-top: 0;
}

.ls-pdp__excerpt > *:last-child,
.ls-pdp__accordion-copy > *:last-child {
    margin-bottom: 0;
}

.ls-pdp__buybox {
    display: grid;
    gap: 22px;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
}

.ls-pdp__availability-label,
.ls-pdp__option-label {
    margin: 0;
    color: #7f4c3c;
    font-size: 15px;
    font-weight: 600;
    letter-spacing: 0;
    text-transform: none;
}

.ls-pdp__option-groups {
    display: grid;
    gap: 20px;
}

.ls-pdp__option-group {
    display: grid;
    gap: 12px;
}

.ls-pdp__option-values {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.ls-pdp__option-button {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    padding: 0 14px;
    border: 1px solid #e3d6cf;
    border-radius: 8px;
    background: #fff;
    color: #7f4c3c;
    font-size: 14px;
    line-height: 1;
    cursor: pointer;
    transition: border-color 0.2s ease, color 0.2s ease, background 0.2s ease;
}

.ls-pdp__option-button:hover,
.ls-pdp__option-button.is-active {
    border-color: #FF6A1A;
    background: #FF6A1A;
    color: #fff;
}

.ls-pdp__option-button:disabled {
    cursor: not-allowed;
    opacity: 0.45;
    color: rgba(127, 76, 60, 0.55);
    text-decoration: line-through;
}

.ls-pdp__option-button:disabled::after {
    content: "";
    position: absolute;
    inset: 50% 10px auto;
    border-top: 1px solid currentColor;
    transform: rotate(-10deg);
    opacity: 0.55;
}

.ls-pdp__options-reset {
    width: fit-content;
    padding: 0;
    border: 0;
    background: transparent;
    color: #FF6A1A;
    font-size: 13px;
    cursor: pointer;
}

.ls-pdp__buybox form.cart {
    display: grid;
    gap: 14px;
    margin: 0;
}

.ls-pdp__buybox form.cart:not(.variations_form) {
    grid-template-columns: minmax(112px, 124px) minmax(0, 1fr) auto;
    align-items: stretch;
}

.ls-pdp__buybox .variations {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.ls-pdp__buybox .single_variation_wrap {
    display: grid;
    gap: 16px;
}

.ls-pdp__buybox .woocommerce-variation {
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
}

.ls-pdp__buybox .woocommerce-variation-price {
    display: none;
}

.ls-pdp__buybox .woocommerce-variation-availability p {
    margin: 0;
    color: #FF6A1A;
    font-size: 14px;
}

.ls-pdp__buybox .woocommerce-variation-add-to-cart {
    display: grid;
    grid-template-columns: minmax(112px, 124px) minmax(0, 1fr) auto;
    gap: 16px;
    align-items: stretch;
}

.ls-pdp__buybox .single_add_to_cart_button,
.ls-pdp__wishlist {
    min-width: 0;
    height: 52px;
}

.ls-pdp__buybox .single_add_to_cart_button {
    width: 100%;
    margin: 0;
    border-radius: 0;
    background: #FF6A1A;
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 0;
    text-transform: none;
}

.ls-pdp__buybox .single_add_to_cart_button:hover {
    background: #e85f14;
}

.ls-pdp .single_add_to_cart_button.button.alt,
.ls-pdp .single_add_to_cart_button.button.alt:hover,
.ls-pdp .single_add_to_cart_button.button.alt:focus {
    border-color: #FF6A1A;
    background: #FF6A1A;
    color: #fff;
}

.ls-pdp__buybox .single_add_to_cart_button.is-loading,
.ls-pdp__wishlist.is-loading {
    opacity: 0.65;
    pointer-events: none;
}

.ls-pdp__quantity {
    display: grid;
    grid-template-columns: 40px minmax(0, 1fr) 40px;
    align-items: center;
    min-height: 52px;
    padding: 0 6px;
    border: 1px solid #ece2db;
    border-radius: 8px;
    background: #fff;
}

.ls-pdp__quantity input.qty {
    width: 100%;
    min-width: 0;
    height: 100%;
    padding: 0;
    border: 0;
    background: transparent;
    text-align: center;
    appearance: textfield;
    -moz-appearance: textfield;
}

.ls-pdp__quantity input.qty::-webkit-outer-spin-button,
.ls-pdp__quantity input.qty::-webkit-inner-spin-button {
    margin: 0;
    -webkit-appearance: none;
}

.ls-pdp__quantity-button {
    width: 40px;
    height: 40px;
    padding: 0;
    border: 0;
    border-radius: 999px;
    background: transparent;
    color: #171717;
    font-size: 20px;
    cursor: pointer;
}

.ls-pdp__quantity-button:hover,
.ls-pdp__quantity-button:focus-visible {
    color: #FF6A1A;
}

.ls-pdp__wishlist,
.ls-pdp__wishlist--guest {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 52px;
    padding: 0;
    border: 1px solid #ece2db;
    border-radius: 8px;
    background: #fff;
    color: #7f4c3c;
    transition: border-color 0.2s ease, color 0.2s ease, background 0.2s ease;
}

.ls-pdp__wishlist:hover,
.ls-pdp__wishlist.is-active,
.ls-pdp__wishlist--guest:hover {
    border-color: #FF6A1A;
    color: #FF6A1A;
    background: rgba(255, 106, 26, 0.05);
}

.ls-pdp__wishlist-icon {
    position: relative;
    width: 18px;
    height: 18px;
}

.ls-pdp__wishlist-icon .fa-regular,
.ls-pdp__wishlist-icon .fa-solid {
    position: absolute;
    inset: 0;
    font-size: 18px;
    line-height: 18px;
}

.ls-pdp__wishlist-icon .fa-solid {
    opacity: 0;
}

.ls-pdp__wishlist.is-active .ls-pdp__wishlist-icon .fa-regular {
    opacity: 0;
}

.ls-pdp__wishlist.is-active .ls-pdp__wishlist-icon .fa-solid {
    opacity: 1;
}

body.ls-wishlist-selector-open {
    overflow: hidden;
}

.ls-wishlist-selector {
    position: fixed;
    inset: 0;
    z-index: 10001;
}

.ls-wishlist-selector__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(23, 23, 23, 0.12);
    opacity: 0;
    transition: opacity 0.22s ease;
}

.ls-wishlist-selector__panel {
    position: absolute;
    top: 50%;
    left: 50%;
    display: grid;
    gap: 16px;
    width: min(420px, calc(100% - 32px));
    padding: 24px;
    border-radius: 24px;
    background: #fff;
    box-shadow: 0 24px 72px rgba(23, 23, 23, 0.14);
    transform: translate(-50%, -46%);
    opacity: 0;
    transition: transform 0.22s ease, opacity 0.22s ease;
}

.ls-wishlist-selector.is-open .ls-wishlist-selector__backdrop {
    opacity: 1;
}

.ls-wishlist-selector.is-open .ls-wishlist-selector__panel {
    transform: translate(-50%, -50%);
    opacity: 1;
}

.ls-wishlist-selector__close {
    justify-self: end;
    width: 36px;
    height: 36px;
    padding: 0;
    border: 0;
    border-radius: 999px;
    background: #f6f1eb;
    color: #171717;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    line-height: 1;
}

.ls-wishlist-selector__eyebrow {
    margin: 0;
    color: #7d746d;
    font-size: 11px;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.ls-wishlist-selector__title {
    margin: -8px 0 0;
    color: #171717;
    font-size: 28px;
    line-height: 1.1;
}

.ls-wishlist-selector__subtitle {
    margin: -4px 0 0;
    color: #5a5a5a;
    font-size: 14px;
    line-height: 1.6;
}

.ls-wishlist-selector__options {
    display: grid;
    gap: 10px;
}

.ls-wishlist-selector__option {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    width: 100%;
    padding: 16px 18px;
    border: 1px solid #ece4dc;
    border-radius: 18px;
    background: #fff;
    color: #171717;
    text-align: left;
    transition: border-color 0.2s ease, background-color 0.2s ease, color 0.2s ease;
}

.ls-wishlist-selector__option:hover,
.ls-wishlist-selector__option:focus-visible,
.ls-wishlist-selector__option.is-current {
    border-color: rgba(255, 106, 26, 0.4);
}

.ls-wishlist-selector__option.is-active {
    background: rgba(255, 106, 26, 0.06);
    border-color: rgba(255, 106, 26, 0.3);
    color: #FF6A1A;
}

.ls-wishlist-selector__option.is-loading {
    opacity: 0.65;
}

.ls-wishlist-selector__option-copy {
    display: grid;
    gap: 4px;
    min-width: 0;
}

.ls-wishlist-selector__option-name {
    font-size: 15px;
    font-weight: 600;
    line-height: 1.4;
}

.ls-wishlist-selector__option-count {
    color: #7d746d;
    font-size: 12px;
    line-height: 1.5;
}

.ls-wishlist-selector__option-state {
    flex: 0 0 auto;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.ls-wishlist-selector__manage {
    display: inline-flex;
    justify-self: start;
    align-items: center;
    min-height: 44px;
    padding: 0 18px;
    border-radius: 999px;
    background: #171717;
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.ls-wishlist-selector__manage:hover {
    background: #FF6A1A;
    color: #fff;
}

.ls-pdp__service {
    display: grid;
    gap: 10px;
    padding-top: 0;
}

.ls-pdp__buybox + .ls-pdp__service {
    margin-top: -10px;
}

.ls-pdp__service-line {
    display: flex;
    gap: 10px;
}

.ls-pdp__service-line i {
    margin-top: 4px;
    color: #FF6A1A;
}

.ls-pdp__service-links {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.ls-pdp__trust-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px 24px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.ls-pdp__trust-grid li {
    display: grid;
    grid-template-columns: 18px minmax(0, 1fr);
    align-items: start;
    gap: 8px;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: #7f4c3c;
    font-size: 13px;
    line-height: 1.6;
}

.ls-pdp__trust-grid li i {
    margin-top: 3px;
    color: #FF6A1A;
}

.ls-pdp__trust-grid li strong {
    display: block;
    margin-bottom: 2px;
    color: inherit;
    font-size: inherit;
    letter-spacing: 0;
    text-transform: none;
}

.ls-pdp__accordion {
    display: grid;
    gap: 6px;
}

.ls-pdp__accordion-item {
    border-top: 1px solid #ece5dd;
}

.ls-pdp__accordion-item:last-child {
    border-bottom: 1px solid #ece5dd;
}

.ls-pdp__accordion-item summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px 0;
    cursor: pointer;
    color: #171717;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.14em;
    list-style: none;
    text-transform: uppercase;
}

.ls-pdp__accordion-item summary:hover,
.ls-pdp__accordion-item[open] summary {
    color: #FF6A1A;
}

.ls-pdp__accordion-item summary::-webkit-details-marker {
    display: none;
}

.ls-pdp__accordion-item summary::after {
    content: "+";
    color: #777;
    font-size: 18px;
    letter-spacing: 0;
}

.ls-pdp__accordion-item summary:hover::after,
.ls-pdp__accordion-item[open] summary::after {
    color: #FF6A1A;
}

.ls-pdp__accordion-item[open] summary::after {
    content: "-";
}

.ls-pdp__accordion-copy {
    padding: 0 0 14px;
    color: #555;
    font-size: 15px;
    line-height: 1.7;
}

.ls-pdp__accordion-copy ul {
    margin: 0;
    padding: 0;
    list-style: none;
    display: grid;
    gap: 8px;
}

.ls-pdp__accordion-copy li {
    position: relative;
    padding-left: 14px;
}

.ls-pdp__accordion-copy li::before {
    content: "";
    position: absolute;
    top: 0.72em;
    left: 0;
    width: 5px;
    height: 5px;
    border-radius: 999px;
    background: #FF6A1A;
    transform: translateY(-50%);
}

.ls-pdp__spec-list {
    display: grid;
    gap: 14px;
    margin: 0;
}

.ls-pdp__spec-row[hidden] {
    display: none;
}

.ls-pdp__spec-row {
    align-items: center;
    display: grid;
    grid-template-columns: 196px minmax(0, 1fr);
    gap: 16px;
}

.ls-pdp__spec-row dt,
.ls-pdp__spec-row dd {
    margin: 0;
}

.ls-pdp__spec-row dt {
    white-space: nowrap;
    color: #7a736c;
    font-size: 12px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.ls-pdp__spec-row dd {
    color: #171717;
}

.ls-pdp__section {
    position: relative;
    isolation: isolate;
    display: grid;
    gap: 28px;
    margin-top: 96px;
    padding: 46px 0 52px;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.ls-pdp__section--collection {
    background: #f8f5f1;
    box-shadow: 0 0 0 100vmax #f8f5f1;
    clip-path: inset(0 -100vmax 0 -100vmax);
}

.ls-pdp__section--collection::before {
    content: none;
}

.ls-pdp__section--selection::before {
    content: none;
}

.ls-pdp__section-head {
    display: grid;
    gap: 10px;
}

.ls-pdp__section-eyebrow {
    margin: 0;
    color: #FF6A1A;
    font-size: 12px;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.ls-pdp__section-title {
    margin: 0;
    font-size: clamp(28px, 3vw, 40px);
    line-height: 1.08;
    font-weight: 600;
}

.ls-pdp__carousel .ls-product-entry-carousel {
    padding: 0 52px 42px;
}

.ls-pdp__carousel .ls-product-entry-track {
    display: flex;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    scroll-behavior: smooth;
}

.ls-pdp__carousel .ls-product-entry-track::-webkit-scrollbar {
    display: none;
}

.ls-pdp__carousel .products.ls-product-entry-grid {
    margin-top: 0;
    min-width: 100%;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-auto-flow: row;
    grid-auto-columns: auto;
    gap: 26px;
    padding: 0;
    overflow: visible;
    list-style: none;
    flex: 0 0 100%;
    scroll-snap-align: start;
    align-items: stretch;
}

.ls-pdp__carousel .products.ls-product-entry-grid > li.product {
    display: flex;
    min-width: 0;
}

.ls-pdp__carousel .products.ls-product-entry-grid > li.product > .category-product-card {
    width: 100%;
    flex: 1 1 auto;
}

.ls-pdp__section--collection .products.ls-product-entry-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 20px;
    width: 100%;
}

.ls-pdp__section--collection .ls-product-entry-carousel {
    margin-top: 40px;
    padding-inline: 0;
}

.ls-pdp__section--selection .products.ls-product-entry-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 26px;
    width: 100%;
}

.site-main--woocommerce .ls-pdp__section--selection .woocommerce ul.products.ls-product-entry-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 26px;
}

article#product-650 > section.ls-pdp__section:nth-child(3) {
    padding-top: 60px;
}

article#product-650 > section.ls-pdp__section:nth-child(3) > div.woocommerce {
    height: 420px;
}

article#product-650 > section.ls-pdp__section:nth-child(4) {
    padding-top: 0;
    padding-bottom: 0;
}

article#product-650 > section.ls-pdp__section:nth-child(4) > div.woocommerce > div.product-carousel {
    padding-top: 40px;
    padding-bottom: 0;
}

.ls-pdp__section--selection .ls-product-entry-carousel {
    padding-inline: 20px;
}

.ls-pdp__section--selection .products.ls-product-entry-grid > li.product {
    width: 100%;
    min-width: 0;
}

.ls-pdp__section--selection .products.ls-product-entry-grid > li.product .category-product-card {
    width: 100%;
    flex: 1 1 auto;
}

.ls-pdp__carousel .products {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(280px, 1fr);
    gap: 24px;
    margin: 0;
    padding: 0 0 10px;
    overflow-x: auto;
    list-style: none;
    scroll-snap-type: x proximity;
    scrollbar-width: none;
}

.ls-pdp__carousel .products::-webkit-scrollbar {
    display: none;
}

.ls-pdp__carousel .products > li {
    margin: 0;
    scroll-snap-align: start;
}

.ls-pdp__toast {
    position: fixed;
    right: 24px;
    bottom: 24px;
    z-index: 40;
    max-width: min(320px, calc(100vw - 32px));
    padding: 14px 16px;
    border-radius: 18px;
    background: rgba(23, 23, 23, 0.92);
    color: #fff;
    font-size: 14px;
    line-height: 1.5;
    opacity: 0;
    transform: translateY(12px);
    pointer-events: none;
    transition: opacity 0.25s ease, transform 0.25s ease;
}

.ls-pdp__toast.is-visible {
    opacity: 1;
    transform: translateY(0);
}

.ls-pdp__lightbox[hidden] {
    display: none;
}

.ls-pdp__lightbox {
    position: fixed;
    inset: 0;
    z-index: 9999;
    background: #f5f1eb;
}

.ls-pdp__lightbox-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(245, 241, 235, 0.96);
}

.ls-pdp__lightbox-dialog {
    position: absolute;
    inset: 0;
    box-sizing: border-box;
    display: block;
    overflow: hidden;
    isolation: isolate;
}

.ls-pdp__lightbox-figure {
    position: absolute;
    inset: 0;
    z-index: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0;
    padding: 0;
    width: 100%;
    height: 100%;
    min-width: 0;
    min-height: 0;
    overflow: hidden;
    cursor: zoom-in;
    touch-action: none;
    user-select: none;
    -webkit-user-select: none;
    overscroll-behavior: contain;
}

.ls-pdp__lightbox-figure.is-zoomed {
    cursor: grab;
}

.ls-pdp__lightbox-figure.is-dragging {
    cursor: grabbing;
}

.ls-pdp__lightbox-image {
    display: block;
    flex: 0 0 auto;
    max-width: none;
    max-height: none;
    width: auto;
    height: auto;
    object-fit: contain;
    transform: scale(1);
    transform-origin: 50% 50%;
    transition: none;
    will-change: transform;
    pointer-events: none;
    user-select: none;
}

.ls-pdp__lightbox-figure.is-loading,
.ls-pdp__lightbox-figure.has-image-error {
    cursor: default;
}

.ls-pdp__lightbox-figure.is-loading .ls-pdp__lightbox-image,
.ls-pdp__lightbox-figure.has-image-error .ls-pdp__lightbox-image {
    opacity: 0;
}

.ls-pdp__lightbox-loading[hidden] {
    display: none;
}

.ls-pdp__lightbox-loading {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 14px;
    padding: 24px;
    color: #6b625b;
    font: 14px/1.5 Arial, sans-serif;
    text-align: center;
    pointer-events: none;
}

.ls-pdp__lightbox-loading .fa-circle-notch {
    display: inline-block;
    box-sizing: border-box;
    width: 32px;
    height: 32px;
    border: 3px solid rgba(255, 106, 26, 0.18);
    border-top-color: #FF6A1A;
    border-radius: 50%;
    color: #FF6A1A;
    animation: ls-pdp-image-loading 0.85s linear infinite;
}

.ls-pdp__lightbox-loading .fa-circle-notch::before {
    content: none;
}

@keyframes ls-pdp-image-loading {
    to { transform: rotate(360deg); }
}

.ls-pdp__lightbox-figure.has-image-error .fa-circle-notch {
    display: none;
}

@media (prefers-reduced-motion: reduce) {
    .ls-pdp__lightbox-loading .fa-spin {
        animation: none;
    }
}

.ls-pdp__lightbox-tools {
    position: absolute;
    top: 20px;
    left: 50%;
    z-index: 3;
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 4px;
    border: 1px solid rgba(255, 106, 26, 0.2);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.95);
    transform: translateX(-50%);
}

.ls-pdp__lightbox-tools button {
    min-width: 36px;
    min-height: 36px;
    padding: 6px 10px;
    border: 0;
    border-radius: 4px;
    background: transparent;
    color: #171717;
    font: 13px/1.2 Arial, sans-serif;
    white-space: nowrap;
}

.ls-pdp__lightbox-tools button:hover,
.ls-pdp__lightbox-tools button:focus-visible {
    background: #fff0e7;
    color: #b54100;
}

.ls-pdp__lightbox-tools button:disabled {
    opacity: 0.4;
    cursor: default;
}

.ls-pdp__lightbox-scale {
    min-width: 44px;
    color: #171717;
    font: 12px/1.2 Arial, sans-serif;
    text-align: center;
}

.ls-pdp__lightbox-thumbs {
    position: absolute;
    bottom: 22px;
    left: 50%;
    z-index: 2;
    box-sizing: border-box;
    width: max-content;
    max-width: calc(100% - 160px);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    min-width: 0;
    padding: 8px 12px;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.82);
    backdrop-filter: blur(12px);
    transform: translateX(-50%);
    overflow-x: auto;
    scrollbar-width: none;
}

.ls-pdp__lightbox-thumbs::-webkit-scrollbar {
    display: none;
}

.ls-pdp__lightbox-thumb {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 72px;
    height: 72px;
    flex: 0 0 auto;
    padding: 0;
    border: 0;
    border-bottom: 2px solid transparent;
    background: transparent;
    opacity: 0.66;
    transition: opacity 0.2s ease, border-color 0.2s ease;
}

.ls-pdp__lightbox-thumb:hover,
.ls-pdp__lightbox-thumb:focus-visible {
    opacity: 1;
}

.ls-pdp__lightbox-thumb:focus-visible {
    outline: 0;
    border-bottom-color: #FF6A1A;
}

.ls-pdp__lightbox-thumb.is-active {
    opacity: 1;
    border-bottom-color: #FF6A1A;
}

.ls-pdp__lightbox-thumb img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.ls-pdp__lightbox-arrow,
.ls-pdp__lightbox-close {
    position: absolute;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    padding: 0;
    border: 1px solid rgba(255, 106, 26, 0.2);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.8);
    color: #FF6A1A;
    backdrop-filter: blur(12px);
}

.ls-pdp__lightbox-arrow:hover,
.ls-pdp__lightbox-close:hover {
    border-color: #FF6A1A;
    background: rgba(255, 255, 255, 0.98);
    color: #FF6A1A;
}

.ls-pdp__lightbox-arrow:disabled {
    opacity: 0.3;
}

.ls-pdp__lightbox-arrow.is-prev {
    top: 50%;
    left: 18px;
    transform: translateY(-50%);
}

.ls-pdp__lightbox-arrow.is-next {
    top: 50%;
    right: 18px;
    transform: translateY(-50%);
}

.ls-pdp__lightbox-close {
    top: 20px;
    right: 20px;
    z-index: 3;
}

.ls-pdp-lightbox-open {
    overflow: hidden;
}

.ls-wishlist-drawer-open {
    overflow: hidden;
}

.ls-account-wishlist {
    display: grid;
    gap: 24px;
}

.ls-account-wishlist__head {
    display: grid;
    gap: 10px;
}

.ls-account-wishlist__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin: 0;
    color: #FF6A1A;
    font-size: 12px;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.ls-account-wishlist__title {
    margin: 0;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.ls-account-wishlist__subtitle {
    margin: 0;
    color: #5a5a5a;
    line-height: 1.8;
}

.ls-account-wishlist__tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.ls-account-wishlist__bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.ls-account-wishlist__tab {
    display: inline-flex;
    align-items: center;
    min-height: 42px;
    padding: 0 18px;
    border: 1px solid #ece4dc;
    border-radius: 999px;
    background: #fff;
    color: #171717;
    font-size: 12px;
    letter-spacing: 0.12em;
    text-decoration: none;
    text-transform: uppercase;
}

.ls-account-wishlist__tab.is-active {
    border-color: #FF6A1A;
    color: #FF6A1A;
}

.ls-account-wishlist__create {
    min-height: 42px;
    padding: 0 18px;
    border: 1px solid #171717;
    border-radius: 999px;
    background: #171717;
    color: #fff;
    font-size: 12px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    white-space: nowrap;
}

.ls-account-wishlist__drawer {
    position: fixed;
    inset: 0;
    z-index: 9999;
}

.ls-account-wishlist__drawer-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(23, 23, 23, 0.08);
    opacity: 0;
    transition: opacity 0.22s ease;
}

.ls-account-wishlist__drawer-panel {
    position: absolute;
    top: 0;
    right: 0;
    display: grid;
    align-content: start;
    gap: 18px;
    width: min(460px, 100%);
    height: 100%;
    padding: 28px 24px;
    background: #fff;
    box-shadow: -24px 0 64px rgba(23, 23, 23, 0.12);
    transform: translateX(100%);
    transition: transform 0.22s ease;
}

.ls-account-wishlist__drawer.is-open .ls-account-wishlist__drawer-backdrop {
    opacity: 1;
}

.ls-account-wishlist__drawer.is-open .ls-account-wishlist__drawer-panel {
    transform: translateX(0);
}

.ls-account-wishlist__drawer-close {
    justify-self: end;
    width: 36px;
    height: 36px;
    border: 0;
    border-radius: 999px;
    background: #f6f1eb;
    color: #171717;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    line-height: 1;
}

.ls-account-wishlist__drawer-title {
    margin: 0;
    font-size: 22px;
    line-height: 1.2;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.ls-account-wishlist__drawer-form {
    display: grid;
    gap: 14px;
}

.ls-account-wishlist__drawer-label {
    color: #5a5a5a;
    font-size: 12px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.ls-account-wishlist__drawer-input {
    min-height: 52px;
    padding: 0 16px;
    border: 1px solid #ece4dc;
    border-radius: 16px;
    background: #fff;
    color: #171717;
}

.ls-account-wishlist__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
}

.ls-account-wishlist__card {
    position: relative;
    display: grid;
    grid-template-columns: 140px minmax(0, 1fr);
    gap: 18px;
    padding: 18px;
    border: 1px solid #f0ece8;
    border-radius: 24px;
    background: #fffdfa;
}

.ls-account-wishlist__remove {
    position: absolute;
    top: 16px;
    right: 16px;
}

.ls-account-wishlist__remove button {
    width: 32px;
    height: 32px;
    border: 0;
    border-radius: 999px;
    background: #fff;
    color: #666;
    font-size: 20px;
    line-height: 1;
}

.ls-account-wishlist__media {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 16px;
    border-radius: 18px;
    background: #fff;
}

.ls-account-wishlist__image {
    width: 100%;
    height: auto;
    object-fit: contain;
}

.ls-account-wishlist__body {
    display: grid;
    align-content: start;
    gap: 10px;
}

.ls-account-wishlist__category {
    margin: 0;
    color: #7a736c;
    font-size: 11px;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.ls-account-wishlist__product-title {
    margin: 0;
    font-size: 20px;
    line-height: 1.3;
}

.ls-account-wishlist__product-title a {
    color: inherit;
    text-decoration: none;
}

.ls-account-wishlist__price {
    color: #171717;
    font-size: 18px;
}

.ls-account-wishlist__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.ls-account-wishlist__actions .button {
    min-height: 46px;
}

.ls-account-wishlist__empty {
    display: grid;
    gap: 12px;
    padding: 28px;
    border: 1px solid #f0ece8;
    border-radius: 24px;
    background: #fffdfa;
}

.ls-account-wishlist__empty h3,
.ls-account-wishlist__empty p {
    margin: 0;
}

@media (max-width: 1024px) {
    .ls-pdp__hero {
        grid-template-columns: 1fr;
        gap: 32px;
    }

    .ls-pdp__gallery {
        position: static;
    }

    .ls-pdp__summary-sticky {
        position: static;
    }

    .ls-pdp__carousel .products {
        grid-auto-columns: minmax(280px, 360px);
    }

    .ls-pdp__section {
        padding: 36px 0 40px;
    }

    .ls-pdp__carousel .products.ls-product-entry-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .ls-account-wishlist__grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 767px) {
    .ls-pdp__breadcrumbs {
        gap: 8px;
        margin-bottom: 20px;
    }

    .ls-pdp__gallery-carousel {
        display: grid;
        gap: 14px;
    }

    .ls-pdp__gallery-stage {
        padding: 0;
        border-radius: 12px;
    }

    .ls-pdp__gallery-slide {
        padding: 0;
    }

    .ls-pdp__gallery-viewport {
        aspect-ratio: 1 / 1;
    }

    .ls-pdp__gallery-arrows {
        right: 10px;
        left: 10px;
    }

    .ls-pdp__gallery-arrow {
        width: 40px;
        height: 40px;
    }

    .ls-pdp__gallery-thumbs {
        display: none;
    }

    .ls-pdp__lightbox-arrow,
    .ls-pdp__lightbox-close {
        width: 40px;
        height: 40px;
    }

    .ls-pdp__lightbox-image {
        max-width: none;
        max-height: none;
    }

    .ls-pdp__lightbox-tools {
        top: 12px;
        left: 12px;
        right: 64px;
        justify-content: center;
        gap: 0;
        transform: none;
    }

    .ls-pdp__lightbox-close {
        top: 12px;
        right: 12px;
    }

    .ls-pdp__lightbox-arrow.is-prev {
        left: 12px;
    }

    .ls-pdp__lightbox-arrow.is-next {
        right: 12px;
    }

    .ls-pdp__lightbox-tools button {
        padding: 6px;
    }

    .ls-pdp__lightbox-thumbs {
        bottom: 12px;
        max-width: calc(100% - 24px);
        gap: 10px;
        justify-content: flex-start;
        padding: 8px;
    }

    .ls-pdp__lightbox-thumb {
        width: 56px;
        height: 56px;
    }

    .ls-pdp__gallery-controls {
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .ls-pdp__gallery-dots {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
    }

    .ls-pdp__gallery-dot {
        width: 8px;
        height: 8px;
        padding: 0;
        border: 0;
        border-radius: 999px;
        background: rgba(255, 106, 26, 0.22);
        transition: transform 0.2s ease, background 0.2s ease;
    }

    .ls-pdp__gallery-dot.is-active {
        background: #FF6A1A;
        transform: scale(1.25);
    }

    .ls-pdp__title {
        font-size: clamp(30px, 11vw, 42px);
    }

    .ls-pdp__buybox {
        gap: 20px;
    }

    .ls-pdp__buybox form.cart:not(.variations_form),
    .ls-pdp__buybox .woocommerce-variation-add-to-cart {
        grid-template-columns: 1fr;
    }

    .ls-pdp__wishlist {
        width: 100%;
    }

    .ls-account-wishlist__drawer-panel {
        width: 100%;
        padding: 24px 18px;
    }

    .ls-pdp__trust-grid,
    .ls-pdp__spec-row {
        grid-template-columns: 1fr;
    }

    .ls-pdp__spec-row {
        gap: 4px;
    }

    .ls-pdp__carousel .products {
        grid-auto-columns: minmax(240px, 82vw);
        gap: 18px;
    }

    .ls-pdp__section {
        margin-top: 72px;
        padding: 30px 0 34px;
        border-radius: 0;
    }

    .ls-pdp__carousel .ls-product-entry-carousel {
        padding: 0 32px 34px;
    }

    .ls-pdp__carousel .products.ls-product-entry-grid {
        grid-template-columns: 1fr;
    }

    .ls-pdp__toast {
        right: 16px;
        bottom: 16px;
    }

    .ls-account-wishlist__card {
        grid-template-columns: 1fr;
    }
}

/* ===================================
    Layout - 布局样式（通用）
   =================================== */
.container {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 1.5rem;
}

/* Section - 通用区块容器
   页面由多个 section 垂直堆叠而成，统一控制上下间距。
   用法：<section class="section"><div class="container">...</div></section>
   变体：
   - .section--sm / .section--lg：紧凑 / 宽松间距
   - .section--gray / .section--dark：浅灰 / 深色背景，用于交替分块
   - .section--center：内容水平居中（标题组常用）
*/
.section {
  padding: 4rem 0;
}
.section--sm { padding: 2.5rem 0; }
.section--lg { padding: 6rem 0; }

.section--gray { background: var(--color-bg-secondary); }
.section--dark { background: var(--color-text-heading); color: var(--color-white); }

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

/* 响应式：移动端收紧间距 */
@media (max-width: 768px) {
  .section { padding: 2.5rem 0; }
  .section--sm { padding: 1.5rem 0; }
  .section--lg { padding: 4rem 0; }
}

/* ===================================
    Animations - 滚动显示动画（通用）
   =================================== */
.reveal {
  opacity: 0;
  transform: translateY(30px);
  transition: all 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.reveal.active {
  opacity: 1;
  transform: translateY(0);
}

.animate-in {
  opacity: 0;
  transform: translateY(20px);
  animation: fade-up 0.6s ease forwards;
}

.animate-right {
  opacity: 0;
  transform: translateX(20px);
  animation: fade-left 0.6s ease forwards;
}

.animate-scale {
  opacity: 0;
  transform: scale(0.95);
  animation: scale-in 0.6s ease forwards;
}

.animate-delay-1 { animation-delay: 0.1s; }
.animate-delay-2 { animation-delay: 0.2s; }
.animate-delay-3 { animation-delay: 0.3s; }
.animate-delay-4 { animation-delay: 0.4s; }
.animate-delay-5 { animation-delay: 0.5s; }

@keyframes fade-up {
  to { opacity: 1; transform: translateY(0); }
}

@keyframes fade-left {
  to { opacity: 1; transform: translateX(0); }
}

@keyframes scale-in {
  to { opacity: 1; transform: scale(1); }
}

/* ===================================
    Buttons - 按钮样式（通用）
   =================================== */
.btn-primary {
  background: var(--color-primary, #4b5563);
  color: var(--color-white);
  padding: 1.25rem 2.5rem;
  display: inline-block;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  text-transform: uppercase;
  font-size: 14px;
  letter-spacing: 0.05em;
  font-weight: 600;
}

.btn-primary:hover {
  background: var(--color-primary-hover, #374151);
  transform: translateY(-2px);
}

.btn-outline {
  background: var(--color-primary, #4b5563);
  color: var(--color-white);
  border: 1px solid var(--color-primary, #4b5563);
  padding: 1.25rem 2.5rem;
  display: inline-block;
  transition: all 0.3s ease;
  text-transform: uppercase;
  font-size: 14px;
  letter-spacing: 0.05em;
  font-weight: 600;
}

.btn-outline:hover {
  background: var(--color-secondary);
  border-color: var(--color-secondary);
  color: var(--color-white);
  transform: translateY(-2px);
}

/* ===================================
    Card - 卡片样式（通用）
   =================================== */
.card {
  background-color: var(--color-bg-primary);
  border: 1px solid var(--color-border);
  border-radius: 8px;
  box-shadow: 0 4px 6px -1px var(--color-shadow-sm);
  transition: transform 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;
}

a:hover .card {
  transform: translateY(-5px);
  border-color: var(--color-border);
  box-shadow: 0 10px 15px -3px var(--color-shadow-md);
}

/* ===================================
    Breadcrumb Styles 面包屑组件（通用）
   =================================== */
.wxkn-breadcrumb-wrapper {
  --wxkn-breadcrumb-accent: #FF6A1A;
  padding: 0;
  margin: 0 0 18px;
  background: transparent;
  border: 0;
}

.wxkn-breadcrumb-wrapper--has-container {
  padding: 0;
}

.wxkn-breadcrumb-wrapper--center {
  text-align: center;
}

.wxkn-breadcrumb {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  margin: 0;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(23, 18, 14, 0.82);
}

.wxkn-breadcrumb-wrapper--has-container .wxkn-breadcrumb {
  margin-left: 0;
}

.wxkn-breadcrumb-wrapper--center .wxkn-breadcrumb {
  justify-content: center;
}

.wxkn-breadcrumb a {
  color: inherit;
  text-decoration: none;
  transition: color 0.22s ease;
  display: inline-flex;
  align-items: center;
}

.wxkn-breadcrumb a:hover {
  color: var(--wxkn-breadcrumb-accent);
}

.wxkn-breadcrumb a:focus-visible {
  outline: 2px solid var(--wxkn-breadcrumb-accent);
  outline-offset: 2px;
}

.wxkn-breadcrumb-separator {
  color: rgba(23, 18, 14, 0.48);
  margin: 0;
  user-select: none;
}

.wxkn-breadcrumb-current {
  color: var(--wxkn-breadcrumb-accent);
  font-weight: 600;
}

.wxkn-breadcrumb--light .wxkn-breadcrumb a {
  color: rgba(255, 255, 255, 0.86);
}

.wxkn-breadcrumb--light .wxkn-breadcrumb a:hover {
  color: #fff;
}

.wxkn-breadcrumb--light .wxkn-breadcrumb-separator {
  color: rgba(255, 255, 255, 0.58);
}

.wxkn-breadcrumb--light .wxkn-breadcrumb-current {
  color: #fff;
}

.wxkn-breadcrumb--compact {
  margin-bottom: 14px;
}

.wxkn-breadcrumb--compact .wxkn-breadcrumb {
  font-size: 14px;
}

.wxkn-breadcrumb--compact .wxkn-breadcrumb-separator {
  margin: 0;
}

.wxkn-breadcrumb--float {
  position: absolute;
  bottom: 20px;
  left: 0;
  right: 0;
  z-index: 20;
  padding: 0;
  background: none;
  border: none;
  margin: 0;
}

.wxkn-breadcrumb--float .wxkn-breadcrumb {
  font-size: 15px;
  letter-spacing: 0.08em;
  margin-left: 0;
}

.wxkn-breadcrumb--float .wxkn-breadcrumb a {
  color: rgba(255, 255, 255, 0.86);
}

.wxkn-breadcrumb--float .wxkn-breadcrumb a:hover {
  color: #fff;
}

.wxkn-breadcrumb--float .wxkn-breadcrumb-separator {
  color: rgba(255, 255, 255, 0.58);
  margin: 0;
}

.wxkn-breadcrumb--float .wxkn-breadcrumb-current {
  color: #fff;
}

@media (max-width: 767px) {
  .wxkn-breadcrumb-wrapper {
    margin-bottom: 16px;
  }

  .wxkn-breadcrumb {
    font-size: 13px;
    margin-left: 0;
    gap: 6px;
  }

  .wxkn-breadcrumb-separator {
    margin: 0;
  }

  .wxkn-breadcrumb--float {
    bottom: 12px;
  }

  .wxkn-breadcrumb--float .wxkn-breadcrumb {
    font-size: 13px;
  }

  .wxkn-breadcrumb--float .wxkn-breadcrumb-separator {
    margin: 0;
  }
}

/* ===================================
    Prose - 内容排版样式（通用）
   =================================== */
.prose {
  color: var(--color-text-body);
  line-height: 1.8;
}

.prose h2, .prose h3, .prose h4 {
  color: var(--color-text-heading);
  font-weight: 700;
  margin-top: 2.5rem;
  margin-bottom: 1.25rem;
}

.prose p {
  margin-bottom: 1.5rem;
}

.prose ul, .prose ol {
  margin-bottom: 1.5rem;
  padding-left: 1.5rem;
}

.prose li {
  margin-bottom: 0.5rem;
}

.prose blockquote {
  border-left: 4px solid var(--color-secondary);
  padding-left: 1.5rem;
  font-style: italic;
  color: var(--color-text-heading);
  margin: 2rem 0;
}

.prose img {
  margin: 2.5rem 0;
}

.prose a {
  color: var(--color-link, #4b5563);
  text-decoration: underline;
  text-underline-offset: 4px;
  transition: color 0.3s ease;
}

.prose a:hover {
  color: var(--color-link-hover, #374151);
}

/* ===================================
    Single Product Page - 产品详情页
   =================================== */
.single-product-page {

}

.single-product-page .text-body p {
  margin-bottom: 1.5rem;
  color: var(--color-text-secondary);
}

.single-product-page .text-body img {
  max-width: 100%;
  height: auto;
  border-radius: 8px;
}

.single-product-page .text-body h2,
.single-product-page .text-body h3,
.single-product-page .text-body h4 {
  color: var(--color-text-heading);
  margin-top: 2.5rem;
  margin-bottom: 1.25rem;
  font-weight: 600;
  line-height: 1.4;
}

.single-product-page .text-body h2 { font-size: 1.75rem; }
.single-product-page .text-body h3 { font-size: 1.5rem; }
.single-product-page .text-body h4 { font-size: 1.25rem; }

.single-product-page .text-body ul,
.single-product-page .text-body ol {
  margin-bottom: 1.5rem;
  padding-left: 1.5rem;
  color: var(--color-text-secondary);
}

.single-product-page .text-body ul { list-style-type: disc; }
.single-product-page .text-body ol { list-style-type: decimal; }
.single-product-page .text-body li { margin-bottom: 0.5rem; }

.single-product-page .product-card-bento {
  background: var(--color-bg-card);
  border: 1px solid var(--color-border);
  border-radius: 0;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
}

.single-product-page .product-card-title {
  color: var(--color-text-heading);
  transition: color 0.3s ease;
  font-weight: 600;
  font-size: 16px;
  line-height: 24px;
  text-align: left;
}

.single-product-page .card-overlay {
  position: absolute;
  inset: 0;
  background: var(--color-overlay-dark);
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity 0.3s ease;
}

.single-product-page .product-card-bento:hover .card-overlay {
  opacity: 1;
}

.single-product-page .card-overlay-arrow {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: var(--color-secondary);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-white);
  transform: translate(0, 12px);
  opacity: 0;
  transition: all 0.35s ease;
}

.single-product-page .product-card-bento:hover .card-overlay-arrow {
  transform: translate(0, 0);
  opacity: 1;
}

.single-product-page .form-card-hover {
  position: relative;
  overflow: hidden;
}

.single-product-page .form-card-hover::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 4px;
  background: var(--color-secondary);
  transition: width 0.5s ease;
}

.single-product-page .form-card-hover:hover::before {
  width: 100%;
}

.single-product-page .section-product-matrix {
  background: transparent;
}

/* ===================================
    Single Post Page - 博客详情页
   =================================== */
.single-post-page {

}

.single-post-page .single-post-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 3rem;
}

@media (min-width: 992px) {
  .single-post-page .single-post-grid {
    grid-template-columns: 2fr 1fr;
  }
}

.single-post-page .single-post-main {
  padding-top: 100px;
  background-color: var(--color-bg-secondary);
}

.single-post-page .single-post-section {
  padding-top: 2rem;
}

.single-post-page .post-content .post-featured-image {
  margin-bottom: 2rem;
}

.single-post-page .post-content .post-featured-image img {
  width: 100%;
  height: auto;
  border-radius: 8px;
}

.single-post-page .post-content .post-meta {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-bottom: 2rem;
}

.single-post-page .post-content .post-cat-label {
  color: var(--color-primary, #4b5563);
  font-size: 13px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.single-post-page .post-content .post-date-label {
  color: var(--color-text-muted);
  font-size: 13px;
}

.single-post-page .post-content .post-title {
  color: var(--color-text-heading);
  margin-bottom: 2rem;
  font-size: 32px;
  line-height: 1.3;
  font-weight: 700;
}

.single-post-page .post-content .post-body {
  color: var(--color-text-body);
  line-height: 1.8;
  font-size: 16px;
}

.single-post-page .post-content .post-tags {
  margin-top: 3rem;
  padding-top: 2rem;
  border-top: 1px solid var(--color-border);
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.single-post-page .post-content .post-tags .tags-label {
  color: var(--color-text-heading);
  font-size: 14px;
  font-weight: 600;
  margin-right: 0.5rem;
}

.single-post-page .post-content .post-tags a {
  color: var(--color-primary, #4b5563);
  background: var(--color-tag-bg);
  font-size: 13px;
  padding: 0.3rem 0.8rem;
  border-radius: 4px;
  text-decoration: none;
  transition: background 0.2s;
}

.single-post-page .post-content .post-tags a:hover {
  background: var(--color-tag-bg-hover);
}

.single-post-page .post-content .post-share {
  margin-top: 1.5rem;
  padding-top: 1.5rem;
  margin-bottom: 2rem;
  border-top: 1px dashed var(--color-border);
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex-wrap: wrap;
}

.single-post-page .post-content .post-share .share-label {
  color: var(--color-text-heading);
  font-size: 14px;
  font-weight: 600;
}

.single-post-page .post-content .post-share a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background-color: var(--color-bg-tertiary);
  color: var(--color-text-secondary);
  text-decoration: none;
  transition: all 0.2s ease;
}

.single-post-page .post-content .post-share a:hover {
  transform: translateY(-2px);
}

.single-post-page .post-content .post-share a svg {
  width: 18px;
  height: 18px;
}

.single-post-page .post-content .post-share a.share-facebook:hover {
  background-color: var(--color-social-facebook);
  color: var(--color-white);
}

.single-post-page .post-content .post-share a.share-twitter:hover {
  background-color: var(--color-social-twitter);
  color: var(--color-white);
}

.single-post-page .post-content .post-share a.share-linkedin:hover {
  background-color: var(--color-social-linkedin);
  color: var(--color-white);
}

.single-post-page .post-content .post-share a.share-whatsapp:hover {
  background-color: var(--color-social-whatsapp);
  color: var(--color-white);
}

.single-post-page .post-content .post-share a.share-pinterest:hover {
  background-color: var(--color-social-pinterest);
  color: var(--color-white);
}

.single-post-page .post-content .post-share a.share-email:hover {
  background-color: var(--color-social-email);
  color: var(--color-white);
}

.single-post-page .post-content .post-share a.share-copy:hover {
  background-color: var(--color-text-heading);
  color: var(--color-white);
}

/* Sidebar */
.single-post-page .post-sidebar {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  position: sticky;
  top: 100px;
  align-self: start;
  max-height: calc(100vh - 120px);
  overflow-y: auto;
}

.single-post-page .post-sidebar .sidebar-widget {
  padding: 1.5rem;
}

.single-post-page .post-sidebar .sidebar-widget h4 {
  color: var(--color-text-heading);
  font-size: 18px;
  font-weight: 600;
  margin-bottom: 1.25rem;
  padding-bottom: 0.75rem;
  border-bottom: 1px solid var(--color-border-light);
}

.single-post-page .related-posts-sidebar {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.single-post-page .related-posts-sidebar .related-item {
  display: flex;
  gap: 0.75rem;
  text-decoration: none;
  padding: 0.5rem 0;
  border-bottom: 1px solid var(--color-border-light);
  transition: background 0.2s;
}

.single-post-page .related-posts-sidebar .related-item:last-child {
  border-bottom: none;
}

.single-post-page .related-posts-sidebar .related-item:hover {
  background: var(--color-border-light);
}

.single-post-page .related-posts-sidebar .related-thumb {
  width: 60px;
  height: 60px;
  flex-shrink: 0;
  border-radius: 6px;
  overflow: hidden;
}

.single-post-page .related-posts-sidebar .related-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.single-post-page .related-posts-sidebar .related-info {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 0.25rem;
}

.single-post-page .related-posts-sidebar .related-title {
  color: var(--color-text-heading);
  font-size: 15px;
  font-weight: 500;
  line-height: 1.3;
}

.single-post-page .related-posts-sidebar .related-date {
  color: var(--color-text-muted);
  font-size: 13px;
}

/* ===== Exit-Intent Modal ===== */
.wxkn-modal {
  position: fixed;
  inset: 0;
  z-index: 2147483647;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}
.wxkn-modal.is-open { opacity: 1; visibility: visible; }

.wxkn-modal__overlay {
  position: absolute;
  inset: 0;
  background: var(--color-overlay-dark);
  backdrop-filter: blur(4px);
}

.wxkn-modal__dialog {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 5fr 6fr;
  width: min(960px, 94vw);
  max-height: 88vh;
  background: var(--color-bg-card);
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 30px 60px -15px var(--color-modal-shadow);
  transform: translateY(12px) scale(0.98);
  opacity: 0;
  transition: transform 0.3s ease, opacity 0.3s ease;
}
.wxkn-modal.is-open .wxkn-modal__dialog {
  transform: translateY(0) scale(1);
  opacity: 1;
}

.wxkn-modal__close {
  position: absolute;
  top: 14px;
  right: 14px;
  z-index: 5;
  width: 38px;
  height: 38px;
  border: none;
  border-radius: 50%;
  background: var(--color-modal-close-bg);
  color: var(--color-text-heading);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.2s, transform 0.2s;
}
.wxkn-modal__close:hover { background: var(--color-white); transform: rotate(90deg); }

.wxkn-modal__left {
  background: linear-gradient(135deg, var(--color-modal-panel-from) 0%, var(--color-modal-panel-to) 100%);
  color: var(--color-white);
  padding: 48px 40px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
}
.wxkn-modal__eyebrow {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--color-modal-accent);
  margin-bottom: 16px;
}
.wxkn-modal__title {
  font-size: clamp(26px, 2.6vw, 34px);
  font-weight: 700;
  line-height: 1.2;
  margin: 0 0 18px;
}
.wxkn-modal__title em {
  color: var(--color-modal-accent);
  font-style: normal;
}
.wxkn-modal__lede {
  font-size: 15px;
  line-height: 1.65;
  color: var(--color-modal-text-muted);
  margin: 0 0 24px;
}
.wxkn-modal__list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.wxkn-modal__list li {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  font-size: 14px;
  color: var(--color-modal-text-soft);
}
.wxkn-modal__list li::before {
  content: "✓";
  color: var(--color-modal-accent);
  font-weight: 700;
  flex-shrink: 0;
}

.wxkn-modal__right {
  padding: 48px 44px;
  overflow-y: auto;
  background: var(--color-bg-card);
}
.wxkn-modal__form-title {
  font-size: 22px;
  font-weight: 700;
  margin: 0 0 6px;
  color: var(--color-text-heading);
}
.wxkn-modal__form-sub {
  font-size: 13px;
  color: var(--color-text-secondary);
  margin: 0 0 24px;
}

/* Lead form inside the modal */
.wxkn-form { display: flex; flex-direction: column; gap: 14px; }
.wxkn-form__row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.wxkn-form__field { display: flex; flex-direction: column; gap: 6px; }
.wxkn-form__field label {
  font-size: 12px;
  font-weight: 600;
  color: var(--color-text-secondary);
}
.wxkn-form__field input,
.wxkn-form__field textarea,
.wxkn-form__field select {
  width: 100%;
  padding: 11px 13px;
  font-size: 14px;
  font-family: inherit;
  color: var(--color-text-heading);
  background: var(--color-bg-secondary);
  border: 1px solid var(--color-border);
  border-radius: 8px;
  transition: border-color 0.2s, box-shadow 0.2s, background 0.2s;
  box-sizing: border-box;
}
.wxkn-form__field input:focus,
.wxkn-form__field textarea:focus,
.wxkn-form__field select:focus {
  outline: none;
  border-color: var(--color-primary);
  background: var(--color-bg-primary);
  box-shadow: 0 0 0 3px var(--color-shadow-md);
}
.wxkn-form__field textarea { min-height: 90px; resize: vertical; }
.wxkn-form__submit {
  margin-top: 8px;
  padding: 14px;
  background: var(--color-primary);
  color: var(--color-white);
  border: none;
  border-radius: 9999px;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  transition: background 0.25s, transform 0.25s, box-shadow 0.25s;
}
.wxkn-form__submit:hover {
  background: var(--color-primary-hover);
  transform: translateY(-2px);
  box-shadow: 0 10px 24px var(--color-shadow-md);
}
.wxkn-form__note {
  font-size: 11px;
  color: var(--color-text-muted);
  text-align: center;
  margin: 10px 0 0;
}

@media (max-width: 768px) {
  .wxkn-modal__dialog {
    grid-template-columns: 1fr;
    width: 100vw;
    max-height: 100vh;
    border-radius: 0;
  }
  .wxkn-modal__left { display: none; }
  .wxkn-modal__right { padding: 60px 22px 32px; }
  .wxkn-form__row { grid-template-columns: 1fr; }
}


.border-fine-b { border-bottom: 1px solid var(--color-border); }

/* Mobile Navigation */
.wxkn-mobile-nav {
    position: fixed;
    inset: 0;
    z-index: 60;
    background: var(--color-overlay-light);
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
}

.wxkn-mobile-nav.active {
    opacity: 1;
    visibility: visible;
}

.wxkn-mobile-nav-inner {
    position: absolute;
    top: 0;
    right: 0;
    width: 85%;
    max-width: 380px;
    height: 100%;
    background: var(--color-bg-primary);
    transform: translateX(100%);
    transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.wxkn-mobile-nav.active .wxkn-mobile-nav-inner {
    transform: translateX(0);
}

.wxkn-mobile-nav-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 24px;
    height: 80px;
    border-bottom: 1px solid var(--color-border);
    flex-shrink: 0;
}

.wxkn-mobile-nav-body {
    flex: 1;
    overflow-y: auto;
    padding: 12px 0 32px;
}

/* Mobile Nav Groups (accordion) */
.wxkn-mobile-nav-group {
    border-bottom: 1px solid var(--color-border-light);
}

.wxkn-mobile-nav-toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 16px 24px;
    font-size: 13px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: var(--color-text-body);
    background: none;
    border: none;
    cursor: pointer;
    text-align: left;
    transition: background-color 0.3s ease, color 0.3s ease;
}

.wxkn-mobile-nav-toggle i {
    transition: transform 0.3s ease;
}

.wxkn-mobile-nav-toggle.active {
    background-color: var(--color-primary, #4b5563);
    color: var(--color-white);
}

.wxkn-mobile-nav-toggle.active i {
    transform: rotate(180deg);
}

.wxkn-mobile-subnav {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.35s ease;
    background-color: var(--color-bg-tertiary);
}

.wxkn-mobile-subnav.active {
    max-height: 800px;
}

.wxkn-mobile-subnav-link {
    display: block;
    padding: 16px 24px 16px 36px;
    font-size: 15px;
    color: var(--color-text-body);
    font-weight: 700;
    text-decoration: none;
    border-top: 1px solid var(--color-border-light);
    transition: color 0.2s ease;
    white-space: nowrap;
}

.wxkn-mobile-subnav-link:hover {
    color: var(--color-primary, #4b5563);
}

/* Mobile Nav Simple Links */
.wxkn-mobile-nav-link {
    display: block;
    padding: 16px 24px;
    font-size: 14px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: var(--color-text-body);
    text-decoration: none;
    border-bottom: 1px solid var(--color-border-light);
}

/* Mobile CTA */
.wxkn-mobile-cta {
    display: block;
    margin: 20px 24px;
    padding: 14px 0;
    text-align: center;
    font-size: 13px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: var(--color-white);
    background: var(--color-secondary);
    text-decoration: none;
    transition: background 0.2s ease;
}

.wxkn-mobile-cta:hover {
    background: var(--color-secondary-hover);
}

.section-tight {
    width: 100%;
    max-width: 1410px;
    margin: 0 auto;
    padding-left: 28px;
    padding-right: 28px;
}

.louissanka-header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 80;
    background: rgba(255, 255, 255, 0.94);
    backdrop-filter: blur(14px);
    transition: background-color 0.32s ease, box-shadow 0.32s ease;
}

.site-header-inner {
    max-width: 1410px;
    margin: 0 auto;
    padding: 0 24px;
}

.site-header-top {
    min-height: 100px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    align-items: center;
    gap: 16px;
    transition: min-height 0.34s ease, gap 0.34s ease;
}

.site-header-tools,
.site-header-utils {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 12px;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: #FF6A1A;
}

.site-header-tools {
    min-width: 0;
}

.site-header-utils {
    justify-content: flex-end;
}

.site-header-mobile-toggle {
    display: none;
    width: 40px;
    height: 40px;
    padding: 0;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 999px;
    background: transparent;
    color: #FF6A1A;
    cursor: pointer;
    transition: background-color 0.2s ease, color 0.2s ease;
}

.site-header-mobile-toggle i {
    font-size: 16px;
}

.site-header-mobile-toggle:hover {
    background: #f1f1f1;
    color: #d9550d;
}

.site-header-contact-links {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
}

.site-header-contact-links a {
    width: 34px;
    min-width: 34px;
    height: 34px;
    padding: 0;
    flex: 0 0 34px;
}

.site-header-contact-links a[aria-label="WhatsApp us"] {
    width: auto;
    min-width: 34px;
    padding: 0 6px;
    flex: 0 0 auto;
    gap: 6px;
    text-decoration: none;
}

.site-header-contact-links a[aria-label="WhatsApp us"] span {
    font-size: 10px;
    letter-spacing: 0.04em;
    white-space: nowrap;
}

.site-header-contact-links i {
    width: 18px;
    height: 18px;
    font-size: 18px;
}

.site-header-search-toggle {
    height: 32px;
    padding: 0 16px;
    border: 1px solid rgba(255, 106, 26, 0.38);
    border-radius: 999px;
    background: #fff;
    color: #4e4a45;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-size: 12px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    cursor: pointer;
    transition: border-color 0.22s ease, box-shadow 0.22s ease, color 0.22s ease;
}

.site-header-search-toggle i {
    color: #FF6A1A;
    font-size: 14px;
    line-height: 1;
}

.site-header-search-toggle:hover,
.site-header-search-toggle:focus-visible {
    outline: none;
    background: #fff !important;
    border-color: rgba(255, 106, 26, 0.62);
    box-shadow: 0 0 0 3px rgba(255, 106, 26, 0.06);
    color: #141414;
}

.site-header-tools a,
.site-header-utils a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 34px;
    height: 34px;
    padding: 0 10px;
    border-radius: 999px;
    color: inherit;
    text-decoration: none;
    transition: color 0.2s ease, background-color 0.2s ease;
}

.site-header-utils a i {
    font-size: 14px;
}

.site-header-utils .site-header-lang {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 34px;
    height: 34px;
    padding: 0 10px;
    border-radius: 999px;
    color: #a6a09a;
}

.site-header-tools a:hover,
.site-header-utils a:hover {
    background: #f1f1f1;
    color: #d9550d;
}

.ls-search-overlay {
    position: fixed;
    inset: 0;
    z-index: 140;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 0.25s ease, visibility 0.25s ease;
}

.ls-search-overlay.is-active {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    touch-action: none;
}

.ls-search-open {
    overflow: hidden;
}

.ls-search-open .site-main,
.ls-search-open .site-footer,
.ls-search-open .site-header-top,
.ls-search-open .site-header-nav {
    pointer-events: none;
}

.ls-search-open .site-header-nav__panel,
.ls-search-open .site-header-nav__item:hover > .site-header-nav__panel,
.ls-search-open .site-header-nav__item:focus-within > .site-header-nav__panel {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
}

.ls-search-open .louissanka-header {
    background: rgba(255, 255, 255, 0.96);
    box-shadow: none;
}

.ls-search-overlay__backdrop {
    position: absolute;
    inset: 0;
    border: 0;
    background: transparent;
    cursor: pointer;
}

.ls-search-overlay__panel {
    position: relative;
    width: min(34vw, 520px);
    min-width: 360px;
    height: 100vh;
    padding: 22px 18px 28px;
    background: #fff;
    box-shadow: 18px 0 42px rgba(20, 20, 20, 0.08);
    overflow-y: auto;
    transform: translateX(-100%);
    transition: transform 0.28s ease;
}

.ls-search-overlay.is-active .ls-search-overlay__panel {
    transform: translateX(0);
}

.ls-search-overlay__head {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.ls-search-overlay__top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.ls-search-overlay__title {
    margin: 0;
    font-family: 'Marcellus', serif;
    font-size: 42px;
    line-height: 1;
    color: #141414;
}

.ls-search-overlay__form {
    position: relative;
}

.ls-search-overlay__form i {
    position: absolute;
    left: 18px;
    top: 50%;
    transform: translateY(-50%);
    color: #FF6A1A;
    font-size: 17px;
    pointer-events: none;
}

.ls-search-overlay__form input[type="search"] {
    width: 100%;
    height: 58px;
    padding: 0 72px 0 50px;
    border: 1px solid #ddd6cf;
    border-radius: 999px;
    background: #fff;
    color: #141414;
    font-size: 16px;
    letter-spacing: 0.02em;
}

.ls-search-overlay__form input[type="search"]::placeholder {
    color: #8e8780;
}

.ls-search-overlay__form input[type="search"]:focus {
    outline: none;
    border-color: rgba(255, 106, 26, 0.56);
    box-shadow: 0 0 0 4px rgba(255, 106, 26, 0.06);
}

.ls-search-overlay__clear,
.ls-search-overlay__close {
    width: 44px;
    height: 44px;
    padding: 0;
    border: 0;
    border-radius: 999px;
    background: #fff;
    color: #141414;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: background-color 0.2s ease, color 0.2s ease;
}

.ls-search-overlay__clear {
    position: absolute;
    right: 18px;
    top: 50%;
    transform: translateY(-50%);
    width: auto;
    min-width: 40px;
    height: 40px;
    background: transparent;
}

.ls-search-overlay__clear i,
.ls-search-overlay__close i,
.ls-search-overlay__close-symbol {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    font-size: 28px;
    line-height: 1;
    font-family: Arial, sans-serif;
    font-weight: 300;
}

.ls-search-overlay__clear-text {
    font-size: 13px;
    line-height: 1;
    letter-spacing: 0.02em;
    color: #141414;
}

.ls-search-overlay__clear:hover,
.ls-search-overlay__close:hover,
.ls-search-overlay__clear:focus-visible,
.ls-search-overlay__close:focus-visible {
    outline: none;
    background: #fff;
    color: #FF6A1A;
}

.ls-search-overlay__body {
    padding-top: 24px;
}

.ls-search-overlay__empty {
    text-align: left;
    padding: 12px 0 0;
}

.ls-search-overlay__contact-whatsapp {
    margin: 0;
    font-size: 18px;
    letter-spacing: 0.08em;
    color: #141414;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    text-decoration: none;
}

.ls-search-overlay__contact-whatsapp:hover {
    color: #FF6A1A;
}

.ls-search-overlay__contact-copy {
    max-width: 320px;
    margin: 14px 0 0;
    color: #69625b;
    font-size: 13px;
    line-height: 1.8;
}

.ls-search-overlay__results {
    display: flex;
    flex-direction: column;
    gap: 26px;
}

.ls-search-overlay__column {
    min-width: 0;
}

.ls-search-overlay__label {
    margin: 0 0 16px;
    color: #8b8178;
    font-size: 11px;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.ls-search-overlay__products {
    display: flex;
    flex-direction: column;
    gap: 22px;
}

.ls-search-overlay__product {
    display: grid;
    grid-template-columns: 88px minmax(0, 1fr);
    gap: 16px;
    align-items: center;
    text-decoration: none;
    color: #141414;
}

.ls-search-overlay__product-media {
    aspect-ratio: 1;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.ls-search-overlay__product-media img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.ls-search-overlay__product-copy {
    display: flex;
    flex-direction: column;
    gap: 6px;
    min-width: 0;
}

.ls-search-overlay__product-category {
    margin: 0;
    color: #8b8178;
    font-size: 10px;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.ls-search-overlay__product-title {
    display: block;
    font-family: 'Marcellus', serif;
    font-size: 18px;
    line-height: 1.25;
    color: #141414;
    transition: color 0.2s ease;
}

.ls-search-overlay__product:hover .ls-search-overlay__product-title,
.ls-search-overlay__product:focus-visible .ls-search-overlay__product-title {
    color: #FF6A1A;
}

.ls-search-overlay__viewall {
    margin-top: 18px;
    color: #FF6A1A;
    text-decoration: none;
    font-size: 13px;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.ls-search-overlay__viewall:hover {
    color: #d9550d;
}

.ls-search-overlay__placeholder {
    margin: 0;
    color: #69625b;
    font-size: 14px;
    line-height: 1.7;
}

.site-header-logo {
    display: flex;
    justify-content: center;
    justify-self: center;
}

.site-header-logo img {
    height: 48px;
    width: auto;
    display: block;
    transition: height 0.34s ease, transform 0.34s ease;
}

.site-header-nav {
    position: relative;
    width: 100%;
    background: #FF6A1A;
    margin: 0;
    transition: min-height 0.34s ease, padding 0.34s ease;
}

.site-header-nav__track {
    max-width: 1410px;
    width: 100%;
    min-height: 40px;
    margin: 0 auto;
    padding: 0 16px;
    display: flex;
    align-items: stretch;
    justify-content: center;
    gap: 0;
}

.site-header-nav__item {
    position: static;
    display: flex;
    align-items: stretch;
    align-self: stretch;
    flex: 0 0 auto;
}

.site-header-nav__separator {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 16px;
    width: 16px;
    min-height: 40px;
    color: rgba(255, 255, 255, 0.72);
    font-size: 11px;
    line-height: 1;
}

.site-header-nav__link {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 100%;
    height: 100%;
    padding: 0 6px;
    color: #fff;
    text-decoration: none;
    font-size: 13px;
    line-height: 1.1;
    letter-spacing: 0.045em;
    text-transform: uppercase;
    transition: color 0.2s ease;
    white-space: nowrap;
}

.site-header-nav__link span {
    position: relative;
    display: inline-block;
}

.site-header-nav__link span::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -4px;
    width: 100%;
    height: 1px;
    background: currentColor;
    transform: scaleX(0);
    transform-origin: left center;
    transition: transform 0.26s ease;
}

.site-header-nav__item:hover > .site-header-nav__link,
.site-header-nav__item:focus-within > .site-header-nav__link {
    color: rgba(255, 255, 255, 0.72);
}

.site-header-nav__item:hover > .site-header-nav__link span::after,
.site-header-nav__item:focus-within > .site-header-nav__link span::after {
    transform: scaleX(1);
}

.site-header-nav__panel {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    z-index: 12;
    width: 100%;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 0.22s ease, visibility 0.22s ease;
}

.site-header-nav__item:hover > .site-header-nav__panel,
.site-header-nav__item:focus-within > .site-header-nav__panel {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

.site-header-nav__dropdown,
.site-header-nav__mega {
    width: 100%;
    max-width: none;
    margin: 0;
    display: flex;
    align-items: center;
    box-sizing: border-box;
    padding-top: 22px;
    padding-right: max(32px, calc((100vw - 1410px) / 2 + 24px));
    padding-bottom: 24px;
    padding-left: max(32px, calc((100vw - 1410px) / 2 + 24px));
    background: rgba(255, 255, 255, 0.98);
    border-top: 1px solid rgba(122, 106, 94, 0.12);
    box-shadow: 0 20px 40px rgba(33, 22, 13, 0.08);
}

.site-header-nav__dropdown {
    position: relative;
    min-height: 220px;
}

.site-header-nav__mega {
    position: relative;
    min-height: 220px;
}

.site-header-nav__panel-layout {
    max-width: 1410px;
    width: 100%;
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
    align-items: start;
}

.site-header-nav__panel--dropdown .site-header-nav__panel-layout {
    align-items: center;
}

.site-header-nav__panel--mega .site-header-nav__panel-layout {
    align-items: center;
}

.site-header-nav__columns {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, max-content));
    gap: 24px 34px;
    align-content: start;
    justify-content: center;
}

.site-header-nav__panel--mega .site-header-nav__columns {
    align-content: center;
}

.site-header-nav__columns--dropdown {
    grid-template-columns: repeat(2, max-content);
    column-gap: 64px;
    align-content: center;
}

.site-header-nav__panel--dropdown .site-header-nav__group-links {
    grid-template-columns: 1fr;
    grid-auto-flow: row;
    gap: 2px;
}

.site-header-nav__group {
    min-width: 0;
    max-width: none;
    text-align: center;
    justify-self: center;
}

.site-header-nav__group-title {
    margin: 0 0 8px;
    white-space: nowrap;
    font-size: 14px;
    line-height: 1.4;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: #FF6A1A;
}

.site-header-nav__group-links {
    display: grid;
    gap: 2px;
    justify-items: center;
}

.site-header-nav__feature {
    display: block;
    color: #403830;
    text-decoration: none;
}

.site-header-nav__feature-media {
    display: block;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    border-radius: 14px;
    background: #f5f2ed;
}

.site-header-nav__feature-media img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}

.site-header-nav__feature-copy {
    display: grid;
    gap: 6px;
    margin-top: 14px;
}

.site-header-nav__feature-eyebrow {
    font-size: 11px;
    line-height: 1.4;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: #AA8D2D;
}

.site-header-nav__feature-title {
    font-size: 18px;
    line-height: 1.3;
    color: #2d241c;
}

.site-header-nav__feature-cta {
    position: relative;
    display: inline-block;
    width: fit-content;
    margin-top: 4px;
    padding-bottom: 3px;
    font-size: 13px;
    line-height: 1.4;
    letter-spacing: 0.02em;
    color: #FF6A1A;
}

.site-header-nav__feature-cta::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 1px;
    background: currentColor;
    transform: scaleX(0);
    transform-origin: left center;
    transition: transform 0.26s ease;
}

.site-header-nav__sublink {
    display: block;
    width: fit-content;
    padding: 8px 0;
    color: #403830;
    text-decoration: none;
    text-align: center;
    white-space: nowrap;
    font-size: 13px;
    line-height: 1.45;
    letter-spacing: 0.02em;
    transition: color 0.2s ease;
}

.site-header-nav__dropdown .site-header-nav__sublink,
.site-header-nav__group-links .site-header-nav__sublink {
    position: relative;
}

.site-header-nav__dropdown .site-header-nav__sublink::after,
.site-header-nav__group-links .site-header-nav__sublink::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 4px;
    width: 100%;
    height: 1px;
    background: currentColor;
    transform: scaleX(0);
    transform-origin: left center;
    transition: transform 0.26s ease;
}

.site-header-nav__sublink:hover {
    color: #d9550d;
}

.site-header-nav__feature:hover .site-header-nav__feature-cta::after,
.site-header-nav__feature:focus-visible .site-header-nav__feature-cta::after {
    transform: scaleX(1);
}

.site-header-nav__dropdown .site-header-nav__sublink:hover::after,
.site-header-nav__group-links .site-header-nav__sublink:hover::after {
    transform: scaleX(1);
}

body.ls-mobile-nav-open {
    overflow: hidden;
}

.site-header-mobile-nav {
    position: fixed;
    inset: 0;
    z-index: 90;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 0.24s ease, visibility 0.24s ease;
}

.site-header-mobile-nav.is-active {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

.site-header-mobile-nav__overlay {
    position: absolute;
    inset: 0;
    border: 0;
    background: rgba(24, 18, 12, 0.32);
    opacity: 0;
    cursor: pointer;
    transition: opacity 0.28s ease;
}

.site-header-mobile-nav__panel {
    position: absolute;
    top: 0;
    right: 0;
    width: min(420px, 100%);
    height: 100%;
    background: #fff;
    transform: translateX(100%);
    transition: transform 0.32s ease;
    display: flex;
    flex-direction: column;
    box-shadow: -16px 0 48px rgba(25, 18, 14, 0.16);
}

.site-header-mobile-nav.is-active .site-header-mobile-nav__overlay {
    opacity: 1;
}

.site-header-mobile-nav.is-active .site-header-mobile-nav__panel {
    transform: translateX(0);
}

.site-header-mobile-nav__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 22px 20px;
    border-bottom: 1px solid rgba(122, 106, 94, 0.12);
}

.site-header-mobile-nav__logo img {
    display: block;
    height: 34px;
    width: auto;
}

.site-header-mobile-nav__close {
    width: 40px;
    height: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 999px;
    background: #f7f3ef;
    color: #403830;
    cursor: pointer;
}

.site-header-mobile-nav__body {
    flex: 1;
    overflow-y: auto;
    padding: 20px 20px 28px;
}

.site-header-mobile-nav__search {
    position: relative;
    margin-bottom: 16px;
}

.site-header-mobile-nav__search input {
    width: 100%;
    height: 46px;
    padding: 0 16px 0 44px;
    border: 1.5px solid rgba(255, 106, 26, 0.38);
    border-radius: 999px;
    background: #fff;
    color: #4e4a45;
    font-size: 12px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.site-header-mobile-nav__search i {
    position: absolute;
    left: 17px;
    top: 50%;
    transform: translateY(-50%);
    color: #FF6A1A;
    font-size: 14px;
    pointer-events: none;
}

.site-header-mobile-nav__utility {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin-bottom: 18px;
}

.site-header-mobile-nav__utility-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    padding: 0 12px;
    border: 1px solid rgba(122, 106, 94, 0.14);
    border-radius: 999px;
    color: #403830;
    text-decoration: none;
    font-size: 11px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.site-header-mobile-nav__utility-link--static {
    cursor: default;
}

.site-header-mobile-nav__menu {
    border-top: 1px solid rgba(122, 106, 94, 0.12);
}

.site-header-mobile-nav__group,
.site-header-mobile-nav__link {
    border-bottom: 1px solid rgba(122, 106, 94, 0.12);
}

.site-header-mobile-nav__toggle,
.site-header-mobile-nav__link {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 16px 0;
    background: none;
    border: 0;
    color: #201b17;
    text-align: left;
    text-decoration: none;
    font-size: 12px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    cursor: pointer;
}

.site-header-mobile-nav__link {
    justify-content: flex-start;
}

.site-header-mobile-nav__toggle i {
    font-size: 12px;
    transition: transform 0.2s ease;
}

.site-header-mobile-nav__toggle.is-active i {
    transform: rotate(180deg);
}

.site-header-mobile-nav__subnav {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.28s ease;
}

.site-header-mobile-nav__subnav.is-active {
    max-height: 1600px;
    padding-bottom: 12px;
}

.site-header-mobile-nav__overview,
.site-header-mobile-nav__sublink {
    display: block;
    padding: 11px 0 11px 14px;
    color: #4e4a45;
    text-decoration: none;
    font-size: 14px;
    line-height: 1.45;
}

.site-header-mobile-nav__overview {
    color: #FF6A1A;
    font-weight: 600;
}

.site-header-mobile-nav__section + .site-header-mobile-nav__section {
    margin-top: 12px;
}

.site-header-mobile-nav__section-title {
    margin: 14px 0 4px;
    padding-left: 14px;
    color: #9d8f84;
    font-size: 11px;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.site-header-mobile-nav__contact {
    display: grid;
    gap: 10px;
    padding-top: 18px;
}

.site-header-mobile-nav__contact a {
    color: #403830;
    text-decoration: none;
    font-size: 13px;
}

body.header-scrolled .site-header-top {
    min-height: 74px;
}

body.header-scrolled .site-header-logo img {
    height: 30px;
    transform: translateY(-1px);
}

body.header-scrolled .site-header-search-toggle {
    height: 32px;
}

body.header-scrolled .site-header-nav__track,
body.header-scrolled .site-header-nav__link {
    min-height: 36px;
}

body.header-scrolled .louissanka-header {
    background: rgba(255, 255, 255, 0.98);
    box-shadow: 0 10px 26px rgba(32, 22, 15, 0.08);
}

.site-footer {
    background: #fff;
    border-top: 1px solid #efebe6;
}

.ls-footer-trust {
    width: 100%;
    margin-inline: 0;
    box-sizing: border-box;
    background: #FF6A1A;
    color: #fff7e5;
    overflow-x: hidden;
}

.ls-footer-trust__inner {
    width: min(1328px, 100%);
    max-width: 1328px;
    box-sizing: border-box;
    margin: 0 auto;
    padding: 14px 24px;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    column-gap: 20px;
    row-gap: 14px;
}

.ls-footer-trust__item {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    min-height: 42px;
}

.ls-footer-trust__item i {
    width: 22px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    margin-top: 1px;
    font-size: 17px;
    line-height: 1.4;
    color: #fff7e5;
    overflow: visible;
    flex-shrink: 0;
}

.ls-footer-trust__item i::before {
    color: #fff;
}

.ls-footer-trust__copy {
    min-width: 0;
}

.ls-footer-trust__copy p,
.ls-footer-trust__copy span {
    display: block;
}

.ls-footer-trust__copy p {
    margin: 0 0 2px;
    color: #fff;
    font-size: 11px;
    font-weight: 600;
    line-height: 1.45;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.ls-footer-trust__copy span {
    color: rgba(255, 247, 229, 0.9);
    font-size: 13px;
    line-height: 1.45;
}

.site-footer-main {
    width: min(1328px, 100%);
    max-width: 1328px;
    box-sizing: border-box;
    margin: 0 auto;
    padding: 72px 24px 34px;
}

.footer-news-social {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(0, 0.8fr);
    gap: 40px;
    padding-bottom: 34px;
    margin-bottom: 56px;
    border-bottom: 1px solid #efebe6;
    align-items: center;
}

.footer-newsletter,
.footer-social {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
}

.footer-news-social-title {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin: 0 0 18px;
    font-size: 12px;
    line-height: 1.5;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    font-weight: 600;
    color: #3f3731;
}

.footer-news-social-title i {
    width: 34px;
    height: 34px;
    border-radius: 999px;
    background: rgba(255, 106, 26, 0.12);
    font-size: 18px;
    color: #FF6A1A;
    flex-shrink: 0;
}

.footer-newsletter-form {
    display: flex;
    align-items: center;
    gap: 8px;
    width: 100%;
    max-width: 620px;
    padding: 3px;
    border: 1px solid #e9dfd5;
    border-radius: 999px;
    background: #fff;
    box-shadow: 0 8px 24px rgba(40, 28, 18, 0.04);
}

.footer-newsletter-input {
    flex: 1 1 auto;
    width: 100%;
    height: 34px;
    padding: 0 14px;
    border: 0;
    border-radius: 999px;
    background: transparent;
    color: #5f5851;
    font-size: 13px;
    line-height: 1;
    outline: none;
}

.site-footer .footer-newsletter-input[type="email"] {
    flex: 1 1 auto;
    width: 100%;
    height: 34px;
    padding: 0 14px;
    border: 0;
    border-radius: 999px;
    background: transparent;
    color: #5f5851;
}

.footer-newsletter-input::placeholder {
    color: #a49a90;
}

.footer-newsletter-input:focus {
    box-shadow: none;
}

.site-footer .footer-newsletter-input[type="email"]:focus {
    box-shadow: none;
}

.footer-newsletter-btn {
    flex: 0 0 auto;
    min-width: 138px;
    height: 36px;
    border: 0;
    border-radius: 999px;
    background: #FF6A1A;
    color: #fff;
    padding: 0 22px;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: background-color 0.22s ease, transform 0.22s ease;
}

.footer-newsletter-btn:hover,
.footer-newsletter-btn:focus-visible {
    background: #d9550d;
    transform: translateY(-1px);
}

.footer-newsletter-btn--text {
    font-size: 12px;
    line-height: 1;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    font-weight: 600;
}

.footer-social {
    justify-self: end;
    width: 100%;
    max-width: 430px;
}

.footer-social-links {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 14px;
}

.footer-social-links a {
    flex: 0 0 40px;
    width: 42px;
    height: 42px;
    min-width: 42px;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #eadfd3;
    border-radius: 999px;
    color: rgba(255, 106, 26, 0.78);
    text-decoration: none;
    transition: transform 0.22s ease, border-color 0.22s ease, color 0.22s ease, background-color 0.22s ease;
}

.footer-social-links a:hover,
.footer-social-links a:focus-visible {
    transform: translateY(-2px);
    border-color: rgba(255, 106, 26, 0.32);
    background: rgba(255, 106, 26, 0.06);
    color: #FF6A1A;
}

.footer-social-links a::after {
    display: none;
}

.footer-social-links i {
    font-size: 18px;
    color: inherit;
}

.site-footer-grid {
    display: grid;
    grid-template-columns: minmax(280px, 1.2fr) repeat(3, minmax(0, 1fr));
    gap: 42px 34px;
    padding-bottom: 48px;
    border-bottom: 1px solid #efebe6;
    align-items: start;
}

.site-footer-column {
    min-width: 0;
}

.site-footer-brand-logo {
    display: inline-block;
    text-decoration: none;
    margin-bottom: 18px;
}

.site-footer-brand-logo img {
    height: 34px;
    width: auto;
    display: block;
}

.site-footer-brand-copy {
    max-width: 320px;
    font-size: 13px;
    line-height: 1.8;
    color: #615b54;
    margin: 0 0 28px;
}

.site-footer-contact h4,
.site-footer-column h4 {
    margin: 0 0 18px;
    font-size: 12px;
    line-height: 1.4;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: #FF6A1A;
}

.site-footer-contact ul,
.site-footer-column ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.site-footer-contact a,
.site-footer-column > ul a {
    position: relative;
    display: inline-block;
    width: fit-content;
    text-decoration: none;
    color: #615b54;
    font-size: 13px;
    line-height: 1.6;
    transition: color 0.2s ease;
}

.site-footer-contact a::after,
.site-footer-column > ul a::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: -2px;
    width: 100%;
    height: 1px;
    background: currentColor;
    transform: scaleX(0);
    transform-origin: left center;
    transition: transform 0.22s ease;
}

.site-footer-contact a:hover,
.site-footer-column > ul a:hover {
    color: #FF6A1A;
}

.site-footer-contact a:hover::after,
.site-footer-contact a:focus-visible::after,
.site-footer-column > ul a:hover::after,
.site-footer-column > ul a:focus-visible::after {
    transform: scaleX(1);
}

.site-footer-bottom {
    padding-top: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    font-size: 11px;
    line-height: 1.6;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #7a7269;
}

.site-footer-bottom p {
    margin: 0;
    position: relative;
    display: inline-block;
}

@media (max-width: 1350px) and (min-width: 1201px) {
    .site-header-nav__track {
        padding-right: 10px;
        padding-left: 10px;
    }

    .site-header-nav__separator {
        flex-basis: 14px;
        width: 14px;
    }

    .site-header-nav__link {
        padding-right: 5px;
        padding-left: 5px;
    }
}

@media (max-width: 1200px) {
    .site-header-top {
        min-height: 92px;
        gap: 12px;
    }

    .site-header-tools,
    .site-header-utils {
        gap: 12px;
        font-size: 11px;
        letter-spacing: 0.12em;
    }

    .site-header-search-toggle {
        height: 32px;
        font-size: 11px;
    }

    .site-header-logo img {
        height: 44px;
    }

    .site-header-nav__track {
        padding: 0 10px;
        gap: 0;
    }

    .site-header-nav__separator {
        flex-basis: 12px;
        width: 12px;
    }

    .site-header-nav__link {
        padding-right: 4px;
        padding-left: 4px;
        font-size: 11.5px;
        letter-spacing: 0.025em;
    }

    body.header-scrolled .site-header-top {
        min-height: 66px;
    }

    body.header-scrolled .site-header-logo img {
        height: 28px;
    }

    .site-header-nav__mega {
        padding: 26px 18px 30px;
        gap: 18px;
    }

    .site-header-nav__dropdown {
        padding: 26px 18px 30px;
        gap: 28px;
    }
}

@media (max-width: 1100px) and (min-width: 992px) {
    .site-header-nav__track {
        padding-right: 6px;
        padding-left: 6px;
    }

    .site-header-nav__separator {
        flex-basis: 8px;
        width: 8px;
    }

    .site-header-nav__link {
        padding-right: 2px;
        padding-left: 2px;
        font-size: 10px;
        letter-spacing: 0.02em;
    }
}

@media (max-width: 991px) {
    .single-product.separate-containers .site-main.site-main--single-product {
        padding-top: 98px !important;
    }

    .site-header-top {
        min-height: 82px;
        grid-template-columns: auto 1fr auto;
        gap: 12px;
    }

    .site-header-tools,
    .site-header-utils {
        gap: 10px;
        font-size: 10px;
        letter-spacing: 0.1em;
    }

    .site-header-mobile-toggle {
        display: inline-flex;
    }

    .site-header-contact-links,
    .site-header-search-toggle,
    .site-header-nav {
        display: none;
    }

    .site-header-logo {
        justify-self: center;
    }

    .site-header-logo img {
        height: 40px;
    }

    .ls-search-overlay {
        display: none;
    }

    .site-header-utils {
        gap: 6px;
    }

    .site-header-utils a {
        min-width: 30px;
        height: 30px;
        padding: 0 8px;
    }

    .site-header-utils .site-header-lang {
        display: none;
    }

    body.header-scrolled .site-header-top {
        min-height: 68px;
    }

    body.header-scrolled .site-header-logo img {
        height: 28px;
    }

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

    .site-footer-column--brand {
        grid-column: 1 / -1;
    }

    .footer-news-social {
        grid-template-columns: 1fr;
        gap: 32px;
    }

    .footer-social {
        justify-self: start;
        max-width: none;
    }

    .footer-newsletter-form {
        max-width: none;
    }
}

@media (max-width: 767px) {
    .section-tight {
        padding-left: 18px;
        padding-right: 18px;
    }

    .site-header-inner {
        padding: 0 16px;
    }

    .site-header-top {
        min-height: 74px;
        gap: 10px;
    }

    .site-header-logo img {
        height: 34px;
    }

    body.header-scrolled .site-header-top {
        min-height: 60px;
    }

    body.header-scrolled .site-header-logo img {
        height: 26px;
    }

    .site-header-mobile-toggle,
    .site-header-mobile-nav__close,
    .site-header-utils a {
        width: 34px;
        min-width: 34px;
        height: 34px;
        padding: 0;
    }

    .site-header-mobile-nav__panel {
        width: 100%;
    }

    .site-header-mobile-nav__head,
    .site-header-mobile-nav__body {
        padding-left: 16px;
        padding-right: 16px;
    }

    .site-footer-main {
        padding: 52px 18px 26px;
    }

    .footer-news-social {
        margin-bottom: 40px;
        padding-bottom: 28px;
    }

    .footer-newsletter-form {
        flex-direction: column;
        align-items: stretch;
        gap: 10px;
    }

    .footer-newsletter-btn {
        width: 100%;
        min-width: 0;
    }

    .site-footer-grid {
        grid-template-columns: 1fr;
        gap: 32px;
        padding-bottom: 36px;
    }

    .site-footer-bottom {
        justify-content: flex-start;
        text-align: left;
    }
}

.site-icon-scope .fa-solid,
.site-icon-scope .fas,
.site-icon-scope .fa-brands,
.site-icon-scope .fab,
.site-icon-scope .fa-regular,
.site-icon-scope .far {
    font-style: normal;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
}

.site-icon-scope .fa-solid::before,
.site-icon-scope .fas::before,
.site-icon-scope .fa-brands::before,
.site-icon-scope .fab::before,
.site-icon-scope .fa-regular::before,
.site-icon-scope .far::before {
    content: "";
    display: block;
    width: 1em;
    height: 1em;
    background-color: currentColor;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
    -webkit-mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: contain;
}

.site-header-utils a .fa-heart {
    width: 14px;
    height: 14px;
    font-size: 14px;
}

.site-icon-scope .fa-heart::before {
    background-color: transparent;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 21.35 10.55 20.03C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09A6 6 0 0 1 16.5 3C19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35Z' fill='%23000'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    -webkit-mask-image: none;
    mask-image: none;
}

.site-header-utils a[aria-label="Wishlist"] .fa-heart::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 21.35 10.55 20.03C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09A6 6 0 0 1 16.5 3C19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35Z' fill='%23FF6A1A'/%3E%3C/svg%3E");
}

.site-header-utils a[aria-label="Wishlist"]:hover .fa-heart::before,
.site-header-utils a[aria-label="Wishlist"]:focus-visible .fa-heart::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 21.35 10.55 20.03C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09A6 6 0 0 1 16.5 3C19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35Z' fill='%23d9550d'/%3E%3C/svg%3E");
}

.site-icon-scope .fa-envelope-open-text::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 3.2 2.6 8.7 12 14l9.4-5.3L12 3.2Zm9.6 7-9.1 5.1a1 1 0 0 1-1 0l-9-5.1V18a1.8 1.8 0 0 0 1.8 1.8h15.4A1.8 1.8 0 0 0 21.6 18v-7.8ZM7.7 11.8h8.6v1.5H7.7v-1.5Zm0 3h5.6v1.5H7.7v-1.5Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 3.2 2.6 8.7 12 14l9.4-5.3L12 3.2Zm9.6 7-9.1 5.1a1 1 0 0 1-1 0l-9-5.1V18a1.8 1.8 0 0 0 1.8 1.8h15.4A1.8 1.8 0 0 0 21.6 18v-7.8ZM7.7 11.8h8.6v1.5H7.7v-1.5Zm0 3h5.6v1.5H7.7v-1.5Z'/%3E%3C/svg%3E");
}

.site-icon-scope .fa-envelope::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3.75' y='5.25' width='16.5' height='13.5' rx='2.25'/%3E%3Cpath d='m4.5 6.75 7.02 5.27a.8.8 0 0 0 .96 0l7.02-5.27'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3.75' y='5.25' width='16.5' height='13.5' rx='2.25'/%3E%3Cpath d='m4.5 6.75 7.02 5.27a.8.8 0 0 0 .96 0l7.02-5.27'/%3E%3C/svg%3E");
}

.site-icon-scope .fa-whatsapp::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.65' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20.5 11.7a8.6 8.6 0 0 1-12.9 7.5L3.4 20.4l1.2-4a8.6 8.6 0 1 1 15.9-4.7Z'/%3E%3Cpath d='M8.1 7.6c.2-.4.6-.6 1-.6h.6c.2 0 .4.2.5.4l.8 1.9c.1.3.1.5-.1.7l-.7.8c-.2.2-.2.4-.1.7.5 1 1.4 1.9 2.4 2.4.3.1.5.1.7-.1l.8-.7c.2-.2.4-.2.7-.1l1.9.8c.3.1.4.3.4.6v.6c0 .4-.2.8-.6 1-.7.4-1.5.5-2.3.3-1.4-.4-2.9-1.3-4.2-2.6-1.3-1.3-2.2-2.8-2.6-4.2-.2-.8-.1-1.6.3-2.3Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.65' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20.5 11.7a8.6 8.6 0 0 1-12.9 7.5L3.4 20.4l1.2-4a8.6 8.6 0 1 1 15.9-4.7Z'/%3E%3Cpath d='M8.1 7.6c.2-.4.6-.6 1-.6h.6c.2 0 .4.2.5.4l.8 1.9c.1.3.1.5-.1.7l-.7.8c-.2.2-.2.4-.1.7.5 1 1.4 1.9 2.4 2.4.3.1.5.1.7-.1l.8-.7c.2-.2.4-.2.7-.1l1.9.8c.3.1.4.3.4.6v.6c0 .4-.2.8-.6 1-.7.4-1.5.5-2.3.3-1.4-.4-2.9-1.3-4.2-2.6-1.3-1.3-2.2-2.8-2.6-4.2-.2-.8-.1-1.6.3-2.3Z'/%3E%3C/svg%3E");
}

.site-icon-scope .fa-phone::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.85' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.92v2.38a1.7 1.7 0 0 1-1.85 1.7 16.83 16.83 0 0 1-7.34-2.61 16.58 16.58 0 0 1-5.1-5.1A16.83 16.83 0 0 1 5.1 5.94 1.7 1.7 0 0 1 6.78 4.1h2.38a1.7 1.7 0 0 1 1.56 1.17l.76 2.53a1.7 1.7 0 0 1-.38 1.67L9.72 10.85a13.6 13.6 0 0 0 3.43 3.43l1.38-1.38a1.7 1.7 0 0 1 1.67-.38l2.53.76A1.7 1.7 0 0 1 22 16.92Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.85' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.92v2.38a1.7 1.7 0 0 1-1.85 1.7 16.83 16.83 0 0 1-7.34-2.61 16.58 16.58 0 0 1-5.1-5.1A16.83 16.83 0 0 1 5.1 5.94 1.7 1.7 0 0 1 6.78 4.1h2.38a1.7 1.7 0 0 1 1.56 1.17l.76 2.53a1.7 1.7 0 0 1-.38 1.67L9.72 10.85a13.6 13.6 0 0 0 3.43 3.43l1.38-1.38a1.7 1.7 0 0 1 1.67-.38l2.53.76A1.7 1.7 0 0 1 22 16.92Z'/%3E%3C/svg%3E");
}

.site-icon-scope .fa-bag-shopping::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M6 7V6a6 6 0 0 1 12 0v1h2a1 1 0 0 1 1 1l-1 11a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2L3 8a1 1 0 0 1 1-1h2Zm2 0h8V6a4 4 0 1 0-8 0v1Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M6 7V6a6 6 0 0 1 12 0v1h2a1 1 0 0 1 1 1l-1 11a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2L3 8a1 1 0 0 1 1-1h2Zm2 0h8V6a4 4 0 1 0-8 0v1Z'/%3E%3C/svg%3E");
}

.site-icon-scope .fa-magnifying-glass::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M10.5 3.5a7 7 0 1 1 0 14 7 7 0 0 1 0-14Zm0 1.8a5.2 5.2 0 1 0 0 10.4 5.2 5.2 0 0 0 0-10.4Zm5.7 11.3a.9.9 0 0 1 1.27 0l3.03 3.03a.9.9 0 1 1-1.27 1.27l-3.03-3.03a.9.9 0 0 1 0-1.27Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M10.5 3.5a7 7 0 1 1 0 14 7 7 0 0 1 0-14Zm0 1.8a5.2 5.2 0 1 0 0 10.4 5.2 5.2 0 0 0 0-10.4Zm5.7 11.3a.9.9 0 0 1 1.27 0l3.03 3.03a.9.9 0 1 1-1.27 1.27l-3.03-3.03a.9.9 0 0 1 0-1.27Z'/%3E%3C/svg%3E");
}

.site-icon-scope .fa-user::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 12a4.5 4.5 0 1 1 0-9 4.5 4.5 0 0 1 0 9Zm0 2c4.4 0 8 2.4 8 5.3 0 .9-.7 1.7-1.7 1.7H5.7C4.7 21 4 20.2 4 19.3 4 16.4 7.6 14 12 14Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 12a4.5 4.5 0 1 1 0-9 4.5 4.5 0 0 1 0 9Zm0 2c4.4 0 8 2.4 8 5.3 0 .9-.7 1.7-1.7 1.7H5.7C4.7 21 4 20.2 4 19.3 4 16.4 7.6 14 12 14Z'/%3E%3C/svg%3E");
}

.site-icon-scope .fa-wallet::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M4 6.5A2.5 2.5 0 0 1 6.5 4H18a2 2 0 0 1 2 2v1h.5A1.5 1.5 0 0 1 22 8.5v9a2.5 2.5 0 0 1-2.5 2.5h-13A2.5 2.5 0 0 1 4 17.5v-11Zm16 2H15a2 2 0 1 0 0 4h5v-4ZM6.5 6A.5.5 0 0 0 6 6.5V7h12V6H6.5Zm8.5 5a1 1 0 1 1 0-2h1a1 1 0 1 1 0 2h-1Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M4 6.5A2.5 2.5 0 0 1 6.5 4H18a2 2 0 0 1 2 2v1h.5A1.5 1.5 0 0 1 22 8.5v9a2.5 2.5 0 0 1-2.5 2.5h-13A2.5 2.5 0 0 1 4 17.5v-11Zm16 2H15a2 2 0 1 0 0 4h5v-4ZM6.5 6A.5.5 0 0 0 6 6.5V7h12V6H6.5Zm8.5 5a1 1 0 1 1 0-2h1a1 1 0 1 1 0 2h-1Z'/%3E%3C/svg%3E");
}

.site-icon-scope .fa-gift::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M20 7h-2.2c.8-.7 1.2-1.5 1.2-2.4C19 2.6 17.4 1 15.4 1c-1.5 0-2.7.8-3.4 2.2C11.3 1.8 10.1 1 8.6 1 6.6 1 5 2.6 5 4.6c0 .9.4 1.8 1.2 2.4H4a1 1 0 0 0-1 1v3h8v-1H5V9h14v1h-6v1h8V8a1 1 0 0 0-1-1ZM8.6 3c1 0 1.8.9 2.5 2.7.1.2.2.5.3.8H8.6C7.7 6.5 7 5.7 7 4.8 7 3.8 7.7 3 8.6 3Zm6.8 0c.9 0 1.6.8 1.6 1.8 0 .9-.7 1.7-1.6 1.7h-2.8c.1-.3.2-.6.3-.8.7-1.8 1.5-2.7 2.5-2.7ZM4 12h7v10H6a2 2 0 0 1-2-2v-8Zm9 0h7v8a2 2 0 0 1-2 2h-5V12Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M20 7h-2.2c.8-.7 1.2-1.5 1.2-2.4C19 2.6 17.4 1 15.4 1c-1.5 0-2.7.8-3.4 2.2C11.3 1.8 10.1 1 8.6 1 6.6 1 5 2.6 5 4.6c0 .9.4 1.8 1.2 2.4H4a1 1 0 0 0-1 1v3h8v-1H5V9h14v1h-6v1h8V8a1 1 0 0 0-1-1ZM8.6 3c1 0 1.8.9 2.5 2.7.1.2.2.5.3.8H8.6C7.7 6.5 7 5.7 7 4.8 7 3.8 7.7 3 8.6 3Zm6.8 0c.9 0 1.6.8 1.6 1.8 0 .9-.7 1.7-1.6 1.7h-2.8c.1-.3.2-.6.3-.8.7-1.8 1.5-2.7 2.5-2.7ZM4 12h7v10H6a2 2 0 0 1-2-2v-8Zm9 0h7v8a2 2 0 0 1-2 2h-5V12Z'/%3E%3C/svg%3E");
}

.site-icon-scope .fa-truck-fast::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M2 6a1 1 0 0 1 1-1h11a1 1 0 0 1 1 1v8h1.4l1.1-3.2a2 2 0 0 1 1.9-1.3H21a1 1 0 0 1 1 1v5h-1.2a3 3 0 0 1-5.6 0H8.8a3 3 0 0 1-5.6 0H2V6Zm3 11.5a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3Zm13 0a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3Zm1-6-1 2.5H20v-2.5h-1Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M2 6a1 1 0 0 1 1-1h11a1 1 0 0 1 1 1v8h1.4l1.1-3.2a2 2 0 0 1 1.9-1.3H21a1 1 0 0 1 1 1v5h-1.2a3 3 0 0 1-5.6 0H8.8a3 3 0 0 1-5.6 0H2V6Zm3 11.5a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3Zm13 0a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3Zm1-6-1 2.5H20v-2.5h-1Z'/%3E%3C/svg%3E");
}

.site-icon-scope .fa-star::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2.5 14.9 8l6 .9-4.3 4.2 1 5.9-5.6-2.9-5.6 2.9 1-5.9L3.1 8.9l6-.9L12 2.5Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2.5 14.9 8l6 .9-4.3 4.2 1 5.9-5.6-2.9-5.6 2.9 1-5.9L3.1 8.9l6-.9L12 2.5Z'/%3E%3C/svg%3E");
}

.site-icon-scope .fa-facebook-f::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M13.3 21v-7.6h2.6l.4-3h-3V8.5c0-.9.2-1.5 1.5-1.5h1.6V4.3c-.3 0-1.2-.1-2.3-.1-2.3 0-3.8 1.4-3.8 4v2.2H8v3h2.3V21h3Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M13.3 21v-7.6h2.6l.4-3h-3V8.5c0-.9.2-1.5 1.5-1.5h1.6V4.3c-.3 0-1.2-.1-2.3-.1-2.3 0-3.8 1.4-3.8 4v2.2H8v3h2.3V21h3Z'/%3E%3C/svg%3E");
}

.site-icon-scope .fa-twitter::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M21 7.2c-.6.3-1.3.5-2 .6.7-.4 1.3-1.1 1.6-1.9-.7.4-1.5.7-2.3.9A3.6 3.6 0 0 0 12 9.2c0 .3 0 .6.1.8-3-.2-5.7-1.6-7.5-3.8-.3.6-.5 1.2-.5 1.9 0 1.3.7 2.4 1.7 3.1-.6 0-1.2-.2-1.7-.5v.1c0 1.8 1.3 3.3 3 3.7-.3.1-.7.1-1 .1-.2 0-.5 0-.7-.1.5 1.5 1.9 2.6 3.5 2.7A7.2 7.2 0 0 1 4 18.7a10.1 10.1 0 0 0 5.5 1.6c6.6 0 10.2-5.5 10.2-10.2v-.5c.7-.5 1.2-1.1 1.7-1.8Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M21 7.2c-.6.3-1.3.5-2 .6.7-.4 1.3-1.1 1.6-1.9-.7.4-1.5.7-2.3.9A3.6 3.6 0 0 0 12 9.2c0 .3 0 .6.1.8-3-.2-5.7-1.6-7.5-3.8-.3.6-.5 1.2-.5 1.9 0 1.3.7 2.4 1.7 3.1-.6 0-1.2-.2-1.7-.5v.1c0 1.8 1.3 3.3 3 3.7-.3.1-.7.1-1 .1-.2 0-.5 0-.7-.1.5 1.5 1.9 2.6 3.5 2.7A7.2 7.2 0 0 1 4 18.7a10.1 10.1 0 0 0 5.5 1.6c6.6 0 10.2-5.5 10.2-10.2v-.5c.7-.5 1.2-1.1 1.7-1.8Z'/%3E%3C/svg%3E");
}

.site-icon-scope .fa-linkedin-in::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M6.4 8.6A1.6 1.6 0 1 0 6.4 5.4a1.6 1.6 0 0 0 0 3.2ZM5 10h2.8v9H5v-9Zm4.6 0h2.7v1.2h.1c.4-.7 1.4-1.5 2.9-1.5 3.1 0 3.7 2 3.7 4.7V19h-2.8v-4c0-1 0-2.3-1.4-2.3s-1.6 1.1-1.6 2.2V19H9.6v-9Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M6.4 8.6A1.6 1.6 0 1 0 6.4 5.4a1.6 1.6 0 0 0 0 3.2ZM5 10h2.8v9H5v-9Zm4.6 0h2.7v1.2h.1c.4-.7 1.4-1.5 2.9-1.5 3.1 0 3.7 2 3.7 4.7V19h-2.8v-4c0-1 0-2.3-1.4-2.3s-1.6 1.1-1.6 2.2V19H9.6v-9Z'/%3E%3C/svg%3E");
}

.site-icon-scope .fa-instagram::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M7.5 3h9A4.5 4.5 0 0 1 21 7.5v9a4.5 4.5 0 0 1-4.5 4.5h-9A4.5 4.5 0 0 1 3 16.5v-9A4.5 4.5 0 0 1 7.5 3Zm0 1.8a2.7 2.7 0 0 0-2.7 2.7v9a2.7 2.7 0 0 0 2.7 2.7h9a2.7 2.7 0 0 0 2.7-2.7v-9a2.7 2.7 0 0 0-2.7-2.7h-9Zm4.5 2.7a4.5 4.5 0 1 1 0 9 4.5 4.5 0 0 1 0-9Zm0 1.8a2.7 2.7 0 1 0 0 5.4 2.7 2.7 0 0 0 0-5.4Zm4.8-.8a1 1 0 1 1 0 2 1 1 0 0 1 0-2Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M7.5 3h9A4.5 4.5 0 0 1 21 7.5v9a4.5 4.5 0 0 1-4.5 4.5h-9A4.5 4.5 0 0 1 3 16.5v-9A4.5 4.5 0 0 1 7.5 3Zm0 1.8a2.7 2.7 0 0 0-2.7 2.7v9a2.7 2.7 0 0 0 2.7 2.7h9a2.7 2.7 0 0 0 2.7-2.7v-9a2.7 2.7 0 0 0-2.7-2.7h-9Zm4.5 2.7a4.5 4.5 0 1 1 0 9 4.5 4.5 0 0 1 0-9Zm0 1.8a2.7 2.7 0 1 0 0 5.4 2.7 2.7 0 0 0 0-5.4Zm4.8-.8a1 1 0 1 1 0 2 1 1 0 0 1 0-2Z'/%3E%3C/svg%3E");
}

.site-icon-scope .fa-pinterest-p::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12.4 3C7.6 3 5 6.4 5 10.1c0 2.3 1.2 4.6 3.1 5.4.3.1.4.1.4-.2l.4-1.7c0-.1 0-.2-.1-.4-.6-.7-1-1.7-1-3 0-2.9 2.1-5.7 6-5.7 3.3 0 5.1 2 5.1 4.7 0 3.5-1.6 6.5-3.9 6.5-1.3 0-2.2-1.1-1.9-2.4.4-1.6 1.2-3.4 1.2-4.6 0-1.1-.6-2-1.8-2-1.4 0-2.6 1.5-2.6 3.4 0 1.2.4 2 .4 2l-1.7 7.1c-.3 1.2 0 3 .1 3.2 0 .1.2.1.2 0 .1-.1 1.3-1.7 1.7-2.9.1-.4.7-2.5.7-2.5.3.6 1.4 1.2 2.6 1.2 3.5 0 5.9-3.2 5.9-7.4C21 6.1 17.8 3 12.4 3Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12.4 3C7.6 3 5 6.4 5 10.1c0 2.3 1.2 4.6 3.1 5.4.3.1.4.1.4-.2l.4-1.7c0-.1 0-.2-.1-.4-.6-.7-1-1.7-1-3 0-2.9 2.1-5.7 6-5.7 3.3 0 5.1 2 5.1 4.7 0 3.5-1.6 6.5-3.9 6.5-1.3 0-2.2-1.1-1.9-2.4.4-1.6 1.2-3.4 1.2-4.6 0-1.1-.6-2-1.8-2-1.4 0-2.6 1.5-2.6 3.4 0 1.2.4 2 .4 2l-1.7 7.1c-.3 1.2 0 3 .1 3.2 0 .1.2.1.2 0 .1-.1 1.3-1.7 1.7-2.9.1-.4.7-2.5.7-2.5.3.6 1.4 1.2 2.6 1.2 3.5 0 5.9-3.2 5.9-7.4C21 6.1 17.8 3 12.4 3Z'/%3E%3C/svg%3E");
}

.site-icon-scope .fa-youtube::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M21.1 7.2a2.8 2.8 0 0 0-2-2C17.4 4.7 12 4.7 12 4.7s-5.4 0-7.1.5a2.8 2.8 0 0 0-2 2C2.4 8.9 2.4 12 2.4 12s0 3.1.5 4.8a2.8 2.8 0 0 0 2 2c1.7.5 7.1.5 7.1.5s5.4 0 7.1-.5a2.8 2.8 0 0 0 2-2c.5-1.7.5-4.8.5-4.8s0-3.1-.5-4.8ZM10 15.6V8.4l5.2 3.6-5.2 3.6Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M21.1 7.2a2.8 2.8 0 0 0-2-2C17.4 4.7 12 4.7 12 4.7s-5.4 0-7.1.5a2.8 2.8 0 0 0-2 2C2.4 8.9 2.4 12 2.4 12s0 3.1.5 4.8a2.8 2.8 0 0 0 2 2c1.7.5 7.1.5 7.1.5s5.4 0 7.1-.5a2.8 2.8 0 0 0 2-2c.5-1.7.5-4.8.5-4.8s0-3.1-.5-4.8ZM10 15.6V8.4l5.2 3.6-5.2 3.6Z'/%3E%3C/svg%3E");
}

.site-icon-scope .fa-weixin::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M9.2 4C5.2 4 2 6.5 2 9.7c0 1.8 1 3.5 2.8 4.7l-.8 2.2 2.7-1.4c.8.2 1.7.3 2.5.3h.3a5.9 5.9 0 0 1-.3-1.8c0-3.4 3.3-6.2 7.3-6.2h.4C16.1 5.4 12.9 4 9.2 4Zm-2 4.2a.9.9 0 1 1 0 1.8.9.9 0 0 1 0-1.8Zm4 0a.9.9 0 1 1 0 1.8.9.9 0 0 1 0-1.8Zm5.4 1.4c-3 0-5.4 1.9-5.4 4.3 0 1.3.7 2.5 2 3.3l-.6 1.8 2.1-1.1c.6.1 1.2.2 1.9.2 3 0 5.4-1.9 5.4-4.2 0-2.4-2.4-4.3-5.4-4.3Zm-2 3.1a.8.8 0 1 1 0 1.6.8.8 0 0 1 0-1.6Zm4 0a.8.8 0 1 1 0 1.6.8.8 0 0 1 0-1.6Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M9.2 4C5.2 4 2 6.5 2 9.7c0 1.8 1 3.5 2.8 4.7l-.8 2.2 2.7-1.4c.8.2 1.7.3 2.5.3h.3a5.9 5.9 0 0 1-.3-1.8c0-3.4 3.3-6.2 7.3-6.2h.4C16.1 5.4 12.9 4 9.2 4Zm-2 4.2a.9.9 0 1 1 0 1.8.9.9 0 0 1 0-1.8Zm4 0a.9.9 0 1 1 0 1.8.9.9 0 0 1 0-1.8Zm5.4 1.4c-3 0-5.4 1.9-5.4 4.3 0 1.3.7 2.5 2 3.3l-.6 1.8 2.1-1.1c.6.1 1.2.2 1.9.2 3 0 5.4-1.9 5.4-4.2 0-2.4-2.4-4.3-5.4-4.3Zm-2 3.1a.8.8 0 1 1 0 1.6.8.8 0 0 1 0-1.6Zm4 0a.8.8 0 1 1 0 1.6.8.8 0 0 1 0-1.6Z'/%3E%3C/svg%3E");
}

.site-icon-scope .fa-arrow-right::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M13.2 5.3a1 1 0 0 1 1.4 0l5.6 5.7a1 1 0 0 1 0 1.4l-5.6 5.6a1 1 0 1 1-1.4-1.4l3.9-3.9H4a1 1 0 1 1 0-2h13.1l-3.9-3.9a1 1 0 0 1 0-1.4Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M13.2 5.3a1 1 0 0 1 1.4 0l5.6 5.7a1 1 0 0 1 0 1.4l-5.6 5.6a1 1 0 1 1-1.4-1.4l3.9-3.9H4a1 1 0 1 1 0-2h13.1l-3.9-3.9a1 1 0 0 1 0-1.4Z'/%3E%3C/svg%3E");
}

/* Keep close controls visible when the Font Awesome font is unavailable. */
.fa-xmark::before,
.fa-times::before {
    content: "";
    display: block;
    width: 1em;
    height: 1em;
    background-color: currentColor;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M5.3 5.3a1 1 0 0 1 1.4 0L12 10.6l5.3-5.3a1 1 0 1 1 1.4 1.4L13.4 12l5.3 5.3a1 1 0 0 1-1.4 1.4L12 13.4l-5.3 5.3a1 1 0 0 1-1.4-1.4l5.3-5.3-5.3-5.3a1 1 0 0 1 0-1.4Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M5.3 5.3a1 1 0 0 1 1.4 0L12 10.6l5.3-5.3a1 1 0 1 1 1.4 1.4L13.4 12l5.3 5.3a1 1 0 0 1-1.4 1.4L12 13.4l-5.3 5.3a1 1 0 0 1-1.4-1.4l5.3-5.3-5.3-5.3a1 1 0 0 1 0-1.4Z'/%3E%3C/svg%3E");
}

.fa-xmark,
.fa-times {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1em;
    height: 1em;
    line-height: 1;
    vertical-align: middle;
}

.page-home .fa-solid,
.page-home .fas,
.page-home .fa-brands,
.page-home .fab,
.page-home .fa-regular,
.page-home .far {
    font-style: normal;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
}

.page-home .fa-solid::before,
.page-home .fas::before,
.page-home .fa-brands::before,
.page-home .fab::before,
.page-home .fa-regular::before,
.page-home .far::before {
    content: "";
    display: block;
    width: 1em;
    height: 1em;
    background-color: currentColor;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
    -webkit-mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: contain;
}

.page-home .fa-chevron-left::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M14.7 5.3a1 1 0 0 1 0 1.4L9.41 12l5.3 5.3a1 1 0 1 1-1.42 1.4l-6-6a1 1 0 0 1 0-1.4l6-6a1 1 0 0 1 1.42 0Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M14.7 5.3a1 1 0 0 1 0 1.4L9.41 12l5.3 5.3a1 1 0 1 1-1.42 1.4l-6-6a1 1 0 0 1 0-1.4l6-6a1 1 0 0 1 1.42 0Z'/%3E%3C/svg%3E");
}

.page-home .fa-chevron-right::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M9.3 5.3a1 1 0 0 0 0 1.4L14.59 12l-5.3 5.3a1 1 0 0 0 1.42 1.4l6-6a1 1 0 0 0 0-1.4l-6-6a1 1 0 0 0-1.42 0Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M9.3 5.3a1 1 0 0 0 0 1.4L14.59 12l-5.3 5.3a1 1 0 0 0 1.42 1.4l6-6a1 1 0 0 0 0-1.4l-6-6a1 1 0 0 0-1.42 0Z'/%3E%3C/svg%3E");
}

.page-home .fa-heart::before {
    background-color: transparent;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 21.35 10.55 20.03C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09A6 6 0 0 1 16.5 3C19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35Z' fill='%23000'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    -webkit-mask-image: none;
    mask-image: none;
}

.page-home .category-product-favorite .fa-heart::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M21.2 5.7a4.9 4.9 0 0 0-6.9 0L12 8l-2.3-2.3a4.9 4.9 0 0 0-6.9 6.9l2.3 2.3L12 21.8l6.9-6.9 2.3-2.3a4.9 4.9 0 0 0 0-6.9Z' fill='none' stroke='%23FF6A1A' stroke-width='1.65' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

.page-home .category-product-favorite:hover .fa-heart::before,
.page-home .category-product-favorite:focus-visible .fa-heart::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 21.35 10.55 20.03C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09A6 6 0 0 1 16.5 3C19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35Z' fill='%23FF6A1A'/%3E%3C/svg%3E");
}

.page-home .fa-envelope-open-text::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 3.2 2.6 8.7 12 14l9.4-5.3L12 3.2Zm9.6 7-9.1 5.1a1 1 0 0 1-1 0l-9-5.1V18a1.8 1.8 0 0 0 1.8 1.8h15.4A1.8 1.8 0 0 0 21.6 18v-7.8ZM7.7 11.8h8.6v1.5H7.7v-1.5Zm0 3h5.6v1.5H7.7v-1.5Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 3.2 2.6 8.7 12 14l9.4-5.3L12 3.2Zm9.6 7-9.1 5.1a1 1 0 0 1-1 0l-9-5.1V18a1.8 1.8 0 0 0 1.8 1.8h15.4A1.8 1.8 0 0 0 21.6 18v-7.8ZM7.7 11.8h8.6v1.5H7.7v-1.5Zm0 3h5.6v1.5H7.7v-1.5Z'/%3E%3C/svg%3E");
}

.page-home .fa-envelope::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3.75' y='5.25' width='16.5' height='13.5' rx='2.25'/%3E%3Cpath d='m4.5 6.75 7.02 5.27a.8.8 0 0 0 .96 0l7.02-5.27'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3.75' y='5.25' width='16.5' height='13.5' rx='2.25'/%3E%3Cpath d='m4.5 6.75 7.02 5.27a.8.8 0 0 0 .96 0l7.02-5.27'/%3E%3C/svg%3E");
}

.page-home .fa-phone::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.85' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.92v2.38a1.7 1.7 0 0 1-1.85 1.7 16.83 16.83 0 0 1-7.34-2.61 16.58 16.58 0 0 1-5.1-5.1A16.83 16.83 0 0 1 5.1 5.94 1.7 1.7 0 0 1 6.78 4.1h2.38a1.7 1.7 0 0 1 1.56 1.17l.76 2.53a1.7 1.7 0 0 1-.38 1.67L9.72 10.85a13.6 13.6 0 0 0 3.43 3.43l1.38-1.38a1.7 1.7 0 0 1 1.67-.38l2.53.76A1.7 1.7 0 0 1 22 16.92Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.85' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.92v2.38a1.7 1.7 0 0 1-1.85 1.7 16.83 16.83 0 0 1-7.34-2.61 16.58 16.58 0 0 1-5.1-5.1A16.83 16.83 0 0 1 5.1 5.94 1.7 1.7 0 0 1 6.78 4.1h2.38a1.7 1.7 0 0 1 1.56 1.17l.76 2.53a1.7 1.7 0 0 1-.38 1.67L9.72 10.85a13.6 13.6 0 0 0 3.43 3.43l1.38-1.38a1.7 1.7 0 0 1 1.67-.38l2.53.76A1.7 1.7 0 0 1 22 16.92Z'/%3E%3C/svg%3E");
}

.page-home .fa-bag-shopping::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M6 7V6a6 6 0 0 1 12 0v1h2a1 1 0 0 1 1 1l-1 11a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2L3 8a1 1 0 0 1 1-1h2Zm2 0h8V6a4 4 0 1 0-8 0v1Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M6 7V6a6 6 0 0 1 12 0v1h2a1 1 0 0 1 1 1l-1 11a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2L3 8a1 1 0 0 1 1-1h2Zm2 0h8V6a4 4 0 1 0-8 0v1Z'/%3E%3C/svg%3E");
}

.page-home .fa-magnifying-glass::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M10.5 3.5a7 7 0 1 1 0 14 7 7 0 0 1 0-14Zm0 1.8a5.2 5.2 0 1 0 0 10.4 5.2 5.2 0 0 0 0-10.4Zm5.7 11.3a.9.9 0 0 1 1.27 0l3.03 3.03a.9.9 0 1 1-1.27 1.27l-3.03-3.03a.9.9 0 0 1 0-1.27Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M10.5 3.5a7 7 0 1 1 0 14 7 7 0 0 1 0-14Zm0 1.8a5.2 5.2 0 1 0 0 10.4 5.2 5.2 0 0 0 0-10.4Zm5.7 11.3a.9.9 0 0 1 1.27 0l3.03 3.03a.9.9 0 1 1-1.27 1.27l-3.03-3.03a.9.9 0 0 1 0-1.27Z'/%3E%3C/svg%3E");
}

.page-home .fa-user::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 12a4.5 4.5 0 1 1 0-9 4.5 4.5 0 0 1 0 9Zm0 2c4.4 0 8 2.4 8 5.3 0 .9-.7 1.7-1.7 1.7H5.7C4.7 21 4 20.2 4 19.3 4 16.4 7.6 14 12 14Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 12a4.5 4.5 0 1 1 0-9 4.5 4.5 0 0 1 0 9Zm0 2c4.4 0 8 2.4 8 5.3 0 .9-.7 1.7-1.7 1.7H5.7C4.7 21 4 20.2 4 19.3 4 16.4 7.6 14 12 14Z'/%3E%3C/svg%3E");
}

.page-home .fa-wallet::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M4 6.5A2.5 2.5 0 0 1 6.5 4H18a2 2 0 0 1 2 2v1h.5A1.5 1.5 0 0 1 22 8.5v9a2.5 2.5 0 0 1-2.5 2.5h-13A2.5 2.5 0 0 1 4 17.5v-11Zm16 2H15a2 2 0 1 0 0 4h5v-4ZM6.5 6A.5.5 0 0 0 6 6.5V7h12V6H6.5Zm8.5 5a1 1 0 1 1 0-2h1a1 1 0 1 1 0 2h-1Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M4 6.5A2.5 2.5 0 0 1 6.5 4H18a2 2 0 0 1 2 2v1h.5A1.5 1.5 0 0 1 22 8.5v9a2.5 2.5 0 0 1-2.5 2.5h-13A2.5 2.5 0 0 1 4 17.5v-11Zm16 2H15a2 2 0 1 0 0 4h5v-4ZM6.5 6A.5.5 0 0 0 6 6.5V7h12V6H6.5Zm8.5 5a1 1 0 1 1 0-2h1a1 1 0 1 1 0 2h-1Z'/%3E%3C/svg%3E");
}

.page-home .fa-gift::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M20 7h-2.2c.8-.7 1.2-1.5 1.2-2.4C19 2.6 17.4 1 15.4 1c-1.5 0-2.7.8-3.4 2.2C11.3 1.8 10.1 1 8.6 1 6.6 1 5 2.6 5 4.6c0 .9.4 1.8 1.2 2.4H4a1 1 0 0 0-1 1v3h8v-1H5V9h14v1h-6v1h8V8a1 1 0 0 0-1-1ZM8.6 3c1 0 1.8.9 2.5 2.7.1.2.2.5.3.8H8.6C7.7 6.5 7 5.7 7 4.8 7 3.8 7.7 3 8.6 3Zm6.8 0c.9 0 1.6.8 1.6 1.8 0 .9-.7 1.7-1.6 1.7h-2.8c.1-.3.2-.6.3-.8.7-1.8 1.5-2.7 2.5-2.7ZM4 12h7v10H6a2 2 0 0 1-2-2v-8Zm9 0h7v8a2 2 0 0 1-2 2h-5V12Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M20 7h-2.2c.8-.7 1.2-1.5 1.2-2.4C19 2.6 17.4 1 15.4 1c-1.5 0-2.7.8-3.4 2.2C11.3 1.8 10.1 1 8.6 1 6.6 1 5 2.6 5 4.6c0 .9.4 1.8 1.2 2.4H4a1 1 0 0 0-1 1v3h8v-1H5V9h14v1h-6v1h8V8a1 1 0 0 0-1-1ZM8.6 3c1 0 1.8.9 2.5 2.7.1.2.2.5.3.8H8.6C7.7 6.5 7 5.7 7 4.8 7 3.8 7.7 3 8.6 3Zm6.8 0c.9 0 1.6.8 1.6 1.8 0 .9-.7 1.7-1.6 1.7h-2.8c.1-.3.2-.6.3-.8.7-1.8 1.5-2.7 2.5-2.7ZM4 12h7v10H6a2 2 0 0 1-2-2v-8Zm9 0h7v8a2 2 0 0 1-2 2h-5V12Z'/%3E%3C/svg%3E");
}

.page-home .fa-truck-fast::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M2 6a1 1 0 0 1 1-1h11a1 1 0 0 1 1 1v8h1.4l1.1-3.2a2 2 0 0 1 1.9-1.3H21a1 1 0 0 1 1 1v5h-1.2a3 3 0 0 1-5.6 0H8.8a3 3 0 0 1-5.6 0H2V6Zm3 11.5a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3Zm13 0a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3Zm1-6-1 2.5H20v-2.5h-1Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M2 6a1 1 0 0 1 1-1h11a1 1 0 0 1 1 1v8h1.4l1.1-3.2a2 2 0 0 1 1.9-1.3H21a1 1 0 0 1 1 1v5h-1.2a3 3 0 0 1-5.6 0H8.8a3 3 0 0 1-5.6 0H2V6Zm3 11.5a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3Zm13 0a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3Zm1-6-1 2.5H20v-2.5h-1Z'/%3E%3C/svg%3E");
}

.page-home .fa-star::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2.5 14.9 8l6 .9-4.3 4.2 1 5.9-5.6-2.9-5.6 2.9 1-5.9L3.1 8.9l6-.9L12 2.5Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2.5 14.9 8l6 .9-4.3 4.2 1 5.9-5.6-2.9-5.6 2.9 1-5.9L3.1 8.9l6-.9L12 2.5Z'/%3E%3C/svg%3E");
}

.page-home .fa-facebook-f::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M13.3 21v-7.6h2.6l.4-3h-3V8.5c0-.9.2-1.5 1.5-1.5h1.6V4.3c-.3 0-1.2-.1-2.3-.1-2.3 0-3.8 1.4-3.8 4v2.2H8v3h2.3V21h3Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M13.3 21v-7.6h2.6l.4-3h-3V8.5c0-.9.2-1.5 1.5-1.5h1.6V4.3c-.3 0-1.2-.1-2.3-.1-2.3 0-3.8 1.4-3.8 4v2.2H8v3h2.3V21h3Z'/%3E%3C/svg%3E");
}

.page-home .fa-linkedin-in::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M6.4 8.6A1.6 1.6 0 1 0 6.4 5.4a1.6 1.6 0 0 0 0 3.2ZM5 10h2.8v9H5v-9Zm4.6 0h2.7v1.2h.1c.4-.7 1.4-1.5 2.9-1.5 3.1 0 3.7 2 3.7 4.7V19h-2.8v-4c0-1 0-2.3-1.4-2.3s-1.6 1.1-1.6 2.2V19H9.6v-9Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M6.4 8.6A1.6 1.6 0 1 0 6.4 5.4a1.6 1.6 0 0 0 0 3.2ZM5 10h2.8v9H5v-9Zm4.6 0h2.7v1.2h.1c.4-.7 1.4-1.5 2.9-1.5 3.1 0 3.7 2 3.7 4.7V19h-2.8v-4c0-1 0-2.3-1.4-2.3s-1.6 1.1-1.6 2.2V19H9.6v-9Z'/%3E%3C/svg%3E");
}

.page-home .fa-instagram::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M7.5 3h9A4.5 4.5 0 0 1 21 7.5v9a4.5 4.5 0 0 1-4.5 4.5h-9A4.5 4.5 0 0 1 3 16.5v-9A4.5 4.5 0 0 1 7.5 3Zm0 1.8a2.7 2.7 0 0 0-2.7 2.7v9a2.7 2.7 0 0 0 2.7 2.7h9a2.7 2.7 0 0 0 2.7-2.7v-9a2.7 2.7 0 0 0-2.7-2.7h-9Zm4.5 2.7a4.5 4.5 0 1 1 0 9 4.5 4.5 0 0 1 0-9Zm0 1.8a2.7 2.7 0 1 0 0 5.4 2.7 2.7 0 0 0 0-5.4Zm4.8-.8a1 1 0 1 1 0 2 1 1 0 0 1 0-2Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M7.5 3h9A4.5 4.5 0 0 1 21 7.5v9a4.5 4.5 0 0 1-4.5 4.5h-9A4.5 4.5 0 0 1 3 16.5v-9A4.5 4.5 0 0 1 7.5 3Zm0 1.8a2.7 2.7 0 0 0-2.7 2.7v9a2.7 2.7 0 0 0 2.7 2.7h9a2.7 2.7 0 0 0 2.7-2.7v-9a2.7 2.7 0 0 0-2.7-2.7h-9Zm4.5 2.7a4.5 4.5 0 1 1 0 9 4.5 4.5 0 0 1 0-9Zm0 1.8a2.7 2.7 0 1 0 0 5.4 2.7 2.7 0 0 0 0-5.4Zm4.8-.8a1 1 0 1 1 0 2 1 1 0 0 1 0-2Z'/%3E%3C/svg%3E");
}

.page-home .fa-pinterest-p::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12.4 3C7.6 3 5 6.4 5 10.1c0 2.3 1.2 4.6 3.1 5.4.3.1.4.1.4-.2l.4-1.7c0-.1 0-.2-.1-.4-.6-.7-1-1.7-1-3 0-2.9 2.1-5.7 6-5.7 3.3 0 5.1 2 5.1 4.7 0 3.5-1.6 6.5-3.9 6.5-1.3 0-2.2-1.1-1.9-2.4.4-1.6 1.2-3.4 1.2-4.6 0-1.1-.6-2-1.8-2-1.4 0-2.6 1.5-2.6 3.4 0 1.2.4 2 .4 2l-1.7 7.1c-.3 1.2 0 3 .1 3.2 0 .1.2.1.2 0 .1-.1 1.3-1.7 1.7-2.9.1-.4.7-2.5.7-2.5.3.6 1.4 1.2 2.6 1.2 3.5 0 5.9-3.2 5.9-7.4C21 6.1 17.8 3 12.4 3Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12.4 3C7.6 3 5 6.4 5 10.1c0 2.3 1.2 4.6 3.1 5.4.3.1.4.1.4-.2l.4-1.7c0-.1 0-.2-.1-.4-.6-.7-1-1.7-1-3 0-2.9 2.1-5.7 6-5.7 3.3 0 5.1 2 5.1 4.7 0 3.5-1.6 6.5-3.9 6.5-1.3 0-2.2-1.1-1.9-2.4.4-1.6 1.2-3.4 1.2-4.6 0-1.1-.6-2-1.8-2-1.4 0-2.6 1.5-2.6 3.4 0 1.2.4 2 .4 2l-1.7 7.1c-.3 1.2 0 3 .1 3.2 0 .1.2.1.2 0 .1-.1 1.3-1.7 1.7-2.9.1-.4.7-2.5.7-2.5.3.6 1.4 1.2 2.6 1.2 3.5 0 5.9-3.2 5.9-7.4C21 6.1 17.8 3 12.4 3Z'/%3E%3C/svg%3E");
}

.page-home .fa-youtube::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M21.1 7.2a2.8 2.8 0 0 0-2-2C17.4 4.7 12 4.7 12 4.7s-5.4 0-7.1.5a2.8 2.8 0 0 0-2 2C2.4 8.9 2.4 12 2.4 12s0 3.1.5 4.8a2.8 2.8 0 0 0 2 2c1.7.5 7.1.5 7.1.5s5.4 0 7.1-.5a2.8 2.8 0 0 0 2-2c.5-1.7.5-4.8.5-4.8s0-3.1-.5-4.8ZM10 15.6V8.4l5.2 3.6-5.2 3.6Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M21.1 7.2a2.8 2.8 0 0 0-2-2C17.4 4.7 12 4.7 12 4.7s-5.4 0-7.1.5a2.8 2.8 0 0 0-2 2C2.4 8.9 2.4 12 2.4 12s0 3.1.5 4.8a2.8 2.8 0 0 0 2 2c1.7.5 7.1.5 7.1.5s5.4 0 7.1-.5a2.8 2.8 0 0 0 2-2c.5-1.7.5-4.8.5-4.8s0-3.1-.5-4.8ZM10 15.6V8.4l5.2 3.6-5.2 3.6Z'/%3E%3C/svg%3E");
}

.page-home .fa-weixin::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M9.2 4C5.2 4 2 6.5 2 9.7c0 1.8 1 3.5 2.8 4.7l-.8 2.2 2.7-1.4c.8.2 1.7.3 2.5.3h.3a5.9 5.9 0 0 1-.3-1.8c0-3.4 3.3-6.2 7.3-6.2h.4C16.1 5.4 12.9 4 9.2 4Zm-2 4.2a.9.9 0 1 1 0 1.8.9.9 0 0 1 0-1.8Zm4 0a.9.9 0 1 1 0 1.8.9.9 0 0 1 0-1.8Zm5.4 1.4c-3 0-5.4 1.9-5.4 4.3 0 1.3.7 2.5 2 3.3l-.6 1.8 2.1-1.1c.6.1 1.2.2 1.9.2 3 0 5.4-1.9 5.4-4.2 0-2.4-2.4-4.3-5.4-4.3Zm-2 3.1a.8.8 0 1 1 0 1.6.8.8 0 0 1 0-1.6Zm4 0a.8.8 0 1 1 0 1.6.8.8 0 0 1 0-1.6Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M9.2 4C5.2 4 2 6.5 2 9.7c0 1.8 1 3.5 2.8 4.7l-.8 2.2 2.7-1.4c.8.2 1.7.3 2.5.3h.3a5.9 5.9 0 0 1-.3-1.8c0-3.4 3.3-6.2 7.3-6.2h.4C16.1 5.4 12.9 4 9.2 4Zm-2 4.2a.9.9 0 1 1 0 1.8.9.9 0 0 1 0-1.8Zm4 0a.9.9 0 1 1 0 1.8.9.9 0 0 1 0-1.8Zm5.4 1.4c-3 0-5.4 1.9-5.4 4.3 0 1.3.7 2.5 2 3.3l-.6 1.8 2.1-1.1c.6.1 1.2.2 1.9.2 3 0 5.4-1.9 5.4-4.2 0-2.4-2.4-4.3-5.4-4.3Zm-2 3.1a.8.8 0 1 1 0 1.6.8.8 0 0 1 0-1.6Zm4 0a.8.8 0 1 1 0 1.6.8.8 0 0 1 0-1.6Z'/%3E%3C/svg%3E");
}

.site-main--woocommerce {
    min-height: 60vh;
}

body.single-product,
body.single-product .site,
body.single-product #page {
    overflow-x: hidden;
}

.separate-containers .site-main {
    margin: 0 !important;
}

.single-product.separate-containers .site-main.site-main--single-product {
    margin: 0 !important;
    padding-top: 168px !important;
    overflow-x: hidden;
}

.ls-woo-shell {
    width: min(1280px, calc(100% - 48px));
    margin: 0 auto;
    padding: 40px 0 72px;
}

.site-main--woocommerce .woocommerce-breadcrumb,
.site-main--woocommerce .woocommerce-notices-wrapper,
.site-main--woocommerce .woocommerce-result-count,
.site-main--woocommerce .woocommerce-ordering,
.site-main--woocommerce .woocommerce > h1,
.site-main--woocommerce .woocommerce > h2 {
    margin-bottom: 24px;
}

.site-main--woocommerce .woocommerce-breadcrumb,
.site-main--woocommerce .woocommerce-result-count,
.site-main--woocommerce .woocommerce-ordering,
.site-main--woocommerce .woocommerce-info,
.site-main--woocommerce .woocommerce-message {
    color: #666;
    font-size: 14px;
}

.site-main--woocommerce .woocommerce ul.products {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 24px;
    margin: 0;
    padding: 0;
    list-style: none;
    align-items: stretch;
}

.site-main--woocommerce .woocommerce ul.products::before,
.site-main--woocommerce .woocommerce ul.products::after {
    display: none;
}

.site-main--woocommerce .woocommerce ul.products li.product {
    width: 100%;
    margin: 0;
    padding: 0;
    list-style: none;
}

.ls-woo-archive-hero {
    padding: 28px 0 20px;
}

.ls-woo-archive-hero__eyebrow {
    margin: 0 0 12px;
    color: #FF6A1A;
    font-size: 12px;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.ls-woo-archive-hero__title {
    margin: 0;
    font-size: clamp(32px, 4.2vw, 56px);
    line-height: 1.04;
    font-weight: 600;
    color: #141414;
}

.ls-woo-archive-hero__desc {
    max-width: 720px;
    margin-top: 18px;
    color: #666;
    font-size: 16px;
    line-height: 1.75;
}

.ls-woo-archive-hero__desc p {
    margin: 0;
}

.site-main--editorial-archive .ls-woo-archive-hero {
    padding: 0;
}

.site-main--editorial-archive .ls-woo-archive-hero .ls-woo-shell {
    display: flex;
    width: min(100%, 1060px);
    flex-direction: column;
    align-items: center;
    gap: 0;
    padding: 82px 24px 56px;
}

.site-main--editorial-archive .ls-woo-editorial-breadcrumb {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0 0 18px;
    color: rgba(23, 18, 14, 0.82);
    font-size: 12px;
    line-height: 1.4;
    letter-spacing: 0.08em;
    text-align: center;
    text-transform: uppercase;
}

.site-main--editorial-archive .ls-woo-editorial-breadcrumb a {
    color: inherit;
    text-decoration: none;
}

.site-main--editorial-archive .ls-woo-editorial-breadcrumb a:hover,
.site-main--editorial-archive .ls-woo-editorial-breadcrumb a:focus-visible,
.site-main--editorial-archive .ls-woo-editorial-breadcrumb [aria-current="page"] {
    color: #ff6a1a;
}

.site-main--editorial-archive .ls-woo-archive-hero__copy {
    width: 100%;
    max-width: 920px;
    text-align: center;
}

.site-main--editorial-archive .ls-woo-archive-hero__eyebrow {
    display: none;
}

.site-main--editorial-archive .ls-woo-archive-hero__title {
    color: #17120e;
    font-family: 'Marcellus', Georgia, serif;
    font-size: clamp(36px, 4.35vw, 54px);
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.08;
    text-align: center;
    text-transform: uppercase;
}

.site-main--editorial-archive .ls-woo-archive-hero__visual {
    width: min(100%, 980px);
    margin: 42px auto 0;
    overflow: hidden;
    aspect-ratio: 2.4 / 1;
    border-radius: 18px;
    background: #faf7f3;
}

.site-main--editorial-archive .ls-woo-archive-hero__visual img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.site-main--editorial-archive .ls-woo-ade-scenes {
    display: grid;
    width: min(100%, 1410px);
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: start;
    gap: 12px;
    margin: 40px auto 0;
}

.site-main--editorial-archive .ls-woo-ade-scenes__card {
    min-width: 0;
    margin: 0;
    overflow: hidden;
    aspect-ratio: 1 / 1;
    border-radius: 24px;
    background: #faf7f3;
}

.site-main--editorial-archive .ls-woo-ade-scenes__card img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.site-main--editorial-archive .ls-woo-category-nav {
    width: min(100%, 980px);
    margin: 0 auto 56px;
}

.site-main--editorial-archive .ls-woo-category-nav__header {
    display: grid;
    justify-items: center;
    gap: 56px;
    margin: 0 auto 38px;
}

.site-main--editorial-archive .ls-woo-category-nav__header .section-divider {
    width: 100%;
}

.site-main--editorial-archive .ls-woo-category-nav__header .section-divider img {
    display: block;
    width: 100%;
    height: auto;
}

.site-main--editorial-archive > .ls-woo-shell {
    padding-top: 0;
}

.site-main--editorial-archive .ls-woo-category-nav__grid {
	grid-template-columns: repeat(4, 118px);
	justify-content: center;
	justify-items: center;
	gap: 18px;
}

.site-main--editorial-archive .ls-woo-category-nav__title {
    margin: 0 0 34px;
    color: #17120e;
    font-family: 'Marcellus', Georgia, serif;
    font-size: clamp(28px, 3vw, 36px);
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.08;
    text-align: center;
    text-transform: uppercase;
}

.site-main--editorial-archive .ls-woo-category-nav__card {
    width: 118px;
    max-width: 118px;
    border: 0;
    border-radius: 0;
    background: transparent;
    padding: 0;
    text-align: center;
    transition: transform 0.24s ease;
}

.site-main--editorial-archive .ls-woo-category-nav__card:hover,
.site-main--editorial-archive .ls-woo-category-nav__card:focus-visible {
    transform: translateY(-2px);
}

.site-main--editorial-archive .ls-woo-category-nav__image {
    display: flex;
    width: 108px;
    height: 108px;
    align-items: center;
    justify-content: center;
    margin: 0 auto 12px;
    overflow: hidden;
    border-radius: 50%;
    background: #fff;
}

.site-main--editorial-archive .ls-woo-category-nav__image img {
    width: 88px;
    height: 88px;
    object-fit: contain;
    transition: transform .22s ease;
}

.site-main--editorial-archive .ls-woo-category-nav__card:hover .ls-woo-category-nav__image img,
.site-main--editorial-archive .ls-woo-category-nav__card:focus-visible .ls-woo-category-nav__image img {
    transform: scale(1.04);
}

.site-main--editorial-archive .ls-woo-category-nav__label {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 0;
    color: #17120e;
    font-size: 9px;
    line-height: 1.5;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.site-main--editorial-archive .ls-woo-category-nav__label span:last-child {
    color: #ff6a1a;
}

.site-main--tableware-archive .ls-woo-category-nav--tableware {
    width: min(100%, 1180px);
    margin: 0 auto 56px;
}

.site-main--tableware-archive .ls-woo-category-nav--tableware .ls-woo-category-nav__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}

.site-main--tableware-archive .ls-woo-category-nav--tableware .ls-woo-category-nav__card {
    position: relative;
    width: auto;
    max-width: none;
    overflow: hidden;
    text-align: left;
}

.site-main--tableware-archive .ls-woo-category-nav--tableware .ls-woo-category-nav__image {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 4 / 3;
    margin: 0;
    border-radius: 0;
    background: #f3f1ed;
}

.site-main--tableware-archive .ls-woo-category-nav--tableware .ls-woo-category-nav__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.site-main--tableware-archive .ls-woo-category-nav--tableware .ls-woo-category-nav__label {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    justify-content: flex-start;
    gap: 8px;
    padding: 38px 16px 14px;
    color: #fff;
    background: linear-gradient(transparent, rgb(0 0 0 / .54));
    font-size: 12px;
    letter-spacing: .11em;
    text-align: left;
    text-shadow: 0 1px 5px rgb(0 0 0 / .35);
}

.site-main--tableware-archive .ls-woo-category-nav--tableware .ls-woo-category-nav__label span:last-child {
    color: #ff6a1a;
    text-shadow: none;
}

.site-main--editorial-archive .ls-woo-editorial-products-heading {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0;
    width: min(100%, 920px);
    margin: 0 auto 38px;
    color: #ff6a1a;
    font-size: 11px;
    letter-spacing: 0.22em;
    text-align: center;
    text-transform: uppercase;
}

.site-main--editorial-archive .ls-woo-story-band {
    margin: 56px auto 0;
}

.site-main--editorial-archive .ls-woo-story-band .ade-story-band {
    margin: 0 auto 56px;
}

.site-main--editorial-archive .ls-woo-story-band .section-divider {
    margin: 0 auto 56px;
}

.site-main--editorial-archive .ls-woo-story-band .ade-story-grid {
    display: grid;
    width: min(100% - 48px, 1200px);
    grid-template-columns: minmax(0, 30fr) minmax(0, 40fr) minmax(0, 30fr);
    gap: 18px;
    margin: 0 auto;
}

.site-main--editorial-archive .ls-woo-story-band .ade-story-card {
    color: #17120e;
    text-decoration: none;
}

.site-main--editorial-archive .ls-woo-story-band .ade-story-media {
    position: relative;
    box-sizing: border-box;
    overflow: hidden;
    height: clamp(240px, 24vw, 332px);
    margin-bottom: 18px;
    border-radius: 24px;
    background: #faf7f3;
}

.site-main--editorial-archive .ls-woo-story-band .ade-story-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.site-main--editorial-archive .ls-woo-story-band .ade-story-media--logo {
    display: grid;
    place-items: center;
    background: #ff6a1a;
    padding: 32px;
}

.site-main--editorial-archive .ls-woo-story-band .ade-story-media--logo .ade-story-logo {
    width: 180px;
    max-width: 100%;
    height: auto;
    object-fit: contain;
}

.site-main--editorial-archive .ls-woo-story-band .ade-story-title {
    display: inline-flex;
    width: 100%;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding-top: 0;
    font-family: 'Marcellus', Georgia, serif;
    font-size: 16px;
    line-height: 1.3;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.site-main--editorial-archive .ls-woo-story-band .ade-story-title span:last-child {
    color: #ff6a1a;
}

.site-main--editorial-archive .ls-woo-editorial-products-heading::before,
.site-main--editorial-archive .ls-woo-editorial-products-heading::after {
    content: "";
    flex: 1 1 auto;
    height: 1px;
    background: rgba(43, 36, 31, 0.12);
}

.site-main--editorial-archive .ls-woo-card {
    position: relative;
    overflow: visible;
    border: 0;
    border-radius: 16px;
    background: transparent;
    box-shadow: none;
}

.site-main--editorial-archive .ls-woo-card:hover {
    border-color: transparent;
    background: #fcf5f0;
    box-shadow: none;
}

.site-main--editorial-archive .ls-woo-card__media {
    overflow: hidden;
    border-radius: 0;
    margin-bottom: 24px;
    background: #fff;
    transition: background-color 0.25s ease;
}

.site-main--editorial-archive .ls-woo-card__image-wrap {
    aspect-ratio: 4 / 3;
    padding: 0;
    background: #fff;
}

.site-main--editorial-archive .ls-woo-card__body {
    align-items: center;
    padding: 0 16px 28px;
    text-align: center;
}

.site-main--editorial-archive .ls-woo-card__eyebrow {
    margin: 0;
    color: #8b8b8b;
    font-size: 13px;
    letter-spacing: 0.18em;
}

.site-main--editorial-archive .ls-woo-card__title {
    min-height: 0;
    margin: 12px 0 0;
    color: #ff6a1a;
    font-family: 'Marcellus', Georgia, serif;
    font-size: 21px;
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.16;
    text-transform: uppercase;
}

.site-main--editorial-archive .ls-woo-card__title a {
    color: inherit;
}

.site-main--editorial-archive .ls-woo-card__price {
    justify-content: center;
    margin: 10px 0 0;
    color: #17120e;
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 23px;
}

.site-main--editorial-archive .ls-woo-card__price del {
    color: #999;
    font-size: 0.84em;
    opacity: 1;
}

.site-main--editorial-archive .ls-woo-card__price ins {
    background: transparent;
    color: inherit;
    text-decoration: none;
}

.site-main--editorial-archive .ls-woo-card__actions {
    display: flex;
    justify-content: center;
    margin-top: 16px;
}

.site-main--editorial-archive .ls-woo-card__actions .button {
    width: auto;
    min-width: 154px;
    min-height: 44px;
    border: 1px solid #ff6a1a;
    border-radius: 999px;
    background: transparent;
    color: #ff6a1a;
    font-size: 11px;
    letter-spacing: 0.1em;
    box-shadow: none;
    transition: color 0.22s ease, background-color 0.22s ease;
}

.site-main--editorial-archive .ls-woo-card__actions .button:hover,
.site-main--editorial-archive .ls-woo-card__actions .button:focus-visible {
    background: #ff6a1a;
    color: #fff;
}

/* Match the ADE selected-piece cards while keeping WooCommerce purchase states intact. */
.site-main--woocommerce.site-main--editorial-archive .woocommerce ul.products li.product.ls-woo-card {
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.site-main--woocommerce.site-main--editorial-archive .woocommerce ul.products li.product.ls-woo-card:hover {
    transform: none;
    border-color: transparent;
    box-shadow: none;
}

.site-main--woocommerce.site-main--editorial-archive .ls-woo-card__badge {
    top: 14px;
    left: 14px;
    min-width: 0;
    padding: 0;
    border-radius: 0;
    background: transparent;
    color: #ff6a1a;
    font-family: 'Marcellus', Georgia, serif;
    font-size: 11px;
    letter-spacing: 0.12em;
}

.site-main--woocommerce.site-main--editorial-archive .ls-woo-card__favorite {
    position: absolute;
    top: 12px;
    right: 12px;
    z-index: 5;
    display: inline-flex;
    width: 28px;
    height: 28px;
    min-width: 28px;
    min-height: 28px;
    align-items: center;
    justify-content: center;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: #fff;
    color: #ff6a1a;
    cursor: pointer;
}

.site-main--woocommerce.site-main--editorial-archive .ls-woo-card__favorite .ls-pdp__wishlist-icon {
    position: relative;
    display: block;
    width: 16px;
    height: 16px;
}

.site-main--woocommerce.site-main--editorial-archive .ls-woo-card__favorite .ls-pdp__wishlist-icon i {
    position: absolute;
    inset: 0;
    display: block;
    width: 16px;
    height: 16px;
    font-size: 16px;
    line-height: 16px;
}

.site-main--woocommerce.site-main--editorial-archive .ls-woo-card__favorite .fa-regular::before {
    content: "";
    display: block;
    width: 16px;
    height: 16px;
    background: currentColor;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M21.2 5.7a4.9 4.9 0 0 0-6.9 0L12 8l-2.3-2.3a4.9 4.9 0 0 0-6.9 6.9l2.3 2.3L12 21.8l6.9-6.9 2.3-2.3a4.9 4.9 0 0 0 0-6.9Z' fill='none' stroke='black' stroke-width='1.65' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M21.2 5.7a4.9 4.9 0 0 0-6.9 0L12 8l-2.3-2.3a4.9 4.9 0 0 0-6.9 6.9l2.3 2.3L12 21.8l6.9-6.9 2.3-2.3a4.9 4.9 0 0 0 0-6.9Z' fill='none' stroke='black' stroke-width='1.65' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
}

.site-main--woocommerce.site-main--editorial-archive .ls-woo-card__favorite .fa-solid {
    opacity: 0;
}

.site-main--woocommerce.site-main--editorial-archive .ls-woo-card__favorite.is-active .fa-regular {
    opacity: 0;
}

.site-main--woocommerce.site-main--editorial-archive .ls-woo-card__favorite.is-active .fa-solid {
    opacity: 1;
}

.site-main--woocommerce.site-main--editorial-archive .ls-woo-card__image {
    object-fit: contain;
    transition: opacity 0.25s ease;
}

.site-main--woocommerce.site-main--editorial-archive .ls-woo-card__image-scene {
    position: absolute;
    inset: 0;
    opacity: 0;
    object-fit: cover;
}

.site-main--woocommerce.site-main--editorial-archive .ls-woo-card:hover .ls-woo-card__media,
.site-main--woocommerce.site-main--editorial-archive .ls-woo-card:hover .ls-woo-card__image-wrap,
.site-main--woocommerce.site-main--editorial-archive .ls-woo-card:focus-within .ls-woo-card__media,
.site-main--woocommerce.site-main--editorial-archive .ls-woo-card:focus-within .ls-woo-card__image-wrap {
    background: #fcf5f0;
}

.site-main--woocommerce.site-main--editorial-archive .ls-woo-card:hover .ls-woo-card__image.product-image-default,
.site-main--woocommerce.site-main--editorial-archive .ls-woo-card:focus-within .ls-woo-card__image.product-image-default {
    opacity: 0;
}

.site-main--woocommerce.site-main--editorial-archive .ls-woo-card:hover .ls-woo-card__image-scene,
.site-main--woocommerce.site-main--editorial-archive .ls-woo-card:focus-within .ls-woo-card__image-scene {
    opacity: 1;
}

.site-main--woocommerce.site-main--editorial-archive .ls-woo-card__body {
    align-items: center;
    text-align: center;
}

.site-main--woocommerce.site-main--editorial-archive .ls-woo-card__actions .button {
    min-height: 44px !important;
    padding: 12px 18px !important;
    border: 1px solid #ff6a1a !important;
    border-radius: 999px !important;
    background: transparent !important;
    color: #ff6a1a !important;
    box-shadow: none !important;
}

.site-main--woocommerce.site-main--editorial-archive .ls-woo-card__actions .button:hover,
.site-main--woocommerce.site-main--editorial-archive .ls-woo-card__actions .button:focus-visible {
    background: #ff6a1a !important;
    color: #fff !important;
}

.ls-woo-category-nav {
    margin: 12px 0 44px;
}

.ls-woo-category-nav__title {
    margin: 0 0 20px;
    color: #141414;
    font-size: clamp(22px, 2.4vw, 30px);
    font-weight: 500;
    line-height: 1.15;
}

.ls-woo-category-nav__grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr));
    gap: 20px;
}

.ls-woo-category-nav__card {
    display: block;
    min-width: 0;
    color: #17120e;
    text-decoration: none;
}

.ls-woo-category-nav__image {
    display: block;
    overflow: hidden;
    aspect-ratio: 3 / 2;
    background: #f5f5f4;
}

.ls-woo-category-nav__image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.35s ease;
}

.ls-woo-category-nav__card:hover .ls-woo-category-nav__image img,
.ls-woo-category-nav__card:focus-visible .ls-woo-category-nav__image img {
    transform: scale(1.03);
}

.ls-woo-category-nav__label {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    padding-top: 13px;
    color: #17120e;
    font-size: 12px;
    letter-spacing: 0.12em;
    line-height: 1.4;
    text-align: center;
    text-transform: uppercase;
}

.ls-woo-category-nav__label span:last-child {
    color: #ff6a1a;
}

.ls-woo-category-nav__card:hover .ls-woo-category-nav__label,
.ls-woo-category-nav__card:focus-visible .ls-woo-category-nav__label {
    color: #ff6a1a;
}

@media (prefers-reduced-motion: reduce) {
    .ls-woo-category-nav__image img {
        transition: none;
    }
}

.ls-woo-page-hero {
    padding: 28px 0 20px;
}

.ls-woo-page-hero__eyebrow {
    margin: 0 0 12px;
    color: #FF6A1A;
    font-size: 12px;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.ls-woo-page-hero__title {
    margin: 0;
    font-size: clamp(32px, 4vw, 54px);
    line-height: 1.04;
    font-weight: 600;
    color: #141414;
}

.ls-woo-page-hero__desc {
    max-width: 720px;
    margin: 18px 0 0;
    color: #666;
    font-size: 16px;
    line-height: 1.75;
}

.ls-woo-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 4px 0 32px;
}

.ls-search-page-intro {
    margin-top: 120px;
    margin-bottom: 0;
    padding: 0;
}

.ls-search-page-intro__title {
    margin: 0 0 18px;
    text-align: center;
    font-family: 'Marcellus', serif;
    font-size: clamp(38px, 4.2vw, 56px);
    line-height: 1;
    color: #141414;
}

.ls-search-page-intro__form {
    position: relative;
    width: min(100%, 540px);
    margin: 0 auto;
}

.ls-search-page-intro__form input[type="search"] {
    width: 100%;
    height: 52px;
    padding: 0 78px 0 18px;
    border: 1px solid #ebe6e1;
    border-radius: 999px;
    background: #fff;
    color: #141414;
    font-size: 15px;
    letter-spacing: 0.01em;
}

.ls-search-page-intro__form input[type="search"]:focus {
    outline: none;
    border-color: rgba(255, 106, 26, 0.56);
}

.ls-search-page-intro__clear {
    position: absolute;
    top: 50%;
    right: 16px;
    transform: translateY(-50%);
    border: 0;
    background: transparent;
    padding: 0;
    color: #8b8178;
    text-decoration: none;
    font-size: 11px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    cursor: pointer;
}

.ls-search-page-intro__clear:hover,
.ls-search-page-intro__clear:focus-visible {
    color: #FF6A1A;
    background: transparent;
    box-shadow: none;
    outline: none;
}

.ls-search-page {
    margin-top: 40px;
    padding-top: 0;
    padding-bottom: 80px;
}

.ls-search-page__layout {
    display: block;
    align-items: start;
}

.ls-search-price-input {
    position: relative;
    display: block;
}

.ls-search-price-input__currency {
    position: absolute;
    top: 50%;
    left: 14px;
    transform: translateY(-50%);
    color: #8b8178;
    font-size: 14px;
    line-height: 1;
    pointer-events: none;
}

.ls-search-page__content {
    min-width: 0;
}

.ls-search-results__topbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding-bottom: 26px;
}

.ls-search-results__count {
    margin: 0;
    color: #4e4a45;
    font-size: 12px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.ls-search-results__sort {
    margin-left: auto;
    display: flex;
    align-items: center;
    gap: 10px;
}

.ls-search-results__sort label {
    color: #141414;
    font-size: 12px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.ls-search-results__sort select {
    min-width: 180px;
    height: 40px;
    padding: 0 32px 0 0;
    border: 0;
    background-color: transparent;
    color: #171717;
    font-size: 13px;
    letter-spacing: 0.02em;
    box-shadow: none;
    appearance: none;
    background-image: linear-gradient(45deg, transparent 50%, #171717 50%), linear-gradient(135deg, #171717 50%, transparent 50%);
    background-position: calc(100% - 14px) calc(50% - 3px), calc(100% - 8px) calc(50% - 3px);
    background-size: 6px 6px, 6px 6px;
    background-repeat: no-repeat;
}

.ls-search-filters {
    position: fixed;
    inset: 0;
    z-index: 120;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 0.25s ease, visibility 0.25s ease;
}

.ls-search-filters.is-active {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

.ls-search-filters__backdrop {
    position: absolute;
    inset: 0;
    border: 0;
    background: rgba(20, 20, 20, 0.18);
}

.ls-search-filters__panel {
    position: absolute;
    top: 0;
    left: 0;
    width: min(420px, 100vw);
    height: 100%;
    padding: 28px 24px;
    background: #fff;
    transform: translateX(-100%);
    transition: transform 0.28s ease;
    overflow-y: auto;
}

.ls-search-filters.is-active .ls-search-filters__panel {
    transform: translateX(0);
}

.ls-search-filters__head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 24px;
}

.ls-search-filters__title {
    margin: 0;
    font-family: 'Marcellus', serif;
    font-size: 32px;
    color: #141414;
}

.ls-search-filters__close {
    width: 42px;
    height: 42px;
    border: 0;
    border-radius: 999px;
    background: #f7f3ef;
    color: #141414;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.ls-search-filters__form {
    display: flex;
    flex-direction: column;
    gap: 28px;
}

.ls-search-filters__section h3 {
    margin: 0 0 14px;
    font-size: 12px;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: #8b8178;
}

.ls-search-filters__options {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.ls-search-filters__check {
    display: flex;
    align-items: center;
    gap: 10px;
    color: #141414;
    font-size: 14px;
    line-height: 1.5;
}

.ls-search-filters__price {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.ls-search-filters__price label {
    display: flex;
    flex-direction: column;
    gap: 8px;
    color: #8b8178;
    font-size: 11px;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.ls-search-filters__price input {
    height: 46px;
    padding: 0 14px 0 32px;
    border: 1px solid #ddd;
    border-radius: 14px;
    background: #fff;
    color: #141414;
    font-size: 14px;
}

.ls-search-filters__actions {
    display: flex;
    align-items: center;
    gap: 12px;
    padding-top: 8px;
}

.ls-search-filters__actions button,
.ls-search-filters__actions a {
    min-height: 46px;
    padding: 0 22px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    font-size: 12px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.ls-search-filters__actions button {
    border: 0;
    background: #FF6A1A;
    color: #fff;
    cursor: pointer;
}

.ls-search-filters__actions button:hover,
.ls-search-filters__actions button:focus-visible {
    background: #FF6A1A;
    color: #fff;
    outline: none;
}

.ls-search-filters__actions a {
    border: 1px solid #ddd;
    color: #141414;
}

.ls-search-results-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 28px 20px;
}

.ls-search-empty {
    padding: 52px 0 8px;
    text-align: center;
}

.ls-search-empty__eyebrow {
    margin: 0 0 10px;
    color: #8b8178;
    font-size: 11px;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.ls-search-empty__title {
    margin: 0;
    font-family: 'Marcellus', serif;
    font-size: clamp(32px, 4vw, 48px);
    line-height: 1.05;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #141414;
}

.ls-search-empty__copy {
    max-width: 620px;
    margin: 16px auto 0;
    color: #69625b;
    font-size: 15px;
    line-height: 1.8;
}

.ls-search-empty__links {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 28px;
}

.ls-search-empty__links a {
    min-height: 42px;
    padding: 0 18px;
    border: 1px solid #ddd;
    border-radius: 999px;
    color: #141414;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    font-size: 12px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.ls-search-empty__recommend {
    margin-top: 44px;
    text-align: left;
}

.ls-search-empty__recommend-title {
    margin: 0 0 20px;
    text-align: center;
    color: #8b8178;
    font-size: 11px;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.ls-woo-toolbar::after {
    content: "";
    display: block;
    clear: both;
}

.ls-woo-toolbar .woocommerce-result-count {
    margin: 0;
    color: #777;
    font-size: 12px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.ls-woo-toolbar .woocommerce-ordering {
    margin: 0 0 0 auto;
}

.site-main--shop .woocommerce ul.products {
    gap: 32px 24px;
}

.ls-woo-card {
    display: flex;
    flex-direction: column;
    min-height: 100%;
    background: #fff;
    border: 1px solid #f0ece8;
    border-radius: 24px;
    overflow: hidden;
    transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

.ls-woo-card:hover {
    transform: translateY(-3px);
    border-color: #e7dfd8;
    box-shadow: 0 20px 44px rgba(20, 20, 20, 0.08);
}

.ls-woo-card__media {
    position: relative;
    display: block;
    color: inherit;
    text-decoration: none;
    background: #faf8f6;
}

.ls-woo-card__badge {
    position: absolute;
    top: 16px;
    left: 16px;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 60px;
    padding: 6px 12px;
    border-radius: 999px;
    background: #FF6A1A;
    color: #fff;
    font-size: 12px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.ls-woo-card__image-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    aspect-ratio: 4 / 3;
    padding: 34px;
    background: linear-gradient(180deg, #faf8f6 0%, #f7f3ef 100%);
}

.ls-woo-card__image {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.ls-woo-card__body {
    display: flex;
    flex: 1;
    flex-direction: column;
    align-items: flex-start;
    padding: 22px 22px 22px;
}

.ls-woo-card__eyebrow {
    margin: 0 0 12px;
    color: #777;
    font-size: 10px;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.ls-woo-card__title {
    margin: 0 0 12px;
    min-height: 2.8em;
    font-size: 18px;
    line-height: 1.4;
    font-weight: 500;
    color: #171717;
}

.ls-woo-card__title a {
    color: inherit;
    text-decoration: none;
}

.ls-woo-card__price {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 6px 10px;
    min-height: 32px;
    margin-bottom: 18px;
    color: #171717;
    font-size: 17px;
}

.ls-woo-card__price .amount {
    white-space: nowrap;
}

.ls-woo-card__price del {
    color: #999;
    opacity: 1;
}

.ls-woo-card__price ins {
    background: transparent;
    color: #171717;
    text-decoration: none;
}

.ls-woo-card__actions {
    margin-top: auto;
    width: 100%;
}

.ls-woo-card__actions .button {
    display: inline-flex;
    width: 100%;
    min-height: 50px;
    align-items: center;
    justify-content: center;
    padding: 14px 18px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.ls-woo-card__actions .added_to_cart {
    display: inline-flex;
    margin-top: 10px;
    color: #FF6A1A;
    font-size: 13px;
    text-decoration: none;
}

.site-main--woocommerce .woocommerce .woocommerce-ordering select.orderby {
    min-width: 240px;
    height: 46px;
    padding: 0 42px 0 18px;
    border: 1px solid #e2dbd4;
    border-radius: 999px;
    background: #fff;
    color: #171717;
    box-shadow: none;
    appearance: none;
    background-image: linear-gradient(45deg, transparent 50%, #171717 50%), linear-gradient(135deg, #171717 50%, transparent 50%);
    background-position: calc(100% - 22px) calc(50% - 3px), calc(100% - 16px) calc(50% - 3px);
    background-size: 6px 6px, 6px 6px;
    background-repeat: no-repeat;
}

.site-main--woocommerce .woocommerce nav.woocommerce-pagination {
    margin-top: 40px;
}

.site-main--woocommerce .woocommerce nav.woocommerce-pagination ul {
    display: flex;
    gap: 10px;
    border: 0;
}

.site-main--woocommerce .woocommerce nav.woocommerce-pagination ul li {
    border: 0;
}

.site-main--woocommerce .woocommerce nav.woocommerce-pagination ul li span,
.site-main--woocommerce .woocommerce nav.woocommerce-pagination ul li a {
    min-width: 42px;
    height: 42px;
    border: 1px solid #ddd;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 14px;
    color: #171717;
}

.site-main--woocommerce .woocommerce span.onsale,
.site-main--woocommerce .woocommerce a.button,
.site-main--woocommerce .woocommerce button.button,
.site-main--woocommerce .woocommerce input.button,
.site-main--woocommerce .woocommerce #respond input#submit,
.site-main--woocommerce .woocommerce a.button.alt,
.site-main--woocommerce .woocommerce button.button.alt,
.site-main--woocommerce .woocommerce input.button.alt {
    background: #FF6A1A;
    color: #fff;
    border-radius: 999px;
    border: 0;
}

.site-main--woocommerce .woocommerce table.shop_table,
.site-main--woocommerce .woocommerce form.checkout,
.site-main--woocommerce .woocommerce-account .woocommerce-MyAccount-navigation,
.site-main--woocommerce .woocommerce-account .woocommerce-MyAccount-content {
    width: 100%;
}

.site-main--woocommerce .wc-block-cart,
.site-main--woocommerce .wc-block-checkout,
.site-main--woocommerce .woocommerce-account .woocommerce {
    color: #171717;
}

.site-main--woocommerce .wc-block-components-sidebar-layout {
    align-items: flex-start;
    gap: 32px;
}

.site-main--woocommerce .wc-block-cart__main,
.site-main--woocommerce .wc-block-checkout__main {
    display: grid;
    gap: 22px;
}

.site-main--woocommerce .wc-block-cart__main > *,
.site-main--woocommerce .wc-block-checkout__main > * {
    background: #fafafa;
    border-radius: 24px;
    padding: 26px 28px;
}

.site-main--woocommerce .wc-block-cart .wc-block-components-sidebar,
.site-main--woocommerce .wc-block-checkout .wc-block-components-sidebar,
.site-main--woocommerce .woocommerce-account .woocommerce-MyAccount-navigation,
.site-main--woocommerce .woocommerce-account .woocommerce-MyAccount-content {
    padding: 26px 28px;
    background: #fafafa;
    border-radius: 24px;
}

.site-main--woocommerce .wc-block-components-title,
.site-main--woocommerce .wc-block-components-checkout-step__heading h2,
.site-main--woocommerce .wc-block-cart h2,
.site-main--woocommerce .woocommerce-account .woocommerce-MyAccount-content h2,
.site-main--woocommerce .woocommerce-account .woocommerce-MyAccount-content h3 {
    margin-top: 0;
    color: #171717;
}

.site-main--woocommerce .wc-block-components-main,
.site-main--woocommerce .wc-block-checkout__main,
.site-main--woocommerce .wc-block-cart__main {
    min-width: 0;
}

.site-main--woocommerce .wc-block-cart__sidebar,
.site-main--woocommerce .wc-block-checkout__sidebar {
    display: grid;
    gap: 18px;
    position: sticky;
    top: 132px;
}

.site-main--woocommerce .wc-block-cart-item__wrap,
.site-main--woocommerce .wc-block-components-order-summary-item,
.site-main--woocommerce .wc-block-components-checkout-step,
.site-main--woocommerce .woocommerce-account .woocommerce-MyAccount-content > *,
.site-main--woocommerce .woocommerce-account .woocommerce-MyAccount-navigation ul {
    border-color: #ececec;
}

.site-main--woocommerce .wc-block-components-product-name,
.site-main--woocommerce .wc-block-components-order-summary-item__description .wc-block-components-product-name,
.site-main--woocommerce .wc-block-components-checkout-step__heading .wc-block-components-title,
.site-main--woocommerce .woocommerce-account .woocommerce-MyAccount-navigation a {
    color: #171717;
    text-decoration: none;
}

.site-main--woocommerce .wc-block-components-product-name:hover,
.site-main--woocommerce .woocommerce-account .woocommerce-MyAccount-navigation a:hover,
.site-main--woocommerce .woocommerce-account .woocommerce-MyAccount-navigation .is-active a {
    color: #FF6A1A;
}

.site-main--woocommerce .wc-block-cart__main .wc-block-components-title,
.site-main--woocommerce .wc-block-checkout__main .wc-block-components-checkout-step__heading h2,
.site-main--woocommerce .wc-block-checkout__sidebar .wc-block-components-title,
.site-main--woocommerce .wc-block-cart__sidebar .wc-block-components-title {
    position: relative;
    padding-left: 16px;
    font-size: 24px;
    line-height: 1.2;
}

.site-main--woocommerce .wc-block-cart__main .wc-block-components-title::before,
.site-main--woocommerce .wc-block-checkout__main .wc-block-components-checkout-step__heading h2::before,
.site-main--woocommerce .wc-block-checkout__sidebar .wc-block-components-title::before,
.site-main--woocommerce .wc-block-cart__sidebar .wc-block-components-title::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.2em;
    width: 4px;
    height: 0.95em;
    border-radius: 999px;
    background: #FF6A1A;
}

.site-main--woocommerce .wc-block-components-button,
.site-main--woocommerce .wc-block-components-checkout-place-order-button,
.site-main--woocommerce .wc-block-cart__submit-button,
.site-main--woocommerce .wc-block-components-totals-coupon__button,
.site-main--woocommerce .woocommerce-account .button,
.site-main--woocommerce .woocommerce-account button.button {
    min-height: 48px;
    border-radius: 999px;
    font-size: 13px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.site-main--woocommerce .wc-block-components-button:not(.is-link),
.site-main--woocommerce .wc-block-components-checkout-place-order-button,
.site-main--woocommerce .wc-block-cart__submit-button,
.site-main--woocommerce .woocommerce-account .button,
.site-main--woocommerce .woocommerce-account button.button {
    background: #FF6A1A;
    color: #fff;
    box-shadow: 0 14px 28px rgba(255, 106, 26, 0.18);
}

.site-main--woocommerce .wc-block-components-button.is-link,
.site-main--woocommerce .wc-block-components-totals-coupon-link,
.site-main--woocommerce .woocommerce-account .lost_password a,
.site-main--woocommerce .woocommerce-account .woocommerce-MyAccount-content a {
    color: #FF6A1A;
}

.site-main--woocommerce .wc-block-components-form .wc-block-components-text-input input,
.site-main--woocommerce .wc-block-components-form .wc-block-components-combobox-control input,
.site-main--woocommerce .wc-block-components-form .wc-block-components-textarea,
.site-main--woocommerce .wc-block-components-form select,
.site-main--woocommerce .woocommerce-account input.input-text,
.site-main--woocommerce .woocommerce-account select,
.site-main--woocommerce .woocommerce-account textarea {
    min-height: 52px;
    border: 1px solid #ddd;
    border-radius: 14px;
    background: #fff;
    padding-inline: 16px;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.site-main--woocommerce .wc-block-components-form .wc-block-components-text-input input:focus,
.site-main--woocommerce .wc-block-components-form .wc-block-components-combobox-control input:focus,
.site-main--woocommerce .wc-block-components-form .wc-block-components-textarea:focus,
.site-main--woocommerce .wc-block-components-form select:focus,
.site-main--woocommerce .woocommerce-account input.input-text:focus,
.site-main--woocommerce .woocommerce-account select:focus,
.site-main--woocommerce .woocommerce-account textarea:focus {
    outline: none;
    border-color: rgba(255, 106, 26, 0.55);
    box-shadow: 0 0 0 4px rgba(255, 106, 26, 0.08);
}

.site-main--woocommerce .wc-block-components-form .wc-block-components-text-input label,
.site-main--woocommerce .wc-block-components-form .wc-block-components-combobox .wc-block-components-combobox-control label,
.site-main--woocommerce .wc-block-components-form .wc-block-components-checkbox label {
    color: #666;
    letter-spacing: 0.02em;
}

.site-main--woocommerce .wc-block-components-form .wc-block-components-textarea {
    min-height: 132px;
    padding: 16px;
}

.site-main--woocommerce .wc-block-components-quantity-selector {
    border-radius: 999px;
    border: 1px solid #ddd;
    background: #fff;
}

.site-main--woocommerce .wc-block-components-order-summary,
.site-main--woocommerce .wc-block-cart__totals-title,
.site-main--woocommerce .wc-block-checkout__sidebar .wc-block-components-title {
    color: #171717;
}

.site-main--woocommerce .wc-block-components-totals-wrapper,
.site-main--woocommerce .wc-block-components-order-summary .wc-block-components-panel,
.site-main--woocommerce .wc-block-components-checkout-step,
.site-main--woocommerce .woocommerce-account .woocommerce-MyAccount-content > * {
    background: #fff;
    border-radius: 20px;
    border: 1px solid #f0f0f0;
}

.site-main--woocommerce .wc-block-components-checkout-step,
.site-main--woocommerce .woocommerce-account .woocommerce-MyAccount-content > * {
    padding: 22px 24px;
}

.site-main--woocommerce .wc-block-checkout__main .wc-block-components-checkout-step {
    gap: 18px;
}

.site-main--woocommerce .wc-block-components-checkout-step__description,
.site-main--woocommerce .wc-block-checkout__main .wc-block-components-form .wc-block-components-address-form {
    margin-top: 18px;
}

.site-main--woocommerce .wc-block-checkout__main .wc-block-components-address-form,
.site-main--woocommerce .wc-block-checkout__main .wc-block-checkout__contact-fields .wc-block-components-text-input {
    display: grid;
    gap: 14px;
}

.site-main--woocommerce .wc-block-cart-items,
.site-main--woocommerce .wc-block-components-order-summary {
    background: #fff;
    border: 1px solid #f0f0f0;
    border-radius: 20px;
}

.site-main--woocommerce .wc-block-cart-items {
    padding: 4px 22px;
}

.site-main--woocommerce .wc-block-cart-items__row {
    padding: 24px 0;
}

.site-main--woocommerce .wc-block-cart-items__row + .wc-block-cart-items__row {
    border-top: 1px solid #f2f2f2;
}

.site-main--woocommerce .wc-block-cart-item__wrap {
    gap: 16px;
}

.site-main--woocommerce .wc-block-components-product-metadata,
.site-main--woocommerce .wc-block-components-product-price {
    color: #666;
}

.site-main--woocommerce .wc-block-components-totals-wrapper {
    padding: 18px 20px;
}

.site-main--woocommerce .wc-block-components-totals-wrapper + .wc-block-components-totals-wrapper {
    margin-top: 12px;
}

.site-main--woocommerce .wc-block-components-order-summary .wc-block-components-panel {
    padding: 0;
    overflow: hidden;
}

.site-main--woocommerce .wc-block-components-totals-coupon__form,
.site-main--woocommerce .wc-block-components-order-summary .wc-block-components-panel__content,
.site-main--woocommerce .wc-block-components-order-summary__content {
    padding: 18px 20px;
}

.site-main--woocommerce .wc-block-cart__submit,
.site-main--woocommerce .wc-block-checkout__actions_row {
    padding-top: 12px;
}

.site-main--woocommerce .wc-block-cart__submit-button,
.site-main--woocommerce .wc-block-components-checkout-place-order-button {
    min-height: 54px;
}

.site-main--woocommerce .wc-block-checkout__payment-method .wc-block-components-notice-banner.is-error {
    margin-top: 14px;
    border: 0;
    border-radius: 16px;
    background: #fff4ed;
    color: #8d3f10;
    padding: 16px 18px;
}

.site-main--woocommerce .wc-block-checkout__payment-method .wc-block-components-notice-banner.is-error::before {
    color: #FF6A1A;
}

.site-main--woocommerce .wc-block-checkout__payment-method .wc-block-components-radio-control-accordion-option {
    border-color: #ececec;
}

.site-main--woocommerce .wc-block-checkout__payment-method .wc-block-checkout__terms {
    margin-top: 18px;
    padding-top: 18px;
    border-top: 1px solid #f1f1f1;
    color: #666;
    line-height: 1.7;
}

.site-main--woocommerce .wc-block-checkout .wc-block-components-sidebar-layout {
    gap: 36px;
}

.site-main--woocommerce .wc-block-checkout__main > *,
.site-main--woocommerce .wc-block-checkout__sidebar > *,
.site-main--woocommerce .wp-block-woocommerce-checkout-order-summary-block {
    border: 1px solid #f0ece8;
    border-radius: 28px;
    background: #faf8f6;
}

.site-main--woocommerce .wc-block-checkout__main > * {
    padding: 28px 30px;
}

.site-main--woocommerce .wc-block-checkout .wp-block-woocommerce-checkout-express-payment-block {
    padding: 24px 28px;
}

.site-main--woocommerce .wc-block-checkout .wc-block-components-express-payment {
    gap: 14px;
}

.site-main--woocommerce .wc-block-checkout .wc-block-components-checkout-step {
    border: 1px solid #efe7df;
    border-radius: 22px;
    background: #fff;
    padding: 24px 24px 22px;
}

.site-main--woocommerce .wc-block-checkout .wc-block-components-checkout-step + .wc-block-components-checkout-step {
    margin-top: 14px;
}

.site-main--woocommerce .wc-block-checkout .wc-block-components-checkout-step__heading {
    margin-bottom: 0;
}

.site-main--woocommerce .wc-block-checkout .wc-block-components-title,
.site-main--woocommerce .wc-block-checkout .wc-block-components-checkout-step__heading h2 {
    font-size: 26px;
    line-height: 1.15;
}

.site-main--woocommerce .wc-block-checkout .wc-block-components-text-input input,
.site-main--woocommerce .wc-block-checkout .wc-block-components-combobox-control input,
.site-main--woocommerce .wc-block-checkout .wc-block-components-textarea,
.site-main--woocommerce .wc-block-checkout select {
    border-color: #e2dbd4;
    border-radius: 16px;
    background: #fff;
}

.site-main--woocommerce .wc-block-checkout .wc-block-components-text-input label,
.site-main--woocommerce .wc-block-checkout .wc-block-components-combobox .wc-block-components-combobox-control label,
.site-main--woocommerce .wc-block-checkout .wc-block-components-checkbox label {
    color: #7a736c;
    letter-spacing: 0.03em;
}

.site-main--woocommerce .wc-block-checkout .wc-block-components-address-form,
.site-main--woocommerce .wc-block-checkout .wc-block-checkout__contact-fields {
    gap: 16px;
}

.site-main--woocommerce .wc-block-checkout__payment-method .wc-block-components-radio-control-accordion-option,
.site-main--woocommerce .wc-block-checkout__payment-method .wc-block-components-radio-control__option {
    border: 1px solid #ece4dc;
    border-radius: 18px;
    background: #fff;
}

.site-main--woocommerce .wc-block-checkout__payment-method .wc-block-components-radio-control-accordion-content {
    padding-inline: 18px;
}

.site-main--woocommerce .wc-block-checkout__payment-method .wc-block-components-payment-method-icons {
    gap: 8px;
}

.site-main--woocommerce .wc-block-checkout__sidebar {
    gap: 20px;
}

.site-main--woocommerce .wc-block-checkout__sidebar > .wp-block-woocommerce-checkout-totals-block,
.site-main--woocommerce .wc-block-checkout__sidebar .wp-block-woocommerce-checkout-order-summary-block {
    border: 1px solid #f0ece8;
    border-radius: 28px;
    background: #fffdfa;
    padding: 24px 24px 22px;
}

.site-main--woocommerce .wc-block-checkout__sidebar .wc-block-components-order-summary {
    border: 0;
    background: transparent;
}

.site-main--woocommerce .wc-block-checkout__sidebar .wc-block-components-order-summary-item__description .wc-block-components-product-name {
    font-size: 15px;
    line-height: 1.55;
}

.site-main--woocommerce .wc-block-checkout__sidebar .wc-block-components-order-summary-item__quantity {
    display: inline-flex;
    align-items: center;
    min-height: 22px;
    padding: 0 8px;
    border-radius: 999px;
    background: rgba(255, 106, 26, 0.08);
    color: #FF6A1A;
    font-size: 12px;
}

.site-main--woocommerce .wc-block-checkout__sidebar .wc-block-components-totals-item,
.site-main--woocommerce .wc-block-checkout__sidebar .wc-block-components-totals-footer-item {
    color: #171717;
}

.site-main--woocommerce .wc-block-checkout__actions_row {
    padding-top: 18px;
}

.site-main--woocommerce .wc-block-components-checkout-place-order-button {
    min-height: 56px;
    font-weight: 600;
    letter-spacing: 0.12em;
    box-shadow: 0 18px 34px rgba(255, 106, 26, 0.2);
}

.site-main--woocommerce .wc-block-checkout__sidebar .wc-block-components-order-summary {
    padding: 0;
    overflow: hidden;
}

.site-main--woocommerce .wc-block-checkout__sidebar .wc-block-components-order-summary-item,
.site-main--woocommerce .wc-block-checkout__sidebar .wc-block-components-order-summary-item__individual-prices {
    border-color: #f1f1f1;
}

.site-main--woocommerce .wc-block-checkout__sidebar .wc-block-components-order-summary-item__quantity {
    color: #666;
}

.site-main--woocommerce .wc-block-checkout__sidebar .wc-block-components-totals-footer-item,
.site-main--woocommerce .wc-block-cart__sidebar .wc-block-components-totals-footer-item {
    margin-top: 14px;
    padding-top: 18px;
    border-top: 1px solid #f1f1f1;
    font-size: 18px;
    font-weight: 600;
}

.site-main--woocommerce .wc-block-cart__sidebar > *,
.site-main--woocommerce .wc-block-checkout__sidebar > * {
    background: #fff;
    border: 1px solid #f0f0f0;
    border-radius: 20px;
    padding: 22px 24px;
}

.site-main--woocommerce .wc-block-cart__sidebar > .wp-block-woocommerce-cart-order-summary-block,
.site-main--woocommerce .wc-block-checkout__sidebar > .wp-block-woocommerce-checkout-totals-block {
    background: transparent;
    border: 0;
    border-radius: 0;
    padding: 0;
}

.site-main--woocommerce .wc-block-checkout__sidebar .wp-block-woocommerce-checkout-order-summary-block,
.site-main--woocommerce .wc-block-cart__sidebar .wp-block-woocommerce-cart-order-summary-block {
    background: #fff;
    border: 1px solid #f0f0f0;
    border-radius: 20px;
    padding: 22px 24px;
}

.site-main--woocommerce .woocommerce-account .woocommerce {
    display: grid;
    grid-template-columns: 280px minmax(0, 1fr);
    gap: 24px;
}

.site-main--woocommerce .woocommerce-account #customer_login {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
}

.site-main--woocommerce .woocommerce-account #customer_login > div {
    min-width: 0;
}

.site-main--woocommerce .woocommerce-account #customer_login h2,
.site-main--woocommerce .woocommerce-account .woocommerce-MyAccount-content h2,
.site-main--woocommerce .woocommerce-account .woocommerce-MyAccount-content h3 {
    position: relative;
    margin: 0 0 22px;
    padding-left: 16px;
    font-size: 28px;
    line-height: 1.18;
    font-weight: 600;
}

.site-main--woocommerce .woocommerce-account #customer_login h2::before,
.site-main--woocommerce .woocommerce-account .woocommerce-MyAccount-content h2::before,
.site-main--woocommerce .woocommerce-account .woocommerce-MyAccount-content h3::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.2em;
    width: 4px;
    height: 0.95em;
    border-radius: 999px;
    background: #FF6A1A;
}

.site-main--woocommerce .woocommerce-account .woocommerce-form-login,
.site-main--woocommerce .woocommerce-account .woocommerce-form-register {
    display: grid;
    gap: 18px;
    height: 100%;
    margin: 0;
    padding: 30px;
    border: 1px solid #f0ece8;
    border-radius: 28px;
    background: #faf8f6;
}

.site-main--woocommerce .woocommerce-account .woocommerce-form-login .form-row,
.site-main--woocommerce .woocommerce-account .woocommerce-form-register .form-row {
    margin: 0;
}

.site-main--woocommerce .woocommerce-account label {
    display: inline-block;
    margin-bottom: 8px;
    color: #6d655f;
    font-size: 13px;
    letter-spacing: 0.03em;
}

.site-main--woocommerce .woocommerce-account .woocommerce-form-login .input-text,
.site-main--woocommerce .woocommerce-account .woocommerce-form-register .input-text,
.site-main--woocommerce .woocommerce-account .edit-account .input-text,
.site-main--woocommerce .woocommerce-account .edit-account textarea {
    border-color: #e2dbd4;
    border-radius: 16px;
    background: #fff;
}

.site-main--woocommerce .woocommerce-account .woocommerce-form-login .button,
.site-main--woocommerce .woocommerce-account .woocommerce-form-register .button {
    min-width: 180px;
    font-weight: 600;
    letter-spacing: 0.1em;
}

.site-main--woocommerce .woocommerce-account .woocommerce-form-login .form-row:last-child,
.site-main--woocommerce .woocommerce-account .woocommerce-form-register .form-row:last-child {
    margin-top: auto;
}

.site-main--woocommerce .woocommerce-account .woocommerce-form-login__rememberme {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin: 0;
}

.site-main--woocommerce .woocommerce-account .woocommerce-form-login__rememberme .woocommerce-form__input-checkbox {
    width: 18px;
    height: 18px;
    margin: 0;
    accent-color: #FF6A1A;
}

.site-main--woocommerce .woocommerce-account .lost_password {
    margin: 0;
}

.site-main--woocommerce .woocommerce-account .woocommerce-privacy-policy-text {
    color: #666;
    font-size: 14px;
    line-height: 1.75;
}

.site-main--woocommerce .woocommerce-account .woocommerce-MyAccount-navigation {
    border: 1px solid #f0ece8;
    border-radius: 28px;
    background: #faf8f6;
}

.site-main--woocommerce .woocommerce-account .woocommerce-MyAccount-navigation ul {
    display: grid;
    gap: 10px;
    margin: 0;
    padding: 0;
    list-style: none;
    border: 0;
}

.site-main--woocommerce .woocommerce-account .woocommerce-MyAccount-navigation li {
    margin: 0;
}

.site-main--woocommerce .woocommerce-account .woocommerce-MyAccount-navigation a {
    display: flex;
    align-items: center;
    min-height: 50px;
    padding: 0 16px;
    border: 1px solid #ece4dc;
    border-radius: 18px;
    background: #fff;
    transition: border-color 0.2s ease, color 0.2s ease, background 0.2s ease;
}

.site-main--woocommerce .woocommerce-account .woocommerce-MyAccount-navigation a:hover,
.site-main--woocommerce .woocommerce-account .woocommerce-MyAccount-navigation .is-active a {
    border-color: #FF6A1A;
    background: rgba(255, 106, 26, 0.05);
    color: #FF6A1A;
}

.site-main--woocommerce .woocommerce-account .woocommerce-MyAccount-content {
    border: 1px solid #f0ece8;
    border-radius: 28px;
    background: #fffdfa;
}

.site-main--woocommerce .woocommerce-account .woocommerce-MyAccount-content > p:first-child {
    margin-top: 0;
    color: #444;
    font-size: 16px;
    line-height: 1.85;
}

.site-main--woocommerce .woocommerce-account .woocommerce-MyAccount-content > p:last-child {
    margin-bottom: 0;
}

.site-main--woocommerce .woocommerce-account .woocommerce-MyAccount-content > * + * {
    margin-top: 18px;
}

.site-main--woocommerce .woocommerce-account .woocommerce-orders-table,
.site-main--woocommerce .woocommerce-account .woocommerce-table--order-details,
.site-main--woocommerce .woocommerce-account .woocommerce-Addresses,
.site-main--woocommerce .woocommerce-account .addresses {
    width: 100%;
}

.site-main--woocommerce .woocommerce-account .woocommerce-orders-table,
.site-main--woocommerce .woocommerce-account .woocommerce-table--order-details {
    overflow: hidden;
    border: 1px solid #efe7df;
    border-radius: 20px;
    border-collapse: separate;
    border-spacing: 0;
    background: #fff;
}

.site-main--woocommerce .woocommerce-account .woocommerce-orders-table th,
.site-main--woocommerce .woocommerce-account .woocommerce-orders-table td,
.site-main--woocommerce .woocommerce-account .woocommerce-table--order-details th,
.site-main--woocommerce .woocommerce-account .woocommerce-table--order-details td {
    padding: 16px 18px;
    border-color: #f1ebe5;
}

.site-main--woocommerce .woocommerce-account .woocommerce-orders-table thead th,
.site-main--woocommerce .woocommerce-account .woocommerce-table--order-details thead th {
    background: #faf8f6;
    color: #171717;
    font-size: 12px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.site-main--woocommerce .woocommerce-account .woocommerce-orders-table td .button,
.site-main--woocommerce .woocommerce-account .woocommerce-MyAccount-content .button {
    box-shadow: none;
}

.site-main--woocommerce .woocommerce-account .woocommerce-Address,
.site-main--woocommerce .woocommerce-account .woocommerce-address-fields,
.site-main--woocommerce .woocommerce-account .edit-account,
.site-main--woocommerce .woocommerce-account .woocommerce-order-details,
.site-main--woocommerce .woocommerce-account .woocommerce-customer-details {
    padding: 22px 24px;
    border: 1px solid #efe7df;
    border-radius: 22px;
    background: #fff;
}

.site-main--woocommerce .woocommerce-account .woocommerce-Address-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.site-main--woocommerce .woocommerce-account address {
    margin: 0;
    color: #555;
    font-style: normal;
    line-height: 1.8;
}

.site-main--woocommerce .woocommerce-account .edit-account,
.site-main--woocommerce .woocommerce-account .woocommerce-address-fields {
    display: grid;
    gap: 16px;
}

.site-main--woocommerce .woocommerce-account .edit-account fieldset {
    margin: 8px 0 0;
    padding: 18px 20px 20px;
    border: 1px solid #efe7df;
    border-radius: 18px;
}

.site-main--woocommerce .woocommerce-account .edit-account legend {
    padding: 0 8px;
    color: #171717;
    font-weight: 600;
}

.site-main--woocommerce .woocommerce-account .woocommerce-notices-wrapper:empty {
    display: none;
}

.site-main--woocommerce .woocommerce-account .woocommerce-error,
.site-main--woocommerce .woocommerce-account .woocommerce-info,
.site-main--woocommerce .woocommerce-account .woocommerce-message {
    margin: 0 0 20px;
    padding: 16px 18px;
    border: 0;
    border-radius: 18px;
    background: #fff4ed;
    color: #8d3f10;
}

.site-main--woocommerce .woocommerce-account .woocommerce-MyAccount-navigation ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.site-main--woocommerce .woocommerce-account .woocommerce-MyAccount-navigation li + li {
    margin-top: 12px;
}

.site-main--woocommerce .woocommerce-account .woocommerce-MyAccount-navigation a {
    display: block;
    padding: 12px 0;
}

.site-main--woocommerce .woocommerce-account .woocommerce-MyAccount-content > :first-child {
    margin-top: 0;
}

.site-main--woocommerce .wc-block-cart__submit,
.site-main--woocommerce .wc-block-components-sidebar-layout {
    gap: 24px;
}

.site-main--single-product .ls-woo-shell {
    width: min(1320px, 100%);
    max-width: 100%;
    padding-top: 0;
}

.ls-pdp {
    color: #171717;
}

.site-main--woocommerce .woocommerce-account .woocommerce {
    gap: 32px;
    align-items: start;
}

.site-main--woocommerce .woocommerce-account #customer_login {
    gap: 28px;
}

.site-main--woocommerce .woocommerce-account #customer_login > div {
    display: grid;
    gap: 18px;
    align-content: start;
}

.site-main--woocommerce .woocommerce-account #customer_login > div > h2 {
    margin: 0;
    padding-left: 0;
    font-size: 13px;
    line-height: 1.2;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: #7a736c;
}

.site-main--woocommerce .woocommerce-account #customer_login > div > h2::before {
    display: none;
}

.site-main--woocommerce .woocommerce-account #customer_login .woocommerce-form-login,
.site-main--woocommerce .woocommerce-account #customer_login .woocommerce-form-register {
    gap: 20px;
    padding: 34px;
    border-color: #efe7df;
    border-radius: 32px;
    background: #fff;
    box-shadow: 0 18px 48px rgba(23, 23, 23, 0.04);
}

.site-main--woocommerce .woocommerce-account #customer_login .woocommerce-form-login .form-row:last-child,
.site-main--woocommerce .woocommerce-account #customer_login .woocommerce-form-register .form-row:last-child {
    display: grid;
    gap: 14px;
}

.site-main--woocommerce .woocommerce-account #customer_login .woocommerce-form-login .button,
.site-main--woocommerce .woocommerce-account #customer_login .woocommerce-form-register .button {
    width: 100%;
    min-width: 0;
    justify-content: center;
}

.site-main--woocommerce .woocommerce-account #customer_login .woocommerce-form-login .input-text,
.site-main--woocommerce .woocommerce-account #customer_login .woocommerce-form-register .input-text {
    min-height: 54px;
    padding: 0 18px;
}

.site-main--woocommerce .woocommerce-account #customer_login .woocommerce-form-register > p:not(.form-row):not(.woocommerce-privacy-policy-text) {
    margin: -4px 0 0;
    color: #666;
    line-height: 1.8;
}

.site-main--woocommerce .woocommerce-account .woocommerce-MyAccount-navigation li a {
    display: flex;
    align-items: center;
    min-height: 52px;
    padding: 0 18px;
}

.ls-account-auth-intro {
    display: grid;
    grid-template-columns: minmax(0, 1.5fr) minmax(240px, 0.9fr);
    gap: 20px 32px;
    margin: 0 0 28px;
    padding: 32px 34px;
    border: 1px solid #efe7df;
    border-radius: 32px;
    background: linear-gradient(180deg, #fffdfa 0%, #ffffff 100%);
}

.ls-account-auth-intro__copy,
.ls-account-auth-intro__meta {
    display: grid;
    align-content: start;
    gap: 12px;
}

.ls-account-auth-intro__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin: 0;
    color: #FF6A1A;
    font-size: 12px;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.ls-account-auth-intro__title {
    margin: 0;
    font-size: clamp(34px, 4vw, 48px);
    line-height: 1.05;
}

.ls-account-auth-intro__desc,
.ls-account-auth-intro__service-label,
.ls-account-auth-intro__service-hours {
    margin: 0;
    color: #5c5752;
    line-height: 1.8;
}

.ls-account-auth-intro__service-label {
    font-size: 12px;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.ls-account-auth-intro__service-whatsapp {
    color: #171717;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 18px;
    line-height: 1.1;
    text-decoration: none;
}

.ls-account-auth-intro__service-whatsapp:hover {
    color: #FF6A1A;
}

.ls-account-auth-intro__benefits {
    display: grid;
    grid-column: 1 / -1;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
}

.ls-account-auth-intro__benefit {
    padding: 20px 22px;
    border: 1px solid #efe7df;
    border-radius: 24px;
    background: #fff;
}

.ls-account-auth-intro__benefit h3,
.ls-account-auth-intro__benefit p {
    margin: 0;
}

.ls-account-auth-intro__benefit h3 {
    margin-bottom: 8px;
    font-size: 18px;
    line-height: 1.3;
}

.ls-account-auth-intro__benefit p {
    color: #666;
    line-height: 1.75;
}

@media (max-width: 1024px) {
    .ls-woo-toolbar {
        align-items: flex-start;
        flex-direction: column;
    }

    .ls-woo-toolbar .woocommerce-ordering {
        margin-left: 0;
    }

    .site-main--woocommerce .wc-block-components-sidebar-layout {
        gap: 24px;
    }

    .site-main--woocommerce .wc-block-cart__sidebar,
    .site-main--woocommerce .wc-block-checkout__sidebar {
        position: static;
    }

    .site-main--woocommerce .woocommerce-account .woocommerce {
        grid-template-columns: 1fr;
    }

    .site-main--woocommerce .woocommerce-account #customer_login {
        grid-template-columns: 1fr;
    }

    .ls-account-auth-intro {
        grid-template-columns: 1fr;
    }

    .ls-account-auth-intro__benefits {
        grid-template-columns: 1fr;
    }

    .ls-account-wishlist__bar {
        align-items: flex-start;
        flex-direction: column;
    }

    .ls-account-wishlist__create {
        width: 100%;
        justify-content: center;
    }

    .site-main--woocommerce .woocommerce ul.products {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .site-main--woocommerce .wp-block-woocommerce-empty-cart-block .wc-block-grid__products {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .site-main--woocommerce .wc-block-checkout .wc-block-components-sidebar-layout {
        gap: 24px;
    }
}

@media (min-width: 1025px) and (max-width: 1200px) {
    .site-main--shop .woocommerce ul.products {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .site-main--woocommerce .wp-block-woocommerce-empty-cart-block .wc-block-grid__products {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 640px) {
    .ls-woo-shell {
        width: calc(100% - 32px);
        padding: 32px 0 56px;
    }

    .site-main--woocommerce .woocommerce ul.products {
        grid-template-columns: 1fr;
    }

    .ls-woo-archive-hero {
        padding: 18px 0 10px;
    }

    .ls-woo-page-hero {
        padding: 18px 0 10px;
    }

    .ls-woo-card__body {
        padding: 18px 18px 20px;
    }

    .ls-woo-card__title {
        min-height: 0;
    }

    .ls-woo-card__image-wrap {
        padding: 24px;
    }

    .ls-woo-toolbar .woocommerce-ordering,
    .site-main--woocommerce .woocommerce .woocommerce-ordering select.orderby {
        width: 100%;
    }

    .site-main--woocommerce .wc-block-cart__main > *,
    .site-main--woocommerce .wc-block-checkout__main > *,
    .site-main--woocommerce .wc-block-cart__sidebar > *,
    .site-main--woocommerce .wc-block-checkout__sidebar > *,
    .site-main--woocommerce .wc-block-cart .wc-block-components-sidebar,
    .site-main--woocommerce .wc-block-checkout .wc-block-components-sidebar,
    .site-main--woocommerce .woocommerce-account .woocommerce-MyAccount-navigation,
    .site-main--woocommerce .woocommerce-account .woocommerce-MyAccount-content,
    .site-main--woocommerce .wc-block-components-checkout-step,
    .site-main--woocommerce .woocommerce-account .woocommerce-MyAccount-content > * {
        padding: 20px;
    }

    .site-main--woocommerce .wc-block-cart-items {
        padding: 2px 18px;
    }

    .site-main--woocommerce .wc-block-cart__main .wc-block-components-title,
    .site-main--woocommerce .wc-block-checkout__main .wc-block-components-checkout-step__heading h2,
    .site-main--woocommerce .wc-block-checkout__sidebar .wc-block-components-title,
    .site-main--woocommerce .wc-block-cart__sidebar .wc-block-components-title {
        font-size: 22px;
    }

    .site-main--woocommerce .woocommerce-account #customer_login h2,
    .site-main--woocommerce .woocommerce-account .woocommerce-MyAccount-content h2,
    .site-main--woocommerce .woocommerce-account .woocommerce-MyAccount-content h3 {
        font-size: 24px;
    }

    .site-main--woocommerce .woocommerce-account #customer_login > div > h2 {
        font-size: 12px;
    }

    .site-main--woocommerce .woocommerce-account .woocommerce-form-login,
    .site-main--woocommerce .woocommerce-account .woocommerce-form-register,
    .site-main--woocommerce .woocommerce-account .woocommerce-Address,
    .site-main--woocommerce .woocommerce-account .woocommerce-address-fields,
    .site-main--woocommerce .woocommerce-account .edit-account,
    .site-main--woocommerce .woocommerce-account .woocommerce-order-details,
    .site-main--woocommerce .woocommerce-account .woocommerce-customer-details {
        padding: 20px;
    }

    .site-main--woocommerce .woocommerce-account .woocommerce-orders-table,
    .site-main--woocommerce .woocommerce-account .woocommerce-table--order-details {
        display: block;
        overflow-x: auto;
    }

    .ls-account-auth-intro {
        margin-bottom: 22px;
        padding: 24px 22px;
    }

    .ls-account-auth-intro__title {
        font-size: clamp(28px, 10vw, 36px);
    }

    .site-main--single-product .ls-woo-shell {
        width: 100%;
        padding-top: 0;
    }

}

@media (max-width: 767px) {
    .site-main--editorial-archive .ls-woo-archive-hero .ls-woo-shell {
        padding: 20px 18px 44px;
    }

    .site-main--editorial-archive .ls-woo-archive-hero__visual {
        aspect-ratio: 1.12 / 1;
        margin-top: 30px;
    }

    .site-main--editorial-archive .ls-woo-ade-scenes {
        grid-template-columns: minmax(0, 1fr);
        gap: 14px;
        margin-top: 32px;
    }

    .site-main--editorial-archive .ls-woo-ade-scenes__card {
        border-radius: 20px;
    }

    .site-main--editorial-archive .ls-woo-category-nav__grid {
		grid-template-columns: repeat(2, 118px);
		justify-content: center;
        gap: 14px;
    }

    .site-main--editorial-archive .ls-woo-category-nav__header {
        gap: 36px;
        margin-bottom: 28px;
    }

    .site-main--editorial-archive .ls-woo-category-nav {
        margin-bottom: 42px;
    }

    .site-main--editorial-archive .ls-woo-category-nav__card {
        width: 118px;
        max-width: 118px;
        padding: 0;
    }

    .site-main--editorial-archive .ls-woo-category-nav__image {
        width: 100px;
        height: 100px;
        border-radius: 50%;
    }

    .site-main--editorial-archive .ls-woo-category-nav__image img {
        width: 82px;
        height: 82px;
    }

    .site-main--editorial-archive .ls-woo-category-nav__label {
        gap: 5px;
        padding: 0;
        font-size: 9px;
    }

    .site-main--tableware-archive .ls-woo-category-nav--tableware .ls-woo-category-nav__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
    }

    .site-main--tableware-archive .ls-woo-category-nav--tableware .ls-woo-category-nav__image {
        width: 100%;
        height: auto;
        aspect-ratio: 4 / 3;
        border-radius: 0;
    }

    .site-main--tableware-archive .ls-woo-category-nav--tableware .ls-woo-category-nav__image img {
        width: 100%;
        height: 100%;
    }

    .site-main--tableware-archive .ls-woo-category-nav--tableware .ls-woo-category-nav__label {
        gap: 5px;
        padding: 30px 10px 10px;
        font-size: 9px;
    }

    .site-main--editorial-archive .ls-woo-card__image-wrap {
        padding: 14px;
    }

    .site-main--editorial-archive .ls-woo-card__body {
        padding: 14px 4px 10px;
    }

    .site-main--editorial-archive .ls-woo-card__price {
        font-size: 19px;
    }

    .site-main--editorial-archive .ls-woo-card__actions .button {
        min-width: 0;
        width: 100%;
        padding: 12px 10px;
        font-size: 10px;
    }

    .site-main--editorial-archive .ls-woo-story-band .ade-story-grid {
        width: calc(100% - 36px);
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .site-main--editorial-archive .ls-woo-story-band .section-divider {
        margin-bottom: 56px;
    }

    .site-main--editorial-archive .ls-woo-story-band .ade-story-media {
        aspect-ratio: auto;
        height: 240px;
        border-radius: 20px;
    }
}

.site-header-cart-trigger__icon {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.site-header-cart-count {
    position: absolute;
    top: -7px;
    right: -10px;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    border-radius: 999px;
    background: #FF6A1A;
    color: #fff;
    font-size: 10px;
    line-height: 18px;
    font-weight: 600;
    letter-spacing: 0;
    text-align: center;
}

body.ls-mini-cart-open {
    overflow: hidden;
}

.ls-mini-cart {
    position: fixed;
    inset: 0;
    z-index: 130;
    pointer-events: none;
}

.ls-mini-cart.is-active {
    pointer-events: auto;
}

.ls-mini-cart__overlay {
    position: absolute;
    inset: 0;
    border: 0;
    background: rgba(17, 24, 39, 0.28);
    opacity: 0;
    transition: opacity 0.28s ease;
}

.ls-mini-cart__panel {
    position: absolute;
    top: 0;
    right: 0;
    width: min(420px, 100vw);
    height: 100dvh;
    min-height: 100vh;
    padding: 28px 24px 24px;
    background: #fff;
    display: grid;
    grid-template-rows: auto auto minmax(0, 1fr);
    gap: 18px;
    box-shadow: none;
    transform: translateX(100%);
    transition: transform 0.32s ease;
    outline: none;
}

.ls-mini-cart.is-active .ls-mini-cart__overlay {
    opacity: 1;
}

.ls-mini-cart.is-active .ls-mini-cart__panel {
    transform: translateX(0);
    box-shadow: -18px 0 48px rgba(17, 24, 39, 0.12);
}

.ls-mini-cart__head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    padding-bottom: 18px;
    border-bottom: 1px solid #f0ece8;
}

.ls-mini-cart__eyebrow {
    margin: 0 0 8px;
    color: #FF6A1A;
    font-size: 11px;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.ls-mini-cart__title {
    margin: 0;
    font-size: 28px;
    line-height: 1.15;
    font-weight: 600;
    color: #17120e;
}

.ls-mini-cart__close {
    width: 40px;
    height: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 999px;
    background: #f6f3ef;
    color: #17120e;
    cursor: pointer;
    transition: background-color 0.2s ease, color 0.2s ease;
}

.ls-mini-cart__close:hover {
    background: #f1ece6;
    color: #FF6A1A;
}

.ls-mini-cart__status {
    margin: 0;
    color: #7b746d;
    font-size: 12px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.ls-mini-cart__body {
    min-height: 0;
    overflow-y: auto;
    display: grid;
    align-content: start;
}

.ls-mini-cart__loading {
    display: grid;
    gap: 12px;
}

.ls-mini-cart__loading-line {
    display: block;
    width: 100%;
    height: 16px;
    border-radius: 999px;
    background: linear-gradient(90deg, #f7f3ee 0%, #ece6df 50%, #f7f3ee 100%);
    background-size: 200% 100%;
    animation: lsMiniCartShimmer 1.2s linear infinite;
}

.ls-mini-cart__loading-line--short {
    width: 66%;
}

@keyframes lsMiniCartShimmer {
    from {
        background-position: 200% 0;
    }

    to {
        background-position: -200% 0;
    }
}

.ls-mini-cart__items {
    display: grid;
    gap: 16px;
}

.ls-mini-cart__item {
    display: grid;
    grid-template-columns: 92px minmax(0, 1fr);
    gap: 16px;
    align-items: start;
    position: relative;
    padding: 14px;
    border: 1px solid #f0ece8;
    border-radius: 22px;
    background: #fffdfa;
    transition: opacity 0.2s ease;
}

.ls-mini-cart__item.is-busy {
    opacity: 0.56;
    pointer-events: none;
}

.ls-mini-cart__item-media {
    display: block;
    aspect-ratio: 1 / 1;
    border-radius: 18px;
    background: linear-gradient(180deg, #faf8f6 0%, #f7f3ef 100%);
    overflow: hidden;
}

.ls-mini-cart__item-media img,
.ls-mini-cart__item-placeholder {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.ls-mini-cart__item-copy {
    display: grid;
    gap: 8px;
}

.ls-mini-cart__item-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
}

.ls-mini-cart__item-name,
.ls-mini-cart__item-price {
    margin: 0;
}

.ls-mini-cart__item-name a {
    color: #17120e;
    text-decoration: none;
    font-size: 15px;
    line-height: 1.6;
}

.ls-mini-cart__item-remove {
    padding: 0;
    border: 0;
    background: transparent;
    color: #8a8178;
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    cursor: pointer;
    transition: color 0.2s ease;
}

.ls-mini-cart__item-remove:hover {
    color: #FF6A1A;
}

.ls-mini-cart__item-controls {
    display: flex;
    align-items: center;
    gap: 12px;
}

.ls-mini-cart__qty {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    min-height: 40px;
    padding: 4px;
    border: 1px solid #ece6df;
    border-radius: 999px;
    background: #faf7f4;
}

.ls-mini-cart__qty-btn {
    width: 30px;
    height: 30px;
    border: 0;
    border-radius: 999px;
    background: #fff;
    color: #17120e;
    font-size: 18px;
    line-height: 1;
    cursor: pointer;
    transition: background-color 0.2s ease, color 0.2s ease;
}

.ls-mini-cart__qty-btn:hover {
    background: #FF6A1A;
    color: #fff;
}

.ls-mini-cart__qty-btn:disabled {
    background: #f3efea;
    color: #c6bfb7;
    cursor: not-allowed;
}

.ls-mini-cart__qty-value {
    min-width: 54px;
    color: #5b5650;
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 0.08em;
    text-align: center;
    text-transform: uppercase;
}

.ls-mini-cart__item-price {
    color: #FF6A1A;
    font-size: 15px;
    font-weight: 600;
}

.ls-mini-cart__footer,
.ls-mini-cart__empty,
.ls-mini-cart__message {
    display: grid;
    gap: 16px;
}

.ls-mini-cart__footer {
    margin-top: 18px;
    padding-top: 18px;
    border-top: 1px solid #f0ece8;
}

.ls-mini-cart__summary-card {
    display: grid;
    gap: 14px;
    padding: 18px;
    border-radius: 22px;
    background: #faf7f4;
}

.ls-mini-cart__summary-copy {
    display: grid;
    gap: 6px;
}

.ls-mini-cart__summary-title {
    margin: 0;
    color: #7b746d;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.ls-mini-cart__summary-message {
    margin: 0;
    color: #17120e;
    font-size: 14px;
    line-height: 1.7;
}

.ls-mini-cart__summary-progress {
    position: relative;
    height: 6px;
    overflow: hidden;
    border-radius: 999px;
    background: rgba(255, 106, 26, 0.12);
}

.ls-mini-cart__summary-progress-bar {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, #FF6A1A 0%, #ff8a49 100%);
}

.ls-mini-cart__summary-points {
    display: grid;
    gap: 8px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.ls-mini-cart__summary-points li {
    position: relative;
    padding-left: 16px;
    color: #5b5650;
    font-size: 13px;
    line-height: 1.7;
}

.ls-mini-cart__summary-points li::before {
    content: "";
    position: absolute;
    top: 9px;
    left: 0;
    width: 5px;
    height: 5px;
    border-radius: 999px;
    background: #FF6A1A;
}

.ls-mini-cart__totals {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 16px;
}

.ls-mini-cart__totals-label {
    color: #7b746d;
    font-size: 12px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.ls-mini-cart__totals-value {
    color: #17120e;
    font-size: 22px;
    line-height: 1.2;
    font-weight: 600;
}

.ls-mini-cart__actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.ls-mini-cart__primary,
.ls-mini-cart__secondary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 0 18px;
    border-radius: 999px;
    text-decoration: none;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.ls-mini-cart__primary {
    background: #FF6A1A;
    color: #fff;
}

.ls-mini-cart__primary:hover {
    background: #e85c0d;
    color: #fff;
}

.ls-mini-cart__secondary {
    border: 1px solid #ded6cf;
    background: #fff;
    color: #17120e;
}

.ls-mini-cart__secondary:hover {
    border-color: #FF6A1A;
    color: #FF6A1A;
}

.ls-mini-cart__empty,
.ls-mini-cart__message {
    align-content: center;
    min-height: 100%;
    padding: 18px 0 6px;
}

.ls-mini-cart__empty-eyebrow {
    margin: 0;
    color: #FF6A1A;
    font-size: 11px;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.ls-mini-cart__empty-title,
.ls-mini-cart__message-title {
    margin: 0;
    color: #17120e;
    font-size: 28px;
    line-height: 1.18;
    font-weight: 600;
}

.ls-mini-cart__empty-copy,
.ls-mini-cart__message-copy {
    margin: 0;
    color: #5b5650;
    font-size: 15px;
    line-height: 1.8;
}

.site-main--woocommerce .wc-block-cart__empty-cart,
.site-main--woocommerce .cart-empty.woocommerce-info {
    margin: 0;
    padding: 42px 36px;
    border: 0;
    border-radius: 28px;
    background: #faf7f4;
    color: #17120e;
}

.site-main--woocommerce .wc-block-cart__empty-cart__title,
.site-main--woocommerce .cart-empty.woocommerce-info {
    margin-bottom: 14px;
    font-size: 32px;
    line-height: 1.15;
    font-weight: 600;
}

.site-main--woocommerce .wc-block-cart__empty-cart p,
.site-main--woocommerce .return-to-shop {
    color: #5b5650;
    font-size: 15px;
    line-height: 1.8;
}

.site-main--woocommerce .wc-block-cart__empty-cart .wc-block-components-button,
.site-main--woocommerce .wc-block-cart__empty-cart .wp-block-button__link,
.site-main--woocommerce .return-to-shop .button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 0 22px;
    border-radius: 999px;
    border: 0;
    background: #FF6A1A;
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    text-decoration: none;
}

.site-main--woocommerce .wc-block-cart__empty-cart .wc-block-components-button:hover,
.site-main--woocommerce .wc-block-cart__empty-cart .wp-block-button__link:hover,
.site-main--woocommerce .return-to-shop .button:hover {
    background: #e85c0d;
    color: #fff;
}

.site-main--woocommerce .wp-block-woocommerce-empty-cart-block {
    display: grid;
    gap: 36px;
}

.site-main--woocommerce .wp-block-woocommerce-empty-cart-block > .wp-block-separator {
    display: none;
}

.site-main--woocommerce .wp-block-woocommerce-empty-cart-block > .wp-block-heading:not(.wc-block-cart__empty-cart__title) {
    margin: 0;
    padding-left: 16px;
    border-left: 4px solid #FF6A1A;
    text-align: left;
    color: #17120e;
    font-size: 30px;
    line-height: 1.18;
    font-weight: 600;
}

.site-main--woocommerce .wp-block-woocommerce-empty-cart-block .wc-block-grid__products {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 24px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.site-main--woocommerce .wp-block-woocommerce-empty-cart-block .wc-block-grid__product {
    display: flex;
    flex-direction: column;
    min-height: 100%;
    margin: 0;
    overflow: hidden;
    border: 1px solid #f0ece8;
    border-radius: 24px;
    background: #fff;
    transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

.site-main--woocommerce .wp-block-woocommerce-empty-cart-block .wc-block-grid__product:hover {
    transform: translateY(-3px);
    border-color: #e7dfd8;
    box-shadow: 0 20px 44px rgba(20, 20, 20, 0.08);
}

.site-main--woocommerce .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-link {
    display: flex;
    flex-direction: column;
    flex: 1;
    color: inherit;
    text-decoration: none;
}

.site-main--woocommerce .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-image {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    aspect-ratio: 4 / 3;
    padding: 34px;
    background: linear-gradient(180deg, #faf8f6 0%, #f7f3ef 100%);
}

.site-main--woocommerce .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.site-main--woocommerce .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-onsale {
    position: absolute;
    top: 16px;
    left: 16px;
    z-index: 2;
}

.site-main--woocommerce .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-onsale span[aria-hidden="true"] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 60px;
    padding: 6px 12px;
    border-radius: 999px;
    background: #FF6A1A;
    color: #fff;
    font-size: 12px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.site-main--woocommerce .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-title,
.site-main--woocommerce .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-price,
.site-main--woocommerce .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart {
    padding-inline: 22px;
}

.site-main--woocommerce .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-title {
    min-height: 2.8em;
    padding-top: 22px;
    color: #171717;
    font-size: 18px;
    line-height: 1.4;
    font-weight: 500;
}

.site-main--woocommerce .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-price {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 6px 10px;
    min-height: 32px;
    padding-top: 12px;
    color: #171717;
    font-size: 17px;
}

.site-main--woocommerce .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-price .amount {
    white-space: nowrap;
}

.site-main--woocommerce .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart {
    margin-top: auto;
    padding-top: 18px;
    padding-bottom: 22px;
}

.site-main--woocommerce .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart .wp-block-button__link {
    display: inline-flex;
    width: 100%;
    align-items: center;
    justify-content: center;
    min-height: 50px;
    padding: 14px 18px;
    border-radius: 999px;
    background: #FF6A1A;
    color: #fff;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    text-decoration: none;
}

.site-main--woocommerce .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart .wp-block-button__link:hover {
    background: #e85c0d;
    color: #fff;
}

@media (max-width: 640px) {
    .site-header-cart-count {
        top: -6px;
        right: -8px;
    }

    .ls-mini-cart__panel {
        width: 100vw;
        padding: 24px 18px 18px;
        gap: 16px;
    }

    .ls-mini-cart__title,
    .ls-mini-cart__empty-title,
    .ls-mini-cart__message-title {
        font-size: 24px;
    }

    .ls-mini-cart__item {
        grid-template-columns: 82px minmax(0, 1fr);
        gap: 14px;
        padding: 12px;
    }

    .ls-mini-cart__item-head,
    .ls-mini-cart__item-controls {
        align-items: stretch;
        flex-direction: column;
    }

    .ls-mini-cart__item-remove {
        align-self: flex-start;
    }

    .ls-mini-cart__actions {
        grid-template-columns: 1fr;
    }

    .site-main--woocommerce .wc-block-cart__empty-cart,
    .site-main--woocommerce .cart-empty.woocommerce-info {
        padding: 28px 24px;
        border-radius: 24px;
    }

    .site-main--woocommerce .wc-block-cart__empty-cart__title,
    .site-main--woocommerce .cart-empty.woocommerce-info {
        font-size: 26px;
    }

    .site-main--woocommerce .wp-block-woocommerce-empty-cart-block {
        gap: 28px;
    }

    .site-main--woocommerce .wp-block-woocommerce-empty-cart-block > .wp-block-heading:not(.wc-block-cart__empty-cart__title) {
        font-size: 24px;
    }

    .site-main--woocommerce .wp-block-woocommerce-empty-cart-block .wc-block-grid__products {
        grid-template-columns: 1fr;
    }

    .site-main--woocommerce .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-image {
        padding: 24px;
    }

    .site-main--woocommerce .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-title,
    .site-main--woocommerce .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-price,
    .site-main--woocommerce .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart {
        padding-inline: 18px;
    }

    .site-main--woocommerce .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart {
        padding-bottom: 18px;
    }

    .site-main--woocommerce .wc-block-checkout__main > *,
    .site-main--woocommerce .wc-block-checkout__sidebar > *,
    .site-main--woocommerce .wp-block-woocommerce-checkout-order-summary-block,
    .site-main--woocommerce .wc-block-checkout .wp-block-woocommerce-checkout-express-payment-block,
    .site-main--woocommerce .wc-block-checkout .wc-block-components-checkout-step {
        padding: 20px;
        border-radius: 22px;
    }

    .site-main--woocommerce .wc-block-checkout .wc-block-components-title,
    .site-main--woocommerce .wc-block-checkout .wc-block-components-checkout-step__heading h2 {
        font-size: 22px;
    }
}

@media (max-width: 1200px) {
    .ls-search-overlay__panel {
        width: min(42vw, 460px);
        min-width: 320px;
    }

    .ls-search-overlay__title {
        font-size: 36px;
    }

    .ls-search-page__layout {
        grid-template-columns: 220px minmax(0, 1fr);
        gap: 32px;
    }

    .ls-search-results-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {
    .ls-search-page-intro {
        padding: 0;
    }

    .ls-search-page-intro__title {
        margin-bottom: 16px;
        font-size: 34px;
    }

    .ls-search-page-intro__form input[type="search"] {
        height: 50px;
        padding-left: 16px;
        padding-right: 72px;
        font-size: 14px;
    }

    .ls-footer-trust__inner {
        grid-template-columns: 1fr;
        padding: 14px 18px;
    }

    .ls-search-results__topbar {
        flex-direction: column;
        align-items: stretch;
        gap: 14px;
    }

    .ls-search-results__meta {
        justify-content: space-between;
        gap: 12px;
    }

    .ls-search-results__filters {
        display: inline-flex;
    }

    .ls-search-results__sort {
        margin-left: 0;
        justify-content: space-between;
    }

    .ls-search-results__sort select {
        min-width: 0;
        width: auto;
        max-width: 180px;
    }

    .ls-search-filters__panel {
        width: 100vw;
        padding: 24px 18px;
    }

    .ls-search-filters__price {
        grid-template-columns: 1fr;
    }

    .ls-search-filters__actions {
        flex-direction: column;
        align-items: stretch;
    }

    .ls-search-filters__actions button,
    .ls-search-filters__actions a {
        width: 100%;
    }

    .ls-search-results-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 18px 14px;
    }

    .ls-search-empty {
        padding-top: 40px;
    }

    .ls-search-empty__title {
        font-size: 30px;
    }
}

/* P02 product category leaves: the ADE typographic language with a focused SKU shelf. */
.site-main--woocommerce.site-main--p02-leaf {
    padding-top: 0 !important;
    background: #fff;
    color: #17120e;
}

.site-main--p02-leaf .ls-p02-leaf__shell {
    width: min(100%, 1458px);
    margin: 0 auto;
    padding: 0 24px;
}

.site-main--p02-leaf .ls-p02-leaf__hero {
    padding: 200px 0 60px;
    text-align: center;
}

.site-main--p02-leaf .ls-p02-leaf__breadcrumb {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 24px;
    color: #655c56;
    font-size: 11px;
    line-height: 1.5;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.site-main--p02-leaf .ls-p02-leaf__breadcrumb a {
    color: inherit;
    text-decoration: none;
}

.site-main--p02-leaf .ls-p02-leaf__breadcrumb a:hover,
.site-main--p02-leaf .ls-p02-leaf__breadcrumb a:focus-visible,
.site-main--p02-leaf .ls-p02-leaf__breadcrumb [aria-current="page"] {
    color: #c74600;
}

.site-main--p02-leaf .ls-p02-leaf__title,
.site-main--p02-leaf .ls-p02-leaf__section-title {
    margin: 0;
    color: #17120e;
    font-family: 'Marcellus', Georgia, serif;
    font-weight: 400;
    line-height: 1.09;
    letter-spacing: .025em;
    text-transform: uppercase;
}

.site-main--p02-leaf .ls-p02-leaf__title {
    font-size: clamp(38px, 4.8vw, 66px);
    white-space: nowrap;
}

.site-main--p02-leaf .ls-p02-leaf__intro {
    max-width: 870px;
    margin: 24px auto 0;
    color: #625d58;
    font-size: 15px;
    line-height: 1.85;
}

.site-main--p02-leaf .ls-p02-leaf__collection {
    padding-bottom: 88px;
}

.site-main--p02-leaf .ls-p02-leaf__divider {
    width: 100%;
    margin: 0 auto 55px;
}

.site-main--p02-leaf .ls-p02-leaf__divider img {
    display: block;
    width: 100%;
    height: auto;
}

.site-main--p02-leaf .ls-p02-leaf__section-title {
    margin-bottom: 38px;
    font-size: clamp(30px, 3vw, 36px);
    text-align: center;
}

.site-main--p02-leaf .ls-p02-leaf__toolbar {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 16px;
    margin: 0 0 28px;
}

.site-main--p02-leaf .ls-p02-leaf__count {
    margin: 0;
    color: #77716c;
    font-size: 11px;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.site-main--p02-leaf .ls-p02-leaf__sort {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    min-height: 46px;
    padding: 0 16px;
    border: 1px solid #ded9d4;
    border-radius: 999px;
    background: #fff;
}

.site-main--p02-leaf .ls-p02-leaf__sort > span {
    color: #77716c;
    font-size: 10px;
    letter-spacing: .12em;
    text-transform: uppercase;
    white-space: nowrap;
}

.site-main--woocommerce.site-main--p02-leaf .ls-p02-leaf__sort .woocommerce-ordering {
    margin: 0 !important;
}

.site-main--woocommerce.site-main--p02-leaf .woocommerce .ls-p02-leaf__sort select.orderby {
    width: auto;
    min-width: 145px;
    height: 44px;
    padding: 0 24px 0 0;
    border: 0;
    border-radius: 0;
    background-color: transparent;
    font-size: 12px;
    font-weight: 500;
    box-shadow: none;
}

.site-main--woocommerce.site-main--p02-leaf .woocommerce ul.products {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 34px 20px;
}

.site-main--woocommerce.site-main--p02-leaf .woocommerce ul.products > li.product {
    float: none;
    clear: none;
    width: auto;
    min-width: 0;
    margin: 0;
}

.site-main--p02-leaf .ls-p02-leaf__empty {
    padding: 55px 20px;
    color: #77716c;
    text-align: center;
}

.site-main--p02-leaf .woocommerce nav.woocommerce-pagination ul {
    justify-content: center;
}

@media (max-width: 1199px) {
    .site-main--woocommerce.site-main--p02-leaf .woocommerce ul.products {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {
    .site-main--p02-leaf .ls-p02-leaf__hero {
        padding: 168px 0 48px;
    }

    .site-main--p02-leaf .ls-p02-leaf__title {
        white-space: normal;
    }

    .site-main--p02-leaf .ls-p02-leaf__intro {
        font-size: 14px;
    }

    .site-main--woocommerce.site-main--p02-leaf .woocommerce ul.products {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 540px) {
    .site-main--p02-leaf .ls-p02-leaf__shell {
        padding: 0 18px;
    }

    .site-main--p02-leaf .ls-p02-leaf__breadcrumb {
        gap: 6px;
        margin-bottom: 18px;
        font-size: 10px;
    }

    .site-main--p02-leaf .ls-p02-leaf__title {
        font-size: clamp(30px, 9vw, 42px);
    }

    .site-main--p02-leaf .ls-p02-leaf__divider {
        margin-bottom: 40px;
    }

    .site-main--p02-leaf .ls-p02-leaf__section-title {
        margin-bottom: 28px;
    }

    .site-main--p02-leaf .ls-p02-leaf__toolbar {
        flex-direction: column;
        align-items: stretch;
        gap: 12px;
    }

    .site-main--p02-leaf .ls-p02-leaf__count {
        text-align: center;
    }

    .site-main--p02-leaf .ls-p02-leaf__sort {
        justify-content: space-between;
    }

    .site-main--woocommerce.site-main--p02-leaf .woocommerce ul.products {
        grid-template-columns: minmax(0, 1fr);
    }
}

/* 1008 client feedback: self-hosted navigation and heading fonts. */
@font-face {
    font-family: 'Castoro';
    src: url('./assets/fonts/1008/Castoro-Regular.woff2') format('woff2');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Castoro';
    src: url('./assets/fonts/1008/Castoro-Medium.woff2') format('woff2');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Castoro';
    src: url('./assets/fonts/1008/Castoro-Semibold.woff2') format('woff2');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Castoro';
    src: url('./assets/fonts/1008/Castoro-Bold.woff2') format('woff2');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Fahkwang';
    src: url('./assets/fonts/1008/Fahkwang-ExtraLight.woff2') format('woff2');
    font-weight: 200;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Fahkwang';
    src: url('./assets/fonts/1008/Fahkwang-ExtraLightItalic.woff2') format('woff2');
    font-weight: 200;
    font-style: italic;
    font-display: swap;
}
@font-face {
    font-family: 'Fahkwang';
    src: url('./assets/fonts/1008/Fahkwang-Light.woff2') format('woff2');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Fahkwang';
    src: url('./assets/fonts/1008/Fahkwang-LightItalic.woff2') format('woff2');
    font-weight: 300;
    font-style: italic;
    font-display: swap;
}
@font-face {
    font-family: 'Fahkwang';
    src: url('./assets/fonts/1008/Fahkwang-Regular.woff2') format('woff2');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Fahkwang';
    src: url('./assets/fonts/1008/Fahkwang-Italic.woff2') format('woff2');
    font-weight: 400;
    font-style: italic;
    font-display: swap;
}
@font-face {
    font-family: 'Fahkwang';
    src: url('./assets/fonts/1008/Fahkwang-Medium.woff2') format('woff2');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Fahkwang';
    src: url('./assets/fonts/1008/Fahkwang-MediumItalic.woff2') format('woff2');
    font-weight: 500;
    font-style: italic;
    font-display: swap;
}
@font-face {
    font-family: 'Fahkwang';
    src: url('./assets/fonts/1008/Fahkwang-SemiBold.woff2') format('woff2');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Fahkwang';
    src: url('./assets/fonts/1008/Fahkwang-SemiBoldItalic.woff2') format('woff2');
    font-weight: 600;
    font-style: italic;
    font-display: swap;
}
@font-face {
    font-family: 'Fahkwang';
    src: url('./assets/fonts/1008/Fahkwang-Bold.woff2') format('woff2');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Fahkwang';
    src: url('./assets/fonts/1008/Fahkwang-BoldItalic.woff2') format('woff2');
    font-weight: 700;
    font-style: italic;
    font-display: swap;
}

/* Important declarations in a layer also override old unlayered page rules.
   Limit the override to text titles and navigation, preserving icon fonts. */
@layer ls-customer-typography {
    body :is(h1, h2, h3, h4, h5, h6) {
        font-family: 'Fahkwang', Arial, sans-serif !important;
    }

    body :is(.site-header-nav__link, .site-header-nav__sublink,
             .site-header-nav__group-title, .site-header-nav__feature-title,
             .site-header-mobile-nav__link, .site-header-mobile-nav__toggle,
             .site-header-mobile-nav__sublink) {
        font-family: 'Castoro', Georgia, serif !important;
    }
}

/* 1008 step 2: uppercase wordmark and viewport mobile navigation. */
.site-header-logo {
    width: 300px;
    transition: width 0.34s ease;
    max-width: 100%;
    min-width: 0;
}

body .site-header-logo img.site-header-wordmark {
    width: 100%;
    max-width: 100%;
    height: auto;
}

body.header-scrolled .site-header-logo {
    width: 220px;
}

.site-header-mobile-nav__logo {
    min-width: 0;
}

.site-header-mobile-nav__logo img {
    width: 240px;
    max-width: 100%;
    height: auto;
}

.site-header-mobile-nav__head {
    flex-shrink: 0;
}

.site-header-mobile-nav__body {
    min-height: 0;
}

@media (max-width: 991px) {
    .site-header-top {
        grid-template-columns: auto minmax(0, 1fr) auto;
    }

    .site-header-logo,
    body.header-scrolled .site-header-logo {
        width: 220px;
    }
}


/* 1008 step 3: distinguish the two public footer contacts. */
.site-footer-contact__label {
    display: block;
    margin-bottom: 3px;
    color: #8b8178;
    font-size: 11px;
    line-height: 1.4;
    letter-spacing: 0.08em;
}

/* 1009 customer revision: consistent titles, category labels and responsive chrome. */
@layer ls-customer-typography {
    body:not(.home) h1,
    body .page-gifts .journal-title,
    body.tax-product_cat .section-heading,
    body.tax-product_cat .ls-p02-leaf__section-title {
        font-size: var(--ls-title-size, 28px) !important;
        line-height: 1.3 !important;
        font-weight: 400 !important;
        letter-spacing: 0.01em !important;
        text-align: center !important;
        white-space: nowrap !important;
        max-width: 100% !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }
    body:not(.home) h1 br { display: none !important; }
    body.single-product .ls-pdp__summary .ls-pdp__title {
        text-align: left !important;
    }
    body :is(.category-product-name, .ls-woo-card__title,
             .single-designer-product-title,
             .single-product-page .product-card-title, .ls-search-overlay__product-title) {
        font-family: 'Inter', Arial, sans-serif !important;
        font-size: 11px !important;
        font-weight: 400 !important;
        line-height: 1.5 !important;
        letter-spacing: 0.18em !important;
        text-transform: uppercase !important;
    }
    body :is(.category-entry-label, .p02-term-entry__label,
             .p02-term-entry > span:not(.p02-term-entry__media),
             .ls-woo-category-nav__label, .section-transition--selected) {
        font-size: 12px !important;
    }
    body .section-transition--selected::before,
    body .section-transition--selected::after {
        content: none !important;
        display: none !important;
    }
    /* All newsletter forms, including the home page's extra style rules. */
    body .site-footer .footer-newsletter-form {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        align-items: center !important;
        gap: 4px !important;
        padding: 4px !important;
        border: 1px solid #e9dfd5 !important;
        border-radius: 999px !important;
        box-sizing: border-box !important;
        min-width: 0 !important;
    }
    body .site-footer .footer-newsletter-input[type="email"] {
        min-width: 0 !important;
        width: 100% !important;
        height: 42px !important;
        padding: 0 12px !important;
        border: 0 !important;
        box-sizing: border-box !important;
    }
    body .site-footer .footer-newsletter-btn {
        position: static !important;
        width: auto !important;
        min-width: 100px !important;
        height: 42px !important;
        padding: 0 16px !important;
        box-sizing: border-box !important;
    }
    @media (max-width: 991px) {
        body:not(.home) h1,
        body .page-gifts .journal-title,
        body.tax-product_cat .section-heading,
        body.tax-product_cat .ls-p02-leaf__section-title {
            font-size: 24px !important;
            white-space: normal !important;
            overflow-wrap: anywhere !important;
        }
    }
}
.site-header-logo { width: 255px; }
.site-header-nav__link {
    font-size: 11px;
    letter-spacing: 0.035em;
    padding-inline: 10px;
}
.site-header-nav__separator { width: 12px; flex-basis: 12px; }
.site-header-nav__group-links .site-header-nav__sublink {
    padding-block: 4px;
    line-height: 1.3;
}
.site-header-nav__mega,
.site-header-nav__dropdown { min-height: 180px; padding-block: 18px; }
.site-header-nav__item.is-current > .site-header-nav__link span::after {
    transform: scaleX(1);
}
.site-header-mobile-nav__link.is-current,
.site-header-mobile-nav__toggle.is-current > span {
    text-decoration: underline;
    text-underline-offset: 5px;
}
@media (min-width: 992px) {
    .single-journal-header { max-width: 100%; }
}
@media (min-width: 992px) and (max-width: 1199px) {
    .site-header-nav__link { font-size: 9px; padding-inline: 7px; }
    .site-header-nav__separator { width: 8px; flex-basis: 8px; }
}
@media (max-width: 991px) {
    .site-header-top {
        grid-template-columns: 70px minmax(0, 1fr) 70px;
        gap: 4px;
    }
    .site-header-tools { justify-self: start; }
    .site-header-logo,
    body.header-scrolled .site-header-logo { width: min(170px, 100%); }
    .site-header-utils { justify-self: end; gap: 4px; }
    .site-header-utils > a:not(.site-header-cart-trigger) { display: none; }
    .site-header-utils .site-header-lang {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 30px;
        height: 34px;
        font-size: 10px;
        letter-spacing: 0.04em;
    }
    .site-header-utils .site-header-cart-trigger { width: 34px; min-width: 34px; padding: 0; }
    .site-header-mobile-toggle { background: transparent; border: 0; }
}

/* The icon mask system needs explicit shapes for menu open/close controls. */
.site-icon-scope .fa-bars::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M3 5h18M3 12h18M3 19h18'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M3 5h18M3 12h18M3 19h18'/%3E%3C/svg%3E");
}
.site-icon-scope .fa-xmark::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='m5 5 14 14M19 5 5 19'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='m5 5 14 14M19 5 5 19'/%3E%3C/svg%3E");
}
@layer ls-customer-typography {
    @media (min-width: 992px) {
        body .single-journal-header { max-width: 100% !important; }
    }
}

/* 1009 navigation feedback: centered divider strokes and wider entry spacing. */
.site-header-nav__track { max-width: 1500px; }
.site-header-nav__separator { font-size: 0; }
.site-header-nav__separator::before {
    /* Clip the capital I to its stem so the divider shares the text's ink bounds. */
    content: "I";
    display: block;
    font-family: 'Castoro', Georgia, serif;
    font-size: var(--ls-nav-divider-font-size, 11px);
    font-weight: 400;
    line-height: 1.1;
    letter-spacing: 0;
    width: auto;
    height: auto;
    background: none;
    clip-path: inset(0 35%);
    transform: none;
}
@media (min-width: 1440px) {
    .site-header-nav__link { padding-inline: 18px; }
}
@media (min-width: 1536px) {
    .site-header-nav__link { padding-inline: 22px; }
}
@media (min-width: 1280px) and (max-width: 1439px) {
    .site-header-nav__link { font-size: 10px; padding-inline: 15px; }
}
@media (min-width: 1200px) and (max-width: 1279px) {
    .site-header-nav__link { font-size: 9.5px; padding-inline: 12px; }
}
@media (min-width: 992px) and (max-width: 1199px) {
    .site-header-nav__link { padding-inline: 8px; }
    .site-header-nav__track { padding-inline: 4px; }
}
@media (min-width: 992px) and (max-width: 1023px) {
    .site-header-nav__link { font-size: 8.5px; }
}

/* Keep the separator's font metrics identical to each navigation breakpoint. */
@media (min-width: 1280px) and (max-width: 1439px) {
    .site-header-nav__separator { --ls-nav-divider-font-size: 10px; }
}
@media (min-width: 1200px) and (max-width: 1279px) {
    .site-header-nav__separator { --ls-nav-divider-font-size: 9.5px; }
}
@media (min-width: 1024px) and (max-width: 1199px) {
    .site-header-nav__separator { --ls-nav-divider-font-size: 9px; }
}
@media (min-width: 992px) and (max-width: 1023px) {
    .site-header-nav__separator { --ls-nav-divider-font-size: 8.5px; }
}

/* 1010 mobile: generous touch targets without crowding the wordmark. */
/* 1010 commerce mobile: reduce stacked spacing and enlarge product controls. */
@media (max-width: 767px) {
    .single-product.separate-containers .site-main.site-main--single-product {
        padding-top: 90px !important;
    }
    .site-main--shop .ls-woo-shell {
        margin-top: 0;
        padding-top: 20px;
        padding-bottom: 32px;
    }
    .site-main--shop .ls-woo-archive-hero .ls-woo-shell {
        padding-bottom: 8px;
    }
    .site-main--shop .woocommerce-ordering select {
        font-size: 16px;
    }
    .ls-pdp__gallery-arrow,
    .ls-pdp__quantity-button {
        width: 44px;
        height: 44px;
    }
    .ls-pdp__quantity {
        grid-template-columns: 44px minmax(0, 1fr) 44px;
    }
    .ls-pdp__option-button {
        min-height: 44px;
        line-height: 1.3;
    }
    .ls-pdp__quantity input.qty {
        font-size: 16px;
    }
}

@media (max-width: 991px) {
    .site-header-top {
        grid-template-columns: 44px minmax(0, 1fr) 78px;
    }
    .site-header-mobile-toggle,
    .site-header-mobile-nav__close,
    .site-header-utils .site-header-cart-trigger {
        width: 44px;
        min-width: 44px;
        height: 44px;
        padding: 0;
        flex-shrink: 0;
    }
    .site-header-mobile-nav__utility-link {
        min-height: 44px;
    }
    .site-header-mobile-nav__search input {
        font-size: 16px;
    }
    .site-header-mobile-nav__body {
        overscroll-behavior: contain;
        padding-bottom: calc(28px + env(safe-area-inset-bottom, 0px));
    }
}

/* 1010: shop catalog, scoped to retain existing category layouts.
   Design read: established artful homeware brand; native CSS, existing tokens.
   DESIGN_VARIANCE: 4; MOTION_INTENSITY: 3; VISUAL_DENSITY: 4. */
.site-main--woocommerce.site-main--catalog { padding: 174px 0 80px; background: #fff; }
.ls-catalog-shell { width: min(1280px, calc(100% - 48px)); margin: 0 auto; }
.ls-catalog-intro { padding: 0 0 30px; text-align: center; }
.ls-catalog-breadcrumb { display: flex; align-items: center; justify-content: center; gap: 12px; margin-bottom: 18px; font-size: 12px; color: #737373; }
.ls-catalog-breadcrumb a { color: inherit; text-decoration: none; }
.ls-catalog-intro h1 { margin: 0 0 12px; }
.ls-catalog-intro__description { max-width: 600px; margin: 0 auto; color: #666; font-size: 15px; line-height: 1.6; }
.ls-catalog-intro__description p { margin: 0; }
.ls-catalog-categories { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 28px; border-bottom: 1px solid #e8e8e8; padding: 0 0 10px; margin-bottom: 24px; }
.ls-catalog-categories a { display: inline-flex; align-items: center; min-height: 44px; padding: 8px 0; border-bottom: 2px solid transparent; color: #575757; font-size: 13px; text-decoration: none; }
.ls-catalog-categories a.is-current { color: #d94d00; border-bottom-color: #ff6a1a; }
.ls-catalog-categories a:hover { color: #d94d00; }
.ls-catalog-categories a:focus-visible, .ls-catalog-breadcrumb a:focus-visible { outline: 2px solid #ff6a1a; outline-offset: 4px; }
.site-main--catalog .ls-woo-toolbar { padding: 0 0 26px; flex-wrap: wrap; }
.site-main--catalog .ls-woo-toolbar .woocommerce-result-count,
.site-main--catalog .ls-woo-toolbar .woocommerce-ordering { margin-bottom: 0; }
.site-main--woocommerce.site-main--catalog .woocommerce ul.products { gap: 32px 20px; }
.site-main--woocommerce.site-main--catalog .woocommerce ul.products > li.product { float: none; clear: none; width: auto; min-width: 0; margin: 0; }
.site-main--catalog .category-product-card { height: 100%; }
.site-main--catalog .woocommerce-pagination { margin-top: 38px; }
@media (max-width: 1023px) {
    .site-main--woocommerce.site-main--catalog .woocommerce ul.products { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
    .site-main--woocommerce.site-main--catalog { padding: 148px 0 48px; }
    .ls-catalog-shell { width: calc(100% - 32px); }
    .ls-catalog-intro { padding-bottom: 24px; }
    .ls-catalog-intro__description { font-size: 14px; }
    .ls-catalog-categories { justify-content: flex-start; flex-wrap: nowrap; overflow-x: auto; gap: 24px; margin-bottom: 20px; }
    .ls-catalog-categories a { flex: 0 0 auto; white-space: nowrap; }
    .site-main--woocommerce.site-main--catalog .woocommerce ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px 12px; }
    .site-main--catalog .ls-woo-toolbar { gap: 12px; padding-bottom: 20px; }
    .site-main--catalog .ls-woo-toolbar .woocommerce-ordering { width: auto; }
    .site-main--catalog .woocommerce-ordering select { max-width: 190px; }
}
@media (hover: none) {
    .site-main--catalog .category-product-cart { opacity: 1; visibility: visible; pointer-events: auto; transform: none; }
}
@media (prefers-reduced-motion: reduce) {
    .site-main--catalog .category-product-card,
    .site-main--catalog .category-product-image,
    .site-main--catalog .category-product-image img,
    .site-main--catalog .category-product-cart { transition: none; }
}

/* 1010 category leaf mobile: match the compact parent page rhythm. */
@media (max-width: 767px) {
    .site-main--p02-leaf .ls-p02-leaf__hero {
        padding: 104px 0 32px;
    }
    .site-main--p02-leaf .ls-p02-leaf__breadcrumb {
        gap: 6px;
        margin-bottom: 18px;
    }
    .site-main--p02-leaf .ls-p02-leaf__title {
        overflow-wrap: anywhere;
        line-height: 1.18;
    }
    .site-main--p02-leaf .ls-p02-leaf__intro {
        font-size: 15px;
        line-height: 1.8;
    }
    .site-main--p02-leaf .ls-p02-leaf__divider {
        margin-bottom: 28px;
    }
    .site-main--woocommerce.site-main--p02-leaf .woocommerce .ls-p02-leaf__sort select.orderby {
        font-size: 16px;
        min-width: 0;
        max-width: 100%;
        min-height: 44px;
    }
    .site-main--p02-leaf .ls-p02-leaf__sort .woocommerce-ordering {
        min-width: 0;
    }
}

/* 1010: mobile collection discovery and search navigation. */
@media(max-width:767px){
.site-main--search-results .ls-search-page-intro{margin-top:0;}
.site-main--search-results .ls-search-page-intro .ls-woo-shell{margin-top:0!important;padding:20px 0 24px;}
.site-main--search-results .ls-search-page{margin-top:0!important;padding-top:16px;}
.site-main--search-results .ls-search-page-intro__form input[type="search"]{font-size:16px;padding-right:94px;}
.site-main--search-results .ls-search-page-intro__clear{min-height:44px;min-width:72px;right:8px;}
.site-main--search-results .ls-search-results__sort select{font-size:16px;min-height:44px;}
.site-main--search-results .ls-search-empty__title{overflow-wrap:anywhere;}
}
@media(max-width:991px){
.site-header-mobile-nav__sublink,.site-header-mobile-nav__overview{display:flex;align-items:center;min-height:44px;}
.site-header-mobile-nav__search input{min-height:48px;}
}

/* 1012: customer supplied Linux Libertine for editorial body copy. */
@font-face {
    font-family: 'Linux Libertine';
    src: url('./assets/fonts/1012/LinLibertine-R-1.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Linux Libertine';
    src: url('./assets/fonts/1012/LinLibertine-RZ-5.ttf') format('truetype');
    font-weight: 600 900;
    font-style: normal;
    font-display: swap;
}
@layer ls-customer-typography {
    body :is(.ls-about-intro, .ls-modern-pdf, .ls-silver-pdf, .ls-brand-story,
             .ls-page, .louissanka-page, [class^="page-"],
             .single-journal-body, .single-designer-biography, .ls-pdp__description,
             .woocommerce-Tabs-panel--description)
        :is(p, blockquote, li, td):not(:where(
            .wxkn-breadcrumb *, .category-product-card *, .ls-woo-card *,
            .product-card *, .site-header-nav *, .site-footer *)) {
        font-family: 'Linux Libertine', Georgia, serif !important;
    }
}

/* 1012: mobile top-of-page search, compact centered wordmarks and clean drawer. */
.site-header-mobile-search, .site-header-mobile-search-space { display: none; }
@media (max-width: 991px) {
    .site-header-mobile-search-space { display: block; height: 58px; }
    .site-header-top {
        grid-template-columns: 68px minmax(0, 1fr) 68px;
        gap: 4px;
    }
    .site-header-tools { gap: 0; }
    .site-header-logo,
    body.header-scrolled .site-header-logo { width: min(140px, 100%); }
    .site-header-mobile-search {
        display: flex;
        align-items: center;
        margin: 0 0 12px;
        width: 100%;
        min-height: 44px;
        border: 1px solid rgba(255, 106, 26, 0.38);
        border-radius: 999px;
        background: #fff;
        overflow: hidden;
    }
    .site-header-mobile-search input[type="search"] {
        flex: 1;
        min-width: 0;
        width: 100%;
        height: 44px;
        padding: 0 16px;
        border: 0;
        background: transparent;
        font-size: 16px;
        color: #403830;
    }
    .site-header-mobile-search button {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        flex: 0 0 44px;
        height: 44px;
        padding: 0;
        border: 0;
        background: transparent;
        color: #FF6A1A;
    }
    .site-header-mobile-search:focus-within { outline: 2px solid #FF6A1A; outline-offset: 2px; }
    .site-header-search-toggle { display: none; }
    body.ls-header-away-from-top .site-header-mobile-search { display: none; }
    body.ls-header-away-from-top .site-header-search-toggle {
        display: inline-flex;
        width: 34px;
        height: 34px;
        padding: 0;
        border: 0;
        justify-content: center;
        background: transparent;
    }
    .site-header-search-toggle > span { display: none; }
    .ls-search-overlay { display: block; }
    .ls-search-overlay__panel { width: 100%; min-width: 0; height: 100dvh; }
    .ls-search-overlay__form input[type="search"] { font-size: 16px; }
    .site-header-mobile-nav__head {
        position: relative;
        display: grid;
        grid-template-columns: 40px minmax(0, 1fr) 40px;
        gap: 4px;
        min-height: 74px;
        padding-top: 16px;
        padding-bottom: 16px;
    }
    .site-header-mobile-nav__logo { grid-column: 2; justify-self: center; width: min(140px, 100%); }
    .site-header-mobile-nav__logo img { width: 100%; height: auto; }
    .site-header-mobile-nav__close { grid-column: 3; justify-self: end; }
}
@media (max-width: 991px) {
    /* This content page clears its original header offset in its page styles. */
    body .ls-about-intro .ls-hero { padding-top: 74px !important; }
}

/* 1013: one mobile search surface, clean navigation and consistent body copy. */
@media (max-width: 991px) {
    .site-header-mobile-search input[type="search"],
    .site-header-mobile-search input[type="search"]:focus {
        -webkit-appearance: none;
        appearance: none;
        border: 0;
        outline: none;
        box-shadow: none;
    }
    .louissanka-header--search-results .site-header-mobile-search,
    .site-header-mobile-search-space--search-results { display: none; }
    .louissanka-header--search-results .site-header-search-toggle {
        display: inline-flex;
        width: 34px;
        height: 34px;
        padding: 0;
        border: 0;
        justify-content: center;
    }
    .louissanka-header--search-results .site-header-search-toggle > span { display: none; }
    .site-header-mobile-nav__menu,
    .site-header-mobile-nav__group,
    .site-header-mobile-nav__link { border: 0; }
}

/* Keep long category names inside their own column, with room for the arrow. */
@layer ls-customer-typography {
    body .p02-term-entry { min-width: 0; }
    body .p02-term-entry .p02-term-entry__label {
        display: block !important;
        position: relative;
        width: 100%;
        box-sizing: border-box;
        padding: 0 18px 0 0;
        white-space: normal !important;
        overflow-wrap: break-word;
        text-align: center;
        line-height: 1.5;
    }
    body .p02-term-entry .p02-term-entry__label > span {
        position: absolute;
        right: 0;
        top: 50%;
        transform: translateY(-50%);
        white-space: nowrap;
    }
    body :is(main, .ls-page, .louissanka-page, [class^="page-"],
             .ls-about-intro, .ls-modern-pdf, .ls-silver-pdf, .ls-brand-story,
             .single-journal-body, .single-designer-biography)
        :is(p, blockquote, li, td, .hero-summary, .ls-catalog-intro__description,
                 .ls-pdp__excerpt, .ls-pdp__accordion-copy,
                 .woocommerce-product-details__short-description):not(:where(
        nav *, .wxkn-breadcrumb *, .ls-p02-leaf__breadcrumb *, .ls-catalog-breadcrumb *,
        .category-product-card *, .ls-woo-card *, .product-card *, ul.products *,
        .category-product-name, .category-product-series, .category-product-price,
        .section-transition--selected, .ls-p02-leaf__count, .woocommerce-result-count,
        .ls-search-results__count, .ls-pdp__eyebrow, .ls-pdp__section-eyebrow,
        .ls-pdp__availability-label, .price, .price *, .stock, .form-row,
        .woocommerce-message, .woocommerce-info, .woocommerce-error *,
        .single-designer-product *, .ls-search-overlay *, .site-footer *,
        .site-header-nav *, .ls-account-auth-intro *, .hero-kicker, .home-overline,
        .signature-card *, .journal-meta, .journal-card *)) {
        font-family: 'Linux Libertine', Georgia, serif !important;
        font-size: 16px !important;
        color: #000 !important;
    }
}

/* Progressively enhanced Woo ordering. The native control remains the fallback. */
.site-main--p02-leaf .ls-p02-leaf__sort { position: relative; }
:is(.ls-p02-leaf__sort, .ls-catalog-products) .ls-sort-enhanced { position: relative; min-width: 0; }
:is(.ls-p02-leaf__sort, .ls-catalog-products) .ls-sort-enhanced select.orderby[hidden] { display: none; }
:is(.ls-p02-leaf__sort, .ls-catalog-products) .ls-sort-trigger {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    width: 100%;
    min-width: 174px;
    min-height: 44px;
    padding: 0;
    border: 0;
    background: transparent;
    color: #000;
    font-family: inherit;
    font-size: 16px;
    font-weight: 400;
    text-align: left;
    cursor: pointer;
}
:is(.ls-p02-leaf__sort, .ls-catalog-products) .ls-sort-trigger i { font-size: 10px; color: #FF6A1A; }
:is(.ls-p02-leaf__sort, .ls-catalog-products) .ls-sort-menu {
    position: absolute;
    top: calc(100% + 10px);
    right: -16px;
    z-index: 20;
    width: max(100%, 250px);
    max-width: calc(100vw - 40px);
    padding: 6px;
    border: 1px solid #e9dfd5;
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 8px 24px rgba(0, 0, 0, .08);
}
:is(.ls-p02-leaf__sort, .ls-catalog-products) .ls-sort-menu[hidden] { display: none; }
:is(.ls-p02-leaf__sort, .ls-catalog-products) .ls-sort-option {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    width: 100%;
    min-height: 44px;
    padding: 10px 12px;
    border: 0;
    border-radius: 8px;
    background: #fff;
    color: #000;
    font-family: inherit;
    font-size: 16px;
    font-weight: 400;
    text-align: left;
    cursor: pointer;
}
:is(.ls-p02-leaf__sort, .ls-catalog-products) .ls-sort-option:hover,
:is(.ls-p02-leaf__sort, .ls-catalog-products) .ls-sort-option:focus-visible { background: #fff4ec; }
:is(.ls-p02-leaf__sort, .ls-catalog-products) .ls-sort-option[aria-checked="true"] { color: #d9550d; }
:is(.ls-p02-leaf__sort, .ls-catalog-products) .ls-sort-trigger:focus-visible,
:is(.ls-p02-leaf__sort, .ls-catalog-products) .ls-sort-option:focus-visible { outline: 2px solid #FF6A1A; outline-offset: 2px; }
@media (max-width: 767px) {
    :is(.ls-p02-leaf__sort, .ls-catalog-products) .ls-sort-enhanced { flex: 1; }
    :is(.ls-p02-leaf__sort, .ls-catalog-products) .ls-sort-trigger { min-width: 0; }
}

/* 1014: keep desktop navigation within the shared catalog content edges. */
@media (min-width: 992px) {
    body .site-header-top {
        width: min(1280px, 100%);
        max-width: 1280px;
        box-sizing: border-box;
        margin-inline: auto;
    }
    body .site-header-nav__track {
        width: min(1280px, calc(100% - 48px));
        max-width: 1280px;
        box-sizing: border-box;
        padding-inline: 0;
        justify-content: space-between;
    }
    body .site-header-nav__link { padding-inline: 10px; }
    body .site-main--single-product .ls-woo-shell,
    body .site-main--shop .ls-woo-shell {
        width: min(1280px, calc(100% - 48px));
    }
    body .page-p02-1-artistic-daily-essentials .page-shell,
    body .site-main--p02-leaf .ls-p02-leaf__shell {
        width: min(1328px, 100%);
        max-width: 1328px;
        box-sizing: border-box;
        padding-inline: 24px;
    }
}
@media (min-width: 992px) and (max-width: 1199px) {
    body .site-header-nav__link { padding-inline: 6px; }
    body .site-header-nav__separator { width: 8px; flex-basis: 8px; }
}

/* Category and product paths share the same type and current-page treatment. */
body.single-product .ls-pdp > .ls-pdp__breadcrumbs,
body :is(.page-p02-1-artistic-daily-essentials .breadcrumbs,
         .ls-p02-leaf__breadcrumb, .ls-woo-editorial-breadcrumb,
         .ls-pdp__breadcrumbs, .site-main--woocommerce .wxkn-breadcrumb) {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    font-family: 'Inter', Arial, sans-serif;
    font-size: 12px;
    font-weight: 400;
    line-height: 1.5;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: #655c56;
}
body :is(.page-p02-1-artistic-daily-essentials .breadcrumbs,
         .ls-p02-leaf__breadcrumb, .ls-woo-editorial-breadcrumb,
         .ls-pdp__breadcrumbs, .site-main--woocommerce .wxkn-breadcrumb) a,
body .ls-pdp__breadcrumb-sep {
    color: #655c56;
    text-decoration: none;
}
body :is(.page-p02-1-artistic-daily-essentials .breadcrumbs,
         .ls-p02-leaf__breadcrumb, .ls-woo-editorial-breadcrumb,
         .ls-pdp__breadcrumbs, .site-main--woocommerce .wxkn-breadcrumb)
    :is([aria-current="page"], a:hover, a:focus-visible) {
    color: #FF6A1A;
    font-weight: 400;
}
body .ls-woo-editorial-breadcrumb {
    justify-content: center;
    margin-bottom: 24px;
}

/* Narrow all mobile homepage slide cards while retaining their complete copy. */
@media (max-width: 991px) {
    body .page-home .hero-slide-card {
        left: 24px;
        right: 24px;
        width: auto;
    }
}
@media (max-width: 359px) {
    body .page-home .hero-slide-card { left: 20px; right: 20px; }
}

/* 101402: footer copy, navigation labels and editorial card titles. */
body .site-footer :is(.site-footer-brand-copy, .site-footer-contact__label,
    .site-footer-contact a, .site-footer-column > ul a, .site-footer-bottom,
    .footer-news-social-title, .footer-newsletter-input[type="email"]) {
    color: #000;
}
body .site-footer .footer-newsletter-input::placeholder {
    color: #000;
    opacity: 1;
}
body .site-header-nav__link,
body .site-header-nav__item:is(:hover, :focus-within) > .site-header-nav__link,
body .site-header-nav__link :is(span, i) {
    color: #fff;
    text-shadow: none;
}
body .site-header-nav__sublink,
body .site-header-nav__sublink:is(:hover, :focus-visible) {
    color: #000;
    text-shadow: none;
}
body .site-header-mobile-nav :is(.site-header-mobile-nav__link,
    .site-header-mobile-nav__sublink, .site-header-mobile-nav__overview) {
    color: #000;
    text-shadow: none;
}
body .page-journal .journal-card-title,
body .page-journal .journal-card-title a {
    font-size: 14px;
    line-height: 1.4;
}
/* The orange collaboration panel is an explicit exception to black body copy. */
@layer ls-customer-typography {
    body .page-journal .journal-card-title,
    body .page-journal .journal-card-title a {
        font-family: 'Linux Libertine', Georgia, serif !important;
    }
    body .page-designers .section-philosophy p.philosophy-copy,
    body .single-designer-quote-section p.single-designer-insight {
        color: #fff !important;
    }
}

/* One path treatment across content pages, collections and products. */
body {
    --ls-path-top: 180px; /* 100px masthead + 40px navigation + 40px gap. */
}
@media (min-width: 992px) and (max-width: 1200px) {
    body { --ls-path-top: 172px; } /* The masthead is 92px here. */
}
@media (max-width: 991px) {
    /* The 58px mobile search spacer is already in document flow. */
    body { --ls-path-top: 106px; } /* 82px masthead + 24px gap. */
}
@media (max-width: 767px) {
    body { --ls-path-top: 98px; } /* 74px masthead + 24px gap. */
}
body :is(.ls-page, .louissanka-page, [class^="page-"], .ls-about-intro,
    .ls-brand-story, .ls-silver-pdf, .ls-modern-pdf, .site-main, .ls-pdp,
    .single-journal-page, .single-designer-page)
    :is(.wxkn-breadcrumb, .breadcrumbs, .ls-p02-leaf__breadcrumb,
    .ls-woo-editorial-breadcrumb, .ls-pdp__breadcrumbs, .ls-catalog-breadcrumb) {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding-top: 0;
    margin-top: 0;
    font-family: 'Inter', Arial, sans-serif;
    font-size: 12px;
    font-weight: 400;
    line-height: 1.5;
    letter-spacing: .08em;
    text-align: center;
    text-transform: uppercase;
    color: #655c56;
}
body :is(.ls-page, .louissanka-page, [class^="page-"], .ls-about-intro,
    .ls-brand-story, .ls-silver-pdf, .ls-modern-pdf, .site-main, .ls-pdp,
    .single-journal-page, .single-designer-page)
    :is(.wxkn-breadcrumb, .breadcrumbs, .ls-p02-leaf__breadcrumb,
    .ls-woo-editorial-breadcrumb, .ls-pdp__breadcrumbs, .ls-catalog-breadcrumb)
    :is(a, span, strong) {
    font-family: inherit;
    font-size: inherit;
    font-weight: 400;
    line-height: inherit;
    color: inherit;
}
body :is(.ls-page, .louissanka-page, [class^="page-"], .ls-about-intro,
    .ls-brand-story, .ls-silver-pdf, .ls-modern-pdf, .site-main, .ls-pdp,
    .single-journal-page, .single-designer-page)
    :is(.wxkn-breadcrumb, .breadcrumbs, .ls-p02-leaf__breadcrumb,
    .ls-woo-editorial-breadcrumb, .ls-pdp__breadcrumbs, .ls-catalog-breadcrumb)
    :is([aria-current="page"], .wxkn-breadcrumb-current,
        .ls-pdp__breadcrumb-current, strong, a:hover, a:focus-visible) {
    color: #FF6A1A;
}
body .wxkn-breadcrumb-wrapper {
    display: flex;
    justify-content: center;
    padding-top: 0;
    line-height: 1.5;
    font-size: 12px;
}
/* Reset the first content section's offset, preserving its bottom spacing. */
body :is(.ls-page, .louissanka-page, .ls-about-intro, .ls-brand-story,
    .ls-silver-pdf, .ls-modern-pdf, [class^="page-"]) > section:has(:is(.wxkn-breadcrumb, .breadcrumbs)),
body .site-main--p02-leaf .ls-p02-leaf__hero {
    padding-top: var(--ls-path-top) !important;
}
body.single-product .site-main--woocommerce,
body .site-main--woocommerce.site-main--catalog {
    padding-top: var(--ls-path-top) !important;
}
body.single-product .site-main--woocommerce > .ls-woo-shell {
    margin-top: 0 !important;
    padding-top: 0;
}
body.single-product .woocommerce-notices-wrapper:empty {
    margin-bottom: 0;
}
body.single-product .ls-pdp > .ls-pdp__breadcrumbs {
    padding-top: 0 !important;
    justify-content: center;
}
body .site-main--woocommerce.site-main--editorial-archive {
    padding-top: 0 !important;
}
body .site-main--editorial-archive .ls-woo-archive-hero > .ls-woo-shell {
    margin-top: 0 !important;
    padding-top: var(--ls-path-top);
}

/* Article and designer detail templates use their own first-section wrappers. */
body .single-journal-page .single-journal-hero,
body .single-designer-page .single-designer-hero {
    padding-top: var(--ls-path-top);
}
body .single-designer-page .single-designer-topbar {
    align-items: start;
}
@media (max-width: 991px) {
    body .single-designer-page .single-designer-topbar {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
        justify-items: center;
    }
    body .single-designer-page .single-designer-breadcrumb-row {
        grid-column: 1 / -1;
        grid-row: 1;
    }
    body .single-designer-page .single-designer-nav-link--prev {
        grid-column: 1;
        grid-row: 2;
    }
    body .single-designer-page .single-designer-nav-link--next {
        grid-column: 1;
        grid-row: 3;
        text-align: center;
    }
}

/* Account status: preserve the solid icon for signed-in customers only. */
.louissanka-header .site-header-account:not(.is-logged-in) .fa-user::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='7.5' r='4.5'/%3E%3Cpath d='M20 21H4v-1.7C4 16.4 7.6 14 12 14s8 2.4 8 5.3V21Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='7.5' r='4.5'/%3E%3Cpath d='M20 21H4v-1.7C4 16.4 7.6 14 12 14s8 2.4 8 5.3V21Z'/%3E%3C/svg%3E");
}
.ls-ma__order-item-info a.ls-ma__order-item-name { color: inherit; }
.ls-ma__order-item-info a.ls-ma__order-item-name:hover,
.ls-ma__order-item-info a.ls-ma__order-item-name:focus-visible { text-decoration: underline; }

/* Shop sorting: match the custom menu to the catalog toolbar. */
.site-main--shop .ls-sort-enhanced { width: 250px; max-width: 100%; }
.site-main--shop .ls-sort-enhanced .ls-sort-trigger {
    min-width: 0;
    min-height: 46px;
    padding: 0 18px;
    border: 1px solid #e2dbd4;
    border-radius: 12px;
    background: #fff;
    color: #171717;
    font: 14px/1.4 Arial, sans-serif;
    transition: border-color .18s ease, box-shadow .18s ease;
}
.site-main--shop .ls-sort-trigger:hover,
.site-main--shop .ls-sort-trigger[aria-expanded="true"] {
    border-color: #ff6a1a;
    box-shadow: 0 0 0 3px rgba(255,106,26,.08);
}
.site-main--shop .ls-sort-trigger i { transition: transform .18s ease; }
.site-main--shop .ls-sort-trigger[aria-expanded="true"] i { transform: rotate(180deg); }
.site-main--shop .ls-sort-menu {
    top: calc(100% + 8px);
    right: 0;
    width: max(100%, 270px);
    max-height: min(360px, 65vh);
    overflow-y: auto;
    border-color: #eee4dc;
    box-shadow: 0 12px 32px rgba(30,20,10,.12);
}
.site-main--shop .ls-sort-option { font: 14px/1.4 Arial, sans-serif; }
.site-main--shop .ls-sort-option[aria-checked="true"] { background: #fff4ec; color: #b54100; }
.site-main--shop .ls-sort-option i { color: #ff6a1a; font-size: 12px; }
@media (max-width: 767px) {
    .site-main--shop .ls-sort-enhanced { width: 220px; }
    .site-main--shop .ls-sort-menu { width: max(100%, 260px); max-width: calc(100vw - 32px); }
}
@media (prefers-reduced-motion: reduce) {
    .site-main--shop .ls-sort-trigger,
    .site-main--shop .ls-sort-trigger i { transition: none; }
}


/* Transposh language selector in the existing header utility slot. */
.site-header-language {
    position: relative;
    flex-shrink: 0;
}
.site-header-utils .site-header-language > summary.site-header-lang {
    display: flex;
    gap: 5px;
    width: auto;
    min-width: 34px;
    margin: 0;
    padding: 0 6px;
    border: 0;
    background: transparent;
    cursor: pointer;
    list-style: none;
    font: inherit;
    font-size: 11px;
    letter-spacing: .04em;
}
.site-header-language > summary::-webkit-details-marker { display: none; }
.site-header-language > summary i {
    display: block;
    width: 5px;
    height: 5px;
    border-right: 1px solid currentColor;
    border-bottom: 1px solid currentColor;
    transform: translateY(-2px) rotate(45deg);
}
.site-header-language > summary i::before { content: none !important; }
.site-header-language[open] > summary i { transform: translateY(1px) rotate(225deg); }
.site-header-language > summary:focus-visible {
    outline: 2px solid #ff6a1a;
    outline-offset: 2px;
}
.site-header-language-options {
    position: absolute;
    top: calc(100% + 9px);
    right: 0;
    z-index: 150;
    width: 176px;
    padding: 7px;
    border: 1px solid #eee7e1;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 10px 30px rgb(0 0 0 / 12%);
}
.site-header-utils .site-header-language-options > a {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    width: 100%;
    height: 38px;
    padding: 0 11px;
    border-radius: 4px;
    color: #302b27;
    font-family: Arial, sans-serif;
    font-size: 13px;
    font-weight: 400;
    letter-spacing: 0;
    text-transform: none;
    white-space: nowrap;
}
.site-header-utils .site-header-language-options > a:hover,
.site-header-utils .site-header-language-options > a:focus-visible,
.site-header-utils .site-header-language-options > a[aria-current] {
    background: #fff2e9;
    color: #d9550d;
}
.site-header-language-code { font-size: 10px; opacity: .65; }
@media (max-width: 991px) {
    .site-header-language-options { right: -36px; }
}

/* 1028 customer revision 007, items 3–10. Navigation and languages unchanged. */
@layer ls-customer-typography {
    body :is(.page-home, .page-v7) :is(.home-overline, .v7-overline, .subtitle-italic) {
        font-family: 'Inter', Arial, sans-serif !important;
        font-size: 10px !important;
        font-style: normal !important;
        font-weight: 400 !important;
        line-height: 1.4 !important;
        letter-spacing: .22em !important;
        text-transform: uppercase !important;
        color: #FF6A1A !important;
    }
    body :is(.wxkn-breadcrumb, .breadcrumbs, .ls-p02-leaf__breadcrumb,
        .ls-woo-editorial-breadcrumb, .ls-pdp__breadcrumbs, .ls-catalog-breadcrumb,
        .woocommerce-breadcrumb) {
        font-size: 14px !important;
    }
    body :is(.wxkn-breadcrumb, .breadcrumbs, .ls-p02-leaf__breadcrumb,
        .ls-woo-editorial-breadcrumb, .ls-pdp__breadcrumbs, .ls-catalog-breadcrumb,
        .woocommerce-breadcrumb) :is(a, span, strong) {
        font-size: inherit !important;
    }
    body.tax-product_cat .section-transition::before,
    body.tax-product_cat .section-transition::after {
        content: none !important;
        display: none !important;
    }
    @media (max-width: 767px) {
        body :is(.wxkn-breadcrumb, .breadcrumbs, .ls-p02-leaf__breadcrumb,
            .ls-woo-editorial-breadcrumb, .ls-pdp__breadcrumbs, .ls-catalog-breadcrumb,
            .woocommerce-breadcrumb) { font-size: 13px !important; }
    }
}

/* Match the category page's 1280px inner area and 24px desktop gutters. */
body .ls-about-intro :is(.ls-shell, .ls-divider),
body :is(.page-gifts, .page-art-gallery) .page-shell,
body .page-designers .design-shell,
body .ls-brand-story :is(.ls-shell, .ls-divider),
body .ls-silver-pdf .sp-shell,
body .ls-modern-pdf .mp-shell,
body .page-journal .journal-shell {
    width: min(1328px, 100%);
    max-width: 1328px;
    box-sizing: border-box;
    margin-inline: auto;
    padding-inline: 24px;
}
@media (max-width: 991px) {
    body .ls-about-intro :is(.ls-shell, .ls-divider),
    body :is(.page-gifts, .page-art-gallery) .page-shell,
    body .page-designers .design-shell,
body .ls-brand-story :is(.ls-shell, .ls-divider),
body .ls-silver-pdf .sp-shell,
body .ls-modern-pdf .mp-shell,
body .page-journal .journal-shell { padding-inline: 20px; }
}

/* The toolbar owns the single border; nested controls retain focus outlines. */
body .site-main--p02-leaf .ls-p02-leaf__sort :is(.woocommerce-ordering, .ls-sort-trigger, select.orderby) {
    border: 0 !important;
    border-radius: 0;
    box-shadow: none !important;
    background-color: transparent;
}
body .ls-p02-leaf__sort :is(.ls-sort-trigger, select.orderby):focus-visible {
    outline: 2px solid #FF6A1A;
    outline-offset: 3px;
}
body.tax-product_cat :is(.category-product-card, .ls-woo-card,
    .page-p02-1-artistic-daily-essentials .product-card) {
    border: 1px solid #eee8e3 !important;
    border-radius: 16px;
    box-sizing: border-box;
}
body.tax-product_cat :is(.category-product-card, .ls-woo-card):is(:hover, :focus-within) {
    border-color: #e4d8ce !important;
}
.footer-newsletter-form { position: relative; margin: 0; }
.footer-newsletter-trap {
    position: absolute !important;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
}
body .site-footer .footer-newsletter-status {
    margin: 8px 12px 0;
    font: 13px/1.5 Arial, sans-serif !important;
    color: #244b32 !important;
}
body .site-footer .footer-newsletter-status:empty { display: none; }
body .site-footer .footer-newsletter-status[data-error] { color: #a62e15 !important; }
.footer-newsletter-btn:disabled { opacity: .65; cursor: wait; }


/* 1028 revision 007 item 1: compact, centered Chinese desktop navigation.
   Transposh sets html lang to zh / zh-tw; other languages keep their layout. */
@media (min-width: 992px) {
    html[lang|="zh"] body .site-header-nav__track {
        justify-content: center;
        column-gap: 0;
    }
    html[lang|="zh"] body .site-header-nav__link {
        padding-inline: 12px;
    }
    html[lang|="zh"] body .site-header-nav__separator {
        width: 8px;
        flex-basis: 8px;
    }
}


/* 1028: all newsletter entrances share the same save flow and local feedback. */
.ls-newsletter-form { position: relative; }
.ls-newsletter-honeypot {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    border: 0 !important;
    overflow: hidden;
    clip-path: inset(50%);
}
body .ls-newsletter-status {
    margin: 12px 0 0;
    line-height: 1.5;
    overflow-wrap: anywhere;
}
body .ls-newsletter-status:empty { display: none; }
.ls-newsletter-form button:disabled { opacity: .65; cursor: wait; }
@layer ls-customer-typography {
    body :is(.page-journal, .single-journal-page, .site-footer) p.ls-newsletter-status {
        font-family: Arial, sans-serif !important;
        font-size: 13px !important;
        color: #244b32 !important;
    }
    body :is(.page-journal, .single-journal-page, .site-footer) p.ls-newsletter-status[data-error] {
        color: #a62e15 !important;
    }
}


/* Full-width background; only the assurances content follows page gutters. */
@media (max-width: 991px) {
    .ls-footer-trust__inner { padding-inline: 20px; }
}

/* Align all footer content with the shared page gutters. */
@media (max-width: 991px) {
    body .site-footer-main {
        padding-inline: 20px;
    }
}

/* Keep selected-product cards consistently close to their section label. */
body.tax-product_cat .section-block .section-transition + .product-carousel .ls-product-entry-grid {
    margin-top: 16px;
}

/* 1104: Chinese primary navigation is larger than the 13px submenu text. */
@media (min-width: 992px) {
    html[lang|="zh"] body .site-header-nav__link {
        font-size: 16px;
        letter-spacing: .02em;
        padding-inline: 12px;
    }
}
@media (min-width: 992px) and (max-width: 1199px) {
    html[lang|="zh"] body .site-header-nav__link {
        font-size: 15px;
        padding-inline: 8px;
    }
}
