/** Shopify CDN: Minification failed

Line 932:2 Unexpected "{"
Line 932:3 Expected identifier but found "%"
Line 947:2 Unexpected "{"
Line 947:3 Expected identifier but found "%"

**/
/* SHOPIFY_STYLESHEETS_VERSION: 1.0 */


/* CSS from section stylesheet tags */
/* START_SECTION:brand-partners (INDEX:3) */
.brand-partners-section {
    background-color: var(--bp-bg);
    padding: var(--bp-padding-top) 0 var(--bp-padding-bottom) 0;
    overflow: hidden;
    position: relative;
  }

  /* Fade mask on left/right edges */
  .brand-partners-section::before,
  .brand-partners-section::after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    width: 80px;
    z-index: 2;
    pointer-events: none;
  }
  .brand-partners-section::before {
    left: 0;
    background: linear-gradient(to right, var(--bp-mask-color), transparent);
  }
  .brand-partners-section::after {
    right: 0;
    background: linear-gradient(to left, var(--bp-mask-color), transparent);
  }

  .brand-partners-wrapper {
    max-width: 100%;
  }

  .bp-header {
    text-align: center;
    margin-bottom: 2rem;
    padding: 0 20px;
  }

  .bp-section-title {
    font-size: var(--bp-heading-size);
    font-weight: 700;
    color: var(--bp-heading-color);
    margin: 0 0 0.5rem 0;
  }

  .bp-section-sub {
    font-size: var(--bp-sub-size);
    color: var(--bp-sub-color);
    margin: 0;
    line-height: 1.6;
  }

  .bp-marquee {
    width: 100%;
    overflow: hidden;
  }

  .bp-marquee-track {
    display: flex;
    align-items: center;
    gap: var(--bp-item-gap);
    width: max-content;
    animation: bp-scroll var(--bp-speed) linear infinite;
    will-change: transform;
  }

  .bp-marquee-track:hover {
    animation-play-state: paused;
  }

  @keyframes bp-scroll {
    0% { transform: translateX(0); }
    100% { transform: translateX(-50%); }
  }

  .bp-item {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .bp-item-link {
    display: block;
    text-decoration: none;
    color: inherit;
  }

  .bp-item-inner {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 0 var(--bp-item-gap);
    position: relative;
  }

  /* Divider between items */
  .bp-item:not(:last-child) .bp-item-inner::after {
    content: '';
    position: absolute;
    right: calc(var(--bp-item-gap) * -0.5);
    top: 50%;
    transform: translateY(-50%);
    width: var(--bp-divider-width);
    height: 24px;
    background-color: var(--bp-divider-color);
    border-radius: 2px;
  }

  .bp-logo-img {
    max-height: var(--bp-logo-height);
    max-width: var(--bp-logo-width);
    width: auto;
    height: auto;
    object-fit: contain;
    opacity: 0.6;
    filter: grayscale(100%);
    transition: opacity 0.3s ease, filter 0.3s ease, transform 0.3s ease;
  }

  .bp-item-link:hover .bp-logo-img {
    opacity: 1;
    filter: grayscale(0%);
    transform: scale(1.05);
  }

  .bp-logo-text {
    font-size: var(--bp-text-size);
    font-weight: 600;
    color: var(--bp-text-color);
    white-space: nowrap;
    letter-spacing: 0.5px;
    opacity: 0.7;
    transition: opacity 0.3s ease;
  }

  .bp-item-link:hover .bp-logo-text {
    opacity: 1;
  }

  .bp-logo-text--placeholder {
    text-transform: uppercase;
    letter-spacing: 1px;
  }

  /* Responsive */
  @media screen and (max-width: 768px) {
    .brand-partners-section::before,
    .brand-partners-section::after {
      width: 40px;
    }
  }
/* END_SECTION:brand-partners */

/* START_SECTION:bundle-products (INDEX:4) */
.bundle-products-section {
    background-color: var(--bp-bg);
    padding: var(--bp-padding-top) var(--bp-padding-right) var(--bp-padding-bottom) var(--bp-padding-left);
    box-sizing: border-box;
  }

  .bundle-products-wrapper {
    max-width: 1200px;
    margin: 0 auto;
  }

  .bp-section-title {
    text-align: center;
    font-size: var(--bp-heading-size);
    font-weight: 700;
    color: var(--bp-heading-color);
    margin: 0 0 0.5rem 0;
  }

  .bp-section-subtitle {
    text-align: center;
    font-size: var(--bp-subheading-size);
    color: var(--bp-subheading-color);
    margin: 0 0 2rem 0;
  }

  .bp-tabs-wrapper {
    margin-bottom: 0;
  }

  .bp-tabs {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: var(--bp-tab-gap);
    margin-bottom: 2rem;
  }

  .bp-tab {
    padding: 10px 24px;
    background-color: var(--bp-tab-bg);
    color: var(--bp-tab-color);
    border: none;
    border-radius: var(--bp-tab-radius);
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.3s ease, color 0.3s ease, transform 0.2s ease, border-color 0.3s ease;
    display: inline-flex;
    align-items: center;
    gap: 6px;
  }

  .bp-tab:hover {
    transform: translateY(-2px);
  }

  .bp-tab--active {
    background-color: var(--bp-tab-active-bg);
    color: var(--bp-tab-active-color);
  }

  /* Stroked (outlined) tab style */
  .bp-tabs--stroked .bp-tab {
    background-color: transparent;
    border: 2px solid var(--bp-tab-border-color);
    color: var(--bp-tab-color);
  }
  .bp-tabs--stroked .bp-tab--active {
    background-color: transparent;
    border-color: var(--bp-tab-active-border-color);
    color: var(--bp-tab-active-border-color);
  }

  /* Underline (single heading with bottom line) tab style */
  .bp-tabs--underline {
    gap: 0;
    border-bottom: 1px solid #e0e0e0;
  }
  .bp-tabs--underline .bp-tab {
    background-color: transparent;
    border: none;
    border-radius: 0;
    color: var(--bp-tab-color);
    padding: 10px 20px;
    position: relative;
  }
  .bp-tabs--underline .bp-tab--active {
    background-color: transparent;
    color: var(--bp-underline-color);
  }
  .bp-tabs--underline .bp-tab--active::after {
    content: '';
    position: absolute;
    bottom: -1px;
    left: 0;
    right: 0;
    height: var(--bp-underline-width);
    background-color: var(--bp-underline-color);
  }
  .bp-tabs--underline .bp-tab:hover {
    transform: none;
  }

  .bp-tab-content {
    animation: bp-fade-in 0.4s ease;
  }

  @keyframes bp-fade-in {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
  }

  .bp-grid {
    display: grid;
    grid-template-columns: repeat(var(--bp-items-per-row), 1fr);
    gap: var(--bp-gap);
  }

  .bp-product-card {
    background-color: var(--bp-card-bg);
    border-radius: var(--bp-card-radius);
    border: var(--bp-border-width) solid var(--bp-border-color);
    overflow: hidden;
    box-shadow: var(--bp-shadow);
    transition: transform 0.35s cubic-bezier(0.175, 0.885, 0.32, 1.275), box-shadow 0.35s ease;
    display: flex;
    flex-direction: column;
  }

  .bp-product-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 16px 40px rgba(0, 0, 0, 0.12);
  }

  .bp-product-link {
    display: block;
    text-decoration: none;
    color: inherit;
  }

  .bp-product-image-wrapper {
    position: relative;
    width: 100%;
    padding-top: var(--bp-image-ratio);
    overflow: hidden;
    background-color: #f5f5f5;
  }

  .bp-product-image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
  }

  .bp-product-image--placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .bp-placeholder-svg {
    width: 50%;
    height: 50%;
    opacity: 0.3;
  }

  .bp-product-card:hover .bp-product-image {
    transform: scale(1.08);
  }

  .bp-sale-badge,
  .bp-soldout-badge {
    position: absolute;
    top: 10px;
    left: 10px;
    padding: 4px 12px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    z-index: 2;
  }

  .bp-sale-badge {
    background-color: #e63946;
    color: #ffffff;
  }

  .bp-soldout-badge {
    background-color: #999999;
    color: #ffffff;
  }

  .bp-product-info {
    padding: var(--bp-card-padding);
    display: flex;
    flex-direction: column;
    flex: 1;
  }

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

  .bp-product-title {
    font-size: var(--bp-title-size);
    color: var(--bp-title-color);
    font-weight: 600;
    margin: 0 0 6px 0;
    line-height: 1.3;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
  }

  .bp-product-title-link:hover .bp-product-title {
    opacity: 0.7;
  }

  .bp-product-vendor {
    font-size: 12px;
    color: #999;
    margin: 0 0 6px 0;
    text-transform: uppercase;
    letter-spacing: 0.5px;
  }

  .bp-product-price-wrapper {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 12px;
  }

  .bp-product-price {
    font-size: var(--bp-price-size);
    color: var(--bp-price-color);
    font-weight: 700;
  }

  .bp-product-price--sale {
    color: #e63946;
  }

  .bp-product-compare-price {
    font-size: calc(var(--bp-price-size) * 0.85);
    color: var(--bp-compare-color);
    text-decoration: line-through;
  }

  .bp-add-to-cart-form {
    margin-top: auto;
  }

  .bp-add-to-cart-btn {
    width: 100%;
    padding: 12px 16px;
    background-color: var(--bp-btn-bg);
    color: var(--bp-btn-color);
    border: none;
    border-radius: var(--bp-btn-radius);
    font-size: var(--bp-btn-size);
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.3s ease, transform 0.2s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
  }

  .bp-add-to-cart-btn:hover:not(.bp-add-to-cart-btn--disabled):not(.is-adding) {
    background-color: var(--bp-btn-bg-hover);
    transform: translateY(-2px);
  }

  .bp-add-to-cart-btn:active:not(.bp-add-to-cart-btn--disabled) {
    transform: translateY(0);
  }

  .bp-add-to-cart-btn--disabled {
    background-color: #ccc;
    color: #666;
    cursor: not-allowed;
  }

  .bp-add-to-cart-btn.is-adding .bp-btn-text { display: none; }
  .bp-add-to-cart-btn.is-adding .bp-btn-loading { display: flex !important; }

  .bp-spin {
    animation: bp-spin-anim 0.8s linear infinite;
  }

  @keyframes bp-spin-anim {
    to { transform: rotate(360deg); }
  }

  /* Buy Now Button */
  .bp-buy-now-btn {
    width: 100%;
    padding: 12px 16px;
    background-color: var(--bp-buy-now-bg);
    color: var(--bp-buy-now-color);
    border: none;
    border-radius: var(--bp-buy-now-radius);
    font-size: var(--bp-buy-now-size);
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.3s ease, transform 0.2s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-top: 8px;
  }

  .bp-buy-now-btn:hover {
    background-color: var(--bp-buy-now-bg-hover);
    transform: translateY(-2px);
  }

  .bp-buy-now-btn:active {
    transform: translateY(0);
  }

  /* Sales Timer */
  .bp-sales-timer {
    background-color: var(--bp-timer-bg);
    color: var(--bp-timer-color);
    border-radius: var(--bp-timer-radius);
    padding: 12px;
    margin-bottom: 12px;
    text-align: center;
  }

  .bp-timer-label {
    font-size: 12px;
    font-weight: 700;
    color: var(--bp-timer-label-color);
    margin: 0 0 8px 0;
    text-transform: uppercase;
    letter-spacing: 0.5px;
  }

  .bp-timer-units {
    display: flex;
    justify-content: center;
    gap: 8px;
  }

  .bp-timer-unit {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
  }

  .bp-timer-num {
    background-color: var(--bp-timer-num-bg);
    color: var(--bp-timer-num-color);
    font-size: 18px;
    font-weight: 700;
    padding: 6px 10px;
    border-radius: 6px;
    min-width: 36px;
    display: inline-block;
  }

  .bp-timer-unit-label {
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    opacity: 0.8;
  }

  .bp-view-all-wrapper {
    text-align: center;
    margin-top: 2.5rem;
  }

  .bp-view-all-btn {
    display: inline-block;
    padding: 12px 32px;
    background-color: transparent;
    color: var(--bp-btn-bg);
    border: 2px solid var(--bp-btn-bg);
    border-radius: var(--bp-btn-radius);
    font-size: 15px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.3s ease;
  }

  .bp-view-all-btn:hover {
    background-color: var(--bp-btn-bg);
    color: var(--bp-btn-color);
  }

  /* Responsive */
  @media screen and (max-width: 1024px) {
    .bp-grid {
      grid-template-columns: repeat(min(var(--bp-items-per-row), 3), 1fr);
    }
  }

  @media screen and (max-width: 768px) {
    .bp-grid {
      grid-template-columns: repeat(min(var(--bp-items-per-row), 2), 1fr);
    }
    .bp-tabs {
      gap: 8px;
    }
    .bp-tab {
      padding: 8px 18px;
      font-size: 14px;
    }
  }

  @media screen and (max-width: 480px) {
    .bp-grid {
      grid-template-columns: 1fr;
    }
    .bp-section-title { font-size: calc(var(--bp-heading-size) * 0.75); }
    .bp-tabs {
      flex-wrap: nowrap;
      overflow-x: auto;
      justify-content: flex-start;
      -webkit-overflow-scrolling: touch;
      padding-bottom: 8px;
    }
    .bp-tab {
      white-space: nowrap;
      flex-shrink: 0;
    }
  }
/* END_SECTION:bundle-products */

/* START_SECTION:categories (INDEX:6) */
.categories-section {
    background-color: var(--cat-bg);
    padding: var(--cat-padding-v) var(--cat-padding-h);
    box-sizing: border-box;
    position: relative;
    overflow: hidden;
  }

  .categories-wrapper {
    max-width: 1200px;
    margin: 0 auto;
    position: relative;
  }

  .categories-section-title {
    text-align: center;
    font-size: 2rem;
    font-weight: 700;
    margin: 0 0 0.5rem 0;
    color: var(--cat-title-color);
  }

  .categories-section-subtitle {
    text-align: center;
    font-size: 1.1rem;
    color: #666;
    margin: 0 0 2rem 0;
  }

  .categories-carousel-container {
    position: relative;
    display: flex;
    align-items: center;
    gap: 10px;
  }

  .categories-carousel-track {
    overflow: hidden;
    flex: 1;
  }

  .categories-grid {
    display: flex;
    gap: var(--cat-gap);
    transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    will-change: transform;
  }

  .category-item {
    flex: 0 0 calc((100% - (var(--cat-items-per-row) - 1) * var(--cat-gap)) / var(--cat-items-per-row));
    min-width: 0;
  }

  .category-link {
    display: block;
    text-decoration: none;
    color: inherit;
  }

  .category-media-wrapper {
    position: relative;
    width: var(--cat-media-size);
    height: var(--cat-media-size);
    margin: 0 auto;
    overflow: hidden;
    border: var(--cat-border-width) solid var(--cat-border-color);
    transition: transform 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275), box-shadow 0.4s ease;
  }

  .category-item[data-shape="circle"] .category-media-wrapper {
    border-radius: 50%;
  }

  .category-item[data-shape="square"] .category-media-wrapper {
    border-radius: 12px;
  }

  .category-media {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease, filter 0.3s ease;
    display: block;
  }

  .category-media--placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .category-placeholder-svg {
    width: 50%;
    height: 50%;
    opacity: 0.4;
  }

  .category-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: var(--cat-overlay-color);
    opacity: var(--cat-overlay-opacity);
    transition: opacity 0.3s ease;
    pointer-events: none;
  }

  .category-badge {
    position: absolute;
    top: 10px;
    right: 10px;
    padding: 4px 12px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 600;
    z-index: 2;
    text-transform: uppercase;
    letter-spacing: 0.5px;
  }

  .category-title-wrapper {
    text-align: center;
    padding: 12px 8px;
    margin-top: 12px;
    border-radius: 8px;
    transition: background-color 0.3s ease;
  }

  .category-title {
    margin: 0;
    line-height: 1.3;
    transition: color 0.3s ease;
  }

  .category-subtitle {
    margin: 4px 0 0 0;
    line-height: 1.4;
  }

  .category-link:hover .category-media-wrapper {
    transform: scale(var(--cat-hover-scale));
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.2);
  }

  .category-link:hover .category-media {
    transform: scale(1.1);
    filter: brightness(1.05);
  }

  .category-link:hover .category-overlay {
    opacity: calc(var(--cat-overlay-opacity) * 0.5);
  }

  .category-link:hover .category-title {
    opacity: 0.8;
  }

  .cat-carousel-btn {
    position: absolute;
    top: calc(var(--cat-media-size) / 2);
    transform: translateY(-50%);
    z-index: 10;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    border: none;
    background-color: var(--cat-arrow-bg);
    color: var(--cat-arrow-color);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
    transition: all 0.3s ease;
    opacity: 0.85;
  }

  .cat-carousel-btn:hover {
    opacity: 1;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.25);
    transform: translateY(-50%) scale(1.1);
  }

  .cat-carousel-prev { left: -10px; }
  .cat-carousel-next { right: -10px; }

  .cat-carousel-dots {
    display: flex;
    justify-content: center;
    gap: 8px;
    margin-top: 20px;
  }

  .cat-carousel-dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background-color: var(--cat-dot-inactive);
    border: none;
    cursor: pointer;
    transition: all 0.3s ease;
    padding: 0;
  }

  .cat-carousel-dot.is-active {
    background-color: var(--cat-dot-active);
    transform: scale(1.3);
  }

  @media screen and (max-width: 1024px) {
    .category-item {
      flex: 0 0 calc((100% - var(--cat-gap)) / 2);
    }
  }

  @media screen and (max-width: 600px) {
    .category-item {
      flex: 0 0 100%;
    }
    .categories-section-title { font-size: 1.5rem; }
    .cat-carousel-btn { width: 36px; height: 36px; }
  }
/* END_SECTION:categories */

/* START_SECTION:collection (INDEX:7) */
.collection-products {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(500px, 1fr));
  }
/* END_SECTION:collection */

/* START_SECTION:collections (INDEX:8) */
.collections {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(min(var(--collection-card-size), 100%), 1fr));
    gap: var(--grid-gap);
  }
  .collections--compact {
    --collection-card-size: 160px;
  }
  .collections--full {
    --collection-card-size: 280px;
  }
  .collection-card {
    display: flex;
    flex-direction: column;
    width: 100%;
  }
/* END_SECTION:collections */

/* START_SECTION:custom-section (INDEX:9) */
.custom-section {
    position: relative;
    overflow: hidden;
    width: 100%;
  }
  .custom-section__background {
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: -1;
    overflow: hidden;
  }
  .custom-section__background img {
    position: absolute;
    width: 100%;
    height: auto;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
  .custom-section__content {
    display: grid;
    grid-template-columns: var(--content-grid);
  }
  .custom-section__content > * {
    grid-column: 2;
  }
/* END_SECTION:custom-section */

/* START_SECTION:featured-collection (INDEX:10) */
.featured-collection-section {
    background-color: var(--fc-bg);
    padding: var(--fc-padding-top) var(--fc-padding-right) var(--fc-padding-bottom) var(--fc-padding-left);
    box-sizing: border-box;
  }

  .featured-collection-wrapper {
    max-width: 1200px;
    margin: 0 auto;
  }

  .fc-header {
    margin-bottom: 2rem;
  }

  .fc-section-title {
    text-align: var(--fc-heading-align);
    font-size: var(--fc-heading-size);
    font-weight: 700;
    color: var(--fc-heading-color);
    margin: 0 0 0.5rem 0;
    position: relative;
    display: inline-block;
  }

  .fc-header {
    text-align: var(--fc-heading-align);
  }

  .fc-header .fc-section-title {
    display: inline-block;
  }

  {% if section.settings.heading_underline_enable %}
  .fc-section-title::after {
    content: '';
    display: block;
    width: 60px;
    height: var(--fc-underline-width);
    background-color: var(--fc-underline-color);
    margin-top: 8px;
    margin-left: auto;
    margin-right: auto;
  }
  .fc-header[style*="center"] .fc-section-title::after,
  .featured-collection-wrapper .fc-header {
    text-align: var(--fc-heading-align);
  }
  {% endif %}

  .fc-section-desc {
    font-size: var(--fc-desc-size);
    color: var(--fc-desc-color);
    margin: 0.5rem auto 0;
    max-width: 700px;
    line-height: 1.6;
  }

  .fc-grid {
    display: grid;
    grid-template-columns: repeat(var(--fc-items-per-row), 1fr);
    gap: var(--fc-gap);
  }

  .fc-product-card {
    background-color: var(--fc-card-bg);
    border-radius: var(--fc-card-radius);
    border: var(--fc-border-width) solid var(--fc-border-color);
    overflow: hidden;
    box-shadow: var(--fc-shadow);
    transition: transform 0.35s cubic-bezier(0.175, 0.885, 0.32, 1.275), box-shadow 0.35s ease;
    display: flex;
    flex-direction: column;
  }

  .fc-product-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 16px 40px rgba(0, 0, 0, 0.12);
  }

  .fc-product-link {
    display: block;
    text-decoration: none;
    color: inherit;
  }

  .fc-product-image-wrapper {
    position: relative;
    width: 100%;
    padding-top: var(--fc-image-ratio);
    overflow: hidden;
    background-color: #f5f5f5;
  }

  .fc-product-image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
  }

  .fc-product-image--placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .fc-placeholder-svg {
    width: 50%;
    height: 50%;
    opacity: 0.3;
  }

  .fc-product-card:hover .fc-product-image {
    transform: scale(1.08);
  }

  .fc-sale-badge,
  .fc-soldout-badge {
    position: absolute;
    top: 10px;
    left: 10px;
    padding: 4px 12px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    z-index: 2;
  }

  .fc-sale-badge {
    background-color: #e63946;
    color: #ffffff;
  }

  .fc-soldout-badge {
    background-color: #999999;
    color: #ffffff;
  }

  .fc-product-info {
    padding: var(--fc-card-padding);
    display: flex;
    flex-direction: column;
    flex: 1;
  }

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

  .fc-product-title {
    font-size: var(--fc-title-size);
    color: var(--fc-title-color);
    font-weight: 600;
    margin: 0 0 6px 0;
    line-height: 1.3;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
  }

  .fc-product-title-link:hover .fc-product-title {
    opacity: 0.7;
  }

  .fc-product-vendor {
    font-size: 12px;
    color: #999;
    margin: 0 0 6px 0;
    text-transform: uppercase;
    letter-spacing: 0.5px;
  }

  .fc-product-price-wrapper {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 12px;
  }

  .fc-product-price {
    font-size: var(--fc-price-size);
    color: var(--fc-price-color);
    font-weight: 700;
  }

  .fc-product-price--sale {
    color: #e63946;
  }

  .fc-product-compare-price {
    font-size: calc(var(--fc-price-size) * 0.85);
    color: var(--fc-compare-color);
    text-decoration: line-through;
  }

  .fc-add-to-cart-form {
    margin-top: auto;
  }

  .fc-add-to-cart-btn {
    width: 100%;
    padding: 12px 16px;
    background-color: var(--fc-btn-bg);
    color: var(--fc-btn-color);
    border: none;
    border-radius: var(--fc-btn-radius);
    font-size: var(--fc-btn-size);
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.3s ease, transform 0.2s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
  }

  .fc-add-to-cart-btn:hover:not(.fc-add-to-cart-btn--disabled):not(.is-adding) {
    background-color: var(--fc-btn-bg-hover);
    transform: translateY(-2px);
  }

  .fc-add-to-cart-btn:active:not(.fc-add-to-cart-btn--disabled) {
    transform: translateY(0);
  }

  .fc-add-to-cart-btn--disabled {
    background-color: #ccc;
    color: #666;
    cursor: not-allowed;
  }

  .fc-add-to-cart-btn.is-adding .fc-btn-text { display: none; }
  .fc-add-to-cart-btn.is-adding .fc-btn-loading { display: flex !important; }

  .fc-spin {
    animation: fc-spin-anim 0.8s linear infinite;
  }

  @keyframes fc-spin-anim {
    to { transform: rotate(360deg); }
  }

  /* Buy Now Button */
  .fc-buy-now-btn {
    width: 100%;
    padding: 12px 16px;
    background-color: var(--fc-buy-now-bg);
    color: var(--fc-buy-now-color);
    border: none;
    border-radius: var(--fc-buy-now-radius);
    font-size: var(--fc-buy-now-size);
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.3s ease, transform 0.2s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-top: 8px;
  }

  .fc-buy-now-btn:hover {
    background-color: var(--fc-buy-now-bg-hover);
    transform: translateY(-2px);
  }

  .fc-buy-now-btn:active {
    transform: translateY(0);
  }

  /* Sales Timer */
  .fc-sales-timer {
    background-color: var(--fc-timer-bg);
    color: var(--fc-timer-color);
    border-radius: var(--fc-timer-radius);
    padding: 12px;
    margin-bottom: 12px;
    text-align: center;
  }

  .fc-timer-label {
    font-size: 12px;
    font-weight: 700;
    color: var(--fc-timer-label-color);
    margin: 0 0 8px 0;
    text-transform: uppercase;
    letter-spacing: 0.5px;
  }

  .fc-timer-units {
    display: flex;
    justify-content: center;
    gap: 8px;
  }

  .fc-timer-unit {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
  }

  .fc-timer-num {
    background-color: var(--fc-timer-num-bg);
    color: var(--fc-timer-num-color);
    font-size: 18px;
    font-weight: 700;
    padding: 6px 10px;
    border-radius: 6px;
    min-width: 36px;
    display: inline-block;
  }

  .fc-timer-unit-label {
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    opacity: 0.8;
  }

  .fc-view-all-wrapper {
    text-align: center;
    margin-top: 2.5rem;
  }

  .fc-view-all-btn {
    display: inline-block;
    padding: 12px 32px;
    background-color: transparent;
    color: var(--fc-btn-bg);
    border: 2px solid var(--fc-btn-bg);
    border-radius: var(--fc-btn-radius);
    font-size: 15px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.3s ease;
  }

  .fc-view-all-btn:hover {
    background-color: var(--fc-btn-bg);
    color: var(--fc-btn-color);
  }

  /* Responsive */
  @media screen and (max-width: 1024px) {
    .fc-grid {
      grid-template-columns: repeat(min(var(--fc-items-per-row), 3), 1fr);
    }
  }

  @media screen and (max-width: 768px) {
    .fc-grid {
      grid-template-columns: repeat(min(var(--fc-items-per-row), 2), 1fr);
    }
  }

  @media screen and (max-width: 480px) {
    .fc-grid {
      grid-template-columns: 1fr;
    }
    .fc-section-title { font-size: calc(var(--fc-heading-size) * 0.75); }
  }
/* END_SECTION:featured-collection */

/* START_SECTION:footer (INDEX:11) */
footer {
    background-color: var(--footer-bg);
    color: var(--footer-text-color);
    padding: var(--footer-padding-top) 24px var(--footer-padding-bottom) 24px;
    box-sizing: border-box;
  }

  .footer__inner {
    max-width: 1200px;
    margin: 0 auto;
  }

  .footer__description {
    font-size: var(--footer-font-size);
    color: var(--footer-text-color);
    line-height: 1.6;
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid rgba(255,255,255,0.1);
  }

  .footer__description p {
    margin: 0 0 8px 0;
  }

  .footer__main {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 1rem;
    margin-bottom: 20px;
  }

  .footer__nav {
    display: flex;
    gap: 1.5rem;
    align-items: center;
    flex-wrap: wrap;
  }

  .footer__nav-link {
    text-decoration: none;
    color: var(--footer-link-color);
    font-size: var(--footer-font-size);
    font-weight: 500;
    transition: color 0.2s ease;
  }

  .footer__nav-link:hover {
    color: var(--footer-link-hover-color);
  }

  .footer__nav-link--active {
    color: var(--footer-link-active-color);
  }

  .footer__socials {
    display: flex;
    gap: 0.75rem;
    align-items: center;
  }

  .footer__social-link {
    display: flex;
    align-items: center;
    color: var(--footer-social-color, var(--footer-link-color));
    text-decoration: none;
    transition: opacity 0.2s ease;
  }

  .footer__social-link:hover {
    opacity: 0.7;
  }

  .footer__social-link svg {
    width: var(--footer-social-size, 20px);
    height: var(--footer-social-size, 20px);
  }

  .footer__bottom {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 1rem;
    padding-top: 20px;
    border-top: 1px solid rgba(255,255,255,0.1);
  }

  .footer__copyright {
    font-size: var(--footer-font-size);
    color: var(--footer-text-color);
  }

  .footer__copyright a {
    color: var(--footer-link-color);
    text-decoration: none;
    transition: color 0.2s ease;
  }

  .footer__copyright a:hover {
    color: var(--footer-link-hover-color);
  }

  .footer__payment {
    display: flex;
    gap: 0.5rem;
    align-items: center;
    flex-wrap: wrap;
  }

  .footer__payment svg {
    width: 38px;
    height: auto;
  }

  @media screen and (max-width: 768px) {
    .footer__main {
      flex-direction: column;
      text-align: center;
    }
    .footer__bottom {
      flex-direction: column;
      text-align: center;
    }
    .footer__nav {
      justify-content: center;
    }
  }
/* END_SECTION:footer */

/* START_SECTION:header (INDEX:12) */
.main-header {
    width: 100vw;
    max-width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    height: var(--header-height, 80px);
    background-color: var(--header-bg-color, #ffffff);
    color: var(--header-text-color, #000000);
    font-size: var(--header-text-size, 16px);
    display: flex;
    align-items: center;
    position: sticky;
    top: 0;
    z-index: 99;
    box-sizing: border-box;
    opacity: var(--header-opacity, 1);
  }

  /* Liquid glass / iOS-style blur */
  .main-header[data-glass="true"] {
    background-color: rgba(255, 255, 255, 0.15);
    backdrop-filter: blur(var(--header-blur, 10px));
    -webkit-backdrop-filter: blur(var(--header-blur, 10px));
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
  }

  .main-header[data-glass="true"] .main-header__menu-link,
  .main-header[data-glass="true"] .main-header__logo-text,
  .main-header[data-glass="true"] .main-header__logo-link {
    color: var(--header-text-color, #ffffff);
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
  }

  .main-header__inner {
    width: 100%;
    max-width: 1400px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 1.5rem;
    gap: 1rem;
  }

  /* Logo area */
  .main-header__logo-area {
    flex-shrink: 0;
    display: flex;
    align-items: center;
  }

  .main-header__logo-link {
    text-decoration: none;
    color: inherit;
    display: flex;
    align-items: center;
  }

  .main-header__logo-img {
    object-fit: contain;
    display: block;
  }

  .main-header__logo-text {
    font-size: var(--header-text-size, 16px);
    font-weight: 700;
    color: inherit;
    display: inline-block;
  }

  .main-header__logo-text strong,
  .main-header__logo-text b {
    font-weight: 800;
  }

  .main-header__logo-text a {
    color: inherit;
    text-decoration: underline;
  }

  /* Logo positions */
  .main-header__logo-left {
    order: 0;
  }

  .main-header__logo-center {
    order: 1;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
  }

  .main-header__logo-right {
    order: 2;
  }

  .main-header__inner:has(.main-header__logo-center) {
    justify-content: space-between;
  }

  .main-header__inner:has(.main-header__logo-center) .main-header__menu {
    order: 0;
  }

  .main-header__inner:has(.main-header__logo-center) .main-header__icons {
    order: 2;
  }

  /* Menu */
  .main-header__menu {
    display: flex;
    align-items: center;
    gap: 1.5rem;
    flex: 1;
  }

  .main-header__menu-left {
    justify-content: flex-start;
  }

  .main-header__menu-center {
    justify-content: center;
  }

  .main-header__menu-right {
    justify-content: flex-end;
  }

  .main-header__menu-link {
    text-decoration: none;
    color: var(--header-menu-color, inherit);
    font-size: var(--header-menu-size, var(--header-text-size, 16px));
    transition: color 0.2s ease, opacity 0.2s ease;
    white-space: nowrap;
  }

  .main-header__menu-link:hover {
    color: var(--header-menu-hover-color, var(--header-menu-color, inherit));
    opacity: 0.8;
  }

  .main-header__menu-link--active {
    font-weight: 600;
  }

  /* Icons */
  .main-header__icons {
    display: flex;
    align-items: center;
    gap: 1rem;
    flex-shrink: 0;
  }

  .main-header__icons-left {
    justify-content: flex-start;
  }

  .main-header__icons-center {
    justify-content: center;
  }

  .main-header__icons-right {
    justify-content: flex-end;
  }

  .main-header__icons svg {
    width: var(--header-icon-size, 24px);
    height: var(--header-icon-size, 24px);
  }

  .main-header__account-link,
  .main-header__cart-link {
    position: relative;
    display: flex;
    align-items: center;
    color: var(--header-icon-color, inherit);
    text-decoration: none;
  }

  .main-header__cart-count {
    position: absolute;
    left: 100%;
    top: -0.5rem;
    font-size: 0.7rem;
    background: var(--header-bg-color, #ffffff);
    color: var(--header-text-color, #000000);
    border-radius: 50%;
    width: 1.1rem;
    height: 1.1rem;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
  }

  /* Social icons in header */
  .main-header__socials {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-right: 0.5rem;
  }

  .main-header__social-link {
    display: flex;
    align-items: center;
    color: var(--header-social-color, inherit);
    text-decoration: none;
    transition: opacity 0.2s ease;
  }

  .main-header__social-link:hover {
    opacity: 0.7;
  }

  .main-header__social-link svg {
    width: var(--header-social-size, 20px);
    height: var(--header-social-size, 20px);
  }

  /* ====== Logo Animations ====== */

  /* Fade in/out */
  .main-header__logo-text[data-logo-anim="fade-in"] {
    animation: header-fade-in 2s ease-in-out infinite;
  }
  @keyframes header-fade-in {
    0% { opacity: 0; }
    50% { opacity: 1; }
    100% { opacity: 0; }
  }

  /* Slide in */
  .main-header__logo-text[data-logo-anim="slide-in"] {
    display: inline-block;
    animation: header-slide-in 3s ease-in-out infinite;
  }
  @keyframes header-slide-in {
    0% { transform: translateX(-100%); opacity: 0; }
    30%, 70% { transform: translateX(0); opacity: 1; }
    100% { transform: translateX(100%); opacity: 0; }
  }

  /* Bounce */
  .main-header__logo-text[data-logo-anim="bounce"] {
    display: inline-block;
    animation: header-bounce 2s ease-in-out infinite;
  }
  @keyframes header-bounce {
    0%, 100% { transform: translateY(0); }
    25% { transform: translateY(-8px); }
    50% { transform: translateY(0); }
    75% { transform: translateY(-4px); }
  }

  /* Pulse */
  .main-header__logo-text[data-logo-anim="pulse"] {
    display: inline-block;
    animation: header-pulse 1.5s ease-in-out infinite;
  }
  @keyframes header-pulse {
    0%, 100% { transform: scale(1); }
    50% { transform: scale(1.1); }
  }

  /* Glow */
  .main-header__logo-text[data-logo-anim="glow"] {
    animation: header-glow 2s ease-in-out infinite;
  }
  @keyframes header-glow {
    0%, 100% { text-shadow: 0 0 5px currentColor, 0 0 10px currentColor; }
    50% { text-shadow: 0 0 20px currentColor, 0 0 40px currentColor; }
  }

  /* Flip */
  .main-header__logo-text[data-logo-anim="flip"] {
    display: inline-block;
    animation: header-flip 3s ease-in-out infinite;
  }
  @keyframes header-flip {
    0%, 100% { transform: rotateY(0); }
    50% { transform: rotateY(180deg); }
  }

  /* Rotate */
  .main-header__logo-text[data-logo-anim="rotate"] {
    display: inline-block;
    animation: header-rotate 3s linear infinite;
  }
  @keyframes header-rotate {
    0% { transform: rotate(0); }
    100% { transform: rotate(360deg); }
  }

  /* Shake */
  .main-header__logo-text[data-logo-anim="shake"] {
    display: inline-block;
    animation: header-shake 0.5s ease-in-out infinite;
  }
  @keyframes header-shake {
    0%, 100% { transform: translateX(0); }
    25% { transform: translateX(-3px); }
    75% { transform: translateX(3px); }
  }

  /* Zoom */
  .main-header__logo-text[data-logo-anim="zoom"] {
    display: inline-block;
    animation: header-zoom 2s ease-in-out infinite;
  }
  @keyframes header-zoom {
    0%, 100% { transform: scale(1); }
    50% { transform: scale(1.3); }
  }

  /* Wave */
  .main-header__logo-text[data-logo-anim="wave"] {
    display: inline-block;
    animation: header-wave 2s ease-in-out infinite;
  }
  @keyframes header-wave {
    0%, 100% { transform: skewX(0); }
    25% { transform: skewX(10deg); }
    75% { transform: skewX(-10deg); }
  }

  /* Neon */
  .main-header__logo-text[data-logo-anim="neon"] {
    animation: header-neon 1.5s ease-in-out infinite;
  }
  @keyframes header-neon {
    0%, 100% { text-shadow: 0 0 2px #fff, 0 0 5px #fff, 0 0 10px currentColor, 0 0 20px currentColor; }
    50% { text-shadow: 0 0 1px #fff, 0 0 2px #fff, 0 0 5px currentColor; }
  }

  /* 3D Flip */
  .main-header__logo-text[data-logo-anim="3d-flip"] {
    display: inline-block;
    animation: header-3d-flip 4s ease-in-out infinite;
    transform-style: preserve-3d;
  }
  @keyframes header-3d-flip {
    0%, 100% { transform: perspective(200px) rotateX(0); }
    50% { transform: perspective(200px) rotateX(360deg); }
  }

  /* Rainbow */
  .main-header__logo-text[data-logo-anim="rainbow"] {
    animation: header-rainbow 3s linear infinite;
  }
  @keyframes header-rainbow {
    0% { color: #ff0000; }
    16% { color: #ff8800; }
    33% { color: #ffff00; }
    50% { color: #00ff00; }
    66% { color: #0088ff; }
    83% { color: #8800ff; }
    100% { color: #ff0000; }
  }

  /* No animation */
  .main-header__logo-text[data-logo-anim="none"] {
    animation: none;
  }

  @media screen and (max-width: 768px) {
    .main-header {
      height: calc(var(--header-height, 80px) * 0.85);
    }
    .main-header__inner {
      padding: 0 0.75rem;
      gap: 0.5rem;
    }
    .main-header__menu {
      gap: 0.75rem;
      font-size: calc(var(--header-text-size, 16px) * 0.85);
    }
    .main-header__logo-center {
      position: static;
      transform: none;
      order: 0;
    }
    .main-header__socials {
      display: none;
    }
  }
/* END_SECTION:header */

/* START_SECTION:points-products (INDEX:15) */
.points-products-section {
    background-color: var(--pp-bg);
    padding: var(--pp-padding-top) var(--pp-padding-right) var(--pp-padding-bottom) var(--pp-padding-left);
    box-sizing: border-box;
  }

  .points-products-wrapper {
    max-width: 1200px;
    margin: 0 auto;
  }

  .pp-header {
    text-align: center;
    margin-bottom: 2rem;
  }

  .pp-section-title {
    font-size: var(--pp-heading-size);
    font-weight: 700;
    color: var(--pp-heading-color);
    margin: 0 0 0.5rem 0;
  }

  .pp-section-sub {
    font-size: var(--pp-sub-size);
    color: var(--pp-sub-color);
    margin: 0;
    line-height: 1.6;
  }

  .pp-layout {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--pp-gap);
    align-items: stretch;
  }

  /* IMAGE SIDE */
  .pp-image-side {
    position: relative;
  }

  .pp-image-container {
    position: relative;
    width: 100%;
    border-radius: var(--pp-image-radius);
    overflow: hidden;
    background: #f5f5f5;
    min-height: 400px;
    height: 100%;
  }

  .pp-main-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
  }

  .pp-main-image--placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .pp-placeholder-svg {
    width: 50%;
    height: 50%;
    opacity: 0.3;
  }

  .pp-point {
    position: absolute;
    transform: translate(-50%, -50%);
    width: var(--pp-point-size);
    height: var(--pp-point-size);
    border: none;
    background: transparent;
    cursor: pointer;
    padding: 0;
    z-index: 5;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .pp-point-dot {
    position: absolute;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background-color: var(--pp-point-color);
    border: 2px solid var(--pp-point-border-color);
    box-shadow: 0 2px 8px rgba(0,0,0,0.3);
    transition: all 0.3s ease;
  }

  .pp-point-pulse {
    position: absolute;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background-color: var(--pp-point-color);
    opacity: 0.5;
    animation: pp-pulse 2s ease-out infinite;
  }

  @keyframes pp-pulse {
    0% { transform: scale(1); opacity: 0.5; }
    100% { transform: scale(2.4); opacity: 0; }
  }

  .pp-point-number {
    position: relative;
    z-index: 2;
    color: #fff;
    font-size: calc(var(--pp-point-size) * 0.45);
    font-weight: 700;
    line-height: 1;
  }

  .pp-point:hover .pp-point-dot,
  .pp-point.is-active .pp-point-dot {
    background-color: var(--pp-point-active-color);
    transform: scale(1.15);
  }

  .pp-point.is-active .pp-point-pulse {
    animation: none;
    opacity: 0;
  }

  /* PRODUCTS SIDE */
  .pp-products-side {
    position: relative;
    display: flex;
    align-items: center;
  }

  .pp-carousel {
    position: relative;
    overflow: hidden;
    width: 100%;
  }

  .pp-carousel-track {
    display: flex;
    transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  }

  .pp-slide {
    min-width: 100%;
    padding: 0 4px;
    box-sizing: border-box;
  }

  .pp-product-card {
    background-color: var(--pp-card-bg);
    border-radius: var(--pp-card-radius);
    border: var(--pp-card-border-width) solid var(--pp-card-border-color);
    box-shadow: var(--pp-card-shadow);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    height: 100%;
  }

  .pp-product-link {
    display: block;
    text-decoration: none;
    color: inherit;
  }

  .pp-product-image-wrapper {
    position: relative;
    width: 100%;
    padding-top: 100%;
    overflow: hidden;
    background: #f5f5f5;
  }

  .pp-product-image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
  }

  .pp-product-image--placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .pp-product-card:hover .pp-product-image {
    transform: scale(1.06);
  }

  .pp-sale-badge {
    position: absolute;
    top: 10px;
    left: 10px;
    padding: 4px 12px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    background: #e63946;
    color: #fff;
    z-index: 2;
  }

  .pp-product-info {
    padding: var(--pp-card-padding);
    display: flex;
    flex-direction: column;
    flex: 1;
  }

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

  .pp-product-title {
    font-size: var(--pp-title-size);
    color: var(--pp-title-color);
    font-weight: 600;
    margin: 0 0 6px 0;
    line-height: 1.3;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
  }

  .pp-product-vendor {
    font-size: 12px;
    color: #999;
    margin: 0 0 6px 0;
    text-transform: uppercase;
    letter-spacing: 0.5px;
  }

  .pp-product-price-wrapper {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 12px;
  }

  .pp-product-price {
    font-size: var(--pp-price-size);
    color: var(--pp-price-color);
    font-weight: 700;
  }

  .pp-product-price--sale {
    color: #e63946;
  }

  .pp-product-compare-price {
    font-size: calc(var(--pp-price-size) * 0.85);
    color: var(--pp-compare-color);
    text-decoration: line-through;
  }

  .pp-add-form {
    margin-top: auto;
  }

  .pp-add-btn {
    width: 100%;
    padding: 12px 16px;
    background-color: var(--pp-btn-bg);
    color: var(--pp-btn-color);
    border: none;
    border-radius: var(--pp-btn-radius);
    font-size: var(--pp-btn-size);
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.3s ease, transform 0.2s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
  }

  .pp-add-btn:hover:not(.pp-add-btn--disabled):not(.is-adding) {
    background-color: var(--pp-btn-bg-hover);
    transform: translateY(-2px);
  }

  .pp-add-btn--disabled {
    background: #ccc;
    color: #666;
    cursor: not-allowed;
  }

  .pp-add-btn.is-adding .pp-btn-text { display: none; }
  .pp-add-btn.is-adding .pp-btn-loading { display: flex !important; }

  .pp-spin {
    animation: pp-spin-anim 0.8s linear infinite;
  }

  @keyframes pp-spin-anim {
    to { transform: rotate(360deg); }
  }

  /* ARROWS */
  .pp-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background-color: var(--pp-arrow-bg);
    color: var(--pp-arrow-color);
    border: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10;
    transition: background-color 0.3s ease, opacity 0.3s ease;
    box-shadow: 0 2px 8px rgba(0,0,0,0.15);
  }

  .pp-arrow:hover {
    background-color: var(--pp-arrow-bg-hover);
  }

  .pp-arrow--prev { left: 8px; }
  .pp-arrow--next { right: 8px; }

  /* DOTS */
  .pp-dots {
    display: flex;
    justify-content: center;
    gap: 8px;
    margin-top: 16px;
  }

  .pp-dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background-color: var(--pp-dot-color);
    border: none;
    cursor: pointer;
    padding: 0;
    transition: background-color 0.3s ease, transform 0.3s ease;
  }

  .pp-dot.is-active {
    background-color: var(--pp-dot-active-color);
    transform: scale(1.3);
  }

  /* RESPONSIVE */
  @media screen and (max-width: 768px) {
    .pp-layout {
      grid-template-columns: 1fr;
    }
    .pp-image-container {
      min-height: 300px;
    }
  }
/* END_SECTION:points-products */

/* START_SECTION:product (INDEX:16) */
.pdp-section {
    background-color: var(--pdp-bg);
    padding: var(--pdp-padding-top) 20px var(--pdp-padding-bottom) 20px;
    box-sizing: border-box;
  }

  .pdp-wrapper {
    max-width: 1200px;
    margin: 0 auto;
  }

  .pdp-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--pdp-gap);
    align-items: start;
  }

  /* Gallery */
  .pdp-gallery {
    position: sticky;
    top: 20px;
  }

  .pdp-main-image-wrapper {
    position: relative;
    border-radius: var(--pdp-image-radius);
    overflow: hidden;
    background-color: #f5f5f5;
    aspect-ratio: 1 / 1;
  }

  .pdp-main-slider {
    position: relative;
    width: 100%;
    height: 100%;
  }

  .pdp-main-slide {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: opacity 0.4s ease;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .pdp-main-slide--active {
    opacity: 1;
    position: relative;
  }

  .pdp-main-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
  }

  .pdp-main-image--placeholder {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .pdp-placeholder-svg {
    width: 50%;
    height: 50%;
    opacity: 0.3;
  }

  .pdp-slider-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(255,255,255,0.9);
    border: none;
    border-radius: 50%;
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 3;
    transition: background 0.3s ease, box-shadow 0.3s ease;
    box-shadow: 0 2px 8px rgba(0,0,0,0.15);
  }

  .pdp-slider-arrow:hover {
    background: #fff;
    box-shadow: 0 4px 16px rgba(0,0,0,0.2);
  }

  .pdp-slider-arrow--prev { left: 12px; }
  .pdp-slider-arrow--next { right: 12px; }

  .pdp-sale-badge {
    position: absolute;
    top: 12px;
    left: 12px;
    padding: 6px 14px;
    background: #e63946;
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    border-radius: 20px;
    z-index: 3;
    letter-spacing: 0.5px;
  }

  /* Thumbnails */
  .pdp-thumbnails {
    display: flex;
    gap: 10px;
    margin-top: 12px;
    flex-wrap: wrap;
  }

  .pdp-thumb {
    width: 72px;
    height: 72px;
    border-radius: 8px;
    border: 2px solid var(--pdp-thumb-border);
    overflow: hidden;
    cursor: pointer;
    padding: 0;
    background: #f5f5f5;
    transition: border-color 0.3s ease;
    flex-shrink: 0;
  }

  .pdp-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .pdp-thumb--active {
    border-color: var(--pdp-variant-active-border);
  }

  /* Info */
  .pdp-info {
    padding: 0 10px;
  }

  .pdp-vendor {
    font-size: 13px;
    color: #999;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin: 0 0 8px 0;
    font-weight: 600;
  }

  .pdp-title {
    font-size: var(--pdp-title-size);
    color: var(--pdp-title-color);
    font-weight: 700;
    margin: 0 0 12px 0;
    line-height: 1.2;
  }

  /* Ratings */
  .pdp-ratings {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 16px;
  }

  .pdp-stars {
    display: flex;
    gap: 2px;
  }

  .pdp-star {
    font-size: 18px;
    color: #ddd;
  }

  .pdp-star--filled {
    color: var(--pdp-star-color);
  }

  .pdp-star--half {
    color: var(--pdp-star-color);
    position: relative;
  }

  .pdp-star--half::before {
    content: '★';
    position: absolute;
    left: 0;
    top: 0;
    width: 50%;
    overflow: hidden;
    color: #ddd;
  }

  .pdp-review-count {
    font-size: 13px;
    color: #888;
  }

  /* Price */
  .pdp-price-wrapper {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 16px;
    flex-wrap: wrap;
  }

  .pdp-price {
    font-size: var(--pdp-price-size);
    color: var(--pdp-price-color);
    font-weight: 700;
  }

  .pdp-price--sale {
    color: #e63946;
  }

  .pdp-compare-price {
    font-size: calc(var(--pdp-price-size) * 0.75);
    color: var(--pdp-compare-color);
    text-decoration: line-through;
  }

  .pdp-discount-badge {
    padding: 3px 10px;
    background: #fff0f0;
    color: #e63946;
    font-size: 12px;
    font-weight: 600;
    border-radius: 4px;
  }

  .pdp-short-desc {
    font-size: 14px;
    color: #666;
    line-height: 1.6;
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid #eee;
  }

  /* Variants */
  .pdp-variant-group {
    margin-bottom: 20px;
  }

  .pdp-variant-label {
    display: block;
    font-size: 14px;
    font-weight: 600;
    color: #333;
    margin-bottom: 10px;
  }

  .pdp-variant-selected {
    font-weight: 400;
    color: #666;
  }

  .pdp-color-swatches {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
  }

  .pdp-color-swatch {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: 2px solid #ddd;
    cursor: pointer;
    padding: 0;
    transition: border-color 0.3s ease, transform 0.2s ease;
  }

  .pdp-color-swatch:hover {
    transform: scale(1.1);
  }

  .pdp-color-swatch--active {
    border-color: var(--pdp-variant-active-border);
    box-shadow: 0 0 0 2px #fff, 0 0 0 4px var(--pdp-variant-active-border);
  }

  .pdp-size-swatches, .pdp-generic-swatches {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
  }

  .pdp-size-swatch {
    min-width: 48px;
    padding: 8px 16px;
    background: var(--pdp-variant-bg);
    color: var(--pdp-variant-color);
    border: 2px solid var(--pdp-variant-border);
    border-radius: 8px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
  }

  .pdp-size-swatch:hover {
    border-color: var(--pdp-variant-active-border);
  }

  .pdp-size-swatch--active {
    background: var(--pdp-variant-active-bg);
    color: var(--pdp-variant-active-color);
    border-color: var(--pdp-variant-active-border);
  }

  /* Quantity */
  .pdp-quantity-wrapper {
    display: inline-flex;
    align-items: center;
    border: 2px solid var(--pdp-variant-border);
    border-radius: 8px;
    overflow: hidden;
  }

  .pdp-qty-btn {
    width: 40px;
    height: 40px;
    border: none;
    background: var(--pdp-variant-bg);
    font-size: 18px;
    cursor: pointer;
    transition: background 0.3s ease;
  }

  .pdp-qty-btn:hover {
    background: #e8e8e8;
  }

  .pdp-qty-input {
    width: 50px;
    height: 40px;
    border: none;
    text-align: center;
    font-size: 15px;
    font-weight: 600;
    -moz-appearance: textfield;
  }

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

  /* Add to cart */
  .pdp-actions {
    margin-top: 24px;
    margin-bottom: 24px;
  }

  .pdp-add-to-cart-btn {
    width: 100%;
    padding: 16px 24px;
    background: var(--pdp-btn-bg);
    color: var(--pdp-btn-color);
    border: none;
    border-radius: var(--pdp-btn-radius);
    font-size: var(--pdp-btn-size);
    font-weight: 700;
    cursor: pointer;
    transition: background 0.3s ease, transform 0.2s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
  }

  .pdp-add-to-cart-btn:hover:not(.is-adding) {
    background: var(--pdp-btn-bg-hover);
    transform: translateY(-2px);
  }

  .pdp-add-to-cart-btn:active {
    transform: translateY(0);
  }

  .pdp-add-to-cart-btn.is-adding .pdp-btn-text { display: none; }
  .pdp-add-to-cart-btn.is-adding .pdp-btn-loading { display: flex !important; }

  /* Buy Now Button */
  .pdp-buy-now-btn {
    width: 100%;
    padding: 16px 24px;
    background: var(--pdp-buy-now-bg);
    color: var(--pdp-buy-now-color);
    border: 2px solid var(--pdp-buy-now-bg);
    border-radius: var(--pdp-buy-now-radius);
    font-size: var(--pdp-buy-now-size);
    font-weight: 700;
    cursor: pointer;
    transition: background 0.3s ease, transform 0.2s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-top: 10px;
  }

  .pdp-buy-now-btn:hover {
    background: var(--pdp-buy-now-bg-hover);
    border-color: var(--pdp-buy-now-bg-hover);
    transform: translateY(-2px);
  }

  .pdp-buy-now-btn:active {
    transform: translateY(0);
  }

  /* WhatsApp Button */
  .pdp-whatsapp-btn {
    width: 100%;
    padding: 16px 24px;
    background: var(--pdp-wa-bg);
    color: var(--pdp-wa-color);
    border: 2px solid var(--pdp-wa-bg);
    border-radius: var(--pdp-btn-radius);
    font-size: var(--pdp-btn-size);
    font-weight: 700;
    cursor: pointer;
    transition: background 0.3s ease, transform 0.2s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-top: 10px;
    text-decoration: none;
  }

  .pdp-whatsapp-btn:hover {
    background: var(--pdp-wa-bg-hover);
    border-color: var(--pdp-wa-bg-hover);
    transform: translateY(-2px);
  }

  .pdp-whatsapp-btn:active {
    transform: translateY(0);
  }

  .pdp-spin {
    animation: pdp-spin-anim 0.8s linear infinite;
  }

  @keyframes pdp-spin-anim {
    to { transform: rotate(360deg); }
  }

  /* Sales Timer */
  .pdp-sales-timer {
    background: var(--pdp-timer-bg);
    color: var(--pdp-timer-color);
    border-radius: var(--pdp-timer-radius);
    padding: 16px 20px;
    margin-bottom: 20px;
    text-align: center;
  }

  .pdp-timer-label {
    color: var(--pdp-timer-label-color);
    font-size: 14px;
    font-weight: 600;
    margin: 0 0 10px 0;
    text-transform: uppercase;
    letter-spacing: 0.5px;
  }

  .pdp-timer-units {
    display: flex;
    justify-content: center;
    gap: 12px;
  }

  .pdp-timer-unit {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
  }

  .pdp-timer-num {
    background: var(--pdp-timer-num-bg);
    color: var(--pdp-timer-num-color);
    font-size: 22px;
    font-weight: 700;
    padding: 8px 12px;
    border-radius: 8px;
    min-width: 48px;
    display: inline-block;
  }

  .pdp-timer-unit-label {
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    opacity: 0.8;
  }

  /* Button Loop Animations */
  .pdp-anim--none { animation: none; }

  .pdp-anim--pulse {
    animation: pdp-anim-pulse 1.5s ease-in-out infinite;
  }
  @keyframes pdp-anim-pulse {
    0%, 100% { transform: scale(1); }
    50% { transform: scale(1.05); }
  }

  .pdp-anim--shake {
    animation: pdp-anim-shake 0.8s ease-in-out infinite;
  }
  @keyframes pdp-anim-shake {
    0%, 100% { transform: translateX(0); }
    25% { transform: translateX(-4px); }
    75% { transform: translateX(4px); }
  }

  .pdp-anim--bounce {
    animation: pdp-anim-bounce 1s ease-in-out infinite;
  }
  @keyframes pdp-anim-bounce {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-6px); }
  }

  .pdp-anim--glow {
    animation: pdp-anim-glow 1.5s ease-in-out infinite;
  }
  @keyframes pdp-anim-glow {
    0%, 100% { box-shadow: 0 0 5px rgba(255,255,255,0.5); }
    50% { box-shadow: 0 0 20px rgba(255,255,255,0.8), 0 0 30px rgba(255,255,255,0.4); }
  }

  /* Trust Badges */
  .pdp-trust-badges {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    margin-top: 24px;
    padding-top: 24px;
    border-top: 1px solid #eee;
  }

  .pdp-trust-item {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: var(--pdp-trust-size);
    color: var(--pdp-trust-color);
    font-weight: 500;
  }

  .pdp-trust-item svg {
    color: var(--pdp-trust-icon-color);
    flex-shrink: 0;
  }

  /* Accordion */
  .pdp-accordion-wrapper {
    margin-top: 48px;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
  }

  .pdp-accordion-item {
    border-bottom: 1px solid #e0e0e0;
  }

  .pdp-accordion-item:first-child {
    border-top: 1px solid #e0e0e0;
  }

  .pdp-accordion-heading {
    width: 100%;
    padding: 20px 0;
    background: none;
    border: none;
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
    font-size: var(--pdp-accordion-size);
    font-weight: 700;
    color: var(--pdp-accordion-color);
    transition: color 0.3s ease;
  }

  .pdp-accordion-heading:hover {
    color: var(--pdp-btn-bg);
  }

  .pdp-accordion-icon {
    transition: transform 0.3s ease;
    flex-shrink: 0;
  }

  .pdp-accordion-item.is-open .pdp-accordion-icon {
    transform: rotate(180deg);
  }

  .pdp-accordion-content {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.4s ease;
  }

  .pdp-accordion-item.is-open .pdp-accordion-content {
    max-height: 2000px;
  }

  .pdp-accordion-inner {
    padding: 0 0 24px 0;
    font-size: var(--pdp-desc-size);
    color: var(--pdp-desc-color);
    line-height: 1.7;
  }

  .pdp-accordion-inner p {
    margin: 0 0 10px 0;
  }

  /* Reviews Marquee Section */
  .pdp-reviews-section {
    background-color: var(--reviews-bg);
    padding: var(--reviews-padding-top) 0 var(--reviews-padding-bottom) 0;
    overflow: hidden;
  }

  .pdp-reviews-container {
    max-width: 100%;
    margin: 0 auto;
  }

  .pdp-reviews-heading {
    text-align: center;
    font-size: 28px;
    font-weight: 700;
    color: #1a1a1a;
    margin: 0 0 32px 0;
  }

  .pdp-reviews-marquee {
    overflow: hidden;
    position: relative;
    margin-bottom: 20px;
    -webkit-mask-image: linear-gradient(to right, transparent 0%, #000 8%, #000 92%, transparent 100%);
    mask-image: linear-gradient(to right, transparent 0%, #000 8%, #000 92%, transparent 100%);
  }

  .pdp-reviews-track {
    display: flex;
    gap: 20px;
    width: max-content;
  }

  .pdp-reviews-track--row1 {
    animation: pdp-marquee-left var(--marquee-speed) linear infinite;
  }

  .pdp-reviews-track--row2 {
    animation: pdp-marquee-left-2 var(--marquee-speed) linear infinite;
  }

  .pdp-reviews-marquee:hover .pdp-reviews-track {
    animation-play-state: paused;
  }

  @keyframes pdp-marquee-left {
    0% { transform: translateX(0); }
    100% { transform: translateX(-50%); }
  }

  @keyframes pdp-marquee-left-2 {
    0% { transform: translateX(-50%); }
    100% { transform: translateX(0); }
  }

  .pdp-review-card {
    flex-shrink: 0;
    width: 340px;
    background: var(--review-card-bg);
    border-radius: var(--review-card-radius);
    box-shadow: var(--review-card-shadow);
    padding: 24px;
    box-sizing: border-box;
    transition: transform 0.3s ease;
  }

  .pdp-review-card:hover {
    transform: translateY(-4px);
  }

  .pdp-review-stars {
    display: flex;
    gap: 2px;
    margin-bottom: 12px;
  }

  .pdp-review-star {
    font-size: 16px;
    color: #ddd;
  }

  .pdp-review-star--filled {
    color: var(--review-star-color);
  }

  .pdp-review-text {
    font-size: var(--review-text-size);
    color: var(--review-text-color);
    line-height: 1.6;
    margin: 0 0 12px 0;
  }

  .pdp-review-name {
    font-size: var(--review-name-size);
    color: var(--review-name-color);
    font-weight: 600;
    margin: 0;
  }

  /* Related Products Carousel */
  .pdp-related-section {
    background-color: var(--related-bg);
    padding: var(--related-padding-top) 0 var(--related-padding-bottom) 0;
    overflow: hidden;
  }

  .pdp-related-container {
    max-width: 100%;
    margin: 0 auto;
  }

  .pdp-related-heading {
    text-align: center;
    font-size: var(--related-heading-size);
    font-weight: 700;
    color: var(--related-heading-color);
    margin: 0 0 32px 0;
  }

  .pdp-related-marquee {
    overflow: hidden;
    position: relative;
    -webkit-mask-image: linear-gradient(to right, transparent 0%, #000 8%, #000 92%, transparent 100%);
    mask-image: linear-gradient(to right, transparent 0%, #000 8%, #000 92%, transparent 100%);
  }

  .pdp-related-track {
    display: flex;
    gap: 20px;
    width: max-content;
    animation: pdp-related-marquee var(--related-marquee-speed) linear infinite;
  }

  .pdp-related-marquee:hover .pdp-related-track {
    animation-play-state: paused;
  }

  @keyframes pdp-related-marquee {
    0% { transform: translateX(0); }
    100% { transform: translateX(-50%); }
  }

  .pdp-related-card {
    flex-shrink: 0;
    width: 260px;
    background: var(--related-card-bg);
    border-radius: var(--related-card-radius);
    box-shadow: var(--related-card-shadow);
    overflow: hidden;
    transition: transform 0.3s ease;
  }

  .pdp-related-card:hover {
    transform: translateY(-4px);
  }

  .pdp-related-card-link {
    text-decoration: none;
    color: inherit;
    display: block;
  }

  .pdp-related-image-wrapper {
    position: relative;
    width: 100%;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    background: #f5f5f5;
  }

  .pdp-related-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.4s ease;
  }

  .pdp-related-card:hover .pdp-related-image {
    transform: scale(1.05);
  }

  .pdp-related-image--placeholder {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .pdp-related-placeholder-svg {
    width: 50%;
    height: 50%;
    opacity: 0.3;
  }

  .pdp-related-sale-badge {
    position: absolute;
    top: 10px;
    left: 10px;
    padding: 4px 10px;
    background: #e63946;
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    border-radius: 20px;
    z-index: 2;
  }

  .pdp-related-info {
    padding: 16px;
  }

  .pdp-related-title {
    font-size: var(--related-title-size);
    color: var(--related-title-color);
    font-weight: 600;
    margin: 0 0 8px 0;
    line-height: 1.3;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
  }

  .pdp-related-price-wrapper {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 12px;
    flex-wrap: wrap;
  }

  .pdp-related-price {
    font-size: var(--related-price-size);
    color: var(--related-price-color);
    font-weight: 700;
  }

  .pdp-related-price--sale {
    color: #e63946;
  }

  .pdp-related-compare-price {
    font-size: calc(var(--related-price-size) * 0.8);
    color: #999;
    text-decoration: line-through;
  }

  .pdp-related-btn {
    display: inline-block;
    padding: 8px 20px;
    background: var(--related-btn-bg);
    color: var(--related-btn-color);
    border-radius: var(--related-btn-radius);
    font-size: 13px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: opacity 0.3s ease;
  }

  .pdp-related-card:hover .pdp-related-btn {
    opacity: 0.85;
  }

  /* Responsive */
  @media screen and (max-width: 900px) {
    .pdp-container {
      grid-template-columns: 1fr;
      gap: 24px;
    }
    .pdp-gallery {
      position: static;
    }
    .pdp-trust-badges {
      grid-template-columns: 1fr;
      gap: 12px;
    }
    .pdp-review-card {
      width: 280px;
      padding: 20px;
    }
  }

  @media screen and (max-width: 480px) {
    .pdp-title { font-size: calc(var(--pdp-title-size) * 0.8); }
    .pdp-thumb { width: 56px; height: 56px; }
    .pdp-reviews-heading { font-size: 22px; }
    .pdp-review-card {
      width: 240px;
      padding: 16px;
    }
  }
/* END_SECTION:product */

/* START_SECTION:search (INDEX:17) */
.search-results {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  }
  .search-results .prev,
  .search-results .page,
  .search-results .next {
    grid-column: 1 / -1;
  }
/* END_SECTION:search */

/* START_SECTION:single-product (INDEX:18) */
.sp-section {
    background-color: var(--sp-bg);
    padding: var(--sp-padding-top) var(--sp-padding-right) var(--sp-padding-bottom) var(--sp-padding-left);
    box-sizing: border-box;
  }

  .sp-wrapper {
    max-width: 1200px;
    margin: 0 auto;
  }

  .sp-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--sp-gap);
    align-items: start;
  }

  /* Gallery */
  .sp-gallery {
    position: sticky;
    top: 20px;
  }

  .sp-main-image-wrapper {
    position: relative;
    border-radius: var(--sp-image-radius);
    overflow: hidden;
    background-color: #f5f5f5;
    aspect-ratio: 1 / 1;
  }

  .sp-main-slider {
    position: relative;
    width: 100%;
    height: 100%;
  }

  .sp-main-slide {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: opacity 0.4s ease;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .sp-main-slide--active {
    opacity: 1;
    position: relative;
  }

  .sp-main-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
  }

  .sp-main-image--placeholder {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .sp-placeholder-svg {
    width: 50%;
    height: 50%;
    opacity: 0.3;
  }

  .sp-slider-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(255,255,255,0.9);
    border: none;
    border-radius: 50%;
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 3;
    transition: background 0.3s ease, box-shadow 0.3s ease;
    box-shadow: 0 2px 8px rgba(0,0,0,0.15);
  }

  .sp-slider-arrow:hover {
    background: #fff;
    box-shadow: 0 4px 16px rgba(0,0,0,0.2);
  }

  .sp-slider-arrow--prev { left: 12px; }
  .sp-slider-arrow--next { right: 12px; }

  .sp-slider-dots {
    position: absolute;
    bottom: 12px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 6px;
    z-index: 3;
  }

  .sp-slider-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: rgba(255,255,255,0.5);
    border: none;
    cursor: pointer;
    transition: background 0.3s ease;
  }

  .sp-slider-dot--active {
    background: #fff;
  }

  .sp-sale-badge {
    position: absolute;
    top: 12px;
    left: 12px;
    padding: 6px 14px;
    background: #e63946;
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    border-radius: 20px;
    z-index: 3;
    letter-spacing: 0.5px;
  }

  /* Thumbnails */
  .sp-thumbnails {
    display: flex;
    gap: 10px;
    margin-top: 12px;
    flex-wrap: wrap;
  }

  .sp-thumb {
    width: 70px;
    height: 70px;
    border-radius: 8px;
    border: 2px solid var(--sp-thumb-border);
    overflow: hidden;
    cursor: pointer;
    padding: 0;
    background: #f5f5f5;
    transition: border-color 0.3s ease;
    flex-shrink: 0;
  }

  .sp-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .sp-thumb--active {
    border-color: var(--sp-variant-active-border);
  }

  .sp-thumb--placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
  }

  /* Info */
  .sp-info {
    padding: 0 10px;
  }

  .sp-vendor {
    font-size: 13px;
    color: #999;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin: 0 0 8px 0;
    font-weight: 600;
  }

  .sp-title {
    font-size: var(--sp-title-size);
    color: var(--sp-title-color);
    font-weight: 700;
    margin: 0 0 12px 0;
    line-height: 1.2;
  }

  /* Ratings */
  .sp-ratings {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 16px;
  }

  .sp-stars {
    display: flex;
    gap: 2px;
  }

  .sp-star {
    font-size: 18px;
    color: #ddd;
  }

  .sp-star--filled {
    color: var(--sp-star-color);
  }

  .sp-star--half {
    color: var(--sp-star-color);
    position: relative;
  }

  .sp-star--half::before {
    content: '★';
    position: absolute;
    left: 0;
    top: 0;
    width: 50%;
    overflow: hidden;
    color: #ddd;
  }

  .sp-review-count {
    font-size: 13px;
    color: #888;
  }

  /* Price */
  .sp-price-wrapper {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 16px;
    flex-wrap: wrap;
  }

  .sp-price {
    font-size: var(--sp-price-size);
    color: var(--sp-price-color);
    font-weight: 700;
  }

  .sp-price--sale {
    color: #e63946;
  }

  .sp-compare-price {
    font-size: calc(var(--sp-price-size) * 0.75);
    color: var(--sp-compare-color);
    text-decoration: line-through;
  }

  .sp-discount-badge {
    padding: 3px 10px;
    background: #fff0f0;
    color: #e63946;
    font-size: 12px;
    font-weight: 600;
    border-radius: 4px;
  }

  .sp-short-desc {
    font-size: 14px;
    color: #666;
    line-height: 1.6;
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid #eee;
  }

  /* Variants */
  .sp-variant-group {
    margin-bottom: 20px;
  }

  .sp-variant-label {
    display: block;
    font-size: 14px;
    font-weight: 600;
    color: #333;
    margin-bottom: 10px;
  }

  .sp-variant-selected {
    font-weight: 400;
    color: #666;
  }

  .sp-color-swatches {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
  }

  .sp-color-swatch {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: 2px solid #ddd;
    cursor: pointer;
    padding: 0;
    transition: border-color 0.3s ease, transform 0.2s ease;
  }

  .sp-color-swatch:hover {
    transform: scale(1.1);
  }

  .sp-color-swatch--active {
    border-color: var(--sp-variant-active-border);
    box-shadow: 0 0 0 2px #fff, 0 0 0 4px var(--sp-variant-active-border);
  }

  .sp-size-swatches, .sp-generic-swatches {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
  }

  .sp-size-swatch {
    min-width: 48px;
    padding: 8px 16px;
    background: var(--sp-variant-bg);
    color: var(--sp-variant-color);
    border: 2px solid var(--sp-variant-border);
    border-radius: 8px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
  }

  .sp-size-swatch:hover {
    border-color: var(--sp-variant-active-border);
  }

  .sp-size-swatch--active {
    background: var(--sp-variant-active-bg);
    color: var(--sp-variant-active-color);
    border-color: var(--sp-variant-active-border);
  }

  /* Quantity */
  .sp-quantity-wrapper {
    display: inline-flex;
    align-items: center;
    border: 2px solid var(--sp-variant-border);
    border-radius: 8px;
    overflow: hidden;
  }

  .sp-qty-btn {
    width: 40px;
    height: 40px;
    border: none;
    background: var(--sp-variant-bg);
    font-size: 18px;
    cursor: pointer;
    transition: background 0.3s ease;
  }

  .sp-qty-btn:hover {
    background: #e8e8e8;
  }

  .sp-qty-input {
    width: 50px;
    height: 40px;
    border: none;
    text-align: center;
    font-size: 15px;
    font-weight: 600;
    -moz-appearance: textfield;
  }

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

  /* Add to cart */
  .sp-actions {
    margin-top: 24px;
    margin-bottom: 24px;
  }

  .sp-add-to-cart-btn {
    width: 100%;
    padding: 16px 24px;
    background: var(--sp-btn-bg);
    color: var(--sp-btn-color);
    border: none;
    border-radius: var(--sp-btn-radius);
    font-size: var(--sp-btn-size);
    font-weight: 700;
    cursor: pointer;
    transition: background 0.3s ease, transform 0.2s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
  }

  .sp-add-to-cart-btn:hover:not(.is-adding) {
    background: var(--sp-btn-bg-hover);
    transform: translateY(-2px);
  }

  .sp-add-to-cart-btn:active {
    transform: translateY(0);
  }

  .sp-add-to-cart-btn.is-adding .sp-btn-text { display: none; }
  .sp-add-to-cart-btn.is-adding .sp-btn-loading { display: flex !important; }

  /* Buy Now Button */
  .sp-buy-now-btn {
    width: 100%;
    padding: 16px 24px;
    background: var(--sp-buy-now-bg);
    color: var(--sp-buy-now-color);
    border: 2px solid var(--sp-buy-now-bg);
    border-radius: var(--sp-buy-now-radius);
    font-size: var(--sp-buy-now-size);
    font-weight: 700;
    cursor: pointer;
    transition: background 0.3s ease, transform 0.2s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-top: 10px;
  }

  .sp-buy-now-btn:hover {
    background: var(--sp-buy-now-bg-hover);
    border-color: var(--sp-buy-now-bg-hover);
    transform: translateY(-2px);
  }

  .sp-buy-now-btn:active {
    transform: translateY(0);
  }

  /* Sales Timer */
  .sp-sales-timer {
    background: var(--sp-timer-bg);
    color: var(--sp-timer-color);
    border-radius: var(--sp-timer-radius);
    padding: 16px 20px;
    margin-bottom: 20px;
    text-align: center;
  }

  .sp-timer-label {
    color: var(--sp-timer-label-color);
    font-size: 14px;
    font-weight: 600;
    margin: 0 0 10px 0;
    text-transform: uppercase;
    letter-spacing: 0.5px;
  }

  .sp-timer-units {
    display: flex;
    justify-content: center;
    gap: 12px;
  }

  .sp-timer-unit {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
  }

  .sp-timer-num {
    background: var(--sp-timer-num-bg);
    color: var(--sp-timer-num-color);
    font-size: 22px;
    font-weight: 700;
    padding: 8px 12px;
    border-radius: 8px;
    min-width: 48px;
    display: inline-block;
  }

  .sp-timer-unit-label {
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    opacity: 0.8;
  }

  .sp-spin {
    animation: sp-spin-anim 0.8s linear infinite;
  }

  @keyframes sp-spin-anim {
    to { transform: rotate(360deg); }
  }

  /* Info block / description */
  .sp-info-block {
    border-top: 1px solid #eee;
    padding-top: 24px;
  }

  .sp-info-heading {
    font-size: var(--sp-heading-size);
    color: var(--sp-heading-color);
    font-weight: 700;
    margin: 0 0 12px 0;
  }

  .sp-description {
    font-size: var(--sp-desc-size);
    color: var(--sp-desc-color);
    line-height: 1.7;
  }

  .sp-description p {
    margin: 0 0 10px 0;
  }

  /* Trust badges */
  .sp-trust-badges {
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
    margin-top: 24px;
    padding-top: 20px;
    border-top: 1px solid #eee;
  }

  .sp-trust-item {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    color: #666;
    font-weight: 500;
  }

  .sp-trust-item svg {
    color: var(--sp-btn-bg);
    flex-shrink: 0;
  }

  /* Responsive */
  @media screen and (max-width: 900px) {
    .sp-container {
      grid-template-columns: 1fr;
      gap: 24px;
    }
    .sp-gallery {
      position: static;
    }
  }

  @media screen and (max-width: 480px) {
    .sp-title { font-size: calc(var(--sp-title-size) * 0.8); }
    .sp-thumb { width: 56px; height: 56px; }
    .sp-trust-badges { gap: 12px; }
    .sp-trust-item { font-size: 12px; }
  }
/* END_SECTION:single-product */

/* START_SECTION:slider (INDEX:19) */
/* Merged mode: header overlaps slider and becomes transparent */
  body.slider-merged .main-header {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    background-color: transparent !important;
    opacity: 1 !important;
    z-index: 100;
  }
  body.slider-merged .main-header[data-glass="true"] {
    background-color: rgba(255, 255, 255, 0.1) !important;
    backdrop-filter: blur(var(--header-blur, 10px));
    -webkit-backdrop-filter: blur(var(--header-blur, 10px));
  }
  body.slider-merged .slider-section {
    margin-top: 0;
    position: relative;
    z-index: 1;
  }

  .slider-section {
    width: 100vw;
    max-width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    position: relative;
    overflow: hidden;
    height: var(--slider-height, 600px);
  }

  .slider-track {
    width: 100%;
    height: 100%;
    position: relative;
  }

  .slide {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: opacity 0.8s ease-in-out;
    pointer-events: none;
  }

  .slide--active {
    opacity: 1;
    pointer-events: auto;
  }

  .slide__bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 0;
  }

  .slide__bg--mobile {
    display: none;
  }

  .slide__bg--placeholder {
    width: 100%;
    height: 100%;
  }

  .slide__overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
  }

  .slide__content {
    position: relative;
    z-index: 2;
    width: 100%;
    height: 100%;
    display: flex;
    padding: 2rem 3rem;
    box-sizing: border-box;
  }

  .slide__content--left { justify-content: flex-start; }
  .slide__content--center { justify-content: center; }
  .slide__content--right { justify-content: flex-end; }

  .slide__content--top { align-items: flex-start; }
  .slide__content--middle { align-items: center; }
  .slide__content--bottom { align-items: flex-end; }

  .slide__content-inner {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    max-width: 700px;
  }

  .slide__content-inner--left { align-items: flex-start; text-align: left; }
  .slide__content-inner--center { align-items: center; text-align: center; }
  .slide__content-inner--right { align-items: flex-end; text-align: right; }

  .slide__title {
    margin: 0;
    line-height: 1.2;
    text-shadow: 0 2px 8px rgba(0,0,0,0.3);
  }

  .slide__description {
    line-height: 1.5;
    text-shadow: 0 1px 4px rgba(0,0,0,0.3);
    word-wrap: break-word;
  }

  .slide__description p { margin: 0 0 0.5em 0; }
  .slide__description strong, .slide__description b { font-weight: 700; }
  .slide__description em, .slide__description i { font-style: italic; }
  .slide__description a { color: inherit; text-decoration: underline; }
  .slide__description ul, .slide__description ol { margin: 0.5em 0; padding-left: 1.5em; }

  .slide__buttons {
    display: flex;
    gap: 1rem;
    margin-top: 0.5rem;
  }

  .slide__buttons--row { flex-direction: row; flex-wrap: wrap; }
  .slide__buttons--column { flex-direction: column; }

  .slide__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    cursor: pointer;
    border-style: solid;
    transition: all 0.3s ease;
    box-sizing: border-box;
    line-height: 1.4;
  }

  .slide__btn--solid:hover {
    color: var(--btn-hover-text) !important;
    background-color: var(--btn-hover-bg) !important;
    border-color: var(--btn-hover-border) !important;
  }

  .slide__btn--outline {
    background-color: transparent;
  }
  .slide__btn--outline:hover {
    color: var(--btn-hover-text) !important;
    background-color: var(--btn-hover-bg) !important;
    border-color: var(--btn-hover-border) !important;
  }

  .slide__btn--transparent {
    background-color: transparent;
    border-color: transparent;
  }
  .slide__btn--transparent:hover {
    color: var(--btn-hover-text) !important;
    background-color: var(--btn-hover-bg) !important;
    border-color: var(--btn-hover-border) !important;
  }

  /* Dot indicators */
  .slider__dots {
    position: absolute;
    bottom: 1.5rem;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 0.5rem;
    z-index: 10;
  }

  .slider__dot {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    cursor: pointer;
    transition: all 0.3s ease;
    border: 2px solid #fff;
    background: transparent;
    padding: 0;
  }

  .slider__dots--filled .slider__dot {
    background: rgba(255,255,255,0.4);
    border: 2px solid rgba(255,255,255,0.6);
  }

  .slider__dots--filled .slider__dot--active {
    background: #fff;
    border-color: #fff;
  }

  .slider__dots--outline .slider__dot {
    background: transparent;
    border: 2px solid rgba(255,255,255,0.6);
  }

  .slider__dots--outline .slider__dot--active {
    background: #fff;
    border-color: #fff;
  }

  /* Arrows */
  .slider__arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
    background: rgba(0,0,0,0.3);
    color: #fff;
    border: none;
    border-radius: 50%;
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: background 0.3s ease;
  }

  .slider__arrow:hover {
    background: rgba(0,0,0,0.6);
  }

  .slider__arrow--prev { left: 1rem; }
  .slider__arrow--next { right: 1rem; }

  /* Title animations */
  .slide__title[data-title-anim="fade"] { animation: title-fade 1s ease-out; }
  @keyframes title-fade { from { opacity: 0; } to { opacity: 1; } }

  .slide__title[data-title-anim="slide-up"] { animation: title-slide-up 0.8s ease-out; }
  @keyframes title-slide-up { from { opacity: 0; transform: translateY(30px); } to { opacity: 1; transform: translateY(0); } }

  .slide__title[data-title-anim="slide-down"] { animation: title-slide-down 0.8s ease-out; }
  @keyframes title-slide-down { from { opacity: 0; transform: translateY(-30px); } to { opacity: 1; transform: translateY(0); } }

  .slide__title[data-title-anim="slide-left"] { animation: title-slide-left 0.8s ease-out; }
  @keyframes title-slide-left { from { opacity: 0; transform: translateX(30px); } to { opacity: 1; transform: translateX(0); } }

  .slide__title[data-title-anim="slide-right"] { animation: title-slide-right 0.8s ease-out; }
  @keyframes title-slide-right { from { opacity: 0; transform: translateX(-30px); } to { opacity: 1; transform: translateX(0); } }

  .slide__title[data-title-anim="zoom"] { animation: title-zoom 0.8s ease-out; }
  @keyframes title-zoom { from { opacity: 0; transform: scale(0.5); } to { opacity: 1; transform: scale(1); } }

  .slide__title[data-title-anim="bounce"] { animation: title-bounce 1s ease-out; }
  @keyframes title-bounce { 0% { opacity: 0; transform: translateY(-50px); } 60% { opacity: 1; transform: translateY(10px); } 100% { transform: translateY(0); } }

  .slide__title[data-title-anim="flip"] { animation: title-flip 1s ease-out; }
  @keyframes title-flip { from { opacity: 0; transform: perspective(400px) rotateY(90deg); } to { opacity: 1; transform: perspective(400px) rotateY(0); } }

  .slide__title[data-title-anim="rotate"] { animation: title-rotate 1s ease-out; }
  @keyframes title-rotate { from { opacity: 0; transform: rotate(-10deg) scale(0.8); } to { opacity: 1; transform: rotate(0) scale(1); } }

  .slide__title[data-title-anim="none"] { animation: none; }

  /* Re-trigger animation on slide change */
  .slide--active .slide__title { animation-play-state: running; }

  @media screen and (max-width: 768px) {
    .slider-section {
      height: var(--slider-height-mobile, 400px);
    }
    .slide__bg--desktop { display: none; }
    .slide__bg--mobile { display: block; }
    .slide__content { padding: 1.5rem; }
    .slide__content-inner { max-width: 90%; gap: 0.75rem; }
    .slider__arrow { width: 36px; height: 36px; }
    .slider__arrow--prev { left: 0.5rem; }
    .slider__arrow--next { right: 0.5rem; }
    .slide__buttons { gap: 0.5rem; }
  }
/* END_SECTION:slider */

/* START_SECTION:topbar (INDEX:20) */
.topbar {
    width: 100vw;
    max-width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    height: var(--topbar-height, 40px);
    background-color: var(--topbar-bg, #1a1a1a);
    color: var(--topbar-text-color, #ffffff);
    font-size: var(--topbar-text-size, 14px);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    position: relative;
    z-index: 100;
    box-sizing: border-box;
  }

  .topbar__inner {
    width: 100%;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .topbar__content {
    text-align: center;
    padding: 0 1rem;
    line-height: 1.4;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 0.75rem;
  }

  .topbar__content a,
  .topbar__link {
    color: inherit;
    text-decoration: none;
  }

  .topbar__content a:hover,
  .topbar__link:hover {
    text-decoration: underline;
  }

  .topbar__content strong,
  .topbar__content b {
    font-weight: 700;
  }

  /* Timer */
  .topbar__timer {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    font-size: var(--topbar-timer-size, 14px);
    background-color: var(--topbar-timer-bg, transparent);
    padding: 0.15rem 0.6rem;
    border-radius: 4px;
  }

  .topbar__timer-item {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    min-width: 2.2em;
  }

  .topbar__timer-digits {
    color: var(--topbar-timer-digits-color, #ffffff);
    font-weight: 700;
    font-size: 1em;
    line-height: 1.1;
  }

  .topbar__timer-label {
    color: var(--topbar-timer-labels-color, #cccccc);
    font-size: 0.65em;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    line-height: 1.1;
  }

  .topbar__timer-sep {
    color: var(--topbar-timer-digits-color, #ffffff);
    font-weight: 700;
    font-size: 1em;
    align-self: flex-start;
    padding-top: 0.1em;
  }

  .topbar__timer.expired {
    display: none;
  }

  .topbar__timer-expired-msg {
    color: var(--topbar-timer-digits-color, #ffffff);
    font-weight: 700;
  }

  /* Animation: Left to Right */
  .topbar[data-topbar-animation="left-to-right"] .topbar__content {
    animation: topbar-slide-ltr var(--topbar-duration, 10s) linear infinite;
  }

  @keyframes topbar-slide-ltr {
    0% {
      transform: translateX(-100%);
    }
    100% {
      transform: translateX(100%);
    }
  }

  /* Animation: Right to Left */
  .topbar[data-topbar-animation="right-to-left"] .topbar__content {
    animation: topbar-slide-rtl var(--topbar-duration, 10s) linear infinite;
  }

  @keyframes topbar-slide-rtl {
    0% {
      transform: translateX(100%);
    }
    100% {
      transform: translateX(-100%);
    }
  }

  /* No loop: run once and stop */
  .topbar[data-topbar-loop="false"] .topbar__content {
    animation-iteration-count: 1;
  }

  /* No animation */
  .topbar[data-topbar-animation="none"] .topbar__content {
    animation: none;
  }

  @media screen and (max-width: 768px) {
    .topbar {
      font-size: calc(var(--topbar-text-size, 14px) * 0.85);
    }
    .topbar__timer {
      font-size: calc(var(--topbar-timer-size, 14px) * 0.85);
    }
    .topbar__content {
      gap: 0.5rem;
    }
  }
/* END_SECTION:topbar */

/* CSS from block stylesheet tags */
/* START_BLOCK:group (INDEX:21) */
.group {
    display: flex;
    flex-wrap: nowrap;
    overflow: hidden;
    width: 100%;
  }

  .group--horizontal {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    padding: 0 var(--padding);
  }

  .group--vertical {
    flex-direction: column;
    align-items: var(--alignment);
    padding: var(--padding) 0;
  }
/* END_BLOCK:group */

/* START_BLOCK:text (INDEX:22) */
.text {
    text-align: var(--text-align);
  }
  .text--title {
    font-size: 2rem;
    font-weight: 700;
  }
  .text--subtitle {
    font-size: 1.5rem;
  }
/* END_BLOCK:text */

/* CSS from snippet stylesheet tags */
/* START_SNIPPET:image (INDEX:24) */
.image {
    display: block;
    position: relative;
    overflow: hidden;
    width: 100%;
    height: auto;
  }

  .image > img {
    width: 100%;
    height: auto;
  }
/* END_SNIPPET:image */