/** Shopify CDN: Minification failed

Line 24515:9 Unexpected "/"

**/
/* SHOPIFY_STYLESHEETS_VERSION: 1.0 */


/* CSS from section stylesheet tags */
/* START_SECTION:predictive-search-results (INDEX:0) */
.predictive-search-results {
    .predictive-search-results-inner {
      display: flex;
      flex-direction: column;
      gap: 1rem;
      align-items: stretch;
    }

    .predictive-searched-products-see-all-results {
      padding-block-start: 0.25rem;
      .see-all-products-icon {
        width: 0.75rem;
        height: 0.75rem;
        display: inline-block;
        vertical-align: middle;
        svg {
          color: var(--color-foreground_100);
        }
      }
    }

    .predictive-search-results-no-results {
      padding-block: 2rem;
      padding-inline: 2rem;
      background-color: var(--color-background);
      border-radius: var(--radius-new-small);
      text-align: center;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
    }
  }
/* END_SECTION:predictive-search-results */

/* START_SECTION:sc_header (INDEX:19) */
.header-group {
    display: contents;
  }
  header-group-component {
    display: contents;
    .header-overlay {
      contain: layout paint style;
      position: fixed;
      z-index: 99;
      pointer-events: none;
      opacity: 0;
      visibility: hidden;
      inset: 0;
      background-color: var(--popup-overlay-bg);
      transition: opacity 0.6s cubic-bezier(0.7, 0, 0.2, 1), visibility 0.6s cubic-bezier(0.7, 0, 0.2, 1);
    }
    &:has(.header-v3-wrap.is-menu-open) .header-overlay,
    &:has(.header-v3-wrap.is-open) .header-overlay {
      opacity: 1;
      visibility: visible;
      pointer-events: auto;
    }
  }
/* END_SECTION:sc_header */

/* CSS from block stylesheet tags */
/* START_BLOCK:_blck_article_page_featured_articles (INDEX:48) */
.article-slideshow {
    display: block;
    height: 100%;
    .article-item {
      .media-bg-block {
        transition: all 1000ms cubic-bezier(0.16, 1, 0.3, 1);
      }
    }
    &[data-anim-standard-effect='slide'] {
      .article-item {
        .media-bg-block {
          transform-origin: right;
          transform: translateX(5%) scale(1.05);
        }
        &.is-snapped .media-bg-block {
          transform: translateX(0%) scale(1.05);
        }
      }
    }
    &[data-anim-standard-effect='scale'] {
      .article-item {
        .media-bg-block {
          transform: scale(1.05);
        }
        &.is-snapped .media-bg-block {
          transform: scale(1);
        }
      }
    }
    &[data-anim-standard-effect='vertical'] {
      .article-item {
        .media-bg-block {
          transform: translateY(-5%) scale(1.05);
          transform-origin: top;
        }
        &.is-snapped .media-bg-block {
          transform: translateY(0%) scale(1.05);
        }
      }
    }
    &[data-autoplay='true'] {
      .article-item {
        .article-item-bg {
          transition: transform var(--autoplay-anim-duration);
        }
      }
      &[data-autoplay-anim='zoom-out'] .article-item {
        .article-item-bg {
          transform: scale(1.1);
          transition-timing-function: ease-out;
        }
        &.is-snapped .article-item-bg {
          transform: scale(1);
        }
      }
      &[data-autoplay-anim='zoom-in'] .article-item {
        .article-item-bg {
          transform: scale(1);
          transition-timing-function: ease-out;
        }
        &.is-snapped .article-item-bg {
          transform: scale(1.1);
        }
      }
      &[data-autoplay-anim='move-left'] .article-item {
        .article-item-bg {
          transform-origin: left;
          transform: translateX(0%) scale(1.03);
          transition-timing-function: linear;
        }
        &.is-snapped .article-item-bg {
          transform: translateX(-3%) scale(1.03);
        }
      }
      &[data-autoplay-anim='move-right'] .article-item {
        .article-item-bg {
          transform-origin: right;
          transform: translateX(0%) scale(1.03);
          transition-timing-function: linear;
        }
        &.is-snapped .article-item-bg {
          transform: translateX(3%) scale(1.03);
        }
      }
      &[data-autoplay-anim='move-top'] .article-item {
        .article-item-bg {
          transform-origin: top;
          transform: translateY(0%) scale(1.03);
          transition-timing-function: linear;
        }
        &.is-snapped .article-item-bg {
          transform: translateY(-3%) scale(1.03);
        }
      }
      &[data-autoplay-anim='move-bottom'] .article-item {
        .article-item-bg {
          transform-origin: bottom;
          transform: translateY(0%) scale(1.03);
          transition-timing-function: linear;
        }
        &.is-snapped .article-item-bg {
          transform: translateY(3%) scale(1.03);
        }
      }
    }
  }
/* END_BLOCK:_blck_article_page_featured_articles */

/* START_BLOCK:blck_instagram_item (INDEX:174) */
.instagram-item {
    display: block;
    width: 100%;
    aspect-ratio: var(--media-aspect-ratio, 1);
    border-radius: var(--media-radius, 0);
    overflow: hidden;
    position: relative;
    contain: layout style paint;
  }
/* END_BLOCK:blck_instagram_item */

/* START_BLOCK:blck_marquee_image (INDEX:183) */
.mi-block {
    width: var(--img-size-width);
    max-width: var(--img-size-max-width);
    flex-shrink: 0;
    @media (max-width: 991px) {
      width: var(--img-size-width-mb);
    }
    .mi-inner {
      overflow: hidden;
      border-radius: var(--img-radius);
      margin-block: var(--img-mg-block-start) var(--img-mg-block-end);
      margin-inline: var(--img-mg-inline-start) var(--img-mg-inline-end);
      position: relative;
      @media (max-width: 991px) {
        margin-block: var(--img-mg-block-start-mb) var(--img-mg-block-end-mb);
        margin-inline: var(--img-mg-inline-start-mb) var(--img-mg-inline-end-mb);
      }

      .mi-content {
        position: relative;
        padding-block: var(--img-pd-block-start) var(--img-pd-block-end);
        padding-inline: var(--img-pd-inline-start) var(--img-pd-inline-end);
        aspect-ratio: var(--media-aspect-ratio);
        filter: var(--img-filter);
        @media (max-width: 991px) {
          padding-block: var(--img-pd-block-start-mb) var(--img-pd-block-end-mb);
          padding-inline: var(--img-pd-inline-start-mb) var(--img-pd-inline-end-mb);
        }
      }
    }
  }
/* END_BLOCK:blck_marquee_image */

/* CSS from snippet stylesheet tags */
/* START_SNIPPET:icon (INDEX:208) */
.icon-size-12 {
    --icon-size: 0.75rem;
  }
  .icon-size-14 {
    --icon-size: 0.875rem;
  }
  .icon-size-16 {
    --icon-size: 1rem;
  }
  .icon-size-18 {
    --icon-size: 1.125rem;
  }
  .icon-size-20 {
    --icon-size: 1.25rem;
  }
  .icon-size-24 {
    --icon-size: 1.5rem;
  }
  .icon-size-28 {
    --icon-size: 1.75rem;
  }
  .icon-size-32 {
    --icon-size: 2rem;
  }
  .icon-svg {
    width: 100%;
    height: 100%;
  }
  .svg-anim {
    transform-origin: center;
    transition: all var(--trans-duration) var(--trans-easing);
  }
  .icon-close-x-1,
  .icon-close-x-2 {
    transform-origin: center;
    transition: transform var(--trans-duration) var(--trans-easing);
  }

  @media (hover: hover) {
    .icon-close-x:hover {
      .icon-close-x-1 {
        transform: rotate(135deg);
      }
      .icon-close-x-2 {
        transform: rotate(225deg);
      }
    }
  }
/* END_SNIPPET:icon */

/* START_SNIPPET:inline_button (INDEX:209) */
.inline-button-link {
    display: inline-flex;
    align-items: center;
    gap: 0.375em;
    text-decoration: none;
    color: inherit;

    /* Suppress the global a::after/::before underlines from panel-custom-text */
    &::before,
    &::after {
      display: none !important;
    }

    .inline-btn-icon {
      flex-shrink: 0;
      display: inline-flex;
      align-items: center;
      svg {
        width: 1em;
        height: 1em;
      }
    }

    .inline-btn-label {
      position: relative;
    }

    &.hover-link-none {
      .inline-btn-label::before,
      .inline-btn-label::after {
        display: none !important;
      }
    }

    /* Add the underline ONLY to the label */
    .inline-btn-label::before {
      content: '';
      position: absolute;
      bottom: 0;
      left: 0;
      width: 100%;
      height: var(--1px, 1px);
      background-color: currentColor;
      transform: scaleX(0);
      transform-origin: right;
      transition: transform var(--trans-duration) var(--trans-easing);
    }

    &.hover-link-underline {
      .inline-btn-label::after {
        content: '';
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: var(--1px, 1px);
        background-color: currentColor;
        transform: scaleX(1);
        transform-origin: left;
        transition: transform var(--trans-duration) var(--trans-easing);
        transition-delay: var(--trans-duration);
      }

      &:hover {
        .inline-btn-label::before {
          transition-delay: var(--trans-duration);
        }

        .inline-btn-label::after {
          transform: scaleX(0);
          transform-origin: right;
          transition-delay: 0s;
        }
      }
    }

    &:hover .inline-btn-label::before {
      transform: scaleX(1);
      transform-origin: left;
    }
  }

  /* Anchor-specific: use link color tokens instead of currentColor */
  /* a.inline-button-link {
    color: var(--typo-color-link);
    &:hover {
      color: var(--typo-color-link-hover);
    }
    .inline-btn-label::before {
      background-color: var(--typo-color-link);
    }
    &.hover-link-underline .inline-btn-label::after {
      background-color: var(--typo-color-link);
    }
    &:hover .inline-btn-label::before {
      background-color: var(--typo-color-link-hover);
    }
    &.hover-link-underline:hover .inline-btn-label::after {
      background-color: var(--typo-color-link-hover);
    }
  } */

  .btn-custom-content.has-loader {
    position: relative;
    overflow: hidden;
    .button-loader-wrap {
      opacity: 0;
      visibility: hidden;
      position: absolute;
      z-index: 3;
      inset: 0;
      flex-shrink: 0;
      display: flex;
      align-items: center;
      justify-content: center;
      transition: all var(--trans-duration) var(--trans-easing);
      background: var(--button-bg);
      .button-loader {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 0.1875rem;
        .dot-1,
        .dot-2,
        .dot-3 {
          width: 0.375rem;
          height: 0.375rem;
          border-radius: 50%;
          background-color: var(--button-color);
          flex-shrink: 0;
        }
      }
    }
    &[loading] {
      pointer-events: none;
      .button-loader-wrap {
        opacity: 1;
        visibility: visible;
        .button-loader {
          .dot-1,
          .dot-2,
          .dot-3 {
            animation: loading-dot-button 1s infinite ease-in-out;
          }
          .dot-1 {
            animation-delay: -0.16s;
          }
          .dot-2 {
            animation-delay: 0;
          }
          .dot-3 {
            animation-delay: 0.16s;
          }
        }
      }
    }
  }

  .btn-custom-content.force-hide-text-on-mb {
    @media screen and (max-width: 991px) {
      --btn-size-width-mb: var(--button-height-mb) !important;
      .btn-custom-label-wrap {
        display: none !important;
      }
    }
  }

  [hover-trigger]:hover {
    .inline-button-link {
      .inline-btn-label::before {
        transform: scaleX(1);
        transform-origin: left;
        background-color: currentColor;
        transition-delay: 0s;
      }

      &.hover-link-underline {
        .inline-btn-label::before {
          transition-delay: var(--trans-duration);
        }

        .inline-btn-label::after {
          transform: scaleX(0);
          transform-origin: right;
          background-color: currentColor;
          transition-delay: 0s;
        }
      }
    }

    /* Anchor-specific override */
    a.inline-button-link {
      .inline-btn-label::before {
        background-color: var(--typo-color-link-hover);
      }
      &.hover-link-underline .inline-btn-label::after {
        background-color: var(--typo-color-link-hover);
      }
    }
  }
/* END_SNIPPET:inline_button */

/* START_SNIPPET:inline_richtext (INDEX:210) */
label.text-custom,
  span.text-custom {
    display: inline-block;
    .text-custom-inner {
      display: inline-block;
    }
  }
  .text-custom {
    .text-custom-inner {
      position: relative;
      height: 100%;
      width: 100%;
    }
    strong {
      font-weight: 600;
    }
  }
/* END_SNIPPET:inline_richtext */

/* START_SNIPPET:master-css-direction (INDEX:213) */
[data-direction='row'] {
    & > [data-width='fit'] {
      flex: 0 0 auto;
      min-width: 0px;
    }
    & > [data-width='fill'] {
      flex: 1 1 0%;
      min-width: 0px;
    }
    & > [data-width='percent'] {
      flex: 0 1 var(--_size-w);
      min-width: 0px;
    }
    & > [data-width='pixel'] {
      flex: 0 1 var(--_size-mw);
      min-width: 0px;
    }
  }
  [data-direction='column'] {
    & > [data-height] {
      min-height: min-content;
    }
    & > [data-height='fit'] {
      flex: 0 1 auto;
    }
    & > [data-height='fill'] {
      flex: 1 1 auto;
    }
    & > [data-height='percent'] {
      flex: 0 1 var(--_size-h);
    }
    & > [data-height='pixel'] {
      flex: 0 1 var(--_size-h);
    }
  }
  @media (max-width: 991px) {
    [data-direction-mb='row'] {
      & > [data-width-mb='fit'] {
        flex: 0 0 auto;
        min-width: 0px;
      }
      & > [data-width-mb='fill'] {
        flex: 1 1 0%;
        min-width: 0px;
      }
      & > [data-width-mb='percent'] {
        flex: 0 1 var(--_size-w-mb);
        min-width: 0px;
      }
      & > [data-width-mb='pixel'] {
        flex: 0 1 var(--_size-mw-mb);
        min-width: 0px;
      }
    }
    [data-direction-mb='column'] {
      & > [data-height-mb] {
        min-height: min-content;
      }
      & > [data-height-mb='fit'] {
        flex: 0 1 auto;
      }
      & > [data-height-mb='fill'] {
        flex: 1 1 auto;
      }
      & > [data-height-mb='percent'] {
        flex: 0 1 var(--_size-h-mb);
      }
      & > [data-height-mb='pixel'] {
        flex: 0 1 var(--_size-h-mb);
      }
    }
  }
/* END_SNIPPET:master-css-direction */

/* START_SNIPPET:panel-article-container-comments (INDEX:226) */
.comments {
    width: 100%;
    .comments-inner {
      border-radius: var(--comments-radius);
      .comments-content {
        .comments-content-inner {
          display: flex;
          flex-direction: column;
          gap: var(--comments-flex-gap);

          .comments-header-title {
            display: flex;
            align-items: flex-start;
            gap: 0.25rem;
          }

          .comments-content-inner-comments {
            display: flex;
            flex-direction: column;
            gap: 0.25rem;
          }

          .comments-content-inner-list {
            display: flex;
            flex-direction: column;
            border-radius: var(--comments-radius);
            background: var(--bg-color);

            padding-block: var(--comments-pd-block-start) var(--comments-pd-block-end);
            padding-inline: var(--comments-pd-inline-start) var(--comments-pd-inline-end);
            @media (max-width: 991px) {
              gap: 0;
              padding-block: var(--comments-pd-block-start-mb) var(--comments-pd-block-end-mb);
              padding-inline: var(--comments-pd-inline-start-mb) var(--comments-pd-inline-end-mb);
            }

            .comments-list {
              max-width: var(--content-max-width);
              margin: auto;
              width: 100%;

              .comments-list-header {
                height: 3.375rem;
                border-bottom: 1px solid var(--color-border-default);

                @media (max-width: 991px) {
                  height: 2.938rem;
                }
              }

              .comments-list-body {
                .comment-item {
                  display: flex;
                  flex-direction: column;
                  gap: 1rem;
                  padding-block: 2rem;

                  @media (max-width: 991px) {
                    padding-block: 1rem;
                  }

                  &:not(:last-of-type) {
                    border-bottom: 1px solid var(--color-border-default);
                  }
                  .comment-item-header {
                    display: flex;
                    align-items: center;
                    gap: 0.75rem;
                    .comment-item-header-avatar-wrap {
                      width: 3rem;
                      height: 3rem;
                      border-radius: 0.25rem;
                    }

                    .comment-item-header-content {
                      display: flex;
                      gap: 0.25rem;
                      flex-direction: column;
                      height: fit-content;
                      .comment-item-header-content-author {
                      }
                      .comment-item-header-content-date {
                      }
                    }
                  }
                  .comment-item-content {
                    margin-inline: var(--comment-item-content-mg-inline);

                    @media (max-width: 991px) {
                      margin-inline: 0;
                    }
                  }
                }
              }
            }
          }

          .comments-content-inner-pagination {
            display: flex;
            justify-content: center;
            border-radius: var(--comments-radius);
            background: var(--bg-color);

            padding-block: 1.25rem;
            padding-inline: var(--comments-pd-inline-start) var(--comments-pd-inline-end);
            @media (max-width: 991px) {
              padding-block: 1rem;
              padding-inline: var(--comments-pd-inline-start-mb) var(--comments-pd-inline-end-mb);
            }

            &.hide {
              display: none;
            }

            .comment-paginations {
              max-width: var(--content-max-width);
              margin: auto;
              /* .btn-load-more {
                position: relative;
                background: var(--color-primary_button_background);
                color: var(--color-primary_button_text);
                border: var(--color-primary_button_border);
                border-radius: var(--loadmore-btn-radius);
                padding: 0 1.5rem;
                height: 3.75rem;
                display: flex;
                align-items: center;
                justify-content: center;
                gap: 0.5rem;
                font-family: var(--typo-ff-body);
                font-size: var(--typo-paragraph-size);
                font-weight: var(--font-weight-medium);
                line-height: var(--typo-paragraph-lh);
                cursor: pointer;
                transition: all var(--trans-duration) var(--trans-easing);
                @media (max-width: 991px) {
                  font-size: var(--typo-paragraph-size-mb);
                  line-height: var(--typo-paragraph-lh-mb);
                }
              }
              .btn-load-more:hover {
                border: var(--color-primary_button_border_hover);
                color: var(--color-primary_button_text_hover);
                background: var(--color-primary_button_background_hover);
              }
              .btn-load-more:disabled:not(.is-loading) {
                cursor: not-allowed;
                border: var(--color-primary_button_border_disabled);
                background: var(--color-primary_button_background_disabled);
                color: var(--color-primary_button_text_disabled);
              }
              .btn-load-more__text {
                white-space: nowrap;
                transition: opacity var(--trans-duration) var(--trans-easing),
                  transform var(--trans-duration) var(--trans-easing);
              }
              .btn-load-more__loader {
                position: absolute;
                width: 1.25rem;
                height: 1.25rem;
                display: inline-flex;
                align-items: center;
                justify-content: center;
                opacity: 0;
                visibility: hidden;
                transform: scale(0.5);
                transition: all var(--trans-duration) var(--trans-easing);
              }
              .btn-load-more.is-loading {
                .btn-load-more__text {
                  opacity: 0;
                  transform: translateY(-5px);
                }
                .btn-load-more__loader {
                  opacity: 1;
                  visibility: visible;
                  transform: scale(1);
                }
              }
              .btn-load-more__loader svg {
                animation: spin 1s linear infinite;
              }
              @keyframes spin {
                from {
                  transform: rotate(0deg);
                }
                to {
                  transform: rotate(360deg);
                }
              } */
            }
          }

          .comments-content-inner-comment {
            border-radius: var(--comments-radius);
            background: var(--bg-color);

            padding-block: var(--comments-pd-block-start) var(--comments-pd-block-end);
            padding-inline: var(--comments-pd-inline-start) var(--comments-pd-inline-end);
            @media (max-width: 991px) {
              padding-block: var(--comments-pd-block-start-mb) var(--comments-pd-block-end-mb);
              padding-inline: var(--comments-pd-inline-start-mb) var(--comments-pd-inline-end-mb);
            }

            .leave-comment {
              max-width: var(--content-max-width);
              margin: auto;

              .leave-comment-inner {
                .leave-comment-main {
                  .notification {
                    margin-block-start: 0;
                    margin-block-end: 1.5rem;

                    @media (max-width: 991px) {
                      margin-block-end: 1rem;
                    }
                  }
                }
                .leave-comment-inner-header {
                  margin-bottom: 1.5rem;

                  @media (max-width: 991px) {
                    margin-bottom: 1rem;
                  }
                }
                .leave-comment-main-form {
                  .leave-comment-main-form-inner {
                    display: flex;
                    flex-direction: column;
                    gap: var(--input-gap);

                    @media (max-width: 991px) {
                      gap: var(--input-gap-mb);
                    }
                    .leave-comment-header {
                      display: flex;
                      gap: var(--input-gap);

                      > * {
                        flex: 1;
                      }

                      @media (max-width: 991px) {
                        flex-direction: column;
                        gap: var(--input-gap-mb);
                      }
                    }
                    .field-textarea {
                      grid-column: span 2;
                    }
                  }

                  .leave-comment-main-footer {
                    margin-top: 1rem;

                    .leave-comment-main-note {
                      display: inline;
                    }

                    .leave-comment-main-btn {
                      margin-top: 1rem;
                    }
                  }
                }
              }
            }
          }
          content-expand {
            display: block;
          }
          .content-body-main {
            display: -webkit-box;
            transition: max-height 0.3s ease;
            text-overflow: ellipsis;
            overflow: hidden;
            -webkit-line-clamp: var(--max-lines, 3);
            line-clamp: var(--max-lines, 3);
            -webkit-box-orient: vertical;

            &.expanded {
              display: block;
              -webkit-line-clamp: unset;
              line-clamp: unset;
              overflow: visible;
            }
          }

          .content-expand-button {
            .button-show-more,
            .button-show-less {
              margin-block-start: 1rem;

              &.hidden {
                display: none;
              }
            }
          }
        }
      }
    }
  }
  @keyframes spin {
    to {
      transform: rotate(360deg);
    }
  }
/* END_SNIPPET:panel-article-container-comments */

/* START_SNIPPET:panel-article-container-content (INDEX:227) */
.ac {
    width: 100%;
    .ac-inner {
      border-radius: var(--ac-radius);
      .ac-content {
        padding-block: var(--ac-pd-block-start) var(--ac-pd-block-end);
        padding-inline: var(--ac-pd-inline-start) var(--ac-pd-inline-end);
        @media (max-width: 991px) {
          padding-block: var(--ac-pd-block-start-mb) var(--ac-pd-block-end-mb);
          padding-inline: var(--ac-pd-inline-start-mb) var(--ac-pd-inline-end-mb);
        }

        .ac-content-inner {
          display: flex;
          flex-direction: column;
          align-items: center;
          gap: var(--ac-flex-gap);

          .ac-content-inner-image {
            img {
              object-fit: cover;
              aspect-ratio: var(--header-aspect-ratio, auto);
              height: var(--main-content-image-height, auto);
              @media (max-width: 991px) {
                aspect-ratio: var(--header-aspect-ratio-mb, var(--header-aspect-ratio, auto));

                height: var(--main-content-image-height-mb, auto);
              }
            }
          }
          .ac-content-inner-content {
            max-width: var(--content-max-width);
          }

          .ac-content-inner-divider {
            max-width: var(--content-max-width);
            width: 100%;
            height: 1px;
            background: var(--color-border-default);
            margin-block: 3.75rem 0;

            @media (max-width: 991px) {
              margin-block: 2rem 0;
            }
          }

          .ac-content-inner-share-tags {
            max-width: var(--content-max-width);
            width: 100%;
            display: flex;
            align-items: flex-start;

            &:has(.ac-tags, .ac-share) {
              margin-block: 3.75rem 0;
            }

            &:has(.ac-tags):not(:has(.ac-share)) {
              justify-content: flex-start;
            }
            &:not(:has(.ac-tags)):has(.ac-share) {
              justify-content: flex-end;
            }
            &:has(.ac-tags):has(.ac-share) {
              gap: 5rem;
              @media (max-width: 991px) {
                gap: 2rem;
              }
              .ac-tags,
              .ac-share {
                width: calc((100% - 5rem) / 2);

                @media (max-width: 991px) {
                  width: 100%;
                }
              }

              .ac-share {
                justify-content: flex-end;
                @media (max-width: 991px) {
                  justify-content: flex-start;
                }
              }
            }

            @media (max-width: 991px) {
              flex-direction: column;
              align-items: flex-start;
              gap: 1rem;
              &:has(.ac-tags, .ac-share) {
                margin-block: 2rem 0;
              }
            }

            .ac-tags {
              display: flex;
              align-items: flex-start;
              gap: 1rem;

              .ac-tags-label {
                pointer-events: none;
                height: var(--sharing-options-title-height);
                display: flex;
                align-items: center;
                white-space: nowrap;
                flex-shrink: 0;
                margin-block: auto;
              }

              .ac-tags-list {
                display: flex;
                gap: var(--ac-tags-gap);
                align-items: center;
                flex-wrap: wrap;
                margin-block-start: calc((var(--sharing-options-title-height) - 1.75rem) / 2);

                .ac-tags-item {
                  display: inline-flex;
                  align-items: center;
                  max-height: 1.75rem;
                  height: auto;
                  background: var(--ac-tags-bg);
                  border: 1px solid var(--ac-tags-border-color);
                  padding-inline: var(--ac-tags-pd-inline);
                  padding-block: var(--ac-tags-pd-block);
                  border-radius: var(--ac-tags-radius);

                  .ac-tags-item-text {
                    color: var(--ac-tags-text);
                    transition: all var(--trans-duration) var(--trans-easing);
                  }
                }
                .ac-tags-divider {
                  width: var(--1px);
                  align-self: stretch;
                  background: var(--color-border-default);

                  &:last-child {
                    display: none;
                  }
                }
              }
            }
            .ac-share {
              display: flex;
              align-items: flex-start;
              gap: 1rem;
              margin-block-start: var(--ac-share-mg-block-start, 0);
              @media (max-width: 991px) {
                margin-block-start: 0;
              }
              .ac-share-label {
                pointer-events: none;
                height: var(--sharing-options-title-height);
                display: flex;
                align-items: center;
                white-space: nowrap;
                flex-shrink: 0;
              }
              .ac-share-icons {
                display: flex;
                flex-wrap: wrap;
                gap: 0.25rem;
              }
            }
          }
        }
      }

      .ac-bg {
        border-radius: var(--ac-radius);
        background: var(--bg-color);
      }
    }
  }
/* END_SNIPPET:panel-article-container-content */

/* START_SNIPPET:panel-article-container-navigation (INDEX:228) */
.an {
    width: 100%;
    .an-inner {
      border-radius: var(--an-radius);
      .an-content {
        display: flex;
        justify-content: center;
        padding-block: var(--an-pd-block-start) var(--an-pd-block-end);
        padding-inline: var(--an-pd-inline-start) var(--an-pd-inline-end);
        @media (max-width: 991px) {
          padding-block: var(--an-pd-block-start-mb) var(--an-pd-block-end-mb);
          padding-inline: var(--an-pd-inline-start-mb) var(--an-pd-inline-end-mb);
        }
        .an-content-inner {
          max-width: var(--content-max-width);
          width: 100%;
          .an-content-inner-content {
            display: flex;
            justify-content: space-between;
            gap: 0.75rem;

            @media (max-width: 991px) {
              &:has(.an-article-prev):has(.an-article-next) {
                .an-article-prev,
                .an-article-next {
                  max-width: calc(100% / 2 - (0.75rem / 2));
                }
              }
            }

            .an-article-prev,
            .an-article-next {
              width: 100%;
              display: flex;
              flex-direction: column;
              gap: 0.75rem;
              flex: 1;
              min-width: 0;

              @media (max-width: 991px) {
                gap: 0.5rem;
              }

              .an-article > * {
                flex: 1;
                min-width: 0;
              }
              .an-article {
                .an-article-item {
                  display: flex;
                  gap: 0.625rem;
                  align-items: center;
                  text-decoration: none;

                  .an-article-item-thumb {
                    max-width: 7.5rem;
                    width: 100%;
                    border-radius: var(--radius-new-x-small);
                    overflow: hidden;
                    height: 5rem;
                    @media (max-width: 991px) {
                      max-width: unset;
                      display: none;
                    }

                    img {
                      height: 100%;
                    }
                  }

                  .an-article-item-content {
                    flex: 1;
                    min-width: 0;
                    display: flex;
                    flex-direction: column;
                    gap: 0.5rem;
                    .an-article-item-title {
                      word-break: break-word;
                      display: flex;
                      .text-custom-content-inner {
                        display: inline;
                        --line-width: var(--1px);
                        background-repeat: no-repeat;
                        background-position: bottom left;
                        background: linear-gradient(var(--color-text-title) 0 0) calc(100% - var(--p, 0%)) /
                          var(--p, 0%) no-repeat;
                        background-position-y: bottom;
                        background-size: var(--p, 0%) var(--line-width, var(--1px));
                        padding-bottom: var(--line-width, var(--1px));
                        transition: background-size var(--trans-duration), background-position 0s;
                        z-index: 1;
                      }
                      &:hover {
                        .text-custom-content-inner {
                          --p: 100%;
                          background-size: 100% var(--line-width, var(--1px));
                          transition: background-size var(--trans-duration), background-position 0s;
                        }
                      }
                    }

                    .an-article-item-excerpt {
                      display: flex;
                      align-items: center;
                      overflow: hidden;
                      @media (max-width: 991px) {
                        display: none;
                      }

                      .an-article-item-excerpt-link {
                        cursor: pointer;
                        position: relative;
                        z-index: 2;
                      }

                      .an-article-item-excerpt-text {
                        white-space: nowrap;
                      }

                      .an-article-item-separator {
                        padding-inline: 0.5rem;
                        color: var(--color-text-divider);
                      }
                    }
                  }
                }
              }
            }
            .an-article-prev {
              .an-article-item-excerpt-text:last-of-type {
                display: inline-block;
                flex: 1;
                min-width: 0;
                overflow: hidden;
                text-overflow: ellipsis;
                white-space: nowrap;
              }
            }

            .an-article-next {
              .an-article-label,
              .an-article-item-title,
              .an-article-item-title-txt,
              .an-article-item-excerpt {
                text-align: end;
                justify-content: flex-end;
              }
              .an-article-item-excerpt-text:first-child {
                direction: rtl;
                text-align: right;

                overflow: hidden;
                white-space: nowrap;
                text-overflow: ellipsis;

                min-width: 0;
                flex: 1;
              }
              @media (max-width: 991px) {
                .an-article-item-title-txt {
                  position: relative;
                  text-align: right;
                }
              }
            }
          }
        }
      }

      .an-bg {
        border-radius: var(--an-radius);
        background: var(--bg-color);
      }
    }
  }
/* END_SNIPPET:panel-article-container-navigation */

/* START_SNIPPET:panel-article-container (INDEX:229) */
.container {
    width: 100%;
    .container-inner {
      border-radius: var(--container-radius);
      .container-content {
        padding-block: var(--container-pd-block-start) var(--container-pd-block-end);
        padding-inline: var(--container-pd-inline-start) var(--container-pd-inline-end);
        @media (max-width: 991px) {
          padding-block: var(--container-pd-block-start-mb) var(--container-pd-block-end-mb);
          padding-inline: var(--container-pd-inline-start-mb) var(--container-pd-inline-end-mb);
        }
        .container-content-inner {
          display: flex;
          flex-direction: column;
          gap: var(--container-flex-gap);
        }
      }

      .container-bg {
        border-radius: var(--container-radius);
        background: var(--bg-color);
      }
    }
  }
/* END_SNIPPET:panel-article-container */

/* START_SNIPPET:panel-article-description (INDEX:230) */
.article-item-description {
    padding-block: var(--article_description-pd-block-start) var(--article_description-pd-block-end);
    @media (max-width: 991px) {
      padding-block: var(--article_description-pd-block-start-mb) var(--article_description-pd-block-end-mb);
    }
    p {
      color: var(--color-text-paragraph);
      font-family: var(--typo-paragraph-family);
      font-size: var(--typo-paragraph-size);
      letter-spacing: var(--typo-paragraph-ls);
      font-weight: var(--typo-paragraph-weight);
      line-height: var(--typo-paragraph-lh);
      font-style: normal;

      -webkit-box-orient: vertical;
      -webkit-line-clamp: 2;
      align-self: stretch;
      overflow: hidden;
      line-clamp: 2;
      text-overflow: ellipsis;
      display: -webkit-box;
      @media (max-width: 991px) {
        font-size: var(--typo-paragraph-size-mb);
        letter-spacing: var(--typo-paragraph-ls-mb);
        line-height: var(--typo-paragraph-lh-mb);
        font-weight: var(--typo-paragraph-weight-mb);

        line-clamp: 2;
        -webkit-line-clamp: 2;
      }
    }
  }
/* END_SNIPPET:panel-article-description */

/* START_SNIPPET:panel-article-detail-sc (INDEX:231) */
.panel-article-detail-sc {
    flex-direction: column;
    gap: var(--article-gap);
    padding-inline: var(--article-mg-inline);
    @media (max-width: 991px) {
      padding-inline: var(--article-mg-inline-mb);
    }
    .sc-article-detail-inner {
      height: 100%;
      width: 100%;
      margin-block: var(--article-mg-block);
      @media (max-width: 991px) {
        margin-block: var(--article-mg-block-mb);
      }
    }
    .sc-article-detail-content {
      padding-block: var(--article-pd-block-start) var(--article-pd-block-end);
      padding-inline: var(--article-pd-inline-start) var(--article-pd-inline-end);
      @media (max-width: 991px) {
        padding-block: var(--article-pd-block-start-mb) var(--article-pd-block-end-mb);
        padding-inline: var(--article-pd-inline-start-mb) var(--article-pd-inline-end-mb);
      }
    }
    .sc-article-detail-bg {
      border-radius: var(--article-radius);
      background: var(--article-background);
      background-repeat: no-repeat;
    }
    .sc-article-detail-content-inner {
      display: flex;
      flex-direction: column;
      gap: var(--article-flex-gap);
      @media (max-width: 991px) {
        gap: var(--article-flex-gap-mb);
      }
    }
  }
/* END_SNIPPET:panel-article-detail-sc */

/* START_SNIPPET:panel-article-details (INDEX:232) */
.article-details {
    width: 100%;
    display: flex;
    gap: 0.5rem;
    color: var(--color-text-paragraph);
    font-family: var(--typo-label-family);
    font-size: var(--typo-label-size);
    font-weight: var(--typo-label-weight);
    line-height: var(--typo-label-lh);
    letter-spacing: var(--typo-label-ls);
    text-transform: var(--typo-label-case);
    padding-block: var(--article_details-pd-block-start) var(--article_details-pd-block-end);
    @media (max-width: 991px) {
      font-size: var(--typo-label-size-mb);
      line-height: var(--typo-label-lh-mb);
      letter-spacing: var(--typo-label-ls-mb);
      font-weight: var(--typo-label-weight-mb);
      padding-block: var(--article_details-pd-block-start-mb) var(--article_details-pd-block-end-mb);
    }
    .article-details-item {
      display: flex;
      gap: 0.5rem;
      align-items: center;
    }
    .article-details-item::before {
      content: '/';
      color: var(--color-text-divider);
      font-size: 0.75rem;
      line-height: var(--typo-label-lh);
      font-weight: var(--font-weight-medium);
      display: none;
      @media (max-width: 991px) {
        line-height: var(--typo-label-lh-mb);
      }
    }
    /* Show divider on non-first visible items - Desktop */
    @media (min-width: 992px) {
      .article-details-item.medium-up-hide {
        display: none;
      }
      .article-details-item:not(.medium-up-hide) ~ .article-details-item:not(.medium-up-hide)::before {
        display: inline;
      }
      .article-details-item:not(.medium-up-hide):first-child::before,
      .article-details-item.medium-up-hide + .article-details-item:not(.medium-up-hide)::before {
        display: none;
      }
    }
    /* Show divider on non-first visible items - Mobile */
    @media (max-width: 991px) {
      .article-details-item.small-hide {
        display: none;
      }
      .article-details-item:not(.small-hide) ~ .article-details-item:not(.small-hide)::before {
        display: inline;
      }
      .article-details-item:not(.small-hide):first-child::before,
      .article-details-item.small-hide + .article-details-item:not(.small-hide)::before {
        display: none;
      }
    }
  }
/* END_SNIPPET:panel-article-details */

/* START_SNIPPET:panel-article-hero-breadcrumb (INDEX:233) */
.panel-article-hero-breadcrumb {
    width: var(--breadcrumb-size-width);
    max-width: var(--breadcrumb-size-max-width);
    @media (max-width: 991px) {
      width: 100%;
      max-width: 100%;
      overflow: hidden;
    }
    .article-header-breadcrumb-content {
      padding-block: var(--breadcrumb-pd-block-start) var(--breadcrumb-pd-block-end);
      padding-inline: var(--breadcrumb-pd-inline-start) var(--breadcrumb-pd-inline-end);
      @media (max-width: 991px) {
        padding-block: var(--breadcrumb-pd-block-start-mb) var(--breadcrumb-pd-block-end-mb);
        padding-inline: var(--breadcrumb-pd-inline-start-mb) var(--breadcrumb-pd-inline-end-mb);
      }
    }
    .article-header-breadcrumb-content-inner {
      display: flex;
      flex-direction: row;
      gap: 0.5rem;
      justify-content: var(--breadcrumb-alignment, flex-start);
      align-items: center;
      text-align: center;
      overflow: hidden;
      max-width: var(--content-width-boxed);
      margin: auto;

      @media (max-width: 991px) {
        justify-content: var(--breadcrumb-alignment-mb);
      }
    }
    .article-header-breadcrumb-separator {
      flex: none;
      .text-custom-content-inner {
        color: var(--color-text-divider);
      }
    }
    .article-header-breadcrumb-item {
      transition: color var(--trans-duration) var(--trans-easing);
      &:hover {
        color: var(--color-text-title-hover);
      }
    }
    .article-header-breadcrumb-button {
      flex: none;
      .inline-btn-label {
        flex-shrink: 0;
        width: max-content;
      }
    }
    .article-header-breadcrumb-title {
      min-width: 0;
      pointer-events: none;
      @media (max-width: 991px) {
        flex: 1 1 auto;
      }

      .text-custom,
      .text-custom-inner,
      .text-custom-content,
      .text-custom-content-inner,
      .inline-button-link,
      .inline-btn-label {
        width: 100%;
        /* overflow: hidden; */
      }

      .inline-btn-label {
        display: inline-block;
        overflow: hidden;
        width: 100%;
        white-space: nowrap;
        text-overflow: ellipsis;
        color: var(--color-text-title-highlight);
      }
    }
  }
/* END_SNIPPET:panel-article-hero-breadcrumb */

/* START_SNIPPET:panel-article-hero-details (INDEX:234) */
.panel-article-hero-details {
    min-width: 1px;
    min-height: fit-content;
    width: fit-content;
    .article-details-inner {
      color: var(--color-text-subtitle);
    }
    .article-details-content {
      padding-block: var(--details-pd-block-start) var(--details-pd-block-end);
      padding-inline: var(--details-pd-inline-start) var(--details-pd-inline-end);
      @media (max-width: 991px) {
        padding-block: var(--details-pd-block-start-mb) var(--details-pd-block-end-mb);
        padding-inline: var(--details-pd-inline-start-mb) var(--details-pd-inline-end-mb);
      }
      .article-details-content-inner {
        display: flex;
        flex-direction: row;
        gap: 0.5rem;
      }
      .article-details-item {
        display: flex;
        flex-direction: row;
        /* align-items: last baseline; */
        align-items: center;
        gap: 0.25rem;
        color: var(--color-text-paragraph);
        &[data-article='date'] {
          display: var(--show-date);
        }
        &[data-article='tag'] {
          display: var(--show-tags);
        }
        &[data-article='author'] {
          display: var(--show-author);
        }
        &::before {
          display: none !important;
        }
        @media (max-width: 991px) {
          &[data-article='date'] {
            display: var(--show-date-mb);
          }
          &[data-article='tag'] {
            display: var(--show-tags-mb);
          }
          &[data-article='author'] {
            display: var(--show-author-mb);
          }
        }
      }
      .article-details-item-inner {
        display: flex;
        flex: none;
        flex-direction: row;
        align-items: center;
        gap: 0.25rem;
        font-size: var(--typo-label-size);
        line-height: var(--typo-label-lh);
        @media (max-width: 991px) {
          font-size: var(--typo-label-size-mb);
          line-height: var(--typo-label-lh-mb);
        }
      }
      .article-details-separator {
        padding-inline-start: 0.5rem;
        .text-custom-content-inner {
          color: var(--color-text-divider);
        }
      }
      .article-details-separator-tag {
        display: var(--show-sep-tag);
        @media (max-width: 991px) {
          display: var(--show-sep-tag-mb);
        }
      }
      .article-details-separator-date {
        display: var(--show-sep-date);
        @media (max-width: 991px) {
          display: var(--show-sep-date-mb);
        }
      }
      .article-details-item-icon {
        width: 0.875rem;
        height: 0.875rem;
        color: var(--color-foreground_60);
        @media (max-width: 991px) {
          width: 0.75rem;
          height: 0.75rem;
        }

        svg {
          display: block;
          transform: translateY(-0.065em);
        }
      }
    }
  }
/* END_SNIPPET:panel-article-hero-details */

/* START_SNIPPET:panel-article-hero-group (INDEX:235) */
.panel-article-hero-group {
    width: var(--header_grp-size-width);
    max-width: var(--header_grp-size-max-width);
    height: var(--header_grp-size-height);
    min-height: var(--header_grp-size-min-height);
    @media (max-width: 991px) {
      width: 100%;
      max-width: 100%;
      height: var(--header_grp-size-height-mb);
      min-height: var(--header_grp-size-min-height-mb);
      overflow: hidden;
    }
    .article-header-group-inner {
      width: 100%;
      height: 100%;
    }
    .article-header-group-content {
      width: 100%;
      height: 100%;
      padding-block: var(--header_grp-pd-block-start) var(--header_grp-pd-block-end);
      padding-inline: var(--header_grp-pd-inline-start) var(--header_grp-pd-inline-end);
      @media (max-width: 991px) {
        padding-block: var(--header_grp-pd-block-start-mb) var(--header_grp-pd-block-end-mb);
        padding-inline: var(--header_grp-pd-inline-start-mb) var(--header_grp-pd-inline-end-mb);
      }
    }
    .article-header-group-content-inner {
      display: flex;
      height: 100%;
      flex-direction: var(--header_grp-direction);
      justify-content: var(--header_grp-justify-content);
      align-items: var(--header_grp-alignment);
      gap: var(--header_grp-flex-gap);
      max-width: var(--content-width-boxed);
      margin: auto;
      @media (max-width: 991px) {
        flex-direction: column;
        align-items: var(--header_grp-alignment-mb);
        justify-content: var(--header_grp-justify-content-mb, normal);
        gap: var(--header_grp-flex-gap-mb);
      }
    }
  }
/* END_SNIPPET:panel-article-hero-group */

/* START_SNIPPET:panel-article-hero-title (INDEX:236) */
.panel-article-hero-title {
    min-width: 1px;
    min-height: fit-content;
    width: var(--title-size-width);
    max-width: var(--title-size-max-width);
    height: fit-content;
    text-align: var(--header_grp-text-align);
    @media (max-width: 991px) {
      width: 100%;
      max-width: var(--title-size-max-width-mb);
      text-align: var(--header_grp-text-align-mb);
    }
    .article-title-inner {
      color: var(--color-text-title);
    }
    .article-title-content {
      padding-block: var(--title-pd-block-start) var(--title-pd-block-end);
      padding-inline: var(--title-pd-inline-start) var(--title-pd-inline-end);
      @media (max-width: 991px) {
        padding-block: var(--title-pd-block-start-mb) var(--title-pd-block-end-mb);
        padding-inline: var(--title-pd-inline-start-mb) var(--title-pd-inline-end-mb);
      }
      .article-title-content-inner {
        text-align: var(--text-align);
        @media (max-width: 991px) {
          text-align: var(--text-align-mb);
        }
        p,
        ul,
        ol,
        h1,
        h2,
        h3,
        h4,
        h5,
        h6 {
          margin-block: var(--typo-paragraph-spacing);
          &:first-child {
            margin-block-start: 0;
            @media (max-width: 991px) {
              margin-block-start: 0;
            }
          }
          &:last-child {
            margin-block-end: 0;
          }
        }
      }
    }
  }
/* END_SNIPPET:panel-article-hero-title */

/* START_SNIPPET:panel-article-hero (INDEX:237) */
.panel-article-hero {
    margin-inline: auto;
    width: var(--header-size-width);
    max-width: var(--header-size-max-width, var(--sc-article-container-width));
    @media (max-width: 991px) {
      width: var(--header-size-width-mb);
      max-width: var(--header-size-max-width-mb);
    }
    .article-header-inner {
      border-radius: var(--header-radius);
    }
    .article-header-content {
      width: 100%;
      margin: auto;
      aspect-ratio: var(--header-aspect-ratio, auto);
      height: var(--header-height, auto);
      padding-block: var(--header-pd-block-start) var(--header-pd-block-end);
      padding-inline: var(--header-pd-inline-start) var(--header-pd-inline-end);
      @media (max-width: 991px) {
        aspect-ratio: var(--header-aspect-ratio-mb, var(--header-aspect-ratio, auto));
        height: var(--header-height-mb, auto);
        min-height: fit-content;
        padding-block: var(--header-pd-block-start-mb) var(--header-pd-block-end-mb);
        padding-inline: var(--header-pd-inline-start-mb) var(--header-pd-inline-end-mb);
      }
    }
    .article-header-content-inner {
      width: 100%;
      height: 100%;
      display: flex;
      flex-direction: column;
      align-items: var(--header-align-items);
      justify-content: var(--header-justify-content);
      gap: var(--header-flex-gap);
      margin: auto;
      min-height: max-content;
      @media (max-width: 991px) {
        align-items: var(--header-align-items-mb);
        justify-content: var(--header-justify-content-mb);
        gap: var(--header-flex-gap-mb);
        max-width: unset;
      }
    }
    .article-header-bg {
      border-radius: var(--header-radius);
      background-repeat: no-repeat;
      background-size: cover;
      background-position: center;
      background: var(--color-background);
    }
  }
/* END_SNIPPET:panel-article-hero */

/* START_SNIPPET:panel-article-item (INDEX:238) */
.article-item {
    .article-item-inner {
      contain: paint;
      position: relative;
      &:focus-visible {
        outline-offset: 2px;
      }
    }
    .article-item-content {
      display: flex;
      flex-direction: column;
      width: 100%;
      height: 100%;
      justify-content: var(--article-content-justify);
      row-gap: var(--article-row-gap);
      background: var(--article-content-bg);
      align-items: var(--article-align-items);
      text-align: var(--article-text-align);
      padding-block: var(--article-pd-block-start) var(--article-pd-block-end);
      padding-inline: var(--article-pd-inline-start) var(--article-pd-inline-end);
      @media (max-width: 991px) {
        align-items: var(--article-align-items-mb);
        text-align: var(--article-text-align-mb);
        padding-block: var(--article-pd-block-start-mb) var(--article-pd-block-end-mb);
        padding-inline: var(--article-pd-inline-start-mb) var(--article-pd-inline-end-mb);
      }

      &:before {
        position: absolute;
        inset: 0;
        background-color: var(--color-surface-alt);
        z-index: 1;
        pointer-events: none;
      }
    }
    .article-item-content-wrapper {
      display: flex;
      flex-direction: column;
    }
    .article-details {
      justify-content: var(--article-align-items);
      @media (max-width: 991px) {
        justify-content: var(--article-align-items-mb);
      }
    }
    .article-item-title,
    .article-item-description {
      text-align: var(--article-text-align);
      @media (max-width: 991px) {
        text-align: var(--article-text-align-mb);
      }
    }
    .article-item-image {
      position: relative;
      width: 9.375rem;
      aspect-ratio: var(--article-image-aspect-ratio);
      flex-shrink: 0;
      border-radius: var(--article-image-radius);
      overflow: hidden;
      @media (max-width: 991px) {
        aspect-ratio: var(--article-image-aspect-ratio-mb);
      }
    }
    .article-item-read-more {
      display: var(--article-read-more-display);
      justify-content: var(--article-align-items);
      padding-block-start: 0.75rem;
      @media (max-width: 991px) {
        display: var(--article-read-more-display-mb);
        justify-content: var(--article-align-items-mb);
      }

    }
  }
  .color-scheme-2 .article-item {
    .article-item-content {
      &::before {
        content: '';
      }
    }
  }
  .article-item.color-scheme-2 {
    .article-item-content {
      &:before {
        content: '';
      }
    }
  }
  .article-page-featured-listing {
    article-slideshow[data-show-slideshow-dots='true'] {
      .article-item[data-article-preview-image='none'] {
        .article-details {
          justify-content: flex-start;
        }
      }
    }
  }
/* END_SNIPPET:panel-article-item */

/* START_SNIPPET:panel-article-listing (INDEX:239) */
.article-listing {
    width: 100%;
    height: auto;
    .article-listing-inner {
      margin-block: var(--article_listing-mg-block-start) var(--article_listing-mg-block-end);
      margin-inline: var(--article_listing-mg-inline-start) var(--article_listing-mg-inline-end);
      @media (max-width: 991px) {
        margin-block: var(--article_listing-mg-block-start-mb) var(--article_listing-mg-block-end-mb);
        margin-inline: var(--article_listing-mg-inline-start-mb) var(--article_listing-mg-inline-end-mb);
      }
      .article-listing-content {
        padding-block: var(--article_listing-pd-block-start) var(--article_listing-pd-block-end);
        padding-inline: var(--article_listing-pd-inline-start) var(--article_listing-pd-inline-end);
        @media (max-width: 991px) {
          padding-block: var(--article_listing-pd-block-start-mb) var(--article_listing-pd-block-end-mb);
          padding-inline: var(--article_listing-pd-inline-start-mb) var(--article_listing-pd-inline-end-mb);
        }
      }
    }

    &[data-display-type='grid'] {
      @media (min-width: 992px) {
        .embla__container {
          display: grid;
          grid-template-columns: repeat(var(--al-embla-grid-cols-count, 4), 1fr);
        }
        .embla__slide {
          flex: unset;
          min-width: unset;
          max-width: 100%;
          width: 100%;
        }
      }
      .embla__slide--featured {
        @media (max-width: 1200px) and (min-width: 992px) {
          grid-column: span var(--featured-grid-span-tb);
        }
        @media (min-width: 1201px) {
          grid-column: span var(--featured-grid-span-dk);
        }
      }
    }

    &[data-display-type='carousel'] {
      .embla__slide--featured {
        @media (max-width: 1200px) and (min-width: 992px) {
          flex-basis: var(--featured-size-tb);
        }
        @media (min-width: 1201px) {
          flex-basis: var(--featured-size-dk);
        }
      }
    }

    .embla__slide--featured {
      @media (max-width: 991px) {
        flex-basis: var(--slide-size-mobile);
      }
    }

    .article-item {
      height: 100%;
      min-height: var(--article-listing-card-height);
      @media (max-width: 991px) {
        min-height: var(--article-listing-card-height-mb);
      }
      .article-item-inner {
        border-radius: var(--article_card-radius);
      }
    }
  }
/* END_SNIPPET:panel-article-listing */

/* START_SNIPPET:panel-article-main-content (INDEX:240) */
.main-content {
    width: var(--mc-size-width);
    max-width: var(--mc-size-max-width, var(--sc-article-container-width));
    @media (max-width: 991px) {
      width: var(--mc-size-width-mb);
      max-width: var(--mc-size-max-width-mb);
    }
    margin: auto;
    .main-content-inner {
      border-radius: var(--mc-radius);
      .main-content-content {
        padding-block: var(--mc-pd-block-start) var(--mc-pd-block-end);
        padding-inline: var(--mc-pd-inline-start) var(--mc-pd-inline-end);
        @media (max-width: 991px) {
          padding-block: var(--mc-pd-block-start-mb) var(--mc-pd-block-end-mb);
          padding-inline: var(--mc-pd-inline-start-mb) var(--mc-pd-inline-end-mb);
          display: flex;
          flex-direction: column;
          gap: var(--mc-flex-gap-mb);
        }
        .main-content-content-inner {
          display: flex;
          gap: var(--mc-flex-gap);
          /* height: 100%; */

          @media (max-width: 991px) {
            display: contents;
          }
        }
      }

      .main-content-bg {
        border-radius: var(--mc-radius);
        background: var(--bg-color);
      }
    }
  }
/* END_SNIPPET:panel-article-main-content */

/* START_SNIPPET:panel-article-page-featured-articles (INDEX:241) */
.article-slideshow {
    &[data-autoplay='true'] {
      .article-item {
        .article-item-bg {
          transition: transform var(--autoplay-anim-duration);
        }
      }
      &[data-autoplay-anim='zoom-out'] .article-item {
        .article-item-bg {
          transform: scale(1.1);
          transition-timing-function: ease-out;
        }
        &.is-snapped .article-item-bg {
          transform: scale(1);
        }
      }
      &[data-autoplay-anim='zoom-in'] .article-item {
        .article-item-bg {
          transform: scale(1);
          transition-timing-function: ease-out;
        }
        &.is-snapped .article-item-bg {
          transform: scale(1.1);
        }
      }
      &[data-autoplay-anim='move-left'] .article-item {
        .article-item-bg {
          transform-origin: left;
          transform: translateX(0%) scale(1.03);
          transition-timing-function: linear;
        }
        &.is-snapped .article-item-bg {
          transform: translateX(-3%) scale(1.03);
        }
      }
      &[data-autoplay-anim='move-right'] .article-item {
        .article-item-bg {
          transform-origin: right;
          transform: translateX(0%) scale(1.03);
          transition-timing-function: linear;
        }
        &.is-snapped .article-item-bg {
          transform: translateX(3%) scale(1.03);
        }
      }
      &[data-autoplay-anim='move-top'] .article-item {
        .article-item-bg {
          transform-origin: top;
          transform: translateY(0%) scale(1.03);
          transition-timing-function: linear;
        }
        &.is-snapped .article-item-bg {
          transform: translateY(-3%) scale(1.03);
        }
      }
      &[data-autoplay-anim='move-bottom'] .article-item {
        .article-item-bg {
          transform-origin: bottom;
          transform: translateY(0%) scale(1.03);
          transition-timing-function: linear;
        }
        &.is-snapped .article-item-bg {
          transform: translateY(3%) scale(1.03);
        }
      }
    }
  }
  .featured-article-pagination {
    position: absolute;
    top: var(--article-pd-block-start);
    right: var(--article-pd-inline-end);
    @media (max-width: 991px) {
      top: var(--article-pd-block-start-mb);
      right: var(--article-pd-inline-end-mb);
    }
    .embla__snip-dots {
      margin: 0;
    }
    .embla__snip-bars .embla__bar {
      width: 2rem;
    }
  }
/* END_SNIPPET:panel-article-page-featured-articles */

/* START_SNIPPET:panel-article-page-grid (INDEX:242) */
.article-page-grid {
    .article-page-grid-inner {
      border-radius: var(--article_grid-radius);
      width: 100%;
      max-width: var(--content-width-full);
      margin-inline: auto;
    }
    .article-page-grid-content {
      padding-inline: var(--article_grid-pd-inline-start) var(--article_grid-pd-inline-end);
      padding-block: var(--article_grid-pd-block-start) var(--article_grid-pd-block-end);
      @media (max-width: 991px) {
        padding-inline: var(--article_grid-pd-inline-start-mb) var(--article_grid-pd-inline-end-mb);
        padding-block: var(--article_grid-pd-block-start-mb) var(--article_grid-pd-block-end-mb);
      }
    }
    .article-page-grid-bg {
      background: var(--apl-background);
      background-repeat: no-repeat;
    }
    .article-page-grid-content {
      margin-inline: auto;
      display: flex;
      justify-content: stretch;
    }
    .article-page-grid-content-inner {
      width: 100%;
      display: flex;
      flex-direction: column;
      row-gap: var(--section-gap);
      .article-page-grid-items {
        width: 100%;
        display: grid;
        grid-template-columns: var(--grid-columns);
        grid-auto-rows: minmax(var(--article-listing-card-height), auto);
        gap: var(--slide-gap-desktop);
        @media (max-width: 991px) {
          grid-template-columns: var(--grid-columns-mb);
          grid-auto-rows: minmax(var(--article-listing-card-height-mb), auto);
          gap: var(--slide-gap-mobile);
        }
        .article-page-featured-listing {
          grid-column: span 2;
          grid-row: span 2;
          overflow: hidden;
          border-radius: var(--apl_card-radius);
          @media (max-width: 991px) {
            grid-column: span 1;
            grid-row: span 1;
          }
          .article-page-featured-listing-inner,
          .article-page-featured-listing-content {
            width: 100%;
            height: 100%;
          }
          .embla {
            overflow: hidden;
            width: 100%;
            height: 100%;
            position: relative;
          }
          .embla__viewport {
            overflow: hidden;
            width: 100%;
            height: 100%;
          }
          .embla__container {
            width: 100%;
            height: 100%;
          }
          .embla__container > * {
            flex: 0 0 100%;
            min-width: 0;
            height: 100%;
          }
        }
        .article-item {
          height: 100%;
          min-height: var(--article-listing-card-height);
          &.is-loading {
            opacity: 0;
            transform: translateY(10px);
          }
          &:not(.is-loading) {
            opacity: 1;
            transform: translateY(0);
            transition: opacity var(--transition-duration) var(--transition-easing);
          }
          @media (max-width: 991px) {
            min-height: var(--article-listing-card-height-mb);
          }
          .article-item-inner {
            border-radius: var(--apl_card-radius);
          }
        }
      }
    }
  }
/* END_SNIPPET:panel-article-page-grid */

/* START_SNIPPET:panel-article-page-listing (INDEX:243) */
.article-page-listing {
    padding-inline: var(--sc-mg-inline);
    @media (max-width: 991px) {
      padding-inline: var(--sc-mg-inline-mb);
    }
    .article-page-listing-inner {
      contain: layout style var(--sc-overflow-contain);
      border-radius: var(--sc-radius);
      width: 100%;
      max-width: var(--sc-content-width);
      margin-inline: auto;
      margin-block: var(--sc-mg-block) var(--sc-mg-block);
      @media (max-width: 991px) {
        margin-block: var(--sc-mg-block-mb) var(--sc-mg-block-mb);
      }
    }
    .article-page-listing-content {
      padding-block: var(--sc-pd-block-start) var(--sc-pd-block-end);
      padding-inline: var(--sc-pd-inline-start) var(--sc-pd-inline-end);
      @media (max-width: 991px) {
        padding-block: var(--sc-pd-block-start-mb) var(--sc-pd-block-end-mb);
        padding-inline: var(--sc-pd-inline-start-mb) var(--sc-pd-inline-end-mb);
      }
    }
    .article-page-listing-content-inner {
      width: 100%;
      max-width: var(--ctn-content-maxwidth);
      margin-inline: auto;
      display: flex;
      gap: var(--sc_article-flex-gap);
      flex-direction: column;
      @media (max-width: 991px) {
        max-width: 100%;
        gap: var(--sc_article-flex-gap-mb);
      }
    }
    .article-page-listing-bg {
      background: var(--sc-background);
      background-repeat: no-repeat;
    }
  }
/* END_SNIPPET:panel-article-page-listing */

/* START_SNIPPET:panel-article-related-articles (INDEX:244) */
.ra {
    @media (max-width: 991px) {
      display: none;
    }
    .ra-inner {
      .ra-content {
        padding-inline: var(--sb-widget-card-pd-inline);
        padding-block: var(--sb-widget-card-pd-block);
        border-radius: var(--sb-widget-card-radius);

        .ra-content-inner {
          .ra-content-inner-heading {
            color: var(--color-text-title);
            font-family: var(--heading-font-family);
            font-weight: var(--heading-font-weight);
            line-height: var(--heading-line-height);
            font-size: var(--heading-font-size);
            letter-spacing: var(--heading-letter-spacing);
            text-transform: var(--heading-text-transform);
          }
          .ra-content-inner-articles {
            .ra-list-wrapper {
              .ra-list {
                display: flex;
                flex-direction: column;
                gap: 1.25rem;
                .ra-item {
                  display: flex;
                  gap: 0.625rem;
                  align-items: center;
                  border-bottom: 1px solid var(--ra-border-color);

                  .ra-item-thumb {
                    max-width: 7.5rem;
                    width: 100%;
                    border-radius: var(--radius-new-x-small);
                    overflow: hidden;
                    height: 5rem;
                    @media (max-width: 991px) {
                      max-width: unset;
                    }

                    img {
                      height: 100%;
                    }
                  }

                  .ra-item-content {
                    flex: 1;
                    min-width: 0;
                    display: flex;
                    flex-direction: column;
                    gap: 0.5rem;
                    .ra-item-title {
                      word-break: break-word;
                    }

                    .ra-item-excerpt {
                      display: flex;
                      align-items: center;
                      overflow: hidden;

                      .ra-item-excerpt-link {
                        cursor: pointer;
                        position: relative;
                        z-index: 2;
                      }

                      .ra-item-excerpt-text {
                        white-space: nowrap;
                        flex-shrink: 0;
                      }

                      .ra-item-excerpt-text:last-of-type {
                        flex: 1;
                        min-width: 0;
                        overflow: hidden;
                        text-overflow: ellipsis;
                        white-space: nowrap;
                      }

                      .ra-item-separator {
                        padding-inline: 0.5rem;
                        color: var(--color-text-divider);
                        flex-shrink: 0;
                      }
                    }
                  }

                  .ra-item-title {
                    .text-custom-content-inner {
                      display: inline;
                      --line-width: var(--1px);
                      background-repeat: no-repeat;
                      background-position: bottom left;
                      background: linear-gradient(var(--color-text-title) 0 0) calc(100% - var(--p, 0%)) / var(--p, 0%)
                        no-repeat;
                      background-position-y: bottom;
                      background-size: var(--p, 0%) var(--line-width, var(--1px));
                      transition: background-size var(--trans-duration), background-position 0s;
                      z-index: 1;
                    }
                    &:hover {
                      .text-custom-content-inner {
                        --p: 100%;
                        background-size: 100% var(--line-width, var(--1px));
                        transition: background-size var(--trans-duration), background-position 0s;
                      }
                    }
                  }
                }

                .ra-divider {
                  display: var(--ra-divider);
                  height: 1px;
                  width: 100%;
                  background: var(--color-border-default);
                }

                .ra-divider:last-child {
                  display: none;
                }
              }
            }
          }
        }
      }
      .ra-bg {
        border-radius: var(--sb-widget-card-radius);
        background: var(--sb-widget-card-bg);
      }
    }
  }
/* END_SNIPPET:panel-article-related-articles */

/* START_SNIPPET:panel-article-sidebar (INDEX:245) */
sidebar-component {
    display: contents;
  }
  .sidebar-sentinel {
    height: 0;
    width: 100%;
    pointer-events: none;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
  }
  .sidebar {
    max-width: 31.25rem;
    min-width: 18.75rem;
    width: 30%;
    height: 100%;
    position: var(--sb-position);
    z-index: 99999;
    align-self: flex-start;
    top: var(--sidebar-top, 0px);
    transition: top calc(var(--trans-duration) * 0.6) var(--trans-easing);

    @media (max-width: 991px) {
      width: 100%;
      height: fit-content;
      transition: margin-inline var(--trans-duration) var(--trans-easing),
        width var(--trans-duration) var(--trans-easing), top calc(var(--trans-duration) * 0.6) var(--trans-easing);
      top: max(0px, calc(var(--sidebar-top, 0px) - var(--content-gap, 0px)));
      .toc-content-inner {
        transition: border-top-color var(--trans-duration) var(--trans-easing);
        border-top: var(--1px) solid transparent;
      }
      &.is-sticky {
        width: calc(100% + var(--article-mg-inline-mb) * 2);
        margin-inline: calc(var(--article-mg-inline-mb) * -1);
        box-shadow: 0px 8px 24px 0px #959da533;
        .toc-content-inner {
          border-top-color: var(--color-border-default);
        }
        .toc {
          .toc-inner {
            .toc-content {
              border-radius: 0;

              .sidebar-content-list {
                border-radius: 0 !important;
                border-top: var(--1px) solid var(--color-border-default);
                margin-block-start: 0 !important;
              }
            }

            .toc-bg {
              border-radius: 0;
            }
          }
        }
      }
      &.no-toc {
        display: none !important;
      }
    }
    .sidebar-inner {
      position: relative;
      height: 100%;
      .sidebar-content {
        top: 0;
        height: fit-content;
        width: 100%;
        padding-block: var(--sb-pd-block-start) var(--sb-pd-block-end);
        padding-inline: var(--sb-pd-inline-start) var(--sb-pd-inline-end);
        @media (max-width: 991px) {
          padding-block: var(--sb-pd-block-start-mb) var(--sb-pd-block-end-mb);
          padding-inline: var(--sb-pd-inline-start-mb) var(--sb-pd-inline-end-mb);
          height: fit-content;
        }
        .sidebar-content-inner {
          display: flex;
          flex-direction: column;
          gap: var(--sb-flex-gap);

          @media (max-width: 991px) {
            gap: 0;
          }

          .toc {
            .toc-inner {
              .toc-content {
                .toc-content-inner {
                  display: flex;
                  flex-direction: column;
                  gap: 2rem;
                }
              }
            }
          }
          .ra {
            .ra-inner {
              .ra-content {
                .ra-content-inner {
                  display: flex;
                  flex-direction: column;
                  gap: 2rem;
                }
              }
            }
          }
        }
      }
      .sidebar-bg {
        border-radius: var(--sb-radius);
        background: var(--sb-bg);
        pointer-events: none;
        position: absolute;
        z-index: 1;
        inset: 0;
      }
    }
  }
/* END_SNIPPET:panel-article-sidebar */

/* START_SNIPPET:panel-article-tabs-of-content (INDEX:246) */
.toc {
    height: 100%;
    .toc-inner {
      height: 100%;

      .toc-content {
        padding-inline: var(--sb-widget-card-pd-inline);
        padding-block: var(--sb-widget-card-pd-block);
        border-radius: var(--sb-widget-card-radius);
        height: fit-content;

        @media (max-width: 991px) {
          padding-inline: 0;
          padding-block: 0;
        }

        .toc-content-inner {
          .toc-content-inner-heading {
            color: var(--color-text-title);
            font-family: var(--heading-font-family);
            font-weight: var(--heading-font-weight);
            line-height: var(--heading-line-height);
            font-size: var(--heading-font-size);
            letter-spacing: var(--heading-letter-spacing);
            text-transform: var(--heading-text-transform);

            @media (max-width: 991px) {
              display: none;
            }
          }

          .toc-content-inner-blogs {
            .sidebar-container {
              .sidebar-content {
                padding: 0;
                .sidebar-content-list-wrapper {
                  padding: 0;
                  position: relative;

                  .sidebar-content-list {
                    display: flex;
                    flex-direction: column;
                    padding-inline: 0;
                    gap: var(--toc-list-gap, 0);

                    @media (max-width: 991px) {
                      display: none;
                      position: absolute;
                      top: 100%;
                      left: 0;
                      width: 100%;
                      z-index: 999;
                      padding-block: 1rem;
                      padding-inline: 1rem;
                      overflow-y: auto;
                      scroll-behavior: smooth;
                      background: var(--sb-widget-card-bg);
                      border-radius: var(--sb-widget-card-radius);
                      box-shadow: 0 8px 24px 0 #959da533;
                      max-height: 15.625rem;
                      margin-block-start: 0.25rem;
                    }

                    &:has(.sidebar-item.active) {
                      .sidebar-item:not(.active):not(:hover) {
                        opacity: 0.5;
                      }
                    }

                    .sidebar-item {
                      position: relative;
                      list-style: none;
                      padding-block: var(--toc-item-padding, 0);
                      transition: all var(--trans-duration) var(--trans-easing);
                      flex-shrink: 0;

                      --line-width: var(--toc-divider-width);

                      background-repeat: no-repeat;
                      background-position: calc(100% - var(--p)) bottom, left bottom;
                      background-size: var(--p) var(--line-width, var(--1px)), 100% var(--line-width, var(--1px));
                      background-image: linear-gradient(var(--color-text-title) 0 0),
                        linear-gradient(var(--color-border-default) 0 0);
                      background-position-y: bottom;
                      transition: background-size var(--trans-duration), background-position 0s;
                      z-index: 1;

                      .sidebar-link-text {
                        display: -webkit-box;
                        -webkit-line-clamp: 2;
                        line-clamp: 2;
                        -webkit-box-orient: vertical;
                        overflow: hidden;
                        text-overflow: ellipsis;
                        word-break: break-word;
                        transition: all var(--trans-duration) var(--trans-easing);
                      }

                      &.active {
                        --p: 100%;
                      }

                      &:hover {
                        --p: 100%;
                      }

                      &:first-child {
                        padding-block-start: 0;
                      }

                      @media (max-width: 991px) {
                        padding-block: 0.625rem;
                        padding-inline-start: 0;

                        &:last-child {
                          --line-width: 0;
                          padding-block-end: 0;
                        }

                        &.active {
                          border-color: var(--toc-border-color);
                        }
                      }
                    }
                  }
                  .sidebar-content-header {
                    display: none;
                    border-radius: var(--sb-widget-card-radius);
                    width: 100%;
                    position: relative;
                    padding-block: 0.75rem;
                    padding-inline: 1rem;
                    text-align: left;

                    @media (max-width: 991px) {
                      display: flex;
                      justify-content: space-between;
                      align-items: center;
                    }

                    .sidebar-content-header-icon {
                      width: 1rem;
                      height: 1rem;
                      transition: transform var(--trans-duration) var(--trans-easing);
                      transform: rotate(270deg);
                      color: var(--color-foreground_60);
                    }
                  }

                  @media (max-width: 991px) {
                    .sidebar-content-header.active + .sidebar-content-list {
                      display: block;
                    }
                    .sidebar-content-header.active .sidebar-content-header-icon {
                      transform: rotate(360deg);
                    }
                  }
                }
              }
            }
          }
        }
      }
      .toc-bg {
        border-radius: var(--sb-widget-card-radius);
        background: var(--sb-widget-card-bg);
      }
    }
  }
/* END_SNIPPET:panel-article-tabs-of-content */

/* START_SNIPPET:panel-article-title (INDEX:247) */
.article-item-title {
    color: var(--article-title-color);
    padding-block: var(--article_title-pd-block-start, 0.5rem) var(--article_title-pd-block-end, 0);
    @media (max-width: 991px) {
      padding-block: var(--article_title-pd-block-start-mb, 0.5rem) var(--article_title-pd-block-end-mb, 0);
    }

    .blog-article-title {
      /* Inner span for underline animation */
      .blog-article-title-text {
        --line-width: max(max(1px, 0.0625rem), 0.05em);
        --line-y: calc(1em + 0.1em);
        color: inherit;
        display: inline;
        background-image: linear-gradient(currentColor, currentColor);
        background-position: 100% var(--line-y);
        background-repeat: no-repeat;
        background-size: 0% var(--line-width, var(--1px));
        transition: background-size var(--trans-duration) var(--trans-easing);
      }
    }

    /* Hover on parent triggers underline */
    &:hover .blog-article-title-text {
      background-position: 0% var(--line-y);
      background-size: var(--title-hover-bg-size, 100%) var(--line-width, var(--1px));
    }
  }
/* END_SNIPPET:panel-article-title */

/* START_SNIPPET:panel-author-ratings (INDEX:248) */
.panel-author-ratings {
      position: var(--authorrating-position);
      top: var(--authorrating-top);
      min-width: 1px;
      min-height: var(--authorrating-size-min-height);
      width: var(--authorrating-size-width);
      height: var(--authorrating-size-height);
      max-width: var(--authorrating-size-max-width);
      text-align: var(--authorrating-text-align);
      @media (max-width: 991px) {
        position: relative;
        top: auto;
        width: var(--authorrating-size-width-mb);
        height: var(--authorrating-size-height-mb);
        min-height: var(--authorrating-size-min-height-mb);
        text-align: var(--authorrating-text-align-mb);
        max-width: var(--authorrating-size-max-width-mb);
      }
      .authorrating-custom-inner {
        margin-block: var(--authorrating-mg-block-start) var(--authorrating-mg-block-end);
        margin-inline: var(--authorrating-mg-inline-start) var(--authorrating-mg-inline-end);
        position: relative;
        @media (max-width: 991px) {
          margin-block: var(--authorrating-mg-block-start-mb) var(--authorrating-mg-block-end-mb);
          margin-inline: var(--authorrating-mg-inline-start-mb) var(--authorrating-mg-inline-end-mb);
        }
      }
      .authorrating-custom-content {
        padding-block: var(--authorrating-pd-block-start) var(--authorrating-pd-block-end);
        padding-inline: var(--authorrating-pd-inline-start) var(--authorrating-pd-inline-end);
        @media (max-width: 991px) {
          padding-block: var(--authorrating-pd-block-start-mb) var(--authorrating-pd-block-end-mb);
          padding-inline: var(--authorrating-pd-inline-start-mb) var(--authorrating-pd-inline-end-mb);
        }
      }
      .authorrating-custom-content {
      }
      .authorrating-custom-content-inner {
        width: 100%;
        height: 100%;
        display: flex;
        flex-direction: var(--authorrating-direction);
        justify-content: var(--authorrating-justify-content);
        align-items: var(--authorrating-alignment);
        flex-wrap: wrap;
        gap: var(--authorrating-flex-gap);
        @media (max-width: 991px) {
          flex-direction: var(--authorrating-direction-mb);
          align-items: var(--authorrating-alignment-mb);
          justify-content: var(--authorrating-justify-content-mb);
          gap: var(--authorrating-flex-gap-mb);
        }
      }
    }
/* END_SNIPPET:panel-author-ratings */

/* START_SNIPPET:panel-author (INDEX:249) */
.panel-author {
    width: fit-content;
    height: fit-content;
    .author-content-img-inner {
      width: var(--author-avatar-size, 4.8rem);
      height: var(--author-avatar-size, 4.8rem);
      @media (max-width: 991px) {
        width: var(--author-avatar-size-mb, var(--author-avatar-size, 4.8rem));
        height: var(--author-avatar-size-mb, var(--author-avatar-size, 4.8rem));
      }
      border-radius: var(--author-radius);
      overflow: hidden;
      img {
        width: 100%;
        height: 100%;
        object-fit: cover;
      }
    }
    .author-content-inner {
      display: flex;
      flex-direction: var(--author-direction);
      align-items: var(--author-alignment);
      gap: var(--author-flex-gap);
      @media (max-width: 991px) {
        flex-direction: var(--author-direction-mb);
        align-items: var(--author-alignment-mb);
        gap: var(--author-flex-gap-mb);
      }
    }
    .author-content-info {
      display: flex;
      flex-direction: column;
      align-items: var(--author-alignment-info);
      gap: var(--author_bio-flex-gap);
      @media (max-width: 991px) {
        align-items: var(--author-alignment-info-mb);
        gap: var(--author_bio-flex-gap-mb);
      }
    }
    .author-content-info-name-text {
      text-align: var(--author-text-align);
      color: var(--author-color-normal);
      font-family: var(--testi-author-ff);
      font-size: var(--testi-author-fs);
      font-weight: var(--testi-author-fw);
      line-height: var(--testi-author-lh);
      letter-spacing: var(--testi-author-ls);
      text-transform: var(--testi-author-case);
      @media (max-width: 991px) {
        text-align: var(--author-text-align-mb);
        font-family: var(--testi-author-ff-mb);
        font-size: var(--testi-author-fs-mb);
        font-weight: var(--testi-author-fw-mb);
        line-height: var(--testi-author-lh-mb);
        letter-spacing: var(--testi-author-ls-mb);
        text-transform: var(--testi-author-case-mb);
      }
    }
    .author-content-info-bio-text {
      text-align: var(--author-text-align);
      color: var(--bio-color-normal);
      font-family: var(--testi-bio-ff);
      font-size: var(--testi-bio-fs);
      font-weight: var(--testi-bio-fw);
      line-height: var(--testi-bio-lh);
      letter-spacing: var(--testi-bio-ls);
      text-transform: var(--testi-bio-case);
      @media (max-width: 991px) {
        text-align: var(--author-text-align-mb);
        font-family: var(--testi-bio-ff-mb);
        font-size: var(--testi-bio-fs-mb);
        font-weight: var(--testi-bio-fw-mb);
        line-height: var(--testi-bio-lh-mb);
        letter-spacing: var(--testi-bio-ls-mb);
        text-transform: var(--testi-bio-case-mb);
      }
    }
  }
/* END_SNIPPET:panel-author */

/* START_SNIPPET:panel-avatar-group (INDEX:250) */
.panel-avatar-group {
    width: var(--avatar_grp-size-width);
    max-width: var(--avatar_grp-size-max-width);
    height: fit-content;
    @media (max-width: 991px) {
      width: var(--avatar_grp-size-width-mb);
      max-width: var(--avatar_grp-size-max-width-mb);
    }
    .avatar-grp-inner {
      .avatar-grp-content {
        padding-block: var(--avatar_grp-pd-block-start) var(--avatar_grp-pd-block-end);
        padding-inline: var(--avatar_grp-pd-inline-start) var(--avatar_grp-pd-inline-end);
        @media (max-width: 991px) {
          padding-block: var(--avatar_grp-pd-block-start-mb) var(--avatar_grp-pd-block-end-mb);
          padding-inline: var(--avatar_grp-pd-inline-start-mb) var(--avatar_grp-pd-inline-end-mb);
        }
        .avatar-grp-content-inner {
          display: flex;
          flex-direction: var(--avatar_grp-direction);
          gap: var(--avatar_grp-flex-gap);
          align-items: var(--review-alignment);
          justify-content: var(--review-position);

          @media (max-width: 991px) {
            flex-direction: var(--avatar_grp-direction-mb);
            gap: var(--avatar_grp-flex-gap-mb);
            align-items: var(--review-alignment-mb);
            justify-content: var(--review-position-mb);
          }

          .avatar {
            align-self: var(--review-alignment);
            @media (max-width: 991px) {
              align-self: var(--review-alignment-mb);
            }
          }
        }
      }
    }
  }
/* END_SNIPPET:panel-avatar-group */

/* START_SNIPPET:panel-before-after (INDEX:251) */
.panel-before-after {
    min-width: 1px;
    min-height: 1px;
    width: 100%;
    height: fit-content;
    .before-after-inner {
      border-radius: var(--ba-radius);
      margin-block: var(--ba-mg-block-start) var(--ba-mg-block-end);
      margin-inline: var(--ba-mg-inline-start) var(--ba-mg-inline-end);
      position: relative;
      @media (max-width: 991px) {
        margin-block: var(--ba-mg-block-start-mb) var(--ba-mg-block-end-mb);
        margin-inline: var(--ba-mg-inline-start-mb) var(--ba-mg-inline-end-mb);
      }
    }
    .before-after-content {
      aspect-ratio: var(--ba-aspect-ratio);
      padding-block: var(--ba-pd-block-start) var(--ba-pd-block-end);
      padding-inline: var(--ba-pd-inline-start) var(--ba-pd-inline-end);
      @media (max-width: 991px) {
        aspect-ratio: var(--ba-aspect-ratio-mb);
        padding-block: var(--ba-pd-block-start-mb) var(--ba-pd-block-end-mb);
        padding-inline: var(--ba-pd-inline-start-mb) var(--ba-pd-inline-end-mb);
      }
    }
    .before-after-content-inner {
      width: 100%;
      height: 100%;
      color: var(--color-text-title);
    }
    before-after {
      overflow: hidden;
      position: relative;
      display: block;
      width: 100%;
      height: 100%;
    }
    .before-after-media {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      overflow: hidden;
    }
    .before-after__cursor-wrapper {
      position: absolute;
      inset: 0;
      z-index: 5;
      pointer-events: none;
    }
    .before-after__cursor {
      height: 100%;
      width: max-content;
      touch-action: none;
      transform: translate(-50%, -50%);
      cursor: default;
      place-items: center;
      display: grid;
      position: absolute;
      top: 50%;
      left: var(--pct, 50%);
      pointer-events: none;
    }

    .before-after__cursor-drt-row {
      transform: translate(-50%, -50%);
      left: 50%;
      top: calc(100% - var(--pct));
    }

    .before-after__cursor svg {
      cursor: col-resize;
      pointer-events: auto;
    }

    .before-after__cursor svg:active {
      cursor: col-resize;
    }

    /* Hide mobile SVG on desktop */
    .before-after__cursor-mobile {
      display: none;
    }

    before-after[data-direction-column] > .before-after-media:first-of-type {
      z-index: 1;
      clip-path: inset(0 calc(100% - var(--pct) + calc(var(--divider-width) / 2)) 0 0 round var(--divider-radius, 0px));
    }

    before-after[data-direction-column] > .before-after-media:nth-of-type(2) {
      z-index: 1;
      clip-path: inset(0 0 0 calc(var(--pct) + calc(var(--divider-width) / 2)) round var(--divider-radius, 0px));
    }

    before-after[data-direction-row] > .before-after-media:first-of-type {
      z-index: 1;
      clip-path: inset(0 0 calc(var(--pct) + calc(var(--divider-width) / 2)) 0 round var(--divider-radius, 0px));
    }

    before-after[data-direction-row] > .before-after-media:nth-of-type(2) {
      z-index: 1;
      clip-path: inset(calc(100% - var(--pct) + calc(var(--divider-width) / 2)) 0 0 0 round var(--divider-radius, 0px));
    }

    .before-after-media__label {
      color: var(--ba_typo-color-normal);
    }

    /* Mobile responsive */
    @media (max-width: 991px) {
      /* Cursor */
      .before-after__cursor-desktop {
        display: none;
      }

      .before-after__cursor-mobile {
        display: block;
      }
    }

    /* Label positioning - Before (left), After (right) */
    .before-after-media__label {
      position: absolute;
      z-index: 2;
      top: var(--label-top);
      bottom: var(--label-bottom);
      transform: var(--label-transform, none);
      opacity: 1;
      transition: all var(--trans-duration) var(--trans-easing);
      @media (max-width: 991px) {
        top: var(--label-top-mb);
        bottom: var(--label-bottom-mb);
        transform: var(--label-transform-mb, none);
      }

      &.hide {
        opacity: 0;
      }
    }

    .product-card-mini {
      opacity: 1;
      transition: all var(--trans-duration) var(--trans-easing);

      &.hide {
        opacity: 0;
      }
    }

    /* Before media - label on left */
    before-after > div:first-of-type .before-after-media__label {
      left: var(--before-label-left);
      right: var(--before-label-right);
    }

    /* After media - label on right */
    before-after > div:nth-of-type(2) .before-after-media__label {
      left: var(--after-label-left);
      right: var(--after-label-right);
    }

    /* Product positioning - Before (left), After (right) */
    .before-after-media__product {
      position: absolute;
      z-index: 2;
      width: 100%;
      max-width: 17.5rem;
      top: var(--product-top);
      bottom: var(--product-bottom);

      @media (max-width: 991px) {
        max-width: 10.703rem;
        top: var(--product-top-mb);
        bottom: var(--product-bottom-mb);
      }
    }

    /* Before media - product on left */
    before-after > div:first-of-type .before-after-media__product {
      left: var(--before-product-left);
      right: var(--before-product-right);

      .product-card-info-name {
        text-align: var(--before-product-text-align);
      }
      .product-card-info-bottom {
        .price-wrapper {
          justify-content: var(--before-product-price-justify);
        }
      }
    }

    /* After media - product on right */
    before-after > div:nth-of-type(2) .before-after-media__product {
      left: var(--after-product-left);
      right: var(--after-product-right);

      .product-card-info-name {
        text-align: var(--after-product-text-align);
      }
      .product-card-info-bottom {
        .price-wrapper {
          justify-content: var(--after-product-price-justify);
        }
      }
    }

    /* horizontal */
    before-after[data-direction-row] {
      .before-after-media__label {
        transform: var(--before-after-label-transform);
      }
    }
    before-after[data-direction-row] > div:first-of-type .before-after-media__label,
    before-after[data-direction-row] > div:first-of-type .before-after-media__product {
      top: var(--before-label-product-top);
      bottom: unset;
    }
    before-after[data-direction-row] > div:nth-of-type(2) .before-after-media__label,
    before-after[data-direction-row] > div:nth-of-type(2) .before-after-media__product {
      top: unset;
      bottom: var(--after-label-product-bottom);
    }
    /* Before/After label left/right */
    /* label */
    before-after[data-direction-row] > div:first-of-type .before-after-media__label,
    before-after[data-direction-row] > div:nth-of-type(2) .before-after-media__label {
      left: var(--before-after-label-left);
      right: var(--before-after-label-right);
      @media (max-width: 991px) {
        left: var(--before-after-label-left-mb);
        right: var(--before-after-label-right-mb);
      }
    }
    /* product */
    before-after[data-direction-row] > div:first-of-type .before-after-media__product,
    before-after[data-direction-row] > div:nth-of-type(2) .before-after-media__product {
      left: var(--before-after-product-left);
      right: var(--before-after-product-right);
      @media (max-width: 991px) {
        left: var(--before-after-product-left-mb);
        right: var(--before-after-product-right-mb);
      }
    }

    before-after > div:first-of-type .before-after-media__product {
      @media (max-width: 991px) {
        max-width: calc(var(--pct) - (var(--media-spacing-mobile) * 2));
      }
    }

    before-after > div:nth-of-type(2) .before-after-media__product {
      @media (max-width: 991px) {
        max-width: calc(100% - (var(--media-spacing-mobile) * 2) - var(--pct));
      }
    }

    before-after[data-direction-row] > div:first-of-type .before-after-media__product,
    before-after[data-direction-row] > div:nth-of-type(2) .before-after-media__product {
      @media (max-width: 991px) {
        max-width: calc(50% - (var(--media-spacing-mobile)));
      }
    }

    /* Product card styles */
    .before-after-media__product {
      .product-card {
        &.product-card-direction--horizontal {
          .product-card-inner {
            gap: 0.5rem;
            align-items: center;
            padding: var(--product-padding);
            background: var(--product-bg);
            border-radius: var(--product-radius);

            .product-card-media-wrap {
              display: var(--product-image-display);
            }

            .product-card-info-wrap {
              min-width: 0;
              flex: 1;

              .product-card-info-name {
                width: 100%;

                a,
                span {
                  width: 100%;
                  display: block;
                  overflow: hidden;
                  text-overflow: ellipsis;
                  white-space: nowrap;
                }
              }
            }
          }
        }
      }
    }

    .before-after-media__product .overlay--gradient {
      visibility: hidden;
    }
  }
/* END_SNIPPET:panel-before-after */

/* START_SNIPPET:panel-cart-empty-section (INDEX:252) */
.panel-cart-empty-section {
    padding-inline: var(--sc-mg-inline);
    @media (max-width: 991px) {
      padding-inline: var(--sc-mg-inline-mb);
    }

    .cart-empty-inner {
      border-radius: var(--sc-radius);
      width: 100%;
      max-width: var(--content-width-full);
      margin-inline: auto;
      margin-block: var(--sc-mg-block);
      @media (max-width: 991px) {
        margin-block: var(--sc-mg-block-mb);
      }
    }

    .cart-empty-content-inner {
      display: flex;
      flex-direction: column;
      align-items: stretch;
      gap: 2rem;
    }

    .cart-empty-content {
      max-width: max(var(--sc-content-width), var(--sc-content-maxwidth));
      margin-inline: auto;
      padding-block: var(--sc-pd-block-start) var(--sc-pd-block-end);
      padding-inline: var(--sc-pd-inline-start) var(--sc-pd-inline-end);
      @media (max-width: 991px) {
        padding-block: var(--sc-pd-block-start-mb) var(--sc-pd-block-end-mb);
        padding-inline: var(--sc-pd-inline-start-mb) var(--sc-pd-inline-end-mb);
      }
    }

    .cart-empty-bg {
      border-radius: var(--sc-radius);
      background: var(--sc-background);
      background-repeat: no-repeat;
    }
  }
/* END_SNIPPET:panel-cart-empty-section */

/* START_SNIPPET:panel-cart-products (INDEX:253) */
.panel-cart-products {
    .cart-products-inner {
      height: 100%;
      position: relative;
      border-radius: var(--cart_products-radius);
      margin-block: var(--cart_products-mg-block-start) var(--cart_products-mg-block-end);
      margin-inline: var(--cart_products-mg-inline-start) var(--cart_products-mg-inline-end);
      @media (max-width: 991px) {
        margin-block: var(--cart_products-mg-block-start-mb) var(--cart_products-mg-block-end-mb);
        margin-inline: var(--cart_products-mg-inline-start-mb) var(--cart_products-mg-inline-end-mb);
      }
    }

    .cart-products-content {
      position: relative;
      z-index: 2;
      padding-block: var(--cart_products-pd-block-start) var(--cart_products-pd-block-end);
      padding-inline: var(--cart_products-pd-inline-start) var(--cart_products-pd-inline-end);
      @media (max-width: 991px) {
        padding-block: var(--cart_products-pd-block-start-mb) var(--cart_products-pd-block-end-mb);
        padding-inline: var(--cart_products-pd-inline-start-mb) var(--cart_products-pd-inline-end-mb);
      }
    }

    .cart-products-bg {
      pointer-events: none;
      position: absolute;
      z-index: 1;
      inset: 0;

      border-radius: var(--cart_products-radius);
      background: var(--cart_products-background);
      background-repeat: no-repeat;
    }
  }
/* END_SNIPPET:panel-cart-products */

/* START_SNIPPET:panel-cart-recommendation-section (INDEX:254) */
.panel-cart-recommendation-section {
    padding-inline: var(--sc-mg-inline);
    @media (max-width: 991px) {
      padding-inline: var(--sc-mg-inline-mb);
    }

    .cart-recommendation-inner {
      border-radius: var(--sc-radius);
      overflow: hidden;
      width: 100%;
      max-width: var(--content-width-full);
      margin-inline: auto;
      margin-block: var(--sc-mg-block);
      @media (max-width: 991px) {
        margin-block: var(--sc-mg-block-mb);
      }
    }

    .cart-recommendation-content-inner {
      display: flex;
      flex-direction: column;
      gap: var(--cart_rec-flex-gap);
      align-items: var(--cart_rec-alignment);
      text-align: var(--cart_rec-text-align);

      @media (max-width: 991px) {
        gap: var(--cart_rec-flex-gap-mb);
        text-align: var(--cart_rec-text-align-mb);
        align-items: var(--cart_rec-alignment-mb);
      }
    }

    .cart-recommendation-content {
      max-width: max(var(--sc-content-width), var(--sc-content-maxwidth));
      margin-inline: auto;
      padding-block: var(--sc-pd-block-start) var(--sc-pd-block-end);
      padding-inline: var(--sc-pd-inline-start) var(--sc-pd-inline-end);
      @media (max-width: 991px) {
        padding-block: var(--sc-pd-block-start-mb) var(--sc-pd-block-end-mb);
        padding-inline: var(--sc-pd-inline-start-mb) var(--sc-pd-inline-end-mb);
      }
    }

    .cart-recommendation-bg {
      border-radius: var(--sc-radius);
      background: var(--sc-background);
      background-repeat: no-repeat;
    }
  }
/* END_SNIPPET:panel-cart-recommendation-section */

/* START_SNIPPET:panel-cart-summary-details (INDEX:255) */
.panel-cart-summary-details {
    position: relative;
    .cart-summary-details-inner {
      contain: var(--csd-overflow-contain);
      position: relative;
      border-radius: var(--csd-radius);
      margin-block: var(--csd-mg-block-start) var(--csd-mg-block-end);
      margin-inline: var(--csd-mg-inline-start) var(--csd-mg-inline-end);
      @media (max-width: 991px) {
        margin-block: var(--csd-mg-block-start-mb) var(--csd-mg-block-end-mb);
        margin-inline: var(--csd-mg-inline-start-mb) var(--csd-mg-inline-end-mb);
      }
    }
    .cart-summary-details-content {
      padding-block: var(--csd-pd-block-start) var(--csd-pd-block-end);
      padding-inline: var(--csd-pd-inline-start) var(--csd-pd-inline-end);
      @media (max-width: 991px) {
        padding-block: var(--csd-pd-block-start-mb) var(--csd-pd-block-end-mb);
        padding-inline: var(--csd-pd-inline-start-mb) var(--csd-pd-inline-end-mb);
      }
    }
    .cart-summary-details-content-inner {
      width: 100%;
      height: 100%;
      display: flex;
      flex-direction: column;
      justify-content: stretch;
      gap: 2rem;

      @media (max-width: 991px) {
        gap: 1.5rem;
      }

      .cart-summary-details-free-shipping-goal {
        padding-block-end: 1.5rem;
        border-bottom: var(--1px) solid var(--color-border-default);
      }
    }
    .cart-summary-details-bg {
      border-radius: var(--csd-radius);
      border-style: solid;
      border-color: var(--color-border-default);
      border-top-width: var(--csd-border-top);
      border-bottom-width: var(--csd-border-bottom);
      border-left-width: var(--csd-border-left);
      border-right-width: var(--csd-border-right);
      background: var(--csd-background);
      background-repeat: no-repeat;
      background-size: calc(100% + var(--csd-border-left) + var(--csd-border-right))
        calc(100% + var(--csd-border-top) + var(--csd-border-bottom));
      background-position: calc(var(--csd-border-left) * -1) calc(var(--csd-border-top) * -1);
    }
  }
/* END_SNIPPET:panel-cart-summary-details */

/* START_SNIPPET:panel-cart-summary-group (INDEX:256) */
.panel-cart-summary-group {
    position: relative;
    text-align: var(--csg-text-align);
    @media (max-width: 991px) {
      text-align: var(--csg-text-align-mb);
    }
    .cart-summary-group-inner {
      contain: var(--csg-overflow-contain);
      position: relative;
      border-radius: var(--csg-radius);
      margin-block: var(--csg-mg-block-start) var(--csg-mg-block-end);
      margin-inline: var(--csg-mg-inline-start) var(--csg-mg-inline-end);
      @media (max-width: 991px) {
        margin-block: var(--csg-mg-block-start-mb) var(--csg-mg-block-end-mb);
        margin-inline: var(--csg-mg-inline-start-mb) var(--csg-mg-inline-end-mb);
      }
    }
    .cart-summary-group-content {
      padding-block: var(--csg-pd-block-start) var(--csg-pd-block-end);
      padding-inline: var(--csg-pd-inline-start) var(--csg-pd-inline-end);
      @media (max-width: 991px) {
        padding-block: var(--csg-pd-block-start-mb) var(--csg-pd-block-end-mb);
        padding-inline: var(--csg-pd-inline-start-mb) var(--csg-pd-inline-end-mb);
      }
    }

    .cart-summary-group-content-inner {
      width: 100%;
      height: 100%;
      display: flex;
      flex-direction: var(--csg-direction);
      justify-content: var(--csg-justify-content);
      align-items: var(--csg-alignment);
      gap: var(--csg-flex-gap);
      @media (max-width: 991px) {
        flex-direction: var(--csg-direction-mb);
        align-items: var(--csg-alignment-mb);
        justify-content: var(--csg-justify-content-mb);
        gap: var(--csg-flex-gap-mb);
      }
    }
    .cart-summary-group-bg {
      border-radius: var(--csg-radius);
      border-style: solid;
      border-color: var(--color-border-default);
      border-top-width: var(--csg-border-top);
      border-bottom-width: var(--csg-border-bottom);
      border-left-width: var(--csg-border-left);
      border-right-width: var(--csg-border-right);
      background: var(--csg-background);
      background-repeat: no-repeat;
      background-size: calc(100% + var(--csg-border-left) + var(--csg-border-right))
        calc(100% + var(--csg-border-top) + var(--csg-border-bottom));
      background-position: calc(var(--csg-border-left) * -1) calc(var(--csg-border-top) * -1);
    }
  }
/* END_SNIPPET:panel-cart-summary-group */

/* START_SNIPPET:panel-cart-summary (INDEX:257) */
.panel-cart-summary {
    position: relative;
    .cart-summary-inner {
      contain: var(--cs-overflow-contain);
      position: relative;
      border-radius: var(--cs-radius);
      margin-block: var(--cs-mg-block-start) var(--cs-mg-block-end);
      margin-inline: var(--cs-mg-inline-start) var(--cs-mg-inline-end);
      @media (max-width: 991px) {
        margin-block: var(--cs-mg-block-start-mb) var(--cs-mg-block-end-mb);
        margin-inline: var(--cs-mg-inline-start-mb) var(--cs-mg-inline-end-mb);
      }
    }
    .cart-summary-content {
      padding-block: var(--cs-pd-block-start) var(--cs-pd-block-end);
      padding-inline: var(--cs-pd-inline-start) var(--cs-pd-inline-end);
      @media (max-width: 991px) {
        padding-block: var(--cs-pd-block-start-mb) var(--cs-pd-block-end-mb);
        padding-inline: var(--cs-pd-inline-start-mb) var(--cs-pd-inline-end-mb);
      }
    }
    .cart-summary-content {
    }
    .cart-summary-content-inner {
      width: 100%;
      height: 100%;
      display: flex;
      flex-direction: column;
      justify-content: stretch;
      gap: var(--cs-flex-gap);
      @media (max-width: 991px) {
        gap: var(--cs-flex-gap-mb);
      }
    }
    .cart-summary-bg {
      border-radius: var(--cs-radius);
      background: var(--cs-background);
      background-repeat: no-repeat;
    }
  }
/* END_SNIPPET:panel-cart-summary */

/* START_SNIPPET:panel-collection-card-item (INDEX:258) */
.collection-list-card-item {
    position: relative;
    width: 100%;
    height: 100%;
    min-width: 0;
    min-height: 0;
    .collection-list-card-item-link {
      position: absolute;
      inset: 0;
      z-index: 2;
    }
    .collection-list-card-item-inner {
      position: relative;
      width: 100%;
      height: 100%;
      display: grid;
      min-width: 0;
      border-radius: var(--cci_card-radius);
      overflow: hidden;
      &::before {
        content: '';
        display: block;
        grid-area: 1 / 1;
        width: 100%;
        min-width: 0;
        aspect-ratio: var(--cci-card-aspect-ratio);
        pointer-events: none;
        @media (max-width: 991px) {
          aspect-ratio: var(--cci-card-aspect-ratio-mb);
        }
      }
    }
    .collection-list-card-item-content {
      pointer-events: none;
      grid-area: 1 / 1;
      position: relative;
      z-index: 3;
      display: flex;
      flex-direction: column;
      justify-content: flex-end;
      min-width: 0;
      min-height: 0;
      padding-block: var(--cci-pd-block);
      padding-inline: var(--cci-pd-inline);
      @media (max-width: 991px) {
        padding-block: var(--cci-pd-block-mb);
        padding-inline: var(--cci-pd-inline-mb);
      }
    }
    .collection-list-card-item-bg {
      pointer-events: none;
      grid-area: 1 / 1;
      position: relative;
      z-index: 1;
      width: 100%;
      height: 100%;
      overflow: hidden;
    }
    .collection-list-card-item-content-inner {
      display: flex;
      align-items: flex-end;
      justify-content: space-between;
      gap: 1rem;
    }
    .collection-list-card-item-wrapper {
      flex: 1;
      min-width: 0;
    }
    .collection-list-card-item-name {
      pointer-events: auto;
      position: relative;
      text-decoration: none;
      color: inherit;
      align-items: baseline;

      font-family: var(--cci-title-ff);
      font-size: var(--cci-title-font-size);
      font-weight: var(--cci-title-font-weight);
      line-height: var(--cci-title-line-height);
      letter-spacing: var(--cci-title-letter-spacing);
      text-transform: var(--cci-title-text-transform);
      color: var(--color-text-title);
      text-decoration: none;
      @media (max-width: 991px) {
        font-size: var(--cci-title-font-size-mb);
        font-weight: var(--cci-title-font-weight-mb);
        line-height: var(--cci-title-line-height-mb);
        letter-spacing: var(--cci-title-letter-spacing-mb);
        text-transform: var(--cci-title-text-transform-mb);
      }
      .collection-list-card-item-count {
        display: var(--cci-count-display);
        font-size: max(var(--typo-description-size), calc(var(--cci-title-font-size) * 0.5));
        font-weight: var(--cci-title-font-weight);
        line-height: var(--cci-title-line-height);
        vertical-align: baseline;
        position: relative;
        top: -0.6em;
        color: var(--color-text-paragraph);
        @media (max-width: 991px) {
          display: var(--cci-count-display-mb);
          font-size: max(var(--typo-description-size-mb), calc(var(--cci-title-font-size-mb) * 0.5));
          font-weight: var(--cci-title-font-weight-mb);
          line-height: var(--cci-title-line-height-mb);
        }
      }

      .collection-list-card-item-title-text {
        --line-width: max(max(1px, 0.0625rem), 0.05em);
        --line-y: calc(1em + 0.1em);
        color: inherit;
        display: inline;
        background-image: linear-gradient(currentColor, currentColor);
        background-position: 100% var(--line-y);
        background-repeat: no-repeat;
        background-size: 0% var(--line-width, var(--1px));
        transition: background-size var(--trans-duration) var(--trans-easing);
      }

      &:hover .collection-list-card-item-title-text,
      .collection-list-card-item:hover .collection-list-card-item-title-text {
        background-position: 0% var(--line-y);
        background-size: 100% var(--line-width, var(--1px));
      }
    }
    .collection-list-card-item-description {
      pointer-events: auto;
      display: var(--cci-description-display);
      -webkit-box-orient: vertical;
      -webkit-line-clamp: 2;
      line-clamp: 2;
      overflow: hidden;
      padding-block-start: 0.25rem;
      font-family: var(--typo-description-family);
      font-size: var(--typo-description-size);
      font-weight: var(--typo-description-weight);
      line-height: var(--typo-description-lh);
      letter-spacing: var(--typo-description-ls);
      text-transform: var(--typo-description-case);
      color: var(--color-text-paragraph);
      @media (max-width: 991px) {
        display: var(--cci-description-display-mb);
        font-size: var(--typo-description-size-mb);
        font-weight: var(--typo-description-weight-mb);
        line-height: var(--typo-description-lh-mb);
        letter-spacing: var(--typo-description-ls-mb);
      }
    }
    .collection-list-card-item-button {
      pointer-events: auto;
      z-index: 4;
      position: relative;
      width: 2.75rem;
      height: 2.75rem;
      display: flex;
      align-items: center;
      justify-content: center;
      color: var(--button-type-primary-color);

      cursor: pointer;
      opacity: 0;
      transform: translateY(0.5rem);
      transition: opacity var(--trans-duration) var(--trans-easing), transform var(--trans-duration) var(--trans-easing),
        color var(--trans-duration) var(--trans-easing);

      .collection-list-card-item-button-inner {
        position: relative;
        z-index: 2;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        height: 100%;
      }

      .collection-list-card-item-button-bg {
        position: absolute;
        z-index: 1;
        inset: 0;
        background: var(--button-type-primary-bg);
        border: 1px solid var(--button-type-primary-border);
        border-radius: var(--cci-button-radius);
        transition: background var(--trans-duration) var(--trans-easing),
          border-color var(--trans-duration) var(--trans-easing);
      }

      .collection-list-card-item-icon {
        width: 1rem;
        height: 1rem;

        svg [stroke-width] {
          stroke-width: var(--button-default-icon-stroke);
        }
      }

      &:hover {
        color: var(--button-type-primary-color-hover);

        .collection-list-card-item-button-bg {
          background: var(--button-type-primary-bg-hover);
          border-color: var(--button-type-primary-border-hover);
        }
      }

      @media screen and (max-width: 991px) {
        display: none;
      }
    }

    &:hover {
      .collection-list-card-item-button {
        opacity: 1;
        transform: translateY(0);
      }
    }
  }
/* END_SNIPPET:panel-collection-card-item */

/* START_SNIPPET:panel-collection-list-page-grid (INDEX:259) */
.collection-page-grid {
    .collection-page-grid-inner {
      border-radius: var(--collection_grid-radius);
    }
    .collection-page-grid-content {
      padding-block: var(--collection_grid-pd-block-start) var(--collection_grid-pd-block-end);
      padding-inline: var(--collection_grid-pd-inline-start) var(--collection_grid-pd-inline-end);
      @media (max-width: 991px) {
        padding-block: var(--collection_grid-pd-block-start-mb) var(--collection_grid-pd-block-end-mb);
        padding-inline: var(--collection_grid-pd-inline-start-mb) var(--collection_grid-pd-inline-end-mb);
      }
    }
    .collection-page-grid-content-inner {
      width: 100%;
      display: grid;
      grid-template-columns: var(--grid-columns);
      gap: var(--collection_grid-flex-gap);

      @media (max-width: 991px) {
        grid-template-columns: var(--grid-columns-mb);
        gap: var(--collection_grid_on_mb-flex-gap);
      }
    }
    .collection-page-grid-bg {
      background: var(--collection_grid-background);
      background-repeat: no-repeat;
    }
  }
/* END_SNIPPET:panel-collection-list-page-grid */

/* START_SNIPPET:panel-collection-list (INDEX:260) */
collection-list-component {
    display: block;
  }
  .collection-list {
    width: 100%;
    .collection-list-inner {
      .collection-list-content {
        padding-block: var(--cl-pd-block-start) var(--cl-pd-block-end);
        padding-inline: var(--cl-pd-inline-start) var(--cl-pd-inline-end);
        @media (max-width: 991px) {
          padding-block: var(--cl-pd-block-start-mb) var(--cl-pd-block-end-mb);
          padding-inline: var(--cl-pd-inline-start-mb) var(--cl-pd-inline-end-mb);
        }
      }
    }
    /* Collection card item */
    .collection-list-item {
      .collection-list-item-inner {
        border-radius: var(--cli-radius);
        overflow: hidden;
      }
      .collection-list-item-content-inner {
        padding-block: var(--cli-padding-block);
        padding-inline: var(--cli-padding-inline);
        @media (max-width: 991px) {
          padding-block: var(--cli-padding-block-mb);
          padding-inline: var(--cli-padding-inline-mb);
        }
      }
      .collection-list-item-bg {
        border-radius: var(--cli-radius);
        .media-bg-block-inner {
          position: relative;
          display: block;
          overflow: hidden;
        }
        .media-bg-block-inner::after {
          content: '';
          position: absolute;
          top: 0;
          left: 0;
          width: 100%;
          height: 100%;
          z-index: 2;
          background: var(--cli-overlay-color, transparent);
          pointer-events: none;
        }
      }
      .collection-list-item-overlay {
        display: var(--cli-overlay-display);
        position: absolute;
        inset: 0;
        z-index: 2;
        pointer-events: none;
        background: var(--cli-overlay-color, transparent);
        border-radius: var(--cli-radius);
      }
      .collection-list-item-name {
        font-family: var(--cli-title-ff);
        font-size: var(--cli-title-font-size);
        font-weight: var(--cli-title-font-weight);
        line-height: var(--cli-title-line-height);
        letter-spacing: var(--cli-title-letter-spacing);
        text-transform: var(--cli-title-text-transform);
        color: var(--color-text-title);
        @media (max-width: 991px) {
          font-family: var(--cli-title-ff-mb);
          font-size: var(--cli-title-font-size-mb);
          font-weight: var(--cli-title-font-weight-mb);
          line-height: var(--cli-title-line-height-mb);
          letter-spacing: var(--cli-title-letter-spacing-mb);
          text-transform: var(--cli-title-text-transform-mb);
        }

        sup {
          display: var(--cli-count-display);
          font-size: max(var(--typo-description-size), calc(var(--cli-title-font-size) * 0.5));
          font-weight: var(--cli-title-font-weight);
          line-height: var(--cli-title-line-height);
          vertical-align: baseline;
          position: relative;
          top: -0.8em;
          color: var(--color-text-paragraph);
          @media (max-width: 991px) {
            display: var(--cli-count-display-mb);
            font-size: max(var(--typo-description-size-mb), calc(var(--cli-title-font-size-mb) * 0.5));
            font-weight: var(--cli-title-font-weight-mb);
            line-height: var(--cli-title-line-height-mb);
          }
        }
      }
      .collection-list-item-description {
        display: var(--cli-description-display);
        @media (max-width: 991px) {
          display: var(--cli-description-display-mb);
        }
      }
    }
  }
/* END_SNIPPET:panel-collection-list */

/* START_SNIPPET:panel-collection-page-product-grid (INDEX:261) */
.collection-page-wrapper {
    position: relative;
    z-index: 1;
    width: calc(
      (100% - (var(--sc-flex-gap) * (var(--column-counts) - 1))) / var(--column-counts) * (var(--column-counts) - 1)
    );
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: var(--sc-flex-gap);
    @media (max-width: 991px) {
      width: 100%;
      gap: var(--sc-flex-gap-mb);
    }
  }
  .collection-page-product-grid {
    position: relative;
    .collection-page-product-grid-inner {
      contain: var(--products_grid-overflow-contain);
      border-radius: var(--products_grid-radius);
    }
    .collection-page-product-grid-content {
      display: flex;
      flex-direction: column;
      align-items: stretch;
      padding-inline: var(--products_grid-pd-inline-start) var(--products_grid-pd-inline-end);
      padding-block: var(--products_grid-pd-block-start) var(--products_grid-pd-block-end);
      @media (max-width: 991px) {
        padding-inline: var(--products_grid-pd-inline-start-mb) var(--products_grid-pd-inline-end-mb);
        padding-block: var(--products_grid-pd-block-start-mb) var(--products_grid-pd-block-end-mb);
      }
    }
    .collection-page-product-grid-content-inner {
      width: 100%;
      display: flex;
      flex-wrap: wrap;
      row-gap: var(--product-grid-vertical-gap);
      column-gap: var(--product-grid-horizontal-gap);

      .product-card {
        height: unset;
        flex: 0 0 var(--product-grid-item-size-desktop);
        width: var(--product-grid-item-size-desktop);
        max-width: var(--product-grid-item-size-desktop);
        display: flex;
        flex-direction: column;

        .product-card-inner {
          flex-grow: 1;
          display: flex;
          flex-direction: column;
          height: 100%;
        }
      }

      @media (max-width: 991px) {
        row-gap: var(--product-grid-vertical-gap-mb);
        column-gap: var(--product-grid-horizontal-gap-mb);

        .product-card {
          flex: 0 0 var(--product-grid-item-size-mobile);
          width: var(--product-grid-item-size-mobile);
          max-width: var(--product-grid-item-size-mobile);
        }
      }
    }
    .collection-page-product-grid-bg {
      background: var(--products_grid-background);
      background-repeat: no-repeat;
    }
  }
/* END_SNIPPET:panel-collection-page-product-grid */

/* START_SNIPPET:panel-collection-page-quick-filter (INDEX:262) */
.quick-filter {
    min-height: 1px;
    height: auto;
    width: var(--quick_filter-size-width);
    max-width: var(--quick_filter-size-max-width);
    @media (max-width: 991px) {
      width: 100%;
      height: auto;
      max-height: unset;
      max-width: unset;
    }
    .quick-filter-inner {
      margin-block: var(--quick_filter-mg-block-start) var(--quick_filter-mg-block-end);
      margin-inline: var(--quick_filter-mg-inline-start) var(--quick_filter-mg-inline-end);
      @media (max-width: 991px) {
        margin-block: var(--quick_filter-mg-block-start-mb) var(--quick_filter-mg-block-end-mb);
        margin-inline: var(--quick_filter-mg-inline-start-mb) var(--quick_filter-mg-inline-end-mb);
      }
    }
    .quick-filter-content-inner {
      width: 100%;
      height: 100%;
      display: flex;
      flex-wrap: wrap;
      justify-content: var(--quick-filter-justify-content);
      gap: var(--quick-filter-gap);
      @media (max-width: 991px) {
        justify-content: var(--quick-filter-justify-content-mb);
        gap: var(--quick-filter-gap-mb);
      }

      .quick-filter-btn-content {
        position: relative;
        border: var(--quick-filter-border);
        border-radius: var(--quick-filter-radius);
        transition: border-color var(--trans-duration) var(--trans-easing);
        .quick-filter-btn-content-inner {
          display: flex;
          z-index: 2;
          flex-direction: column;
          .quick-filter-btn-label {
            transition: color var(--trans-duration) var(--trans-easing);
            color: var(--quick-filter-label-color);
            font-family: var(--quick-filter-label-ff);
            font-size: var(--quick-filter-label-fs);
            line-height: var(--quick-filter-label-lh);
            font-weight: var(--quick-filter-label-fw);
            padding-inline: var(--quick-filter-pd-inline);
            padding-block: var(--quick-filter-pd-block);
            @media (max-width: 991px) {
              padding-inline: var(--quick-filter-pd-inline-mb);
              padding-block: var(--quick-filter-pd-block-mb);
              font-size: var(--quick-filter-label-fs-mb);
              line-height: var(--quick-filter-label-lh-mb);
            }
          }
        }
        .quick-filter-btn-bg {
          pointer-events: none;
          background: var(--quick-filter-bg);
          border-color: var(--quick-filter-border);
          position: absolute;
          inset: 0;
          border-radius: inherit;
          z-index: 1;
          transition: background-color var(--trans-duration) var(--trans-easing),
            border-color var(--trans-duration) var(--trans-easing);
        }

        &:not([aria-disabled]):not(:disabled) {
          &:hover {
            border: var(--quick-filter-border-active);
            .quick-filter-btn-label {
              color: var(--quick-filter-label-color-hover);
            }
          }
        }
      }

      .quick-filter-btn-content {
        cursor: pointer;
        position: relative;
        white-space: nowrap;

        .quick-filter-btn-content-inner.active {
          .quick-filter-btn-label {
            color: var(--quick-filter-label-color-active);
          }
        }
        &:has(.quick-filter-btn-content-inner.active) {
          border: var(--quick-filter-border-active);
        }
        .quick-filter-btn-content-inner.active ~ .quick-filter-btn-line .quick-filter-btn-line-inner {
          transform: scaleX(1);
          transform-origin: left;
        }
      }
      .quick-filter-btn-divider {
        width: var(--1px);
        height: calc(1em - 0.25rem);
        background-color: var(--color-border-default);
        align-self: center;
      }
      .quick-filter-btn-line {
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: var(--1px);
        display: var(--quick-filter-input-line-display);
        .quick-filter-btn-line-inner {
          display: block;
          width: 100%;
          height: 100%;
          background-color: var(--color-border-hover);
          transform-origin: right;
          transform: scaleX(0);
          transition: transform var(--trans-duration) var(--trans-easing);
        }
      }
      @media (hover: hover) {
        .quick-filter-btn-content:hover .quick-filter-btn-line-inner {
          transform: scaleX(1);
          transform-origin: left;
        }
      }
    }
  }
/* END_SNIPPET:panel-collection-page-quick-filter */

/* START_SNIPPET:panel-content-group (INDEX:263) */
.content-group {
    position: relative;
    min-width: 1px;
    width: var(--content_grp-size-width);
    max-width: var(--content_grp-size-max-width);
    text-align: var(--content_grp-text-align);
    @media (max-width: 991px) {
      width: 100%;
      text-align: var(--content_grp-text-align-mb);
    }
    .content-group-inner {
      contain: layout style paint;
      position: relative;
    }
    .content-group-content {
      padding-block: var(--content_grp-pd-block-start) var(--content_grp-pd-block-end);
      padding-inline: var(--content_grp-pd-inline-start) var(--content_grp-pd-inline-end);
      @media (max-width: 991px) {
        padding-block: var(--content_grp-pd-block-start-mb) var(--content_grp-pd-block-end-mb);
        padding-inline: var(--content_grp-pd-inline-start-mb) var(--content_grp-pd-inline-end-mb);
      }
    }
    .content-group-content-inner {
      width: 100%;
      height: 100%;
      display: flex;
      flex-direction: column;
      align-items: var(--content_grp-alignment);
      gap: var(--content_grp-flex-gap);
      @media (max-width: 991px) {
        align-items: var(--content_grp-alignment-mb);
        gap: var(--content_grp-flex-gap-mb);
      }
    }
  }
/* END_SNIPPET:panel-content-group */

/* START_SNIPPET:panel-custom-accordion-row (INDEX:264) */
.accordion__toggle {
    width: var(--acc-icon-size, 1.25rem);
    height: var(--acc-icon-size, 1.25rem);
    font-size: var(--heading-font-size);
    line-height: var(--heading-line-height);
    margin-block-start: calc((var(--heading-line-height) - var(--acc-icon-size)) / 2);
    border-radius: var(--radius-new-pill);
    color: var(--color-primary_button_text);
    background-color: var(--color-primary_button_background);
    display: flex;
    align-items: center;
    justify-content: center;
    @media (max-width: 991px) {
      width: var(--acc-icon-size-mb, 1rem);
      height: var(--acc-icon-size-mb, 1rem);
      font-size: var(--heading-font-size-mb);
      line-height: var(--heading-line-height-mb);
      margin-block-start: calc((var(--heading-line-height-mb) - var(--acc-icon-size-mb)) / 2);
    }
    .accordion__toggle-icon {
      width: 0.75rem;
      height: 0.75rem;
      display: flex;
      align-items: center;
      justify-content: center;
    }
  }
/* END_SNIPPET:panel-custom-accordion-row */

/* START_SNIPPET:panel-custom-accordion (INDEX:265) */
.accordion-group {
    &[data-visual-preview-mode] {
      width: max(100%, 50rem);
      max-width: 120rem;
    }
    min-width: 1px;
    min-height: 1px;
    width: var(--accordion-size-width);
    max-width: var(--accordion-size-max-width);
    height: auto;
    @media (max-width: 991px) {
      width: var(--accordion-size-width-mb);
      max-width: var(--accordion-size-max-width-mb);
    }
    .accordion-inner {
      margin-block: var(--accordion-mg-block-start) var(--accordion-mg-block-end);
      margin-inline: var(--accordion-mg-inline-start) var(--accordion-mg-inline-end);
      position: relative;
      @media (max-width: 991px) {
        margin-block: var(--accordion-mg-block-start-mb) var(--accordion-mg-block-end-mb);
        margin-inline: var(--accordion-mg-inline-start-mb) var(--accordion-mg-inline-end-mb);
      }
    }
    .accordion-content {
      padding-block: var(--accordion-pd-block-start) var(--accordion-pd-block-end);
      padding-inline: var(--accordion-pd-inline-start) var(--accordion-pd-inline-end);
      @media (max-width: 991px) {
        padding-block: var(--accordion-pd-block-start-mb) var(--accordion-pd-block-end-mb);
        padding-inline: var(--accordion-pd-inline-start-mb) var(--accordion-pd-inline-end-mb);
      }
    }
    .accordion-content-inner {
      width: 100%;
      height: 100%;
      display: flex;
      flex-direction: column;
      justify-content: flex-start;
    }
    .accordion-row-items {
      display: flex;
      flex-direction: column;
      gap: var(--accordion-flex-gap);
      @media (max-width: 991px) {
        gap: var(--accordion-flex-gap-mb);
      }
      .accordion-head-title {
        transition: color var(--trans-duration) var(--trans-easing);
      }
      .accordion-body-content {
        color: var(--color-text-subtitle);
        transition: color var(--trans-duration) var(--trans-easing);
      }
      .accordion__toggle {
        transition: transform var(--trans-duration) var(--trans-easing), color var(--trans-duration) var(--trans-easing),
          background-color var(--trans-duration) var(--trans-easing);
      }
    }

    /* Accordion Row Item Styles */
    accordion-component.accordion-row-item {
      min-width: 1px;
      min-height: 1px;
      width: 100%;
      height: auto;
      display: block;
      position: relative;
      counter-increment: accordion-counter;
    }

    .accordion-row-item-inner {
      position: relative;
      border-radius: var(--acc-boxed-item-radius);
      border: var(--acc-border) solid var(--color-border-divider);
      text-align: left;
      background: var(--accordion-bg);
      display: flex;
      flex-direction: column;
      transition: all var(--trans-duration) var(--trans-easing);
      @media (max-width: 991px) {
        border-radius: var(--acc-boxed-item-mb-radius);
        border: var(--acc-border-mb) solid var(--color-border-default);
      }

      &::before {
        content: '';
        position: absolute;
        inset: 0;
        background: var(--accordion-bg-hover);
        opacity: 0;
        transition: opacity var(--trans-duration) var(--trans-easing);
        border-radius: inherit;
        pointer-events: none;
      }

      &.active {
        gap: var(--accordion-item-inner-gap);
        @media (max-width: 991px) {
          gap: var(--accordion-item-inner-gap-mb);
        }
        .accordion-head-toggle .plus-vertical {
          transform: scaleY(0);
        }
        .accordion-head {
          padding-block-end: var(--acc-heading-padding-block-end);
        }
      }
      &:hover::before,
      &:focus-within::before {
        opacity: 1;
      }
      &:hover,
      &:focus-within {
        border-color: var(--color-border-hover);
      }
    }

    .accordion-head {
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      column-gap: 1.5rem;
      cursor: pointer;
      width: 100%;
      min-height: calc(var(--acc-icon-size, 1.25rem) + (var(--acc-item-padding-block) * 2));
      touch-action: manipulation;
      user-select: none;
      padding-inline: var(--acc-item-padding-inline);
      padding-block: var(--acc-item-padding-block);
      transition: padding-block-end var(--trans-duration) var(--trans-easing);

      @media (max-width: 991px) {
        min-height: calc(var(--acc-icon-size-mb, 1rem) + (var(--acc-item-padding-block-mb) * 2));
        padding-inline: var(--acc-item-padding-inline-mb);
        padding-block: var(--acc-item-padding-block-mb);
      }

      .accordion-head-inner {
        display: flex;
        align-items: flex-start;
        gap: 0.75rem;
        .accordion-head-counter {
          color: var(--color-foreground_30);
          font-weight: var(--heading-font-weight);
          font-family: var(--heading-font-family);
          font-size: var(--heading-font-size);
          line-height: var(--heading-line-height);
          min-width: var(--acc-order-number-min-width);
          display: var(--acc-counter-display);
          &::before {
            content: counter(accordion-counter) '. ';
          }
          @media (max-width: 991px) {
            display: var(--acc-counter-display-mb);
            min-width: var(--acc-order-number-min-width-mb);
            font-family: var(--heading-font-family-mb);
            font-weight: var(--heading-font-weight-mb);
            line-height: var(--heading-line-height-mb);
            font-size: var(--heading-font-size-mb);
          }
        }
      }

      .accordion-head-toggle {
        margin-inline-start: max(0.1rem, 1px);
      }
    }

    .accordion-body {
      text-align: left;
      height: auto;
      padding-inline: var(--acc-item-padding-inline);
      overflow: hidden;
      transition: max-height var(--trans-duration) var(--trans-easing),
        opacity var(--trans-duration) var(--trans-easing);
      @media (max-width: 991px) {
        padding-inline: var(--acc-item-padding-inline-mb);
      }
      .accordion-body-inner {
        padding-inline-start: var(--accordion-order-number-padding-inline-start);
        padding-block-end: var(--acc-item-padding-block);
        @media (max-width: 991px) {
          padding-inline-start: var(--accordion-order-number-padding-inline-start-mb);
          padding-block-end: var(--acc-item-padding-block-mb);
        }

        a {
          color: var(--color-text-paragraph-link);
          position: relative;
          transition: color var(--trans-duration) var(--trans-easing);

          &::before {
            content: '';
            position: absolute;
            bottom: 0;
            left: 0;
            width: 100%;
            height: var(--1px);
            background-color: var(--color-text-paragraph-link);
            transform: scaleX(0);
            transform-origin: right;
            transition: transform var(--trans-duration) var(--trans-easing);
          }

          &::after {
            content: '';
            position: absolute;
            bottom: 0;
            left: 0;
            width: 100%;
            height: var(--1px);
            background-color: var(--color-text-paragraph-link);
            transform: scaleX(1);
            transform-origin: left;
            transition: transform var(--trans-duration) var(--trans-easing);
            transition-delay: var(--trans-duration);
          }

          &:hover,
          &:focus-visible {
            color: var(--color-text-paragraph-link-hover);
            &::before {
              transform: scaleX(1);
              transform-origin: left;
              background-color: var(--color-text-paragraph-link-hover);
              transition-delay: var(--trans-duration);
            }
            &::after {
              transform: scaleX(0);
              transform-origin: right;
              background-color: var(--color-text-paragraph-link-hover);
              transition-delay: 0s;
            }
          }
        }
        &.unset-show-quantity {
          padding-inline-start: 0;
        }
      }
    }
  }
  accordion-component .accordion-input-line {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: var(--color-border-divider);
    display: var(--accordion-input-line-display);
    .accordion-input-line-inner {
      display: block;
      width: 100%;
      height: 100%;
      background-color: var(--color-border-hover);
      transform-origin: right;
      transform: scaleX(0);
      transition: transform var(--trans-duration) var(--trans-easing);
    }
  }

  @media (hover: hover) {
    accordion-component:hover .accordion-input-line-inner {
      transform: scaleX(1);
      transform-origin: left;
    }
    .accordion-hover {
      .accordion-row-items:has(accordion-component:hover) accordion-component:not(:hover) {
        .accordion-head-title {
          color: var(--color-text-inactive);
        }
        .accordion-body-content {
          color: var(--color-text-inactive);
        }
      }
    }
  }

  .head-typo-target {
    font-family: var(--heading-font-family);
    font-size: var(--heading-font-size);
    font-weight: var(--heading-font-weight);
    line-height: var(--heading-line-height);
    letter-spacing: var(--heading-letter-spacing);
    text-transform: var(--heading-text-transform);
    em {
      font-style: normal;
      font-family: var(--typo-ff-highlight);
    }
  }
  .body-typo-target {
    p,
    ul,
    ol,
    h1,
    h2,
    h3,
    h4,
    h5,
    h6 {
      font-family: var(--content-font-family);
      font-size: var(--content-font-size);
      font-weight: var(--content-font-weight);
      line-height: var(--content-line-height);
      letter-spacing: var(--content-letter-spacing);
      text-transform: var(--content-text-transform);
      em {
        font-style: normal;
        font-family: var(--typo-ff-highlight);
      }
      margin-block: var(--typo-paragraph-spacing);
      &:first-child {
        margin-block-start: 0;
      }
      &:last-child {
        margin-block-end: 0;
      }
      @media (max-width: 991px) {
        margin-block: var(--typo-paragraph-spacing-mb);
        &:first-child {
          margin-block-start: 0;
        }
        &:last-child {
          margin-block-end: 0;
        }
      }
    }
  }
  @media (max-width: 991px) {
    .head-typo-target {
      font-family: var(--heading-font-family-mb);
      font-size: var(--heading-font-size-mb);
      font-weight: var(--heading-font-weight-mb);
      line-height: var(--heading-line-height-mb);
      letter-spacing: var(--heading-letter-spacing-mb);
      text-transform: var(--heading-text-transform-mb);
    }
    .body-typo-target {
      p,
      ul,
      ol,
      h1,
      h2,
      h3,
      h4,
      h5,
      h6 {
        font-family: var(--content-font-family-mb);
        font-size: var(--content-font-size-mb);
        font-weight: var(--content-font-weight-mb);
        line-height: var(--content-line-height-mb);
        letter-spacing: var(--content-letter-spacing-mb);
        text-transform: var(--content-text-transform-mb);
      }
    }
  }
/* END_SNIPPET:panel-custom-accordion */

/* START_SNIPPET:panel-custom-banner (INDEX:266) */
.banner {
    position: relative;
    min-width: 1px;
    min-height: 1px;
    width: var(--banner-size-width);
    max-width: var(--banner-size-max-width);

    @media (max-width: 991px) {
      width: var(--banner-size-width-mb);
      max-width: var(--banner-size-max-width-mb);
    }
    .banner-inner {
      aspect-ratio: var(--banner-ratio);
      width: calc(100% - var(--banner-mg-inline-start) - var(--banner-mg-inline-end));
      border-radius: var(--banner-radius);
      margin-block: var(--banner-mg-block-start) var(--banner-mg-block-end);
      margin-inline: var(--banner-mg-inline-start) var(--banner-mg-inline-end);
      @media (max-width: 991px) {
        aspect-ratio: var(--banner-ratio-mb);
        width: calc(100% - var(--banner-mg-inline-start-mb) - var(--banner-mg-inline-end-mb));
        margin-block: var(--banner-mg-block-start-mb) var(--banner-mg-block-end-mb);
        margin-inline: var(--banner-mg-inline-start-mb) var(--banner-mg-inline-end-mb);
      }
    }
    .banner-content {
      padding-block: var(--banner-pd-block-start) var(--banner-pd-block-end);
      padding-inline: var(--banner-pd-inline-start) var(--banner-pd-inline-end);
      @media (max-width: 991px) {
        padding-block: var(--banner-pd-block-start-mb) var(--banner-pd-block-end-mb);
        padding-inline: var(--banner-pd-inline-start-mb) var(--banner-pd-inline-end-mb);
      }

      @media (hover: hover) {
        /* 1. Grayscale */
        &.animate-hover--grayscale {
          .banner-bg .media-with-hover-overlay-inner img,
          .banner-bg .media-with-hover-overlay-inner placeholder-image svg {
            filter: grayscale(0%);
            transition: all var(--trans-duration) var(--trans-easing);
          }

          &:hover .banner-bg .media-with-hover-overlay-inner img,
          &:hover .banner-bg .media-with-hover-overlay-inner placeholder-image svg {
            filter: grayscale(100%);
          }
        }

        /* 2. Zoom In */
        &.animate-hover--zoom-in {
          .banner-bg .media-with-hover-overlay-inner img,
          .banner-bg .media-with-hover-overlay-inner placeholder-image svg {
            transform: scale(1);
            transition: all var(--trans-duration) var(--trans-easing);
          }

          &:hover .banner-bg .media-with-hover-overlay-inner img,
          &:hover .banner-bg .media-with-hover-overlay-inner placeholder-image svg {
            transform: scale(1.1);
          }
        }

        /* 3. Zoom Out */
        &.animate-hover--zoom-out {
          .banner-bg .media-with-hover-overlay-inner img,
          .banner-bg .media-with-hover-overlay-inner placeholder-image svg {
            transform: scale(1.1);
            transition: all var(--trans-duration) var(--trans-easing);
          }

          &:hover .banner-bg .media-with-hover-overlay-inner img,
          &:hover .banner-bg .media-with-hover-overlay-inner placeholder-image svg {
            transform: scale(1);
          }
        }

        /* 4. Overlay Fade (Transition) */
        &.animate-hover-transition--fade {
          .banner-bg .hover-overlay {
            transition: opacity var(--trans-duration) var(--trans-easing),
              visibility var(--trans-duration) var(--trans-easing);
            opacity: 0;
            visibility: hidden;
          }

          &:hover .banner-bg .hover-overlay {
            opacity: 1;
            visibility: visible;
          }
        }

        /* 5. Overlay Zoom (Transition) */
        &.animate-hover-transition--zoom {
          .banner-bg .hover-overlay img,
          .banner-bg .hover-overlay placeholder-image svg {
            transform: scale(1.1);
            transition: all var(--trans-duration) var(--trans-easing);
          }

          .banner-bg .hover-overlay {
            opacity: 0;
            visibility: hidden;
            transition: opacity var(--trans-duration), visibility var(--trans-duration);
          }

          &:hover .banner-bg .hover-overlay {
            opacity: 1;
            visibility: visible;
          }

          &:hover .banner-bg .hover-overlay img,
          &:hover .banner-bg .hover-overlay placeholder-image svg {
            transform: scale(1);
          }
        }
      }
    }
    .banner-content-inner {
      width: 100%;
      height: 100%;
      display: flex;
      gap: var(--banner-flex-gap);
      flex-direction: var(--banner-direction);
      justify-content: var(--banner-justify-content);
      align-items: var(--banner-alignment);
      @media (max-width: 991px) {
        gap: var(--banner-flex-gap-mb);
        flex-direction: var(--banner-direction-mb);
        justify-content: var(--banner-justify-content-mb);
        align-items: var(--banner-alignment-mb);
      }
    }
    .banner-bg {
      filter: var(--banner-filter);
    }
  }
/* END_SNIPPET:panel-custom-banner */

/* START_SNIPPET:panel-custom-button (INDEX:267) */
.panel-custom-button {
    flex: none;
    text-align: var(--btn-text-align);
    min-width: 1px;
    min-height: var(--btn-size-min-height);
    width: var(--btn-size-width);
    max-width: var(--btn-size-max-width);
    transition: opacity var(--trans-duration) var(--trans-easing);
    @media (max-width: 991px) {
      min-height: var(--btn-size-min-height-mb);
      width: var(--btn-size-width-mb);
      max-width: var(--btn-size-max-width-mb);
    }

    /* Icon-only override */
    &:not(:has(.btn-custom-label-wrap)) {
      width: var(--button-height);
      max-width: unset;

      @media (max-width: 991px) {
        width: var(--button-height-mb);
      }
    }

    .btn-custom-inner {
      margin-block: var(--btn-mg-block-start) var(--btn-mg-block-end);
      margin-inline: var(--btn-mg-inline-start) var(--btn-mg-inline-end);
      transition: opacity var(--trans-duration) var(--trans-easing);
      @media (max-width: 991px) {
        margin-block: var(--btn-mg-block-start-mb) var(--btn-mg-block-end-mb);
        margin-inline: var(--btn-mg-inline-start-mb) var(--btn-mg-inline-end-mb);
      }
    }
    .btn-custom-content {
      border-radius: var(--button-radius);
      padding-inline: var(--button-pd-inline);
      height: var(--button-height);
      width: 100%;
      @media (max-width: 991px) {
        padding-inline: var(--button-pd-inline-mb);
        height: var(--button-height-mb);
      }

      /* Icon-only override */
      &:not(:has(.btn-custom-label-wrap)) {
        padding-inline: 0;
      }
      .btn-custom-content-inner {
        position: relative;
        z-index: 3;
        color: var(--button-color);
        flex-direction: var(--button-icon-position);
        column-gap: var(--button-gap);
        @media (max-width: 991px) {
          column-gap: var(--button-gap-mb);
        }
        .btn-custom-label {
          font-family: var(--button-family);
          line-height: var(--button-font-lh);
          font-weight: var(--button-weight);
          letter-spacing: var(--button-ls);
          text-transform: var(--button-case);
          font-size: var(--button-font-size);
          white-space: nowrap;
          @media (max-width: 991px) {
            font-family: var(--button-family-mb);
            line-height: var(--button-font-lh-mb);
            font-weight: var(--button-weight-mb);
            letter-spacing: var(--button-ls-mb);
            text-transform: var(--button-case-mb);
            font-size: var(--button-font-size-mb);
          }
        }
        .btn-custom-icon {
          width: var(--button-icon-size);
          height: var(--button-icon-size);

          svg [stroke-width] {
            stroke-width: var(--button-icon-stroke);
          }
          @media (max-width: 991px) {
            width: var(--button-icon-size-mb);
            height: var(--button-icon-size-mb);

            svg [stroke-width] {
              stroke-width: var(--button-icon-stroke-mb);
            }
          }
        }
      }
      .btn-custom-bg {
        backdrop-filter: var(--button-backdrop-filter, unset);
        position: absolute;
        display: flex;
        align-items: center;
        justify-content: center;
        inset: 0;
        z-index: 1;
        border-radius: inherit;

        .btn-custom-bg-initial,
        .btn-custom-bg-hover {
          position: absolute;
          inset: 0;
          border-radius: inherit;
          border-style: solid;
          border-width: var(--1px);
          transition: opacity var(--trans-duration) var(--trans-easing);
          pointer-events: none;
          opacity: 0;
        }

        .btn-custom-bg-initial {
          background: var(--button-bg);
          border-color: var(--button-border);
          z-index: 1;
          &::before {
            content: '';
            display: var(--button-alt-display, none);
            position: absolute;
            inset: calc(-1 * var(--1px));
            background-color: var(--button-alt-overlay);
            z-index: 1;
            transition: opacity var(--trans-duration) var(--trans-easing);
          }
        }

        .btn-custom-bg-hover {
          background: var(--button-bg-hover);
          border-color: var(--button-border-hover);
          z-index: 2;
        }
      }

      /* Disabled State */
      &[aria-disabled],
      &:disabled {
        pointer-events: none;
        .btn-custom-content-inner {
          color: var(--button-color-disabled);
        }
        .btn-custom-bg {
          .btn-custom-bg-initial {
            background: var(--button-bg-disabled);
            border-color: var(--button-border-disabled);
            &::before {
              opacity: 0;
            }
          }
          .btn-custom-bg-hover {
            opacity: 0;
          }
        }
      }

      /* Base Style Assignments */
      &.hover-button-fade {
        .btn-custom-label-wrap .btn-custom-label {
          transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.05s;
        }
        .btn-custom-label-wrap .btn-custom-label:after {
          transform: translateY(100%);
        }
        .btn-custom-bg {
          .btn-custom-bg-initial {
            opacity: 1;
          }
        }
      }
      &.hover-button-slide {
        .btn-custom-label-wrap .btn-custom-label:after {
          display: none;
        }
        .btn-custom-bg {
          .btn-custom-bg-initial {
            opacity: 1;
          }
          .btn-custom-bg-hover {
            opacity: 1;
            clip-path: inset(100% 0 0 0);
            transition: clip-path 0.3s cubic-bezier(0.7, 0, 0.2, 1);
          }
        }
      }
      &.hover-button-circle {
        .btn-custom-label-wrap .btn-custom-label:after {
          display: none;
        }
        .btn-custom-bg {
          .btn-custom-bg-initial {
            opacity: 1;
          }
          .btn-custom-bg-hover {
            transition: opacity 0.3s;
          }
          &::after {
            content: '';
            position: absolute;
            background-color: var(--button-bg-hover);
            width: 110%;
            padding-bottom: 110%;
            height: 0;
            border-radius: 50%;
            transform: scale3d(0, 0, 1);
            z-index: 3;
          }
        }
      }

      &.hover-button-bloom {
        .btn-custom-label-wrap .btn-custom-label {
          transition: none;
        }
        .btn-custom-label-wrap .btn-custom-label:after {
          transform: translateY(200%);
        }
        .btn-custom-bg {
          .btn-custom-bg-initial {
            opacity: 1;
          }
          .btn-custom-bg-hover {
            opacity: 1;
            content: '';
            background: var(--button-bg-hover);
            clip-path: inset(0 0 100% 0);
            transition: clip-path 0.4s cubic-bezier(0.1, 0, 0.3, 1);
          }
          &::after {
            position: absolute;
            content: '';
            background: var(--button-bg-hover);
            width: 140%;
            height: 0;
            padding-bottom: 140%;
            border-radius: 50%;
            transform: translate3d(0, 100%, 0) scale3d(0, 0, 0);
            z-index: 3;
          }
        }
      }

      &.hover-button-none {
        .btn-custom-bg {
          .btn-custom-bg-initial {
            opacity: 1;
          }
        }
      }

      .btn-custom-label-wrap {
        overflow: hidden;
        position: relative;
        display: block;
        .btn-custom-label {
          position: relative;
          display: block;
          transform-style: preserve-3d;

          &::after {
            content: attr(data-label);
            position: absolute;
            inset: 0px;
            font-family: var(--button-family);
            line-height: var(--button-font-lh);
            font-weight: var(--button-weight);
            letter-spacing: var(--button-ls);
            text-transform: var(--button-case);
            font-size: var(--button-font-size);
            white-space: nowrap;
          }
          @media (max-width: 991px) {
            &::after {
              font-family: var(--button-family-mb);
              line-height: var(--button-font-lh-mb);
              font-weight: var(--button-weight-mb);
              letter-spacing: var(--button-ls-mb);
              text-transform: var(--button-case-mb);
              font-size: var(--button-font-size-mb);
            }
          }
        }
      }

      /* Button Hover Logic */
      &.hover-button-fade:not([aria-disabled]):not(:disabled) {
        .btn-custom-label-wrap {
          .btn-custom-label {
            transform: translate3d(0, 0, 0);
          }
        }

        &:hover,
        &:focus-visible {
          .btn-custom-content-inner {
            color: var(--button-color-hover);
          }
          .btn-custom-bg {
            .btn-custom-bg-initial {
              opacity: 0;
              &::before {
                opacity: 0;
              }
            }
            .btn-custom-bg-hover {
              opacity: 1;
            }
          }

          .btn-custom-label-wrap {
            .btn-custom-label {
              transform: translate3d(0, -100%, 0);
            }
          }
        }
      }

      &.hover-button-slide:not([aria-disabled]):not(:disabled) {
        &:hover,
        &:focus-visible {
          .btn-custom-content-inner {
            color: var(--button-color-hover);
          }
          .btn-custom-bg {
            .btn-custom-bg-initial {
              &::before {
                opacity: 0;
              }
            }
            .btn-custom-bg-hover {
              clip-path: inset(0 0 0 0);
            }
          }
        }
      }
      &.hover-button-circle:not([aria-disabled]):not(:disabled) {
        &:hover,
        &:focus-visible {
          .btn-custom-content-inner {
            color: var(--button-color-hover);
          }
          .btn-custom-bg {
            .btn-custom-bg-initial {
              &::before {
                opacity: 0;
              }
            }
            .btn-custom-bg-hover {
              opacity: 1;
              transition-duration: 0.01s;
              transition-delay: 0.3s;
            }
            &::after {
              transition: transform 0.4s cubic-bezier(0.1, 0, 0.3, 1);
              transform: scale3d(1, 1, 1);
            }
          }
        }
      }
      &.hover-button-bloom:not([aria-disabled]):not(:disabled) {
        &:hover,
        &:focus-visible {
          .btn-custom-content-inner {
            color: var(--button-color-hover);
            .btn-custom-label-wrap .btn-custom-label {
              transition: transform 0.5s cubic-bezier(0.1, 0, 0.3, 1);
              transform: translateY(-200%);
            }
          }
          .btn-custom-bg {
            .btn-custom-bg-initial {
              &::before {
                opacity: 0;
              }
            }
            .btn-custom-bg-hover {
              clip-path: inset(0 0 0 0);
              transition-duration: 0.05s;
              transition-delay: 0.4s;
              transition-timing-function: linear;
            }
            &::after {
              transform: translate3d(0, 0, 0) scale3d(1, 1, 1);
              transition: transform 0.4s cubic-bezier(0.1, 0, 0.3, 1);
            }
          }
        }
      }

      /* Link Hover General Text Color Changes */
      &.hover-link-underline:not([aria-disabled]):not(:disabled),
      &.hover-link-classic:not([aria-disabled]):not(:disabled) {
        &:hover,
        &:focus-visible {
          .btn-custom-content-inner {
            --text-color: var(--button-color-hover);
            color: var(--button-color-hover);
          }
          .btn-custom-bg {
            .btn-custom-bg-initial {
              opacity: 0;
              &::before {
                opacity: 0;
              }
            }
            .btn-custom-bg-hover {
              opacity: 1;
            }
          }
        }
      }

      &.hover-link-underline:not([aria-disabled]):not(:disabled) {
        &:hover,
        &:focus-visible {
          --p-ac: 0%;
          background-size: 0% var(--line-width, var(--1px));
          transition: background-size var(--trans-duration), background-position 0s,
            background-color var(--trans-duration) var(--trans-easing);
        }
        &:hover::after,
        &:focus-visible::after {
          --p-ac: 0%;
          background-size: 0% var(--line-width, var(--1px));
          transition: background-size var(--trans-duration), background-position 0s,
            background-color var(--trans-duration) var(--trans-easing);
        }

        @media (max-width: 991px) {
          &:hover,
          &:focus-visible {
            --p-ac: 0%;
            background-size: 0% var(--line-width-mb, var(--1px));
            transition: background-size var(--trans-duration), background-position 0s,
              background-color var(--trans-duration) var(--trans-easing);
          }
          &:hover::after,
          &:focus-visible::after {
            --p-ac: 0%;
            background-size: 0% var(--line-width-mb, var(--1px));
            transition: background-size var(--trans-duration), background-position 0s,
              background-color var(--trans-duration) var(--trans-easing);
          }
        }

        .btn-custom-content-inner {
          --text-color: var(--button-color);
          position: relative;
          color: var(--text-color);
          display: inline-flex;
          .btn-custom-label-wrap {
            position: relative;
            overflow: hidden;
            background-repeat: no-repeat;
            background-position: bottom left;
            background: linear-gradient(var(--text-color) 0 0) calc(100% - var(--p, 0%)) / var(--p, 0%) no-repeat;
            background-position-y: bottom;
            background-size: var(--p, 0%) var(--line-width, var(--1px));
            padding-bottom: var(--line-width, var(--1px));
            transition: background-size var(--trans-duration) 0.1s, background-position 0s;
            &::after {
              position: absolute;
              pointer-events: none;
              inset: 0;
              content: '';
              color: var(--text-color);
              display: inline;
              background-repeat: no-repeat;
              background-position: bottom left;
              line-height: var(--line-lh, unset);
              background: linear-gradient(var(--text-color) 0 0) calc(100% - var(--p-ac, 0%)) / var(--p-ac, 0%)
                no-repeat;
              background-position-y: bottom;
              background-size: var(--p-ac, 0%) var(--line-width, var(--1px));
              padding-bottom: var(--line-width, var(--1px));
              transition: background-size var(--trans-duration) 0.2s, background-position 0s;
            }
          }
          @media (hover: hover) {
            &:hover .btn-custom-label-wrap,
            &:focus-visible .btn-custom-label-wrap {
              --p: 100%;
              background-size: 100% var(--line-width, var(--1px));
              transition: background-size var(--trans-duration) 0.2s, background-position 0s;
            }
            &:hover .btn-custom-label-wrap::after,
            &:focus-visible .btn-custom-label-wrap::after {
              --p-ac: 0%;
              background-size: 0% var(--line-width, var(--1px));
              transition: background-size var(--trans-duration), background-position 0s,
                background-color var(--trans-duration) var(--trans-easing);
            }
          }

          @media (max-width: 991px) {
            .btn-custom-label-wrap {
              background-size: var(--p, 0%) var(--line-width-mb, var(--1px));
              padding-bottom: var(--line-width-mb, var(--1px));
              &::after {
                line-height: var(--line-lh-mb, unset);
                background-size: var(--p-ac, 0%) var(--line-width-mb, var(--1px));
                padding-bottom: var(--line-width-mb, var(--1px));
              }
            }
            @media (hover: hover) {
              &:hover .btn-custom-label-wrap,
              &:focus-visible .btn-custom-label-wrap {
                background-size: 100% var(--line-width-mb, var(--1px));
              }
              &:hover .btn-custom-label-wrap::after,
              &:focus-visible .btn-custom-label-wrap::after {
                background-size: 0% var(--line-width-mb, var(--1px));
              }
            }
          }
        }
      }

      &.hover-link-classic:not([aria-disabled]):not(:disabled) {
        &:hover,
        &:focus-visible {
          --p: 100%;
          background-size: 100% var(--line-width, var(--1px));
          transition: background-size var(--trans-duration), background-position 0s,
            background-color var(--trans-duration) var(--trans-easing);
        }
        @media (max-width: 991px) {
          &:hover,
          &:focus-visible {
            --p: 100%;
            background-size: 100% var(--line-width-mb, var(--1px));
            transition: background-size var(--trans-duration), background-position 0s,
              background-color var(--trans-duration) var(--trans-easing);
          }
        }
        .btn-custom-content-inner {
          --text-color: var(--button-color);
          color: var(--text-color);
          display: inline-flex;
          line-height: var(--line-lh, unset);
          z-index: 1;
          .btn-custom-label-wrap {
            position: relative;
            overflow: hidden;
            background-repeat: no-repeat;
            background-position: bottom left;
            background: linear-gradient(var(--text-color) 0 0) calc(100% - var(--p, 0%)) / var(--p, 0%) no-repeat;
            background-position-y: bottom;
            background-size: var(--p, 0%) var(--line-width, var(--1px));
            padding-bottom: var(--line-width, var(--1px));
            transition: background-size var(--trans-duration), background-position 0s,
              background-color var(--trans-duration) var(--trans-easing);
          }
          @media (hover: hover) {
            &:hover .btn-custom-label-wrap,
            &:focus-visible .btn-custom-label-wrap {
              --p: 100%;
              background-size: 100% var(--line-width, var(--1px));
              transition: background-size var(--trans-duration), background-position 0s,
                background-color var(--trans-duration) var(--trans-easing);
            }
          }

          @media (max-width: 991px) {
            .btn-custom-label-wrap {
              line-height: var(--line-lh-mb, unset);
              background-size: var(--p, 0%) var(--line-width-mb, var(--1px));
              padding-bottom: var(--line-width-mb, var(--1px));
            }

            @media (hover: hover) {
              &:hover .btn-custom-label-wrap,
              &:focus-visible .btn-custom-label-wrap {
                background-size: 100% var(--line-width-mb, var(--1px));
              }
            }
          }
        }
      }
    }

    &[disabled],
    &.disabled {
      .btn-custom-inner {
        opacity: 0.3;
        pointer-events: none;
        cursor: default;
      }
    }
  }

  [hover-trigger]:hover {
    .btn-custom-content {
      &:not([aria-disabled]):not(:disabled) {
        .btn-custom-content-inner {
          color: var(--button-color-hover);
        }
        .btn-custom-bg {
          .btn-custom-bg-initial {
            opacity: 0;
            &::before {
              opacity: 0;
            }
          }
          .btn-custom-bg-hover {
            opacity: 1;
          }
        }

        &.hover-button-fade {
          .btn-custom-label-wrap .btn-custom-label {
            transform: translate3d(0, -100%, 0);
          }
        }

        &.hover-link-underline,
        &.hover-link-classic {
          .btn-custom-label-wrap {
            --p: 100%;
            background-size: 100% var(--line-width, var(--1px));
            transition: background-size var(--trans-duration) 0.2s, background-position 0s;

            &::after {
              --p-ac: 0%;
              background-size: 0% var(--line-width, var(--1px));
              transition: background-size var(--trans-duration), background-position 0s,
                background-color var(--trans-duration) var(--trans-easing);
            }
          }
          @media (max-width: 991px) {
            .btn-custom-label-wrap {
              background-size: 100% var(--line-width-mb, var(--1px));
              &::after {
                background-size: 0% var(--line-width-mb, var(--1px));
              }
            }
          }
        }
      }
    }
  }
/* END_SNIPPET:panel-custom-button */

/* START_SNIPPET:panel-custom-container (INDEX:268) */
.panel-custom-container {
    width: 100%;
    max-width: max(var(--ctn-content-width), var(--ctn-content-maxwidth));
    height: var(--ctn-content-height);
    margin-block: var(--ctn-mg-block-start) var(--ctn-mg-block-end);
    margin-inline: auto;
    @media (max-width: 991px) {
      height: var(--ctn-content-height-mb);
      margin-block: var(--ctn-mg-block-start-mb) var(--ctn-mg-block-end-mb);
    }
    .ctn-custom-inner {
      height: 100%;

      margin-inline: var(--ctn-mg-inline-start) var(--ctn-mg-inline-end);
      @media (max-width: 991px) {
        margin-inline: var(--ctn-mg-inline-start-mb) var(--ctn-mg-inline-end-mb);
      }
    }
    .ctn-custom-content {
      padding-block: var(--ctn-pd-block-start) var(--ctn-pd-block-end);
      padding-inline: var(--ctn-pd-inline-start) var(--ctn-pd-inline-end);
      @media (max-width: 991px) {
        padding-block: var(--ctn-pd-block-start-mb) var(--ctn-pd-block-end-mb);
        padding-inline: var(--ctn-pd-inline-start-mb) var(--ctn-pd-inline-end-mb);
      }
    }
    .ctn-custom-content {
      display: flex;
      justify-content: stretch;
      min-height: var(--ctn-content-height);
      @media (max-width: 991px) {
        min-height: var(--ctn-content-height-mb);
      }
    }
    .ctn-custom-content-inner {
      width: 100%;
      display: flex;
      flex-direction: var(--ctn-direction);
      justify-content: var(--ctn-justify-content);
      align-items: var(--ctn-alignment);
      gap: var(--ctn-flex-gap);
      @media (max-width: 991px) {
        flex-direction: var(--ctn-direction-mb);
        justify-content: var(--ctn-justify-content-mb);
        align-items: var(--ctn-alignment-mb);
        gap: var(--ctn-flex-gap-mb);
      }
    }
    .ctn-custom-bg {
      background: var(--ctn-background);
      background-repeat: no-repeat;
    }
  }
/* END_SNIPPET:panel-custom-container */

/* START_SNIPPET:panel-custom-countdown (INDEX:269) */
countdown-timer {
    display: block;
  }
  .block-countdown {
    display: block;
    width: fit-content;
  }
  .block-countdown-inner {
    overflow: hidden;
    margin-block: var(--cdn-mg-block-start) var(--cdn-mg-block-end);
    margin-inline: var(--cdn-mg-inline-start) var(--cdn-mg-inline-end);
    @media (max-width: 991px) {
      margin-block: var(--cdn-mg-block-start-mb) var(--cdn-mg-block-end-mb);
      margin-inline: var(--cdn-mg-inline-start-mb) var(--cdn-mg-inline-end-mb);
    }

    .block-countdown-content {
      display: flex;
      column-gap: var(--countdown-content-gap);
      align-items: center;
      justify-content: center;
      padding-block: var(--cdn-pd-block-start) var(--cdn-pd-block-end);
      padding-inline: var(--cdn-pd-inline-start) var(--cdn-pd-inline-end);
      @media (max-width: 991px) {
        padding-block: var(--cdn-pd-block-start-mb) var(--cdn-pd-block-end-mb);
        padding-inline: var(--cdn-pd-inline-start-mb) var(--cdn-pd-inline-end-mb);
      }
      .block-countdown-item {
        .block-countdown-item-inner {
          min-width: var(--countdown-item-inner-size);
          min-height: var(--countdown-item-inner-size);
          display: flex;
          flex-direction: var(--countdown-item-inner-direction);
          gap: var(--countdown-item-inner-gap, 0);
          align-items: center;
          justify-content: center;
          overflow: hidden;
          border-radius: var(--boxed-radius);
          border: var(--countdown-item-inner-border);
          background-color: var(--countdown-item-inner-background);
          position: relative;
          overflow: hidden;
          @media screen and (max-width: 989px) {
            min-width: var(--countdown-item-inner-size-mb);
            min-height: var(--countdown-item-inner-size-mb);
          }
          &::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background-color: var(--countdown-item-inner-bg-alt);
          }
        }
      }
    }
  }

  .block-countdown-separator {
    display: flex;
    flex-direction: var(--countdown-separator-flex-direction);
    /* gap: var(--countdown-separator-gap); */
    gap: 0;
    align-items: center;
    justify-content: center;

    .block-countdown-separator-line {
      width: var(--countdown-separator-width);
      height: var(--countdown-separator-height);
      background-color: var(--color-border-default);
      @media screen and (max-width: 989px) {
        width: var(--countdown-separator-width-mb);
        height: var(--countdown-separator-height-mb);
      }
    }

    .block-countdown-separator-dotted {
      margin-block-end: 80%;
      display: flex;
      align-items: center;
      justify-content: center;
      > * {
        width: min-content;
      }
    }
  }
/* END_SNIPPET:panel-custom-countdown */

/* START_SNIPPET:panel-custom-divider (INDEX:270) */
.divider-custom {
    width: var(--divider-width);
    height: var(--divider-height);
    margin-block: var(--divider-mg-blck-start) var(--divider-mg-blck-end);
    margin-inline: var(--divider-mg-inline-start) var(--divider-mg-inline-end);
    @media (max-width: 991px) {
      width: var(--divider-width-mb);
      height: var(--divider-height-mb);
      margin-block: var(--divider-mg-blck-start-mb) var(--divider-mg-blck-end-mb);
      margin-inline: var(--divider-mg-inline-start-mb) var(--divider-mg-inline-end-mb);
    }
  }
  .divider-custom-inner {
    width: 100%;
    height: 100%;
    overflow: hidden;
    border-radius: var(--divider-border-radius);
    background: var(--divider-background);
    background-size: var(--divider-background-size);
    @media (max-width: 991px) {
      background: var(--divider-background-mb);
      background-size: var(--divider-background-size-mb);
    }
  }
/* END_SNIPPET:panel-custom-divider */

/* START_SNIPPET:panel-custom-field-checkbox (INDEX:272) */
form-field-validator.field-checkbox-validator {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 0.5rem;
    width: 100%;
  }
  .field-checkbox {
    width: var(--field-width);
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-block-start: var(--field-checkbox-mg-block-start);
    margin-block-end: var(--field-checkbox-mg-block-end);
    @media (max-width: 991px) {
      width: var(--field-width-mb);
      margin-block-start: var(--field-checkbox-mg-block-start-mb);
      margin-block-end: var(--field-checkbox-mg-block-end-mb);
    }

    .field-checkbox-label {
      display: var(--field-checkbox-label-visibility);
      .field-checkbox-label-inner {
        font-family: var(--typo-ff-body);
        font-size: var(--field-checkbox-label-font-size);
        line-height: var(--field-checkbox-label-line-height);
        font-weight: normal;
        letter-spacing: normal;
        text-transform: none;
        color: var(--field-checkbox-label-color-default);
        transition: color var(--trans-duration) var(--trans-easing);
        cursor: pointer;

        @media (max-width: 991px) {
          font-size: var(--field-checkbox-label-font-size-mb);
          line-height: var(--field-checkbox-label-line-height-mb);
        }
      }
    }

    .field-checkbox-input-wrap {
      flex-shrink: 0;
      width: var(--field-checkbox-input-size);
      height: var(--field-checkbox-input-size);
      border: var(--1px) solid var(--color-border-default);
      border-radius: 0.1875rem;
      background: transparent;
      position: relative;
      transition: background-color var(--trans-duration) var(--trans-easing),
        border-color var(--trans-duration) var(--trans-easing);

      @media (max-width: 991px) {
        width: var(--field-checkbox-input-size-mb);
        height: var(--field-checkbox-input-size-mb);
      }

      .field-checkbox-checked-icon {
        width: 100%;
        height: 100%;
        color: var(--color-background);
        opacity: 0;
        position: absolute;
        transition: opacity var(--trans-duration) var(--trans-easing);
      }

      .field-checkbox-input {
        width: 100%;
        height: 100%;
        position: absolute;
        inset: 0;
        opacity: 0;
        border-radius: 0;
        z-index: 1;
      }

      /* checked */
      &:has(.field-checkbox-input:checked) {
        background-color: var(--color-foreground_100);
        border-color: var(--color-foreground_100);

        .field-checkbox-checked-icon {
          opacity: 1;
        }
      }
    }

    &:hover {
      .field-checkbox-label {
        .field-checkbox-label-inner {
          color: var(--field-checkbox-label-color-hover);
        }
      }

      .field-checkbox-input-wrap {
        border-color: var(--color-border-hover);
      }
    }

    &:has(.field-checkbox-input:checked) {
      .field-checkbox-label {
        .field-checkbox-label-inner {
          color: var(--field-checkbox-label-color-checked);
        }
      }
    }
  }
  .error-message-wrap {
    display: flex;
    gap: 0.5rem;
    margin-block-start: 0.375rem;
    .error-point {
      width: 0.375rem;
      height: 0.375rem;
      background: var(--color-status_error);
      border-radius: var(--radius-new-pill);
      margin-block: auto;
    }
    .error-message {
      color: var(--color-text-paragraph);
    }
  }
/* END_SNIPPET:panel-custom-field-checkbox */

/* START_SNIPPET:panel-custom-field-date (INDEX:273) */
.field-date {
    width: var(--field-width);
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
    position: relative;
    @media (max-width: 991px) {
      width: var(--field-width-mb);
    }

    /* Date label uses a separate visibility var so it can be hidden when label is blank */
    .field-label {
      display: var(--field-date-label-visibility);
      @media (max-width: 991px) {
        display: var(--field-date-label-visibility-mb);
      }
    }

    /* Hide native date picker indicators */
    .field-input {
      &::-webkit-calendar-picker-indicator {
        opacity: 0;
      }
      &::-webkit-inner-spin-button,
      &::-webkit-outer-spin-button {
        opacity: 0;
      }
      &::-moz-calendar-picker-indicator {
        opacity: 0;
      }
      @-moz-document url-prefix() {
        clip-path: inset(0 120px 0 0);
      }
    }

    /* Calendar icon */
    .field-date-icon {
      width: var(--field-date-icon-size);
      height: var(--field-date-icon-size);
      position: absolute;
      top: 50%;
      right: var(--input-pd-inline);
      transform: translateY(-50%);
      pointer-events: none;
      z-index: 4;
      color: var(--color-foreground_60);
      @media (max-width: 991px) {
        width: var(--field-date-icon-size-mb);
        height: var(--field-date-icon-size-mb);
        right: var(--input-pd-inline-mb);
      }
    }
  }
/* END_SNIPPET:panel-custom-field-date */

/* START_SNIPPET:panel-custom-field-dropdown (INDEX:274) */
.field-dropdown {
    width: var(--field-width);
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
    position: relative;
    @media (max-width: 991px) {
      width: var(--field-width-mb);
    }

    /* Dropdown label uses a separate visibility var so it can be hidden when label is blank */
    .field-label {
      display: var(--field-dropdown-label-visibility);
      @media (max-width: 991px) {
        display: var(--field-dropdown-label-visibility-mb);
      }
    }

    /* Select icon */
    .field-select-icon {
      width: var(--field-dropdown-select-icon-size);
      height: var(--field-dropdown-select-icon-size);
      position: absolute;
      top: 50%;
      right: var(--input-pd-inline);
      transform: translateY(-50%);
      transition: transform var(--trans-duration) var(--trans-easing);
      color: var(--color-foreground_60);
      z-index: 4;
      pointer-events: none;
      @media (max-width: 991px) {
        width: var(--field-dropdown-select-icon-size-mb);
        height: var(--field-dropdown-select-icon-size-mb);
        right: var(--input-pd-inline-mb);
      }
    }

    /* Rotate icon when dropdown is open */
    &:has(select[data-open]) {
      .field-select-icon {
        transform: translateY(-50%) rotate(180deg);
      }
    }
  }
/* END_SNIPPET:panel-custom-field-dropdown */

/* START_SNIPPET:panel-custom-field-radio (INDEX:275) */
.field-radio {
    width: var(--field-width);
    margin-block-start: var(--field-radio-mg-block-start);
    margin-block-end: var(--field-radio-mg-block-end);
    @media (max-width: 991px) {
      width: var(--field-width-mb);
      margin-block-start: var(--field-radio-mg-block-start-mb);
      margin-block-end: var(--field-radio-mg-block-end-mb);
    }
    .field-radio-label {
      display: var(--field-radio-label-visibility);
      margin-block-end: 0.375rem;
      .field-radio-label-inner {
        font-family: var(--field-label-font-family);
        font-size: var(--field-label-font-size);
        line-height: var(--field-label-line-height);
        font-weight: normal;
        letter-spacing: normal;
        text-transform: none;
        color: var(--field-label-color);
      }
    }

    .field-radio-list {
      display: flex;
      flex-direction: column;
      gap: 0.5rem;

      .field-radio-item {
        display: flex;
        align-items: center;
        gap: 0.5rem;

        .field-radio-item-label {
          font-family: var(--typo-ff-body);
          font-size: var(--field-radio-item-label-font-size);
          line-height: var(--field-radio-item-label-line-height);
          font-weight: normal;
          letter-spacing: normal;
          text-transform: none;
          color: var(--field-radio-item-label-color-default);
          transition: color var(--trans-duration) var(--trans-easing);
          cursor: pointer;

          @media (max-width: 991px) {
            font-size: var(--field-radio-item-label-font-size-mb);
            line-height: var(--field-radio-item-label-line-height-mb);
          }
        }

        .field-radio-item-input {
          flex: 0 0 auto;
          box-sizing: border-box;
          width: calc(var(--field-radio-item-input-size) + var(--1px) * 2);
          height: calc(var(--field-radio-item-input-size) + var(--1px) * 2);
          margin: 0;
          padding: 0;
          display: flex;
          align-items: center;
          justify-content: center;
          cursor: pointer;
          position: relative;
          background-color: transparent;
          border: var(--1px) solid var(--color-border-default);
          border-radius: var(--radius-new-pill);
          transition: all var(--trans-duration) var(--trans-easing);

          &::before {
            content: '';
            width: calc(var(--field-radio-item-input-size) - var(--1px));
            height: calc(var(--field-radio-item-input-size) - var(--1px));
            position: absolute;
            inset: 0;
            margin: auto;
            border-radius: var(--radius-new-pill);
            background-color: var(--color-foreground_100);
            opacity: 0;
            transition: all var(--trans-duration) var(--trans-easing);
          }

          &:hover {
            border-color: var(--color-border-hover);
            & ~ .field-radio-item-label {
              color: var(--field-radio-item-label-color-hover);
            }
          }

          &:focus {
            border-color: var(--color-border-focus);
            & ~ .field-radio-item-label {
              color: var(--field-radio-item-label-color-focus);
            }
          }

          &:checked {
            border-color: var(--color-border-focus);
            &::before {
              opacity: 1;
            }
            & ~ .field-radio-item-label {
              color: var(--field-radio-item-label-color-checked);
            }
          }
        }
      }
    }
  }
/* END_SNIPPET:panel-custom-field-radio */

/* START_SNIPPET:panel-custom-field-text (INDEX:276) */
.field-text {
    width: var(--field-width);
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
    position: relative;
    @media (max-width: 991px) {
      width: var(--field-width-mb);
    }
  }
/* END_SNIPPET:panel-custom-field-text */

/* START_SNIPPET:panel-custom-field-textarea (INDEX:277) */
.field-textarea {
    width: var(--field-width);
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
    position: relative;
    @media (max-width: 991px) {
      width: var(--field-width-mb);
    }
  }
/* END_SNIPPET:panel-custom-field-textarea */

/* START_SNIPPET:panel-custom-form-action (INDEX:278) */
.form-action {
    width: var(--action-size-width);
    max-width: var(--action-size-max-width);
    @media (max-width: 991px) {
      width: var(--action-size-width-mb);
      max-width: var(--action-size-max-width-mb);
    }
    .form-action-inner {
      margin-block: var(--action-mg-block-start) var(--action-mg-block-end);
      margin-inline: var(--action-mg-inline-start) var(--action-mg-inline-end);
      @media (max-width: 991px) {
        margin-block: var(--action-mg-block-start-mb) var(--action-mg-block-end-mb);
        margin-inline: var(--action-mg-inline-start-mb) var(--action-mg-inline-end-mb);
      }
      .form-action-content {
        display: flex;
        flex-direction: var(--action-direction);
        justify-content: var(--action-justify-content);
        align-items: var(--action-alignment);
        gap: var(--action-flex-gap);
        @media (max-width: 991px) {
          flex-direction: var(--action-direction-mb);
          justify-content: var(--action-justify-content-mb);
          align-items: var(--action-alignment-mb);
          gap: var(--action-flex-gap-mb);
        }

        .btn-custom {
          flex-shrink: 0;
        }
      }
    }
  }
/* END_SNIPPET:panel-custom-form-action */

/* START_SNIPPET:panel-custom-form (INDEX:279) */
.contact-form-v2 {
    width: var(--form-size-width);
    max-width: var(--form-size-max-width);
    display: flex;
    align-items: stretch;
    @media (max-width: 991px) {
      width: var(--form-size-width-mb);
      max-width: var(--form-size-max-width-mb);
    }
    .contact-form-v2-inner {
      width: 100%;
      margin-block: var(--form-mg-block-start) var(--form-mg-block-end);
      margin-inline: var(--form-mg-inline-start) var(--form-mg-inline-end);
      @media (max-width: 991px) {
        margin-block: var(--form-mg-block-start-mb) var(--form-mg-block-end-mb);
        margin-inline: var(--form-mg-inline-start-mb) var(--form-mg-inline-end-mb);
      }
      .contact-form-v2-content {
        display: flex;
        flex-wrap: wrap;
        flex-direction: column;
        padding-block: var(--form-pd-block-start) var(--form-pd-block-end);
        padding-inline: var(--form-pd-inline-start) var(--form-pd-inline-end);
        @media (max-width: 991px) {
          padding-block: var(--form-pd-block-start-mb) var(--form-pd-block-end-mb);
          padding-inline: var(--form-pd-inline-start-mb) var(--form-pd-inline-end-mb);
        }
        .contact-form-controls-wrap {
          display: flex;
          flex-wrap: wrap;
          gap: var(--form-flex-gap);
          @media (max-width: 991px) {
            gap: var(--form-flex-gap-mb);
          }
          .field-placeholder-v2 {
            display: none;
          }
        }
      }
    }
  }
/* END_SNIPPET:panel-custom-form */

/* START_SNIPPET:panel-custom-group-header (INDEX:280) */
.panel-custom-group-header {
    position: relative;
    width: var(--grp_header-size-width);
    max-width: var(--grp_header-size-max-width);
    height: fit-content;
    text-align: var(--grp_header-text-align);
    display: flex;
    flex-direction: var(--grp_header-direction);
    justify-content: var(--grp_header-justify-content);
    align-items: var(--grp_header-alignment);
    gap: var(--grp_header-flex-gap);
    @media (max-width: 991px) {
      display: contents;
    }
  }
/* END_SNIPPET:panel-custom-group-header */

/* START_SNIPPET:panel-custom-group (INDEX:281) */
.panel-custom-group {
    position: relative;
    min-width: 1px;
    min-height: var(--grp-size-min-height);
    width: var(--grp-size-width);
    max-width: var(--grp-size-max-width);
    height: var(--grp-size-height);
    text-align: var(--grp-text-align);
    @media (max-width: 991px) {
      width: var(--grp-size-width-mb);
      height: var(--grp-size-height-mb);
      min-height: var(--grp-size-min-height-mb);
      text-align: var(--grp-text-align-mb);
      max-width: var(--grp-size-max-width-mb);
    }
    .grp-custom-inner {
      contain: var(--grp-overflow-contain);
      position: relative;
      border-radius: var(--grp-radius);
      margin-block: var(--grp-mg-block-start) var(--grp-mg-block-end);
      margin-inline: var(--grp-mg-inline-start) var(--grp-mg-inline-end);
      @media (max-width: 991px) {
        margin-block: var(--grp-mg-block-start-mb) var(--grp-mg-block-end-mb);
        margin-inline: var(--grp-mg-inline-start-mb) var(--grp-mg-inline-end-mb);
      }
    }
    .grp-custom-content {
      padding-block: var(--grp-pd-block-start) var(--grp-pd-block-end);
      padding-inline: var(--grp-pd-inline-start) var(--grp-pd-inline-end);
      @media (max-width: 991px) {
        padding-block: var(--grp-pd-block-start-mb) var(--grp-pd-block-end-mb);
        padding-inline: var(--grp-pd-inline-start-mb) var(--grp-pd-inline-end-mb);
      }
    }
    .grp-custom-content {
    }
    .grp-custom-content-inner {
      width: 100%;
      height: 100%;
      display: flex;
      flex-direction: var(--grp-direction);
      justify-content: var(--grp-justify-content);
      align-items: var(--grp-alignment);
      gap: var(--grp-flex-gap);
      @media (max-width: 991px) {
        flex-direction: var(--grp-direction-mb);
        align-items: var(--grp-alignment-mb);
        justify-content: var(--grp-justify-content-mb);
        gap: var(--grp-flex-gap-mb);
      }
    }
    .grp-custom-bg {
      border-radius: var(--grp-radius);
      border-style: solid;
      border-color: var(--color-border-default);
      border-top-width: var(--grp-border-top);
      border-bottom-width: var(--grp-border-bottom);
      border-left-width: var(--grp-border-left);
      border-right-width: var(--grp-border-right);
      background: var(--grp-background);
      background-repeat: no-repeat;
      background-size: calc(100% + var(--grp-border-left) + var(--grp-border-right))
        calc(100% + var(--grp-border-top) + var(--grp-border-bottom));
      background-position: calc(var(--grp-border-left) * -1) calc(var(--grp-border-top) * -1);
    }
  }
/* END_SNIPPET:panel-custom-group */

/* START_SNIPPET:panel-custom-i18n-dropdown (INDEX:282) */
/* ── Dropdown (portal mode) ── */
  .i18n-drop {
    position: absolute;
    left: 0;
    top: 100%;
    z-index: 9999;
    pointer-events: none;
    min-width: 13.25rem;

    & > form {
      display: contents;
    }

    .i18n-drop-bg {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      border-radius: var(--radius-new-x-small);
      background: var(--color-background);
      overflow: hidden;
      &::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: var(--color-surface-alt);
      }
    }

    .i18n-drop-inner {
      transform: translateY(-0.5rem);
      transition: opacity var(--_t, var(--trans-duration) var(--trans-easing)),
        transform var(--_t, var(--trans-duration) var(--trans-easing));
      opacity: 0;
      padding-block: 0.25rem;
      padding-inline: 0.75rem;
      position: relative;
      min-width: 9.875rem;
      max-height: 15.625rem;
      overflow-y: auto;
      z-index: 100;
    }

    .i18n-drop-item {
      position: relative;
      &.active {
        .i18n-check-ic {
          flex-shrink: 0;
          opacity: 1;
        }
      }
      &:last-of-type {
        .div-line {
          display: none;
        }
      }
      .div-line {
        width: 100%;
        position: absolute;
        bottom: 0;
        left: 0;
        height: var(--1px);
        background-color: var(--color-border-divider);
        .div-line-inner {
          width: 100%;
          height: 100%;
          background-color: var(--color-border-hover);
          transition: transform var(--_t, var(--trans-duration) var(--trans-easing));
          transform: scaleX(0);
          transform-origin: right;
        }
      }
    }

    .i18n-drop-item-link {
      padding-block: 0.75rem;
      display: block;
      .i18n-drop-item-link-inner {
        display: flex;
        align-items: center;
        justify-content: space-between;
        column-gap: 0.375rem;
      }
    }

    &.active {
      pointer-events: auto;
      .i18n-drop-inner {
        opacity: 1;
        pointer-events: auto;
        transform: translateY(0);
      }
    }
    &.i18n-portal {
      position: fixed;
    }
  }

  /* ── Dropdown content layout ── */
  .i18n-country-name {
    display: flex;
    align-items: center;
    column-gap: 0.25rem;
    width: 100%;
    white-space: nowrap;
  }
  .i18n-language-name {
    display: flex;
    align-items: center;
    column-gap: 0.5rem;
    width: 100%;
    justify-content: space-between;
    white-space: nowrap;
  }
  .i18n-check-ic {
    opacity: 0;
    border-radius: var(--radius-new-pill);
    width: 0.25rem;
    height: 0.25rem;
    flex-shrink: 0;
    background-color: var(--color-foreground);
  }

  /* ── Hover-inactive pattern (opacity fade) ── */
  .i18n-drop {
    .i18n-drop-list {
      .i18n-drop-item-link {
        transition: opacity var(--trans-duration) var(--trans-easing);
      }

      @media (hover: hover) {
        &:has(.i18n-drop-item-link:hover) {
          .i18n-drop-item-link:hover {
            .div-line .div-line-inner {
              transform: scaleX(1);
              transform-origin: left;
            }
          }

          .i18n-drop-item-link:not(:hover) {
            opacity: 0.5;
          }
        }
      }
    }
  }
/* END_SNIPPET:panel-custom-i18n-dropdown */

/* START_SNIPPET:panel-custom-i18n (INDEX:283) */
dropdown-localization-component {
    display: block;
  }

  /* ── Shared icon sizing — trigger & dropdown ── */
  .i18n-icon {
    width: var(--icon-size, 1rem);
    height: var(--icon-size, 1rem);
    flex-shrink: 0;
    transition: color var(--_t, var(--trans-duration) var(--trans-easing));
    &.i18n-icon-flag {
      width: var(--country-icon-size);
      height: var(--country-icon-size);
      display: flex;
      align-items: center;
      justify-content: center;
    }
  }
  .i18n-country-flag {
    width: 100%;
    height: 100%;
    background: var(--flag-icon) no-repeat center;
    background-size: auto 100%;
    border-radius: var(--radius-new-pill);
    display: block;
  }

  /* ── Trigger (label + icon) ── */
  .localization-block {
    .i18n-head-value {
      --text-color: var(--color-text-title);
      --line-width: var(--1px);
      white-space: nowrap;
      color: var(--text-color);
      font-family: var(--localization-label-typo-ff);
      font-size: var(--localization-label-typo-font-size);
      font-weight: var(--localization-label-typo-font-weight);
      line-height: var(--localization-label-typo-line-height);
      letter-spacing: var(--localization-label-typo-letter-spacing);
      text-transform: var(--localization-label-typo-text-transform);
      transition: color var(--_t, var(--trans-duration) var(--trans-easing));
      @media (max-width: 991px) {
        font-size: var(--localization-label-typo-font-size-mb);
        font-weight: var(--localization-label-typo-font-weight-mb);
        line-height: var(--localization-label-typo-line-height-mb);
        letter-spacing: var(--localization-label-typo-letter-spacing-mb);
        &.i18n-head-label {
          display: none;
        }
      }
      &.i18n-head-underline {
        .link-block-label {
          color: inherit;
          display: inline;
          position: relative;
          &::after {
            content: '';
            position: absolute;
            left: 0;
            bottom: 0;
            width: 100%;
            height: var(--line-width, var(--1px));
            background-color: var(--text-color);
            transform: scaleX(0);
            transform-origin: right center;
            transition: transform var(--_t, var(--trans-duration));
          }
        }
      }
    }

    &.i18n-block {
      position: relative;
      .i18n-trigger {
        display: flex;
        align-items: center;
        column-gap: 0.25rem;
        padding-block: 0.25rem;
        height: 100%;
        .i18n-trigger-inner {
          display: flex;
          align-items: center;
          column-gap: 0.25rem;
          .i18n-icon {
            color: var(--color-text-title);
            transition: color var(--_t, var(--trans-duration) var(--trans-easing));
          }
        }
      }
      /* i18n-active class is set by JS when dropdown is open (portal mode) */
      &.i18n-active,
      &:has(.i18n-trigger:hover) {
        .i18n-trigger {
          .i18n-head-value .link-block-label::after {
            transform: scaleX(1);
            transform-origin: left center;
          }
        }
      }
    }
  }
  .i18n-drop {
    .i18n-drop-item-link {
      font-family: var(--localization-label-typo-ff);
      font-size: var(--localization-label-typo-font-size);
      font-weight: var(--localization-label-typo-font-weight);
      line-height: var(--localization-label-typo-line-height);
      letter-spacing: var(--localization-label-typo-letter-spacing);
      text-transform: var(--localization-label-typo-text-transform);
      @media (max-width: 991px) {
        font-size: var(--localization-label-typo-font-size-mb);
        font-weight: var(--localization-label-typo-font-weight-mb);
        line-height: var(--localization-label-typo-line-height-mb);
        letter-spacing: var(--localization-label-typo-letter-spacing-mb);
      }
    }
  }
/* END_SNIPPET:panel-custom-i18n */

/* START_SNIPPET:panel-custom-icon (INDEX:284) */
.icon-custom {
    margin-block: var(--icon-mg-block-start) var(--icon-mg-block-end);
    margin-inline: var(--icon-mg-inline-start) var(--icon-mg-inline-end);
    @media (max-width: 991px) {
      margin-block: var(--icon-mg-block-start-mb) var(--icon-mg-block-end-mb);
      margin-inline: var(--icon-mg-inline-start-mb) var(--icon-mg-inline-end-mb);
    }
  }
  .icon-custom-inner {
    position: relative;
    color: var(--icon-color);
    padding: var(--icon-inner-padding);
    border-radius: var(--box_icon-radius);
    @media (max-width: 991px) {
      padding: var(--icon-inner-padding-mb);
    }
  }
  .icon-custom-content {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    width: var(--icon-size);
    aspect-ratio: 1/1;
    @media (max-width: 991px) {
      width: var(--icon-size-mb);
    }
    img {
      object-fit: contain;
      height: 100%;
      width: 100%;
    }
  }
  .icon-custom-bg {
    position: absolute;
    z-index: 1;
    inset: 0;
    background: var(--icon-boxed-bg-color);
    border-radius: var(--box_icon-radius);
    border: solid var(--1px) var(--icon-boxed-border);
  }
/* END_SNIPPET:panel-custom-icon */

/* START_SNIPPET:panel-custom-instagram-list (INDEX:285) */
.instagram-list {
    width: 100%;
    .embla__viewport {
      overflow: hidden;
      border-radius: var(--media-radius);
      position: relative;
    }
    .instagram-list-inner {
      margin-block: var(--ins-mg-block-start) var(--ins-mg-block-end);
      margin-inline: var(--ins-mg-inline-start) var(--ins-mg-inline-end);
      @media (max-width: 991px) {
        margin-block: var(--ins-mg-block-start-mb) var(--ins-mg-block-end-mb);
        margin-inline: var(--ins-mg-inline-start-mb) var(--ins-mg-inline-end-mb);
      }
      .instagram-list-content {
        padding-block: var(--ins-pd-block-start) var(--ins-pd-block-end);
        padding-inline: var(--ins-pd-inline-start) var(--ins-pd-inline-end);
        @media (max-width: 991px) {
          padding-block: var(--ins-pd-block-start-mb) var(--ins-pd-block-end-mb);
          padding-inline: var(--ins-pd-inline-start-mb) var(--ins-pd-inline-end-mb);
        }

        .instagram-list-heading {
          display: flex;
          flex-direction: var(--ins-heading-direction);
          justify-content: space-between;
          align-items: var(--ins-heading-alignment);
          text-align: var(--ins-heading-text-align);
          --flex-gap: 1.25rem;
          gap: var(--flex-gap);

          @media (max-width: 991px) {
            flex-direction: var(--ins-heading-direction-mb);
            gap: calc(var(--flex-gap, 0) * var(--aspect-section-spacing));
          }
        }
      }
    }
  }
/* END_SNIPPET:panel-custom-instagram-list */

/* START_SNIPPET:panel-custom-jumbo-text (INDEX:286) */
.panel-custom-jumbo-text {
    color: var(--typo-color-normal);
    max-width: var(--jumbo_text-max-width);
    width: var(--jumbo_text-width);
    max-height: var(--jumbo_text-height-base);
    font-size: var(--jt-fs-dk, var(--jumbo_text-height-base));
    height: auto;
    @media (max-width: 991px) {
      max-width: var(--jumbo_text-max-width-mb);
      width: var(--jumbo_text-width-mb);
      max-height: var(--jumbo_text-height-base-mb);
      font-size: var(--jt-fs-mb, var(--jumbo_text-height-base-mb));
    }
    .jumbo-text-custom-content {
      text-align: var(--jumbo_text-align);
      padding-block: var(--jumbo_text-pd-block-start) var(--jumbo_text-pd-block-end);
      padding-inline: var(--jumbo_text-pd-inline-start) var(--jumbo_text-pd-inline-end);
      @media (max-width: 991px) {
        padding-block: var(--jumbo_text-pd-block-start-mb) var(--jumbo_text-pd-block-end-mb);
        padding-inline: var(--jumbo_text-pd-inline-start-mb) var(--jumbo_text-pd-inline-end-mb);
      }
      jumbo-text {
        letter-spacing: var(--typo-custom-ls);
        line-height: var(--typo-custom-lh);
      }
    }
  }
/* END_SNIPPET:panel-custom-jumbo-text */

/* START_SNIPPET:panel-custom-listing (INDEX:287) */
.listing {
    width: 100%;
    .listing-inner {
      margin-block: var(--listing-mg-block-start) var(--listing-mg-block-end);
      margin-inline: var(--listing-mg-inline-start) var(--listing-mg-inline-end);
      @media (max-width: 991px) {
        margin-block: var(--listing-mg-block-start-mb) var(--listing-mg-block-end-mb);
        margin-inline: var(--listing-mg-inline-start-mb) var(--listing-mg-inline-end-mb);
      }
      .listing-content {
        padding-block: var(--listing-pd-block-start) var(--listing-pd-block-end);
        padding-inline: var(--listing-pd-inline-start) var(--listing-pd-inline-end);
        @media (max-width: 991px) {
          padding-block: var(--listing-pd-block-start-mb) var(--listing-pd-block-end-mb);
          padding-inline: var(--listing-pd-inline-start-mb) var(--listing-pd-inline-end-mb);
        }
      }
    }
  }
/* END_SNIPPET:panel-custom-listing */

/* START_SNIPPET:panel-custom-localization-header (INDEX:288) */
.localization-block-outer {
    position: relative;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: row;
    gap: 1.5rem;
    &[data-portal-mode='true'] .i18n-drop {
      display: none;
    }
    &[data-portal-mode='false'] {
      .i18n-drop {
        margin-block-start: var(--small-gap);
        &::before {
          content: '';
          position: absolute;
          bottom: 100%;
          left: 0;
          width: 100%;
          height: var(--small-gap);
        }
      }
      @media (max-width: 991px) {
        dropdown-localization-component {
          .i18n-drop {
            top: auto;
            bottom: calc(100% + var(--small-gap));
            margin-block-start: 0;
          }
          &:first-of-type .i18n-drop {
            left: 0;
            right: auto;
          }
          &:nth-of-type(2) .i18n-drop {
            left: auto;
            right: 0;
          }
          &:only-of-type .i18n-drop {
            left: 0;
            right: auto;
          }
        }
      }
    }
    @media (hover: hover) {
      &:has(.localization-block:hover) {
        .localization-block:hover {
          .i18n-icon,
          .i18n-head-value {
            --text-color: var(--color-text-title);
            color: var(--color-text-title);
          }
        }
        .localization-block:not(:hover) {
          .i18n-icon,
          .i18n-head-value {
            color: var(--color-text-note);
          }
        }
      }
    }
  }
  .localization-divider {
    width: var(--1px);
    height: 1rem;
    background-color: var(--color-border-default);
    align-self: center;
  }
/* END_SNIPPET:panel-custom-localization-header */

/* START_SNIPPET:panel-custom-localization (INDEX:289) */
.localization-block-outer {
    position: relative;
    width: var(--localization-size-width);
    max-width: var(--localization-size-max-width);
    @media (max-width: 991px) {
      width: var(--localization-size-width-mb);
      max-width: var(--localization-size-max-width-mb);
    }
  }
  .localization-block-inner {
    margin-block: var(--localization-mg-block-start) var(--localization-mg-block-end);
    margin-inline: var(--localization-mg-inline-start) var(--localization-mg-inline-end);
    position: relative;
    @media (max-width: 991px) {
      margin-block: var(--localization-mg-block-start-mb) var(--localization-mg-block-end-mb);
      margin-inline: var(--localization-mg-inline-start-mb) var(--localization-mg-inline-end-mb);
    }
  }
  .localization-block-content {
    padding-block: var(--localization-pd-block-start) var(--localization-pd-block-end);
    padding-inline: var(--localization-pd-inline-start) var(--localization-pd-inline-end);
    @media (max-width: 991px) {
      padding-block: var(--localization-pd-block-start-mb) var(--localization-pd-block-end-mb);
      padding-inline: var(--localization-pd-inline-start-mb) var(--localization-pd-inline-end-mb);
    }
  }
  .localization-block-content-inner {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: row;
    justify-content: var(--localization-justify-content);
    gap: var(--localization-flex-gap);
    @media (max-width: 991px) {
      gap: var(--localization-flex-gap-mb);
      justify-content: var(--localization-justify-content-mb);
    }
    .i18n-drop {
      display: none;
    }
    @media (hover: hover) {
      &:has(.localization-block:hover) {
        .localization-block:not(:hover) {
          .i18n-icon,
          .i18n-head-value {
            color: var(--color-text-note);
          }
        }
      }
    }
  }
  .localization-divider {
    width: var(--1px);
    height: 1rem;
    background-color: var(--color-border-default);
    align-self: center;
  }
/* END_SNIPPET:panel-custom-localization */

/* START_SNIPPET:panel-custom-menu-header (INDEX:290) */
.menu-header-v2 {
    width: fit-content;
    height: 100%;
    display: flex;
    align-items: center;
    @media (max-width: 991px) {
      display: contents;
    }
    .menu-header-v2-inner {
      height: 100%;
      @media (max-width: 991px) {
        height: auto;
        overflow-y: visible;
        max-height: none;
      }
    }
    .menu-header-v2-content {
      height: 100%;
      display: flex;
      align-items: stretch;
      @media (max-width: 991px) {
        flex-direction: column;
        height: auto;
      }
    }
  }
/* END_SNIPPET:panel-custom-menu-header */

/* START_SNIPPET:panel-custom-menu (INDEX:291) */
.blck-menu {
    min-width: 1px;
    min-height: 1px;
    width: var(--menu-size-width);
    max-width: var(--menu-size-max-width);
    height: var(--menu-size-height, auto);
    @media (max-width: 991px) {
      width: var(--menu-size-width-mb);
      max-width: var(--menu-size-max-width-mb);
      height: var(--menu-size-height-mb, auto);
    }

    .blck-menu-inner {
      width: 100%;
      height: 100%;
      display: flex;
      flex-direction: row;
      justify-content: var(--menu-box-justify-content);
      align-items: stretch;
      margin-block: var(--menu-mg-block-start) var(--menu-mg-block-end);
      margin-inline: var(--menu-mg-inline-start) var(--menu-mg-inline-end);
      @media (max-width: 991px) {
        margin-block: var(--menu-mg-block-start-mb) var(--menu-mg-block-end-mb);
        margin-inline: var(--menu-mg-inline-start-mb) var(--menu-mg-inline-end-mb);
        justify-content: var(--menu-box-justify-content-mb);
      }

      .blck-menu-content {
        display: flex;
        flex-direction: column;
        align-items: var(--menu-box-justify-content);
        width: var(--menu-box-width);
        padding-block: var(--menu-pd-block-start) var(--menu-pd-block-end);
        padding-inline: var(--menu-pd-inline-start) var(--menu-pd-inline-end);
        @media (max-width: 991px) {
          padding-block: var(--menu-pd-block-start-mb) var(--menu-pd-block-end-mb);
          padding-inline: var(--menu-pd-inline-start-mb) var(--menu-pd-inline-end-mb);
          align-items: var(--menu-box-justify-content-mb);
        }

        &:not(:has(.blck-menu-label)) {
          .blck-menu-item:first-child .blck-menu-item-link {
            padding-block-start: 0;

            @media (max-width: 991px) {
              padding-block-start: 0;
            }
          }
        }

        .blck-menu-label {
          width: fit-content;
          color: var(--label-color-normal);
          text-align: var(--menu-item-text-align);
          margin-block-end: var(--label-margin-bottom);
          @media (max-width: 991px) {
            margin-block-end: var(--label-margin-bottom-mb);
            text-align: var(--menu-item-text-align-mb);
          }
        }

        .blck-menu-list-item {
          width: 100%;
          display: flex;
          flex-wrap: wrap;
          flex-direction: var(--menu-item-direction);
          justify-content: var(--menu-box-justify-content);
          gap: var(--menu-item-gap);
          @media (max-width: 991px) {
            gap: var(--menu-item-gap-mb);
            justify-content: var(--menu-box-justify-content-mb);
          }
          &.menu-hover-inactive-wrap {
            .menu-hover-inactive-item {
              transition: opacity var(--trans-duration) var(--trans-easing);
            }
            @media (hover: hover) {
              &:has(.menu-hover-inactive-item:hover) {
                .menu-hover-inactive-item:not(:hover) {
                  .blck-menu-item-link-label {
                    opacity: 0.5;
                  }
                }
              }
            }
          }
          .blck-menu-item {
            flex-shrink: 0;
            .blck-menu-item-link {
              color: var(--typo-color-normal);
              display: flex;
              gap: var(--menu-item-gap);
              width: var(--menu-item-width);
              flex-direction: var(--menu-item-direction);
              align-items: var(--menu-align-items, stretch);
              width: 100%;
              text-align: var(--menu-item-text-align);
              text-decoration: none;
              cursor: pointer;
              padding-block-start: var(--menu-item-padding-block);
              @media (max-width: 991px) {
                gap: var(--menu-item-gap-mb);
                padding-block-start: var(--menu-item-padding-block-mb);
                align-items: var(--menu-align-items-mb, stretch);
                text-align: var(--menu-item-text-align-mb);
              }

              .blck-menu-item-link-label {
                width: var(--link-item-width);
                display: block;
                background-repeat: no-repeat;
                background-position: bottom left;
                background: linear-gradient(var(--color-foreground_heading) 0 0) calc(100% - var(--p, 0%)) /
                  var(--p, 0%) no-repeat;
                background-position-y: bottom;
                background-size: var(--p, 0%) var(--line-width, var(--1px));
                padding-bottom: var(--line-width, var(--1px));
                transition: background-size var(--trans-duration), background-position 0s,
                  opacity var(--trans-duration) var(--trans-easing);
                z-index: 1;
              }

              .blck-menu-item-divider {
                display: block;
                width: var(--divider-width);
                height: var(--divider-height);
                background: var(--divider-background);
                background-size: var(--divider-background-size);
                position: relative;
                margin-block-start: var(--menu-item-padding-block);
                @media (max-width: 991px) {
                  margin-block-start: var(--menu-item-padding-block-mb);
                }
                .blck-menu-item-divider-inner {
                  position: absolute;
                  bottom: 0;
                  left: 0;
                  display: var(--divider-inner-display);
                  width: 100%;
                  height: 100%;
                  background: var(--divider-inner-background);
                  background-size: var(--divider-background-size);
                  clip-path: inset(0 100% 0 0);
                  transition: clip-path var(--trans-duration) var(--trans-easing);
                }
              }

              @media (hover: hover) {
                &:hover {
                  .blck-menu-item-link-label {
                    --p: 100%;
                    background-size: 100% var(--line-width, var(--1px));
                    transition: background-size var(--trans-duration), background-position 0s;
                  }

                  .blck-menu-item-divider {
                    .blck-menu-item-divider-inner {
                      clip-path: inset(0 0 0 0);
                    }
                  }
                }
              }
            }
          }
        }
      }
    }
  }
/* END_SNIPPET:panel-custom-menu */

/* START_SNIPPET:panel-custom-section (INDEX:292) */
.panel-custom-section {
    padding-inline: var(--sc-mg-inline);
    @media (max-width: 991px) {
      padding-inline: var(--sc-mg-inline-mb);
    }
    .sc-custom-inner {
      contain: layout style var(--sc-overflow-contain);
      border-radius: var(--sc-radius);
      width: 100%;
      max-width: var(--content-width-full);
      margin-inline: auto;
      margin-block: var(--sc-mg-block) var(--sc-mg-block);
      @media (max-width: 991px) {
        margin-block: var(--sc-mg-block-mb) var(--sc-mg-block-mb);
      }
    }
    .sc-custom-content {
      padding-block: var(--sc-pd-block-start) var(--sc-pd-block-end);
      padding-inline: var(--sc-pd-inline-start) var(--sc-pd-inline-end);
      @media (max-width: 991px) {
        padding-block: var(--sc-pd-block-start-mb) var(--sc-pd-block-end-mb);
        padding-inline: var(--sc-pd-inline-start-mb) var(--sc-pd-inline-end-mb);
      }
    }
    .sc-custom-bg {
      background: var(--sc-background);
      background-repeat: no-repeat;
    }
    .sc-custom-content {
      display: flex;
      justify-content: stretch;
      min-height: var(--sc-content-height);
      @media (max-width: 991px) {
        min-height: var(--sc-content-height-mb);
      }
      & > * {
        width: 100%;
      }
    }
  }
/* END_SNIPPET:panel-custom-section */

/* START_SNIPPET:panel-custom-slideshow-item (INDEX:293) */
.panel-slide-item {
    position: relative;
    width: 100%;
    height: 100%;
    .slide-item-inner {
      contain: paint;
      position: relative;
      border-radius: var(--ss-radius);
    }
    .slide-item-content {
      padding-block: var(--si-pd-block-start) var(--si-pd-block-end);
      padding-inline: var(--si-pd-inline-start) var(--si-pd-inline-end);
      @media (max-width: 991px) {
        padding-block: var(--si-pd-block-start-mb) var(--si-pd-block-end-mb);
        padding-inline: var(--si-pd-inline-start-mb) var(--si-pd-inline-end-mb);
      }
    }
    .slide-item-content {
    }
    .slide-item-content-inner {
      width: 100%;
      height: 100%;
      display: flex;
      flex-direction: var(--si-direction);
      justify-content: var(--si-justify-content);
      align-items: var(--si-alignment);
      gap: var(--si-flex-gap);
      @media (max-width: 991px) {
        flex-direction: var(--si-direction-mb);
        align-items: var(--si-alignment-mb);
        justify-content: var(--si-justify-content-mb);
        gap: var(--si-flex-gap-mb);
      }
    }
    .slide-item-bg {
      filter: var(--si-filter);
      border-radius: var(--ss-radius);
      background: var(--si-background);
    }
  }
/* END_SNIPPET:panel-custom-slideshow-item */

/* START_SNIPPET:panel-custom-spam-detection-disclaimer (INDEX:294) */
.spam-detection-disclaimer {
    min-width: 1px;
    width: var(--sdd-size-width);
    max-width: var(--sdd-size-max-width);
    @media (max-width: 991px) {
      width: var(--sdd-size-width-mb);
      max-width: var(--sdd-size-max-width-mb);
    }
    .spam-detection-disclaimer-inner {
      width: 100%;
    }
    .spam-detection-disclaimer-content {
      padding-block: var(--sdd-pd-block-start) var(--sdd-pd-block-end);
      padding-inline: var(--sdd-pd-inline-start) var(--sdd-pd-inline-end);
      @media (max-width: 991px) {
        padding-block: var(--sdd-pd-block-start-mb) var(--sdd-pd-block-end-mb);
        padding-inline: var(--sdd-pd-inline-start-mb) var(--sdd-pd-inline-end-mb);
      }
      .spam-detection-disclaimer-content-inner {
        text-align: var(--sdd-text-align);
        @media (max-width: 991px) {
          text-align: var(--sdd-text-align-mb);
        }
      }
    }
  }
/* END_SNIPPET:panel-custom-spam-detection-disclaimer */

/* START_SNIPPET:panel-custom-store-locator (INDEX:295) */
.store-locator {
    &[data-layout-type='split'][data-visual-preview-mode] {
      width: max(100%, 50rem);
      max-width: 120rem;
    }
    width: var(--sl-size-width);
    max-width: var(--sl-size-max-width);
    display: flex;
    align-items: stretch;

    @media (max-width: 991px) {
      width: var(--sl-size-width-mb);
      max-width: var(--sl-size-max-width-mb);
    }

    .store-locator-inner {
      overflow: hidden;
      width: 100%;
      position: relative;
      margin-block: var(--sl-mg-block-start) var(--sl-mg-block-end);
      margin-inline: var(--sl-mg-inline-start) var(--sl-mg-inline-end);
      @media (max-width: 991px) {
        margin-block: var(--sl-mg-block-start-mb) var(--sl-mg-block-end-mb);
        margin-inline: var(--sl-mg-inline-start-mb) var(--sl-mg-inline-end-mb);
      }

      .store-locator-content {
        width: 100%;
        height: 100%;
        padding-block: var(--sl-pd-block-start) var(--sl-pd-block-end);
        padding-inline: var(--sl-pd-inline-start) var(--sl-pd-inline-end);
        @media (max-width: 991px) {
          padding-block: var(--sl-pd-block-start-mb) var(--sl-pd-block-end-mb);
          padding-inline: var(--sl-pd-inline-start-mb) var(--sl-pd-inline-end-mb);
        }

        .store-locator-content-inner {
          width: 100%;
          height: 100%;
          display: var(--sl-content-inner-display);
          flex-direction: var(--sl-content-inner-media-position);
          grid-template-columns: var(--sl-content-inner-grid-columns);
          grid-template-rows: 1fr;
          column-gap: var(--sl-flex-gap);

          @media (max-width: 991px) {
            display: flex;
            grid-template-columns: unset;
            grid-template-rows: unset;
            row-gap: var(--sl-flex-gap-mb);
            flex-direction: var(--sl-content-inner-media-position-mb);
            column-gap: 0;
          }

          .store-locator-media {
            width: var(--sl-content-inner-media-size-width);
            max-width: var(--sl-content-inner-media-size-max-width);
            grid-area: var(--sl-content-inner-media-area);
            aspect-ratio: var(--sl-content-media-aspect-ratio);
            border-radius: var(--sl-radius);
            overflow: hidden;
            position: relative;
            z-index: 1;
            @media (max-width: 991px) {
              aspect-ratio: var(--sl-content-media-aspect-ratio-mb);
              max-width: var(--sl-content-inner-media-size-max-width-mb);
              width: var(--sl-content-inner-media-size-width-mb);
              grid-area: var(--sl-content-inner-media-area-mb);
            }

            .store-locator-map {
              width: 100%;
              height: 100%;
              position: relative;
              display: block;

              iframe {
                position: absolute;
                top: 0;
                left: 0;
                bottom: 0;
                right: 0;
                width: 100%;
                height: 100%;
              }
            }

            img {
              width: 100%;
              height: 100%;
              object-fit: cover;
              object-position: center;
            }
          }

          .store-locator-info {
            width: 100%;
            display: var(--sl-content-inner-info-display);
            justify-content: var(--sl-content-inner-info-justify-content);
            align-items: var(--sl-content-inner-info-align-items);
            grid-area: var(--sl-content-inner-info-area);
            border-radius: var(--sl-radius);
            overflow: hidden;
            padding-inline: var(--sl-content-inner-info-padding-inline);
            padding-block: var(--sl-content-inner-info-padding-block);
            position: relative;
            z-index: 2;
            pointer-events: none;
            > * {
              pointer-events: auto;
            }
            @media (max-width: 991px) {
              display: block;
              width: 100%;
              height: auto;
              grid-area: var(--sl-content-inner-info-area-mb);
              padding-inline: var(--sl-content-inner-info-padding-inline-mb);
              padding-block: var(--sl-content-inner-info-padding-block-mb);
            }
          }
        }
      }
    }
  }
/* END_SNIPPET:panel-custom-store-locator */

/* START_SNIPPET:panel-custom-text (INDEX:296) */
.panel-custom-text {
    min-width: 1px;
    min-height: fit-content;
    width: var(--text-size-width);
    max-width: var(--text-size-max-width);
    height: fit-content;
    text-align: var(--text-text-align);
    @media (max-width: 991px) {
      width: var(--text-size-width-mb);
      text-align: var(--text-text-align-mb);
      max-width: var(--text-size-max-width-mb);
    }
    .text-custom-inner:not([force-typo-color]) {
      &,
      p,
      ul,
      ol,
      blockquote {
        color: var(--typo-color-normal);
        em {
          color: var(--typo-color-highlight);
        }
        a,
        button {
          transition: color var(--trans-duration) var(--trans-easing);
          color: var(--typo-color-link);
          &:hover {
            color: var(--typo-color-link-hover);
          }
        }
        a:not(.inline-button-link) {
          transition: color var(--trans-duration) var(--trans-easing);
        }
      }
    }
    .text-custom-content {
      padding-block: var(--text-pd-block-start) var(--text-pd-block-end);
      padding-inline: var(--text-pd-inline-start) var(--text-pd-inline-end);
      @media (max-width: 991px) {
        padding-block: var(--text-pd-block-start-mb) var(--text-pd-block-end-mb);
        padding-inline: var(--text-pd-inline-start-mb) var(--text-pd-inline-end-mb);
      }
      .text-custom-content-inner {
        p,
        ul,
        ol,
        h1,
        h2,
        h3,
        h4,
        h5,
        h6 {
          margin-block: var(--typo-paragraph-spacing);
          &:first-child {
            margin-block-start: 0;
          }
          &:last-child {
            margin-block-end: 0;
          }
          @media (max-width: 991px) {
            margin-block: var(--typo-paragraph-spacing-mb);
            &:first-child {
              margin-block-start: 0;
            }
            &:last-child {
              margin-block-end: 0;
            }
          }
        }
      }
    }
  }

  [data-link-hover-style='classic'] .text-custom-inner a:not(.inline-button-link),
  .text-custom-inner[data-link-hover-style='classic'] a:not(.inline-button-link) {
    position: relative;
    display: inline-block;

    &::before {
      content: '';
      position: absolute;
      bottom: 0;
      left: 0;
      width: 100%;
      height: var(--1px);
      background-color: var(--typo-color-link);
      transform: scaleX(0);
      transform-origin: right;
      transition: transform var(--trans-duration) var(--trans-easing),
        background-color var(--trans-duration) var(--trans-easing);
    }

    &:hover {
      &::before {
        transform: scaleX(1);
        transform-origin: left;
        background-color: var(--typo-color-link-hover);
      }
    }
  }

  [data-link-hover-style='underline'] .text-custom-inner a:not(.inline-button-link),
  .text-custom-inner[data-link-hover-style='underline'] a:not(.inline-button-link) {
    position: relative;
    display: inline-block;

    &::before {
      content: '';
      position: absolute;
      bottom: 0;
      left: 0;
      width: 100%;
      height: var(--1px);
      background-color: var(--typo-color-link);
      transform: scaleX(0);
      transform-origin: right;
      transition: transform var(--trans-duration) var(--trans-easing),
        background-color var(--trans-duration) var(--trans-easing);
    }

    &::after {
      content: '';
      position: absolute;
      bottom: 0;
      left: 0;
      width: 100%;
      height: var(--1px);
      background-color: var(--typo-color-link);
      transform: scaleX(1);
      transform-origin: left;
      transition: transform var(--trans-duration) var(--trans-easing),
        background-color var(--trans-duration) var(--trans-easing);
      transition-delay: var(--trans-duration);
    }

    &:hover {
      &::before {
        transform: scaleX(1);
        transform-origin: left;
        background-color: var(--typo-color-link-hover);
        transition-delay: var(--trans-duration);
      }
      &::after {
        transform: scaleX(0);
        transform-origin: right;
        background-color: var(--typo-color-link-hover);
        transition-delay: 0s;
      }
    }
  }
/* END_SNIPPET:panel-custom-text */

/* START_SNIPPET:panel-custom-title (INDEX:297) */
.panel-custom-title {
    min-width: 1px;
    min-height: fit-content;
    width: var(--title-size-width);
    max-width: var(--title-size-max-width);
    height: fit-content;
    text-align: var(--title-text-align);
    @media (max-width: 991px) {
      width: var(--title-size-width-mb);
      text-align: var(--title-text-align-mb);
      max-width: var(--title-size-max-width-mb);
    }
    .title-custom-inner {
      color: var(--typo-color-normal);
      em {
        color: var(--typo-color-highlight);
      }
      a,
      button {
        transition: color var(--trans-duration) var(--trans-easing);
        color: var(--typo-color-link);
        &:hover {
          color: var(--typo-color-link-hover);
        }
      }
      a:not(.inline-button-link) {
        transition: color var(--trans-duration) var(--trans-easing);
      }
    }
    .title-custom-content {
      padding-block: var(--title-pd-block-start) var(--title-pd-block-end);
      padding-inline: var(--title-pd-inline-start) var(--title-pd-inline-end);
      @media (max-width: 991px) {
        padding-block: var(--title-pd-block-start-mb) var(--title-pd-block-end-mb);
        padding-inline: var(--title-pd-inline-start-mb) var(--title-pd-inline-end-mb);
      }
      .title-custom-content-inner {
        p,
        ul,
        ol,
        h1,
        h2,
        h3,
        h4,
        h5,
        h6 {
          margin-block: var(--typo-paragraph-spacing);
          @media (max-width: 991px) {
            margin-block: var(--typo-paragraph-spacing-mb);
          }
          &:first-child {
            margin-block-start: 0;
          }
          &:last-child {
            margin-block-end: 0;
          }
        }
      }
    }
  }
  [data-link-hover-style='classic'] .title-custom-inner a:not(.inline-button-link),
  .title-custom-inner[data-link-hover-style='classic'] a:not(.inline-button-link) {
    position: relative;
    display: inline-block;

    &::before {
      content: '';
      position: absolute;
      bottom: 0;
      left: 0;
      width: 100%;
      height: var(--1px);
      background-color: var(--typo-color-link);
      transform: scaleX(0);
      transform-origin: right;
      transition: transform var(--trans-duration) var(--trans-easing),
        background-color var(--trans-duration) var(--trans-easing);
    }

    &:hover {
      &::before {
        transform: scaleX(1);
        transform-origin: left;
        background-color: var(--typo-color-link-hover);
      }
    }
  }

  [data-link-hover-style='underline'] .title-custom-inner a:not(.inline-button-link),
  .title-custom-inner[data-link-hover-style='underline'] a:not(.inline-button-link) {
    position: relative;
    display: inline-block;

    &::before {
      content: '';
      position: absolute;
      bottom: 0;
      left: 0;
      width: 100%;
      height: var(--1px);
      background-color: var(--typo-color-link);
      transform: scaleX(0);
      transform-origin: right;
      transition: transform var(--trans-duration) var(--trans-easing),
        background-color var(--trans-duration) var(--trans-easing);
    }

    &::after {
      content: '';
      position: absolute;
      bottom: 0;
      left: 0;
      width: 100%;
      height: var(--1px);
      background-color: var(--typo-color-link);
      transform: scaleX(1);
      transform-origin: left;
      transition: transform var(--trans-duration) var(--trans-easing),
        background-color var(--trans-duration) var(--trans-easing);
      transition-delay: var(--trans-duration);
    }

    &:hover {
      &::before {
        transform: scaleX(1);
        transform-origin: left;
        background-color: var(--typo-color-link-hover);
        transition-delay: var(--trans-duration);
      }
      &::after {
        transform: scaleX(0);
        transform-origin: right;
        background-color: var(--typo-color-link-hover);
        transition-delay: 0s;
      }
    }
  }
/* END_SNIPPET:panel-custom-title */

/* START_SNIPPET:panel-custom-topbar (INDEX:298) */
.panel-custom-topbar {
    padding-inline: var(--topbar-mg-inline-start) var(--topbar-mg-inline-end);
    @media (max-width: 991px) {
      padding-inline: var(--topbar-mg-inline-start-mb) var(--topbar-mg-inline-end-mb);
    }
    .topbar-custom-inner {
      border-radius: var(--topbar-radius);
      width: 100%;
      max-width: var(--topbar-content-width);
      margin-inline: auto;
      margin-block: var(--topbar-mg-block-start) var(--topbar-mg-block-end);
      @media (max-width: 991px) {
        margin-block: var(--topbar-mg-block-start-mb) var(--topbar-mg-block-end-mb);
      }
    }
    .topbar-custom-content {
      padding-block: var(--topbar-pd-block-start) var(--topbar-pd-block-end);
      padding-inline: var(--topbar-pd-inline-start) var(--topbar-pd-inline-end);
      @media (max-width: 991px) {
        padding-block: var(--topbar-pd-block-start-mb) var(--topbar-pd-block-end-mb);
        padding-inline: var(--topbar-pd-inline-start-mb) var(--topbar-pd-inline-end-mb);
      }
    }
    .topbar-custom-bg {
      background: var(--topbar-background);
      background-repeat: no-repeat;
    }
    .topbar-custom-content {
      min-height: fit-content;
    }
    .topbar-custom-content-inner {
      width: 100%;
      display: flex;
      flex-direction: row;
      justify-content: var(--topbar-justify-content);
      align-items: var(--topbar-align-items);
      gap: var(--topbar-flex-gap);
      @media (max-width: 991px) {
        justify-content: var(--topbar-justify-content-mb);
        align-items: var(--topbar-align-items-mb);
        gap: var(--topbar-flex-gap-mb);
      }
    }
    .topbar-close-btn {
      z-index: 3;
      position: absolute;
      top: 50%;
      right: 0.5rem;
      transform: translateY(-50%);
      display: flex;
      align-items: center;
      justify-content: center;
      width: var(--topbar-close-btn-size);
      height: var(--topbar-close-btn-size);
      padding: 0.25rem;
      border-radius: var(--button-corner-radius);
      background-color: var(--button-boxed-bg-color);
      border: var(--button-boxed-border);
      cursor: pointer;
      transition: all var(--trans-duration) var(--trans-easing);

      &:hover {
        .topbar-close-btn-inner {
          color: var(--color-text-label);
        }
      }
      .topbar-close-btn-inner {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 1rem;
        height: 1rem;
        color: var(--color-text-paragraph);
      }
    }
  }
/* END_SNIPPET:panel-custom-topbar */

/* START_SNIPPET:panel-custom-utility-header (INDEX:299) */
.utility-header {
    min-width: 1px;
    min-height: 1px;
    .utility-header-content-inner {
      width: 100%;
      height: 100%;
      display: flex;
      align-items: center;
      column-gap: var(--utilities-gap);
    }
    .header-cart-icon {
      display: flex;
      align-items: center;
      column-gap: 0.25rem;
      .cart-content-inner {
        width: 100%;
        height: 100%;
      }
      .header-cart-icon-filled {
        position: relative;
      }
      .dot {
        position: absolute;
        right: calc(var(--1px) * -1);
        top: calc(var(--1px) * -1);
        min-width: 0.44rem;
        min-height: 0.44rem;
        background-color: var(--color-primary);
        border-radius: var(--radius-new-pill);
        color: white;

        display: flex;
        align-items: center;
        justify-content: center;
      }
    }
    &[data-utility-style='icon'][data-icon-box='classic'] .dot[data-type='number'] {
      top: calc(-0.8125rem / 2);
      left: calc(100% - 0.8125rem / 2);
      min-width: 0.8125rem;
      width: fit-content;
      height: 0.8125rem;
      padding-inline: 0.25rem;
      text-wrap: nowrap;
    }

    &[data-icon-box='boxed'] .dot[data-type='number'] > * {
      display: none;
    }
    .cart-count {
      color: var(--color-text-note);
      margin-left: 0.3em;
      font-size: max(0.875rem, calc(1em * 0.875));
      vertical-align: baseline;
      position: relative;
      top: -0.2em;
      @media (max-width: 991px) {
        font-size: max(0.875rem, calc(1em * 0.875));
      }
    }
  }
/* END_SNIPPET:panel-custom-utility-header */

/* START_SNIPPET:panel-custom-video (INDEX:300) */
.vid-block {
    width: var(--vid-size-width);
    max-width: var(--vid-size-max-width);
    @media (max-width: 991px) {
      width: var(--vid-size-width-mb);
      max-width: var(--vid-size-max-width-mb);
    }
    .vid-block-inner {
      overflow: hidden;
      border-radius: var(--vid-radius);
      margin-block: var(--vid-mg-block-start) var(--vid-mg-block-end);
      margin-inline: var(--vid-mg-inline-start) var(--vid-mg-inline-end);
      position: relative;
      @media (max-width: 991px) {
        margin-block: var(--vid-mg-block-start-mb) var(--vid-mg-block-end-mb);
        margin-inline: var(--vid-mg-inline-start-mb) var(--vid-mg-inline-end-mb);
      }

      .vid-block-content {
        position: relative;
        padding-block: var(--vid-pd-block-start) var(--vid-pd-block-end);
        padding-inline: var(--vid-pd-inline-start) var(--vid-pd-inline-end);
        aspect-ratio: var(--media-aspect-ratio);
        height: var(--media-height, auto);
        filter: var(--vid-filter);
        @media (max-width: 991px) {
          padding-block: var(--vid-pd-block-start-mb) var(--vid-pd-block-end-mb);
          padding-inline: var(--vid-pd-inline-start-mb) var(--vid-pd-inline-end-mb);
          aspect-ratio: var(--media-aspect-ratio-mb, var(--media-aspect-ratio));
        }

        custom-video {
          display: contents;
          &.loaded {
            --media-position: absolute;
            --media-top: 0;
            --media-left: 0;
            --media-height: 100%;
          }
        }

        iframe,
        video {
          width: 100%;
          height: 100%;
          object-fit: cover;
          object-position: center;
        }

        .vid-block-cover-image {
          position: var(--media-position, unset);
          top: var(--media-top);
          left: var(--media-left);
          width: 100%;
          height: 100%;
          object-fit: cover;
          object-position: center;
          z-index: 1;
          cursor: pointer;
          img,
          placeholder-image {
            position: var(--media-position);
            top: var(--media-top);
            left: var(--media-left);
            object-fit: cover;
            object-position: center;
            z-index: 1;
            cursor: pointer;
            svg {
              width: 100%;
              height: 100%;
              object-fit: cover;
              object-position: center;
              z-index: 1;
              cursor: pointer;
            }
          }
        }

        .vid-block-controls {
          position: absolute;
          inset: 0;
          z-index: 1;
          display: flex;
          align-items: center;
          justify-content: center;
          cursor: pointer;
          .vid-block-controls-buttons {
            display: grid;
            grid-template-columns: minmax(0, 1fr);
            transition: opacity var(--trans-duration) var(--trans-easing);
            &.force-hide {
              opacity: 0;
              pointer-events: none;
            }
            & > * {
              grid-area: 1 / 1 / 2 / 2;
            }
          }
        }
        .vid-block-controls-play,
        .vid-block-controls-pause {
          opacity: 0;
          pointer-events: none;
          transition: opacity var(--trans-duration) var(--trans-easing);
          &.show {
            opacity: 1;
            pointer-events: auto;
            cursor: pointer;
          }
        }
      }
    }
  }
/* END_SNIPPET:panel-custom-video */

/* START_SNIPPET:panel-default-container (INDEX:301) */
.panel-default-container {
    width: 100%;
    max-width: max(var(--ctn-content-width), var(--ctn-content-maxwidth));
    margin-inline: auto;
    .ctn-default-content {
      display: flex;
      justify-content: stretch;
      min-height: var(--ctn-content-height);
      @media (max-width: 991px) {
        min-height: var(--ctn-content-height-mb);
      }
    }
    .ctn-default-content-inner {
      width: 100%;
      display: flex;
      flex-direction: var(--ctn-direction);
      justify-content: var(--ctn-justify-content);
      align-items: var(--ctn-alignment);
      gap: var(--ctn-flex-gap);
      @media (max-width: 991px) {
        flex-direction: var(--ctn-direction-mb);
        justify-content: var(--ctn-justify-content-mb);
        align-items: var(--ctn-alignment-mb);
        gap: var(--ctn-flex-gap-mb);
      }
    }
    .ctn-default-bg {
      background: var(--ctn-background);
      background-repeat: no-repeat;
    }
  }
/* END_SNIPPET:panel-default-container */

/* START_SNIPPET:panel-default-section (INDEX:302) */
.panel-default-section {
    padding-inline: var(--sc-mg-inline);
    @media (max-width: 991px) {
      padding-inline: var(--sc-mg-inline-mb);
    }
    .sc-default-inner {
      contain: layout style var(--sc-overflow-contain);
      border-radius: var(--sc-radius);
      width: 100%;
      max-width: var(--content-width-full);
      margin-inline: auto;
      margin-block: var(--sc-mg-block) var(--sc-mg-block);
      @media (max-width: 991px) {
        margin-block: var(--sc-mg-block-mb) var(--sc-mg-block-mb);
      }
    }
    .sc-default-content {
      padding-block: var(--sc-pd-block-start) var(--sc-pd-block-end);
      padding-inline: var(--sc-pd-inline-start) var(--sc-pd-inline-end);
      @media (max-width: 991px) {
        padding-block: var(--sc-pd-block-start-mb) var(--sc-pd-block-end-mb);
        padding-inline: var(--sc-pd-inline-start-mb) var(--sc-pd-inline-end-mb);
      }
    }
    .sc-default-bg {
      background: var(--sc-background);
      background-repeat: no-repeat;
    }
    .sc-default-content {
      min-height: var(--sc-content-height);
      @media (max-width: 991px) {
        min-height: var(--sc-content-height-mb);
      }
    }
  }
/* END_SNIPPET:panel-default-section */

/* START_SNIPPET:panel-email-form (INDEX:303) */
.panel-email-form {
    width: var(--ef-size-width);
    max-width: var(--ef-size-max-width);
    @media (max-width: 991px) {
      width: 100%;
      max-width: unset;
    }
    .email-form-inner {
      margin-block: var(--ef-mg-block-start) var(--ef-mg-block-end);
      margin-inline: var(--ef-mg-inline-start) var(--ef-mg-inline-end);
      position: relative;
      @media (max-width: 991px) {
        margin-block: var(--ef-mg-block-start-mb) var(--ef-mg-block-end-mb);
        margin-inline: var(--ef-mg-inline-start-mb) var(--ef-mg-inline-end-mb);
      }
    }
    .email-form-content {
      padding-block: var(--ef-pd-block-start) var(--ef-pd-block-end);
      padding-inline: var(--ef-pd-inline-start) var(--ef-pd-inline-end);
      @media (max-width: 991px) {
        padding-block: var(--ef-pd-block-start-mb) var(--ef-pd-block-end-mb);
        padding-inline: var(--ef-pd-inline-start-mb) var(--ef-pd-inline-end-mb);
      }
    }
    .email-form-content-inner {
      width: 100%;
      height: 100%;
    }
    .email-form-inputs-form {
      display: flex;
      flex-direction: column;
    }
    .email-form-inputs-inner {
      display: flex;
      width: 100%;
      height: var(--email-form-input-height);
      justify-content: flex-start;
      align-items: flex-end;
      gap: 0.5rem;
      @media (max-width: 991px) {
        height: var(--email-form-input-height-mb);
      }
    }
    .email-form-inputs-inner-wrapper {
      display: flex;
      flex-direction: var(--ef-direction);
      align-items: stretch;
      gap: var(--ef-flex-gap);
      @media (max-width: 991px) {
        gap: var(--ef-flex-gap-mb);
        flex-direction: var(--ef-direction-mb);
      }
    }
    .email-form-input-group {
      height: 100%;
      position: relative;
      display: var(--email-form--input-group-display);
      flex-direction: column;
      gap: 0.5rem;
      flex: auto;
    }
    .email-form-btn-inner {
      display: flex;
      align-items: center;
      justify-content: center;
      position: absolute;
      top: var(--email-form-button-inner-top, calc(-1 * var(--1px)));
      right: var(--email-form-button-right-offset);
      bottom: var(--email-form-button-inner-bottom, calc(-1 * var(--1px)));
      z-index: 4;
      @media (max-width: 991px) {
        right: var(--email-form-button-right-offset-mb);
        top: var(--email-form-button-inner-top-mb, calc(-1 * var(--1px)));
        bottom: var(--email-form-button-inner-bottom-mb, calc(-1 * var(--1px)));
      }
    }
    .email-form-btn-outer {
      align-self: flex-end;
      height: var(--button-height);
      width: var(--button-width);
      @media (max-width: 991px) {
        height: var(--button-height-mb);
        width: var(--button-width-mb);
      }
    }
    .email-form-actions {
      margin-top: 1rem;
    }
    .email-form-checkbox-wrapper {
      display: flex;
      align-items: flex-start;
      gap: 0.5rem;

      /* Checkbox styling */
      .email-form-checkbox-input {
        width: 0.875rem;
        height: 0.875rem;
        margin: 0;
        opacity: 0;
        position: absolute;
        cursor: pointer;
        font-size: var(--typo-description-size);
        margin-block: calc((var(--typo-description-lh) - 0.875rem) / 2);
        &:focus-visible + .checkbox-icon-wrapper .checkbox-icon {
          outline: 2px solid var(--color-keyboard-focus-visible);
          outline-offset: 2px;
        }
        @media (max-width: 991px) {
          font-size: var(--typo-description-size-mb);
          margin-block: calc((var(--typo-description-lh-mb) - 0.875rem) / 2);
        }
      }

      .checkbox-icon-wrapper {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        height: var(--checkbox-lh);
        cursor: pointer;
        pointer-events: none;
        margin-block: 1px;
      }
      .checkbox-icon {
        min-width: 0.875rem;
        width: 0.875rem;
        height: 0.875rem;
        border: 1px solid var(--color-foreground_15);
        border-radius: 0.1875rem;
        background: transparent;
        position: relative;
        transition: background-color var(--trans-duration) var(--trans-easing),
          border-color var(--trans-duration) var(--trans-easing);

        .checkbox-checked-icon {
          width: 100%;
          height: 100%;
          color: var(--color-background);
          opacity: 0;
          position: absolute;
          transition: opacity var(--trans-duration) var(--trans-easing);
        }
      }

      .email-form-checkbox-label {
        cursor: pointer;
        line-height: 1rem;
      }

      .email-form-checkbox-input:checked + .checkbox-icon-wrapper .checkbox-icon {
        background-color: var(--color-foreground);
        border-color: var(--color-foreground_40);

        .checkbox-checked-icon {
          opacity: 1;
        }
      }

      &:hover:not(:has(.email-form-description a:hover)) {
        .email-form-checkbox-input:hover:not(:disabled) + .checkbox-icon-wrapper .checkbox-icon {
          border-color: var(--color-foreground_40);
        }
      }

      .email-form-checkbox-input.is-error + .checkbox-icon-wrapper .checkbox-icon {
        border-color: var(--color-status_error);
        animation: shake 0.3s ease-in-out;
      }

      .email-form-checkbox-label.is-error {
        color: var(--color-status_error);
      }

      @keyframes shake {
        0%,
        100% {
          transform: translateX(0);
        }
        25% {
          transform: translateX(-4px);
        }
        75% {
          transform: translateX(4px);
        }
      }

      .checkbox {
        color: initial;
        * {
          color: currentColor;
        }
      }
    }
  }
/* END_SNIPPET:panel-email-form */

/* START_SNIPPET:panel-featured-product (INDEX:304) */
.panel-featured-product {
    width: 100%;

    .featured-product-inner {
      position: relative;
      border-radius: var(--featured-radius, 0px);
      overflow: hidden;
    }

    .featured-product-content {
      padding-block: var(--featured-pd-block-start, 0px) var(--featured-pd-block-end, 0px);
      padding-inline: var(--featured-pd-inline-start, 0px) var(--featured-pd-inline-end, 0px);
      @media (max-width: 991px) {
        padding-block: var(--featured-pd-block-start-mb, 0px) var(--featured-pd-block-end-mb, 0px);
        padding-inline: var(--featured-pd-inline-start-mb, 0px) var(--featured-pd-inline-end-mb, 0px);
      }
    }

    .featured-product-content-inner {
      display: grid;
      grid-template-columns: minmax(0px, 1fr) minmax(0px, 1fr);
      gap: var(--pid-flex-gap);
      @media (max-width: 991px) {
        gap: var(--pid-flex-gap-mb);
      }

      & > .shopify-app-block {
        grid-column: span 2;
        background-color: var(--info-background, transparent);
        border-radius: var(--info-radius, 0px);
        padding-inline: var(--info-pd-inline-start, 0px) var(--info-pd-inline-end, 0px);
        padding-block: var(--info-pd-block-start, 0px) var(--info-pd-block-end, 0px);

        &:before {
          content: '';
          display: var(--divider-display);
          width: 100%;
          height: 1px;
          background-color: var(--color-border-default);
          margin-block-end: var(--pid-flex-gap);
        }

        div:empty {
          display: none;
        }
      }
    }

    .featured-product-bg {
      border-radius: var(--featured-radius, 0px);
      background: var(--featured-background);
      background-repeat: no-repeat;
    }
  }
/* END_SNIPPET:panel-featured-product */

/* START_SNIPPET:panel-follow-on-shop (INDEX:305) */
.panel-follow-on-shop {
    padding-block: var(--block-pd-block-start) var(--block-pd-block-end);
    padding-inline: var(--block-pd-inline-start) var(--block-pd-inline-end);
    @media (max-width: 991px) {
      padding-block: var(--block-pd-block-start-mb) var(--block-pd-block-end-mb);
      padding-inline: var(--block-pd-inline-start-mb) var(--block-pd-inline-end-mb);
    }
  }
/* END_SNIPPET:panel-follow-on-shop */

/* START_SNIPPET:panel-header-v3 (INDEX:306) */
.header-logo,
  .header-utilities,
  .header-toggle {
    position: relative;
    z-index: 3;
  }
  .header-drawer-outer {
    position: relative;
    z-index: 1;
  }
  /* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
     GROUP 1 — OUTER WRAP + HEADER COMMON STYLES & STATES
     Covers: .header-v3-wrap positioning/transitions,
     all data-attribute states (transparent, position, hover),
     sticky + hidden states, inverse logo swap,
     and .header-v3 base structure + bg layer.
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

  .header-v3-wrap {
    --_t: var(--trans-duration) var(--trans-easing);
    --_t-fast: calc(var(--trans-duration) * 0.6) var(--trans-easing);
    position: var(--header-position);
    top: var(--header-top);
    left: var(--header-left);
    z-index: 999;
    width: 100%;
    padding-inline: var(--header-mg-inline);
    margin-block-start: var(--header-mg-block-start);
    transition: padding-inline var(--_t), transform var(--_t-fast);

    @media (max-width: 991px) {
      top: var(--header-top-mb);
      padding-inline: var(--header-mg-inline-mb);
      margin-block-start: var(--header-mg-block-start-mb);
    }

    .header-v3 .header-v3-bg-border {
      opacity: 1;
    }
    &.is-open,
    &.is-menu-open {
      .header-v3-bg-border {
        opacity: 0;
      }
    }
    /* ── State: transparent header — hide bg, reveal on open/hover/active ── */
    &[data-transparent='transparent'] {
      .header-v3 .header-v3-bg,
      .header-v3 .header-v3-bg-sticky {
        opacity: 0;
      }

      /* Mobile: force bg visible when drawer is open */
      @media (max-width: 991px) {
        &.is-open .header-v3 .header-v3-bg {
          opacity: 1;
        }
        /* If sticky + open, sticky bg overlaps */
        &.is-sticky.is-open .header-v3 .header-v3-bg-sticky {
          opacity: 1;
        }
      }

      /* Desktop: reveal bg when a dropdown or megamenu is active */
      &:has(.is-dropdown-active) .header-v3 .header-v3-bg,
      &:has(.megamenu-v2.active) .header-v3 .header-v3-bg,
      &:has(dropdown-localization-component.i18n-active) .header-v3 .header-v3-bg {
        opacity: 1;
      }
      /* If sticky + dropdown, sticky bg overlaps on top */
      &.is-sticky:has(.is-dropdown-active) .header-v3 .header-v3-bg-sticky,
      &.is-sticky:has(.megamenu-v2.active) .header-v3 .header-v3-bg-sticky,
      &.is-sticky:has(dropdown-localization-component.i18n-active) .header-v3 .header-v3-bg-sticky {
        opacity: 1;
      }
    }

    /* ── State: hover — reveal bg ── */
    &[data-display-bg-when-hover='true']:hover {
      .header-v3 .header-v3-bg {
        opacity: 1;
      }
    }

    /* ── State: sticky — overlay sticky bg on top (opacity + transform = compositor) ── */
    &.is-sticky {
      padding-inline: 0px;

      @media (max-width: 991px) {
        padding-inline: 0px;
      }

      .header-v3 {
        .header-v3-inner {
          border-radius: 0px;
        }
        .header-v3-content:has(.has-megamenu.is-megamenu-active) .header-v3-divider {
          opacity: 1;
        }
        .header-v3-bg-border {
          opacity: 0;
          transform: scaleX(calc(1 / var(--_scale-x, 0.92)));
        }
        /* Sticky bg overlaps on top of normal bg */
        .header-v3-bg-sticky {
          opacity: 1;
          transform: scaleX(1);
        }
        .header-v3-bg {
          transform: scaleX(calc(1 / var(--_scale-x, 0.92)));
        }
      }

      /* Sub-state: sticky + hidden (slide up) */
      &.is-hidden {
        pointer-events: none;
        transform: translateY(-100%);
        transition: padding-inline var(--_t), transform var(--_t);
      }
    }

    /* ── State: drawer open (mobile) — controlled by JS ── */
    @media (max-width: 991px) {
      &.is-open .header-drawer {
        pointer-events: auto;
        .header-drawer-bg {
          opacity: 1;
          transform: translateY(0);
        }
        .header-drawer-inner {
          pointer-events: auto;
          opacity: 1;
        }
        .header-drawer-divider {
          opacity: 1;
        }
      }
      &.is-sticky .header-drawer {
        height: calc(100dvh - var(--header-minheight-mb));
        .header-drawer-bg {
          border-radius: 0px 0px 0px 0px;
        }
        .header-drawer-inner {
          padding-inline: var(--header-pd-inline-mb);
          padding-block-end: var(--header-pd-inline-mb);
        }
      }
    }

    &[data-sticky-shadow='true'] {
      .header-v3 .header-v3-bg-sticky {
        box-shadow: 0px 0.375rem 1.25rem 0px rgba(149, 157, 165, 0.1);
      }
    }
  }

  /* ── Header base structure ── */
  .header-v3 {
    width: 100%;
    max-width: max(var(--header-outer-width), var(--header-outer-maxwidth));
    margin-inline: auto;
    position: relative;
    contain: layout style;

    .header-v3-container {
      z-index: 4;
      position: relative;
      width: 100%;
      max-width: max(var(--header-content-width, 0px), var(--header-content-maxwidth));
      margin-inline: auto;
    }

    .header-v3-inner {
      position: relative;
      border-radius: var(--header-radius);
      transition: border-radius var(--_t);
    }

    .header-v3-content {
      padding-block: 0px;
      display: flex;
      min-height: var(--header-minheight);
      padding-inline: var(--header-pd-inline);
      transition: padding-inline var(--_t);
      position: relative;
      @media (max-width: 991px) {
        min-height: var(--header-minheight-mb);
        padding-inline: var(--header-pd-inline-mb);
      }
      .header-v3-divider {
        pointer-events: none;
        position: absolute;
        bottom: 0;
        left: var(--header-pd-inline);
        right: var(--header-pd-inline);
        background-color: var(--color-border-default);
        height: var(--1px);
        opacity: 0;
        transition: opacity var(--_t);
        @media (max-width: 991px) {
          opacity: 0;
          display: none;
        }
      }
    }

    .header-v3-content-inner {
      width: 100%;
      display: grid;
      align-items: center;
      gap: var(--header-gap);
      position: relative;

      @media (max-width: 991px) {
        gap: 0rem;
      }
    }

    /* Visual background layer — sits behind content via z-index:1 */
    .header-v3-bg {
      opacity: 1;
      pointer-events: none;
      position: absolute;
      z-index: 1;
      inset: 0;
      width: 100%;
      margin-inline: auto;
      max-width: var(--header-bg-maxwidth);
      border-radius: var(--header-radius);
      transition: opacity var(--_t), transform var(--_t);
      background-color: var(--color-background);
      .header-v3-bg-inner {
        position: absolute;
        top: 50%;
        left: 0px;
        width: 100%;
        height: calc(50% + 2px);
        background-color: var(--color-background);
        opacity: 0;
        transition: opacity var(--_t), transform var(--_t);
        transform-origin: top;
        display: none;
        @media (max-width: 991px) {
          display: block;
          .is-open & {
            opacity: 1;
          }
        }
      }
    }
    /* Sticky bg — overlaps on top of .header-v3-bg */
    .header-v3-bg-sticky {
      opacity: 0;
      pointer-events: none;
      position: absolute;
      z-index: 2;
      inset: 0;
      width: 100%;
      margin-inline: auto;
      max-width: 100%;
      border-radius: 0px;
      transform: scaleX(var(--_scale-x, 0.92));
      transition: opacity var(--_t), transform var(--_t);
      background-color: var(--color-background);
    }
    /* Border-only layer — sits above bg layers, inherits transparent color scheme */
    .header-v3-bg-border {
      pointer-events: none;
      position: absolute;
      z-index: 3;
      inset: 0;
      width: 100%;
      margin-inline: auto;
      max-width: var(--header-bg-maxwidth);
      border-radius: var(--header-radius);
      transition: opacity var(--_t), transform var(--_t);
      border-style: solid;
      border-color: var(--color-border-default);
      border-top-width: var(--header-border-top, 0px);
      border-bottom-width: var(--header-border-bottom, 0px);
      border-left-width: var(--header-border-left, 0px);
      border-right-width: var(--header-border-right, 0px);
      @media (max-width: 991px) {
        border-top-width: var(--header-border-top-mb, 0px);
        border-bottom-width: var(--header-border-bottom-mb, 0px);
        border-left-width: var(--header-border-left-mb, 0px);
        border-right-width: var(--header-border-right-mb, 0px);
      }
    }

    .header-utilities {
      display: flex !important;
      align-items: center;
      gap: 0.5rem;
    }
    .header-utilities-left,
    .header-utilities-right {
      display: flex;
      align-items: center;
      gap: 0.5rem;
    }
  }
  /* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
     GROUP 3 — DRAWER (mobile slide panel)
     Desktop: drawer + inner are display:contents so their
     children participate directly in the header grid.
     Mobile: drawer-outer is an absolute positioned container
     that clips and slides the drawer panel.
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

  .header-v3 {
    svg {
      transition: color var(--_t);
    }
    /* Desktop: invisible to layout — children are direct grid participants */
    .header-drawer-outer,
    .header-drawer {
      display: contents !important;
    }
    .header-drawer-inner {
      display: contents;
    }
    .header-drawer-divider,
    .header-drawer-bg {
      display: none;
    }

    /* Edge-left: split-layout desktop duplicate group — desktop only */
    .header-edge-left {
      display: none !important;
      @media (min-width: 992px) {
        display: flex !important;
        height: 100%;
      }
    }
  }

  @media (max-width: 991px) {
    .header-v3 {
      .header-drawer-outer {
        background-color: blue;
        display: block !important;
        position: absolute;
        width: calc(100% + var(--header-pd-inline-mb) * 2);
        margin-inline: calc(var(--header-pd-inline-mb) * -1);
        height: 0px;
        clip-path: inset(0 0 -100dvh 0);
        top: 0;
        left: 0;
      }

      .header-drawer {
        margin-top: calc(var(--header-minheight-mb));
        display: flex !important;
        flex-direction: column;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: calc(
          100dvh - var(--header-minheight-mb) - var(--header-mg-block-start-mb) - var(--header-mg-block-start-mb)
        );
        pointer-events: none;
        overflow: hidden;
        transition: height 0s linear var(--trans-duration);
        .header-drawer-bg {
          display: block;
          position: absolute;
          z-index: 1;
          inset: 0;
          border-radius: 0px 0px var(--header-radius) var(--header-radius);
          background: var(--color-background);
          transition: opacity var(--_t), transform var(--_t), border-radius 0s linear var(--trans-duration);
          opacity: 0;
          transform: translateY(-100%);
        }
        .header-drawer-inner {
          position: relative;
          z-index: 3;
          width: 100%;
          flex: 1;
          display: flex;
          flex-direction: column;
          padding-inline: var(--header-pd-inline-mb);
          padding-block-end: var(--header-pd-inline-mb);
          overflow-y: auto;
          -webkit-overflow-scrolling: touch;
          opacity: 0;
          transition: opacity var(--_t);
          -webkit-mask-image: -webkit-radial-gradient(white, black);
          pointer-events: none;
        }
        .header-drawer-divider {
          display: block;
          position: absolute;
          top: 0;
          left: var(--header-pd-inline-mb);
          right: var(--header-pd-inline-mb);
          background-color: var(--color-border-default);
          height: var(--1px);
          opacity: 0;
          z-index: 5;
          transition: opacity var(--_t);
        }
      }
    }
  }

  /* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
     GROUP 4 — CHILDREN CSS
     Styles for specific child blocks/components.
     Each sub-group is marked with the target file it should
     move to once that component owns its own stylesheet.
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

  /* ── [CHILD] Nav wrapper (→ _blck_menu_header_v2 / menu-header-v2.js) ── */
  .header-v3 {
    .header-nav {
      height: 100%;
      display: flex;
      align-items: center;
      gap: 0;
      @media (max-width: 991px) {
        height: auto;
        flex-direction: column;
        align-items: stretch;
        flex: 1;
        gap: 0;
        padding-block-start: 0.25rem;
      }
    }
    .header-nav-half {
      display: contents !important;
    }
  }

  /* ── [CHILD] Localization block (→ _blck_localization_header) ── */
  .header-v3 {
    .header-localization {
      display: flex;
      align-items: center;
      gap: 0.5rem;
      height: 100%;
      @media (max-width: 991px) {
        padding: 1rem var(--hdr-pd-inline-mb);
        border-top: var(--1px) solid var(--color-border-divider);
      }
    }
    dropdown-localization-component {
      display: flex;
      align-items: center;
    }
  }

  /* ── [CHILD] Mobile drawer overrides for child blocks ──
     Forces a consistent clean drawer UI on mobile, overriding
     per-block schema settings.
     Spec ref: Figma DS Admin Settings 23135:38774 */
  @media (max-width: 991px) {
    .header-v3 {
      .header-utilities .utility-header .utility-header-content-inner {
        gap: 0.25rem;
      }

      .header-drawer {
        /* localization — bottom group */
        .header-localization {
          height: auto;
          margin-top: auto !important;
          padding: 1rem 0 !important;
          display: flex !important;
          align-items: center !important;
          justify-content: space-between !important;
          gap: var(--header-gap) !important;
          font-size: var(--typo-paragraph-size) !important;
          color: var(--color-text-subtitle) !important;
          .localization-block-outer {
            width: 100% !important;
            justify-content: space-between !important;
            .localization-divider {
              display: none;
            }
            @media (max-width: 991px) {
              font-size: var(--typo-paragraph-size-mb) !important;
            }
          }
        }
      }
    }
  }
/* END_SNIPPET:panel-header-v3 */

/* START_SNIPPET:panel-heading-group (INDEX:307) */
.heading-group {
    display: flex;
    align-items: stretch;
    width: var(--_size-w);
    max-width: var(--_size-mw);
    text-align: var(--heading_page_content-text-align);
    @media (max-width: 991px) {
      width: var(--_size-w-mb);
      text-align: var(--heading_page_content-text-align-mb);
      max-width: var(--_size-mw-mb);
    }
    .heading-group-inner {
      position: relative;
      contain: layout style paint;
      width: 100%;
      display: flex;
      align-items: stretch;
    }
    .heading-group-content {
      position: relative;
      z-index: 2;
      width: 100%;
      padding-block: var(--heading_page_content-pd-block-start) var(--heading_page_content-pd-block-end);
      padding-inline: var(--heading_page_content-pd-inline-start) var(--heading_page_content-pd-inline-end);
      @media (max-width: 991px) {
        padding-block: var(--heading_page_content-pd-block-start-mb) var(--heading_page_content-pd-block-end-mb);
        padding-inline: var(--heading_page_content-pd-inline-start-mb) var(--heading_page_content-pd-inline-end-mb);
      }
    }
    .heading-group-content-inner {
      position: relative;
      width: 100%;
      height: 100%;
      display: flex;
      flex-direction: column;
      align-items: var(--heading_page_content-content-align);
      gap: 1rem;
      @media (max-width: 991px) {
        align-items: var(--heading_page_content-content-align-mb);
        gap: 0.5rem;
      }
    }
    .heading-group-title-desc {
      width: 100%;
      display: flex;
      flex-direction: var(--heading_page_content-direction);
      justify-content: var(--heading_page_content-justify-content);
      align-items: var(--heading_page_content-alignment);
      gap: var(--heading_page_content-flex-gap, var(--sc-gap));
      @media (max-width: 991px) {
        flex-direction: var(--heading_page_content-direction-mb);
        align-items: var(--heading_page_content-alignment-mb);
        justify-content: var(--heading_page_content-justify-content-mb);
        gap: var(--heading_page_content-flex-gap-mb, var(--sc-gap-mb));
      }
    }
  }
/* END_SNIPPET:panel-heading-group */

/* START_SNIPPET:panel-highlight-image-inline (INDEX:308) */
.htwi-inline-img-inline {
    width: var(--img-size-max-width);
    max-width: var(--img-size-max-width);
    display: inline-block;
    margin-block: 0.125rem;
    vertical-align: middle;
    @media (max-width: 991px) {
      width: var(--img-size-max-width-mb);
      max-width: var(--img-size-max-width-mb);
    }
    .htwi-inline-img-inner {
      overflow: hidden;
      border-radius: var(--img-radius);
      position: relative;

      .htwi-inline-img-content {
        position: relative;
        aspect-ratio: var(--media-aspect-ratio);
        filter: var(--img-filter);
        @media (max-width: 991px) {
          aspect-ratio: var(--media-aspect-ratio-mb);
        }
      }
    }
  }
/* END_SNIPPET:panel-highlight-image-inline */

/* START_SNIPPET:panel-highlight-text-w-img (INDEX:309) */
.panel-highlight-text-w-img {
    min-width: 1px;
    min-height: fit-content;
    contain: layout style;
    width: var(--htwi-size-width);
    max-width: var(--htwi-size-max-width);
    height: fit-content;
    text-align: var(--htwi-text-align);
    @media (max-width: 991px) {
      width: var(--htwi-size-width-mb);
      text-align: var(--htwi-text-align-mb);
      max-width: var(--htwi-size-max-width-mb);
    }
    &:not([data-animation-type="none"]) {
      opacity: 0;
      transition: opacity var(--trans-duration) var(--trans-easing);
      &.active {
        opacity: 1;
      }
    }
    .htwi-inner {
      color: var(--typo-color-normal);
      em {
        color: var(--typo-color-highlight);
      }
      a {
        color: var(--typo-color-link);
        &:hover { color: var(--typo-color-link-hover); }
      }
    }
    .htwi-content {
      padding-block: var(--htwi-pd-block-start) var(--htwi-pd-block-end);
      padding-inline: var(--htwi-pd-inline-start) var(--htwi-pd-inline-end);
      @media (max-width: 991px) {
        padding-block: var(--htwi-pd-block-start-mb) var(--htwi-pd-block-end-mb);
        padding-inline: var(--htwi-pd-inline-start-mb) var(--htwi-pd-inline-end-mb);
      }
    }
    .htwi-content-text-block-template {
      display: none;
    }
  }
/* END_SNIPPET:panel-highlight-text-w-img */

/* START_SNIPPET:panel-icon-box-listing (INDEX:310) */
icon-box-listing-component {
    display: block;
  }
  .ibl {
    width: var(--ibl-size-width);
    max-width: var(--ibl-size-max-width);
    @media (max-width: 991px) {
      width: 100%;
      max-width: unset;
      overflow: hidden;
    }
    .embla__viewport {
      overflow: hidden;
      position: relative;
    }
    .ibl-inner {
      width: 100%;
      margin-block: var(--ibl-mg-block-start) var(--ibl-mg-block-end);
      margin-inline: var(--ibl-mg-inline-start) var(--ibl-mg-inline-end);
      @media (max-width: 991px) {
        margin-block: var(--ibl-mg-block-start-mb) var(--ibl-mg-block-end-mb);
        margin-inline: var(--ibl-mg-inline-start-mb) var(--ibl-mg-inline-end-mb);
      }
      .ibl-content {
        width: 100%;
        position: relative;
        padding-block: var(--ibl-pd-block-start) var(--ibl-pd-block-end);
        padding-inline: var(--ibl-pd-inline-start) var(--ibl-pd-inline-end);
        @media (max-width: 991px) {
          padding-block: var(--ibl-pd-block-ƒ--ibl-divider-widthstart-mb) var(--ibl-pd-block-end-mb);
          padding-inline: var(--ibl-pd-inline-start-mb) var(--ibl-pd-inline-end-mb);
        }

        .icon-box {
          position: relative;
          padding-inline: var(--ibl-pd-inline);
          padding-block: var(--ibl-pd-block);

          background: var(--ibl-bg);
          border: 1px solid var(--ibl-border-color);
          border-radius: var(--ibl_boxed-radius);
          height: var(--ibl-size-height);
          min-height: var(--ibl-size-min-height);
          @media (max-width: 991px) {
            height: var(--ibl-size-height-mb);
            min-height: var(--ibl-size-min-height-mb);
          }

          @media (max-width: 991px) {
            padding-inline: var(--ibl-pd-inline-mb);
            padding-block: var(--ibl-pd-block-mb);

            /* &::after {
              content: '';
              position: absolute;
              left: 0;
              right: 0;
              bottom: calc(-1 * (2px + var(--slide-spacing-mobile) / 2));
              height: var(--ibl-divider-width);
              background-color: var(--color-text-divider);
              display: var(--ibl-divider-row-mb);
            } */
          }

          .icon-box-inner {
            .icon-box-content {
              flex-direction: var(--ibl-direction);
              gap: var(--ibl-flex-gap);
              justify-content: var(--ibl-justify-content);
              align-items: var(--ibl-alignment);

              @media (max-width: 991px) {
                flex-direction: var(--ibl-direction-mb);
                gap: var(--ibl-flex-gap-mb);
                justify-content: var(--ibl-justify-content-mb);
                align-items: var(--ibl-alignment-mb);
              }

              .icon-box-content-info {
                align-items: var(--ic-align);

                @media (max-width: 991px) {
                  align-items: var(--ic-align-mb);
                }

                .icon-box-content-info-description {
                  p {
                    text-align: var(--ic-desc-align);

                    @media (max-width: 991px) {
                      text-align: var(--ic-desc-align-mb);
                    }
                  }
                }
              }
            }
          }
        }
        .icon-box {
          &::before {
            content: '';
            position: absolute;
            top: 0;
            bottom: 0;
            left: calc(-1px + (-1 * (var(--slide-spacing-desktop) / 2)));
            width: var(--ibl-divider-width);
            background-color: var(--color-text-divider);
          }

          &::after {
            content: '';
            position: absolute;
            left: 0;
            right: 0;
            top: calc(-1px + (-1 * (var(--slide-spacing-desktop) / 2)));
            height: var(--ibl-divider-width);
            background-color: var(--color-text-divider);
          }

          @media (max-width: 991px) {
            &::before {
              left: calc(-1px + (-1 * (var(--slide-spacing-mobile) / 2)));
            }
            &::after {
              top: calc(-1px + (-1 * (var(--slide-spacing-mobile) / 2)));
            }
          }
        }
      }
    }
  }
/* END_SNIPPET:panel-icon-box-listing */

/* START_SNIPPET:panel-icon-box (INDEX:311) */
.icon-box {
    width: 100%;
    height: 100%;
    .icon-box-inner {
      width: 100%;
      height: 100%;
      .icon-box-content {
        width: 100%;
        height: 100%;
        display: flex;
        .icon-box-content-icon {
          .icon-box-content-icon-inner {
            width: max-content;
            min-width: fit-content;
            overflow: hidden;
            position: relative;
            color: var(--icon-color);
            border-radius: var(--ibl_icon_boxed-radius);
            padding: var(--icon-inner-padding);

            @media (max-width: 991px) {
              padding: var(--icon-inner-padding-mb);
            }

            .icon {
              position: relative;
              z-index: 2;
              display: flex;
              align-items: center;
              justify-content: center;
              width: var(--icon-size);
              aspect-ratio: 1/1;

              @media (max-width: 991px) {
                width: var(--icon-size-mb);
              }

              img {
                object-fit: contain;
                height: 100%;
                width: 100%;
              }
            }

            .icon-bg {
              position: absolute;
              inset: 0;
              z-index: 1;
              border-radius: var(--ibl_icon_boxed-radius);

              .icon-bg-initial,
              .icon-bg-hover {
                position: absolute;
                inset: 0;
                border-radius: inherit;
                border: solid var(--1px) var(--icon-boxed-border);
                transition: opacity var(--trans-duration) var(--trans-easing);
                pointer-events: none;
                opacity: 0;
              }
              .icon-bg-initial {
                background-color: var(--icon-boxed-bg-color);
                opacity: 1;
              }
              .icon-bg-hover {
                background-color: var(--icon-boxed-bg-color); /* Matches if no hover bg exists yet */
              }
            }
          }
        }

        .icon-box-content-info {
          display: flex;
          flex-direction: column;
          .icon-box-content-info-heading {
            &,
            p,
            .txt,
            h1,
            h2,
            h3,
            h4,
            h5,
            h6 {
              padding-block: var(--heading-padding-block);
              font-weight: var(--heading-font-weight);
              font-family: var(--heading-font-family);
              font-size: var(--heading-font-size);
              line-height: var(--heading-line-height);
              letter-spacing: var(--heading-letter-spacing);
              text-transform: var(--heading-text-transform);
              color: var(--heading-typo-color-normal);
              em {
                color: var(--heading-typo-color-highlight);
              }
              a,
              button {
                color: var(--heading-typo-color-link);
                &:hover {
                  color: var(--heading-typo-color-link-hover);
                }
              }
              @media (max-width: 991px) {
                padding-block: var(--heading-padding-block-mb);
                font-family: var(--heading-font-family-mb);
                font-weight: var(--heading-font-weight-mb);
                line-height: var(--heading-line-height-mb);
                font-size: var(--heading-font-size-mb);
                letter-spacing: var(--heading-letter-spacing-mb);
                text-transform: var(--heading-text-transform-mb);
              }
            }
          }

          .icon-box-content-info-description {
            display: flex;
            &,
            p,
            h1,
            h2,
            h3,
            h4,
            h5,
            h6 {
              padding-block: var(--description-padding-block);
              font-weight: var(--description-font-weight);
              font-family: var(--description-font-family);
              font-size: var(--description-font-size);
              line-height: var(--description-line-height);
              letter-spacing: var(--description-letter-spacing);
              text-transform: var(--description-text-transform);
              color: var(--description-typo-color-normal);
              em {
                color: var(--description-typo-color-highlight);
              }
              a,
              button {
                color: var(--description-typo-color-link);
                &:hover {
                  color: var(--description-typo-color-link-hover);
                }
              }
              @media (max-width: 991px) {
                padding-block: var(--description-padding-block-mb);
                font-family: var(--description-font-family-mb);
                font-weight: var(--description-font-weight-mb);
                line-height: var(--description-line-height-mb);
                font-size: var(--description-font-size-mb);
                letter-spacing: var(--description-letter-spacing-mb);
                text-transform: var(--description-text-transform-mb);
              }
            }
          }

          .icon-box-content-info-btn {
            width: var(--ibl_btn-size-width);
            max-width: var(--ibl_btn-size-max-width);

            @media (max-width: 991px) {
              width: var(--ibl_btn-size-width-mb);
              max-width: var(--ibl_btn-size-max-width-mb);
            }

            /* Icon-only: collapse to square */
            &:not(:has(.btn-label-wrap)) {
              width: var(--button-height);
              max-width: unset;

              @media (max-width: 991px) {
                width: var(--button-height-mb);
              }
            }

            .icon-box-content-info-btn-inner {
              display: var(--icon-box-btn-display, var(--button-icon-display));

              width: 100%;
              position: relative;

              .btn-content {
                display: block;
                width: 100%;
                position: relative;
                overflow: hidden;
                border-radius: var(--button-radius);
                padding-inline: var(--button-pd-inline);
                height: var(--button-height);
                @media (max-width: 991px) {
                  padding-inline: var(--button-pd-inline-mb);
                  height: var(--button-height-mb);
                }

                /* Icon-only: no side padding */
                &:not(:has(.btn-label-wrap)) {
                  padding-inline: 0;
                }

                .btn-content-inner {
                  height: 100%;
                  position: relative;
                  z-index: 3;
                  display: flex;
                  align-items: center;
                  justify-content: center;
                  transition: color var(--trans-duration) var(--trans-easing);

                  color: var(--button-color);
                  flex-direction: var(--button-icon-position);
                  column-gap: var(--button-gap);

                  .btn-label {
                    position: relative;
                    line-height: var(--button-font-lh);
                    font-weight: var(--button-weight);
                    letter-spacing: var(--button-ls);
                    text-transform: var(--button-case);
                    font-size: var(--button-font-size);

                    @media (max-width: 991px) {
                      font-family: var(--button-family-mb);
                      line-height: var(--button-font-lh-mb);
                      font-weight: var(--button-weight-mb);
                      letter-spacing: var(--button-ls-mb);
                      text-transform: var(--button-case-mb);
                      font-size: var(--button-font-size-mb);
                    }
                  }

                  .btn-icon {
                    position: relative;
                    flex-shrink: 0;
                    display: var(--button-icon-display);
                    align-items: center;
                    justify-content: center;
                    width: var(--button-icon-size);
                    height: var(--button-icon-size);

                    @media (max-width: 991px) {
                      width: var(--button-icon-size-mb);
                      height: var(--button-icon-size-mb);
                    }
                    svg [stroke-width] {
                      stroke-width: var(--button-icon-stroke);
                    }

                    &::after {
                      display: var(--button-icon-display);
                      -webkit-mask: var(--ibl-btn-icon) no-repeat center / contain;
                      mask: var(--ibl-btn-icon) no-repeat center / contain;
                      background-color: var(--button-color);
                      transition: background-color var(--trans-duration) var(--trans-easing);
                      content: '';
                      position: absolute;
                      width: var(--button-icon-size);
                      height: var(--button-icon-size);
                      right: var(--button-icon-content-right);
                      left: var(--button-icon-content-left);
                      top: 50%;
                      transform: translateY(-50%);

                      @media (max-width: 991px) {
                        width: var(--button-icon-size-mb);
                        height: var(--button-icon-size-mb);
                      }
                    }
                  }
                }

                .btn-bg {
                  position: absolute;
                  inset: 0;
                  z-index: 1;
                  border-radius: inherit;
                  display: flex;
                  align-items: center;
                  justify-content: center;

                  .btn-bg-initial,
                  .btn-bg-hover {
                    position: absolute;
                    inset: 0;
                    border-radius: inherit;
                    border-style: solid;
                    border-width: var(--1px);
                    transition: opacity var(--trans-duration) var(--trans-easing);
                    pointer-events: none;
                    opacity: 0;
                  }
                  .btn-bg-initial {
                    background: var(--button-bg);
                    border-color: var(--button-border);
                    opacity: 1;
                  }
                  .btn-bg-hover {
                    background: var(--button-bg-hover);
                    border-color: var(--button-border-hover);
                  }
                }

                &[aria-disabled],
                &:disabled {
                  pointer-events: none;
                  .btn-content-inner {
                    color: var(--button-color-disabled);
                    &::after {
                      background: var(--button-color-disabled);
                    }
                  }
                  .btn-bg {
                    .btn-bg-initial {
                      background: var(--button-bg-disabled);
                      border-color: var(--button-border-disabled);
                      &::before {
                        opacity: 0;
                      }
                    }
                    .btn-bg-hover {
                      opacity: 0;
                    }
                  }
                }
              }
            }
          }
        }
      }
    }
  }

  .ibl:not(.ibl-btn-type-link) {
    .icon-box .btn-content {
      position: relative;
    }
    .icon-box .btn-content .btn-label-wrap {
      overflow: hidden;
      position: relative;
      display: block;
      .btn-label {
        position: relative;
        display: block;
        transform-style: preserve-3d;

        &::after {
          content: attr(data-label);
          position: absolute;
          inset: 0px;
          font-family: var(--button-family);
          line-height: var(--button-font-lh);
          font-weight: var(--button-weight);
          letter-spacing: var(--button-ls);
          text-transform: var(--button-case);
          font-size: var(--button-font-size);
          white-space: nowrap;
        }
        @media (max-width: 991px) {
          &::after {
            font-family: var(--button-family-mb);
            line-height: var(--button-font-lh-mb);
            font-weight: var(--button-weight-mb);
            letter-spacing: var(--button-ls-mb);
            text-transform: var(--button-case-mb);
            font-size: var(--button-font-size-mb);
          }
        }
      }
    }

    .icon-box .btn-content:not([aria-disabled]):not(:disabled):hover,
    .icon-box .btn-content:not([aria-disabled]):not(:disabled):focus-visible {
      .btn-content-inner .btn-icon::after {
        background-color: var(--button-color-hover);
      }
    }

    .icon-box .btn-content[aria-disabled],
    .icon-box .btn-content:disabled {
      pointer-events: none;
      .btn-content-inner {
        color: var(--button-color-disabled);
      }
      .btn-bg {
        .btn-bg-initial {
          background: var(--button-bg-disabled);
          border-color: var(--button-border-disabled);
          &::before {
            opacity: 0;
          }
        }
        .btn-bg-hover {
          opacity: 0;
        }
      }
    }
  }

  .ibl.ibl-hover-style-fade:not(.ibl-btn-type-link) {
    .icon-box .btn-content {
      .btn-label-wrap .btn-label {
        transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.05s !important;
        &::after {
          transform: translateY(100%);
        }
      }
      .btn-bg .btn-bg-initial {
        opacity: 1 !important;
      }
    }
    .icon-box .btn-content:not([aria-disabled]):not(:disabled):hover,
    .icon-box .btn-content:not([aria-disabled]):not(:disabled):focus-visible {
      .btn-content-inner {
        color: var(--button-color-hover) !important;
        z-index: 3 !important;
      }
      .btn-bg .btn-bg-initial {
        opacity: 0 !important;
      }
      .btn-bg .btn-bg-hover {
        opacity: 1 !important;
      }
      .btn-label-wrap .btn-label {
        transform: translate3d(0, -100%, 0);
      }
    }
  }

  .ibl.ibl-hover-style-slide:not(.ibl-btn-type-link) {
    .icon-box .btn-content {
      .btn-label-wrap .btn-label::after {
        display: none;
      }
      .btn-bg .btn-bg-initial {
        opacity: 1 !important;
      }
      .btn-bg .btn-bg-hover {
        opacity: 1 !important;
        clip-path: inset(100% 0 0 0);
        transition: clip-path 0.3s cubic-bezier(0.7, 0, 0.2, 1) !important;
      }
    }
    .icon-box .btn-content:not([aria-disabled]):not(:disabled):hover,
    .icon-box .btn-content:not([aria-disabled]):not(:disabled):focus-visible {
      .btn-content-inner {
        color: var(--button-color-hover) !important;
        z-index: 3 !important;
      }
      .btn-bg .btn-bg-hover {
        clip-path: inset(0 0 0 0);
      }
    }
  }

  .ibl.ibl-hover-style-circle:not(.ibl-btn-type-link) {
    .icon-box .btn-content {
      .btn-label-wrap .btn-label::after {
        display: none;
      }
      .btn-bg .btn-bg-initial {
        opacity: 1 !important;
      }
      .btn-bg .btn-bg-hover {
        transition: opacity 0.3s !important;
      }
      .btn-bg::after {
        content: '';
        position: absolute;
        background-color: var(--button-bg-hover);
        width: 110%;
        padding-bottom: 110%;
        height: 0;
        border-radius: 50%;
        transform: scale3d(0, 0, 1);
        z-index: 3;
      }
    }
    .icon-box .btn-content:not([aria-disabled]):not(:disabled):hover,
    .icon-box .btn-content:not([aria-disabled]):not(:disabled):focus-visible {
      .btn-content-inner {
        color: var(--button-color-hover) !important;
        z-index: 4 !important;
      }
      .btn-bg .btn-bg-hover {
        opacity: 1 !important;
        transition-duration: 0.01s !important;
        transition-delay: 0.3s !important;
      }
      .btn-bg::after {
        transform: scale3d(1, 1, 1);
        transition: transform 0.4s cubic-bezier(0.1, 0, 0.3, 1);
      }
    }
  }

  .ibl.ibl-hover-style-bloom:not(.ibl-btn-type-link) {
    .icon-box .btn-content {
      .btn-label-wrap .btn-label {
        transition: none;
      }
      .btn-label-wrap .btn-label::after {
        transform: translateY(200%);
      }
      .btn-bg .btn-bg-initial {
        opacity: 1 !important;
      }
      .btn-bg .btn-bg-hover {
        opacity: 1 !important;
        content: '';
        background: var(--button-bg-hover);
        clip-path: inset(0 0 100% 0);
        transition: clip-path 0.4s cubic-bezier(0.1, 0, 0.3, 1) !important;
      }
      .btn-bg::after {
        position: absolute;
        content: '';
        background: var(--button-bg-hover);
        width: 140%;
        height: 0;
        padding-bottom: 140%;
        border-radius: 50%;
        transform: translate3d(0, 100%, 0) scale3d(0, 0, 0);
        z-index: 3;
      }
    }
    .icon-box .btn-content:not([aria-disabled]):not(:disabled):hover,
    .icon-box .btn-content:not([aria-disabled]):not(:disabled):focus-visible {
      .btn-content-inner {
        color: var(--button-color-hover) !important;
        z-index: 4 !important;
        .btn-label-wrap .btn-label {
          transform: translateY(-200%);
          transition: transform 0.5s cubic-bezier(0.1, 0, 0.3, 1);
        }
      }
      .btn-bg .btn-bg-hover {
        clip-path: inset(0 0 0 0);
        transition-duration: 0.05s !important;
        transition-delay: 0.4s !important;
        transition-timing-function: linear !important;
      }
      .btn-bg::after {
        transform: translate3d(0, 0, 0) scale3d(1, 1, 1);
        transition: transform 0.4s cubic-bezier(0.1, 0, 0.3, 1);
      }
    }
  }

  .ibl.ibl-hover-style-none:not(.ibl-btn-type-link) {
    .icon-box .btn-content {
      .btn-label-wrap .btn-label::after {
        display: none;
      }
      .btn-bg .btn-bg-initial {
        opacity: 1 !important;
      }
    }
  }

  .ibl.ibl-btn-type-link {
    .icon-box .btn-content {
      overflow: visible;
      .btn-bg {
        display: none;
      }
      .btn-icon::after {
        background: currentColor !important;
      }
      &:not([aria-disabled]):not(:disabled) {
        .btn-label-wrap {
          .btn-label {
            transform: none;
            transition: none;
            &::after {
              display: none;
            }
          }
        }
        &:hover {
          .btn-label-wrap .btn-label {
            transform: none;
          }
        }
      }
    }
  }

  .ibl.ibl-btn-type-link.ibl-link-style-underline {
    .icon-box .btn-content:not([aria-disabled]):not(:disabled) {
      &:hover {
        --p-ac: 0%;
        background-size: 0% var(--line-width, var(--1px));
        transition: background-size var(--trans-duration), background-position 0s;
      }
      &:hover::after {
        --p-ac: 0%;
        background-size: 0% var(--line-width, var(--1px));
        transition: background-size var(--trans-duration), background-position 0s;
      }

      @media (max-width: 991px) {
        &:hover {
          --p-ac: 0%;
          background-size: 0% var(--line-width-mb, var(--1px));
          transition: background-size var(--trans-duration), background-position 0s;
        }
        &:hover::after {
          --p-ac: 0%;
          background-size: 0% var(--line-width-mb, var(--1px));
          transition: background-size var(--trans-duration), background-position 0s;
        }
      }

      &:hover {
        .btn-content-inner {
          --text-color: var(--button-color-hover);
          color: var(--text-color);
        }
      }

      .btn-content-inner {
        --text-color: var(--button-color);
        position: relative;
        color: var(--text-color);
        display: inline-flex;
        .btn-label-wrap {
          position: relative;
          overflow: hidden;
          background-repeat: no-repeat;
          background-position: bottom left;
          background: linear-gradient(var(--text-color) 0 0) calc(100% - var(--p, 0%)) / var(--p, 0%) no-repeat;
          background-position-y: bottom;
          background-size: var(--p, 0%) var(--line-width, var(--1px));
          padding-bottom: var(--line-width, var(--1px));
          transition: background-size var(--trans-duration) 0.1s, background-position 0s;
          &::after {
            position: absolute;
            pointer-events: none;
            inset: 0;
            content: '';
            color: var(--text-color);
            display: inline;
            background-repeat: no-repeat;
            background-position: bottom left;
            line-height: var(--line-lh, unset);
            background: linear-gradient(var(--text-color) 0 0) calc(100% - var(--p-ac, 0%)) / var(--p-ac, 0%) no-repeat;
            background-position-y: bottom;
            background-size: var(--p-ac, 0%) var(--line-width, var(--1px));
            padding-bottom: var(--line-width, var(--1px));
            transition: background-size var(--trans-duration) 0.2s, background-position 0s;
          }
        }
        @media (hover: hover) {
          &:hover .btn-label-wrap {
            --p: 100%;
            background-size: 100% var(--line-width, var(--1px));
            transition: background-size var(--trans-duration) 0.2s, background-position 0s;
          }
          &:hover .btn-label-wrap::after {
            --p-ac: 0%;
            background-size: 0% var(--line-width, var(--1px));
            transition: background-size var(--trans-duration), background-position 0s;
          }
        }

        @media (max-width: 991px) {
          .btn-label-wrap {
            background-size: var(--p, 0%) var(--line-width-mb, var(--1px));
            padding-bottom: var(--line-width-mb, var(--1px));
            &::after {
              line-height: var(--line-lh-mb, unset);
              background-size: var(--p-ac, 0%) var(--line-width-mb, var(--1px));
              padding-bottom: var(--line-width-mb, var(--1px));
            }
          }
          @media (hover: hover) {
            &:hover .btn-label-wrap {
              background-size: 100% var(--line-width-mb, var(--1px));
            }
            &:hover .btn-label-wrap::after {
              background-size: 0% var(--line-width-mb, var(--1px));
            }
          }
        }
      }
    }
  }

  .ibl.ibl-btn-type-link.ibl-link-style-classic {
    .icon-box .btn-content:not([aria-disabled]):not(:disabled) {
      &:hover {
        --p: 100%;
        background-size: 100% var(--line-width, var(--1px));
        transition: background-size var(--trans-duration), background-position 0s;
      }
      @media (max-width: 991px) {
        &:hover {
          --p: 100%;
          background-size: 100% var(--line-width-mb, var(--1px));
          transition: background-size var(--trans-duration), background-position 0s;
        }
      }
      &:hover {
        .btn-content-inner {
          --text-color: var(--button-color-hover);
          color: var(--text-color);
        }
      }

      .btn-content-inner {
        --text-color: var(--button-color);
        color: var(--text-color);
        display: inline-flex;
        line-height: var(--line-lh, unset);
        z-index: 1;
        .btn-label-wrap {
          position: relative;
          overflow: hidden;
          background-repeat: no-repeat;
          background-position: bottom left;
          background: linear-gradient(var(--text-color) 0 0) calc(100% - var(--p, 0%)) / var(--p, 0%) no-repeat;
          background-position-y: bottom;
          background-size: var(--p, 0%) var(--line-width, var(--1px));
          padding-bottom: var(--line-width, var(--1px));
          transition: background-size var(--trans-duration), background-position 0s;
        }
        @media (hover: hover) {
          &:hover .btn-label-wrap {
            --p: 100%;
            background-size: 100% var(--line-width, var(--1px));
            transition: background-size var(--trans-duration), background-position 0s;
          }
        }

        @media (max-width: 991px) {
          .btn-label-wrap {
            line-height: var(--line-lh-mb, unset);
            background-size: var(--p, 0%) var(--line-width-mb, var(--1px));
            padding-bottom: var(--line-width-mb, var(--1px));
          }

          @media (hover: hover) {
            &:hover .btn-label-wrap {
              background-size: 100% var(--line-width-mb, var(--1px));
            }
          }
        }
      }
    }
  }
/* END_SNIPPET:panel-icon-box */

/* START_SNIPPET:panel-image-v2 (INDEX:312) */
.img-block {
    width: var(--img-size-width);
    max-width: var(--img-size-max-width);
    min-width: 0;
    @media (max-width: 991px) {
      width: var(--img-size-width-mb);
      max-width: var(--img-size-max-width-mb);
    }
    .img-block-inner {
      overflow: hidden;
      border-radius: var(--img-radius);
      margin-block: var(--img-mg-block-start) var(--img-mg-block-end);
      margin-inline: var(--img-mg-inline-start) var(--img-mg-inline-end);
      position: relative;
      @media (max-width: 991px) {
        margin-block: var(--img-mg-block-start-mb) var(--img-mg-block-end-mb);
        margin-inline: var(--img-mg-inline-start-mb) var(--img-mg-inline-end-mb);
      }

      .img-block-content {
        position: relative;
        padding-block: var(--img-pd-block-start) var(--img-pd-block-end);
        padding-inline: var(--img-pd-inline-start) var(--img-pd-inline-end);
        aspect-ratio: var(--media-aspect-ratio);
        filter: var(--img-filter);
        @media (max-width: 991px) {
          padding-block: var(--img-pd-block-start-mb) var(--img-pd-block-end-mb);
          padding-inline: var(--img-pd-inline-start-mb) var(--img-pd-inline-end-mb);
        }
      }
    }
  }
/* END_SNIPPET:panel-image-v2 */

/* START_SNIPPET:panel-instagram-heading-grp (INDEX:316) */
.panel-instagram-heading-grp {
    position: var(--ins-heading-grp-position);
    inset: 0;
    margin: auto;
    min-width: 1px;
    width: var(--ins_heading_grp-size-width);
    max-width: var(--ins_heading_grp-size-max-width);
    height: var(--size-fit);
    @media (max-width: 991px) {
    }
    .ins-heading-grp-content {
      padding-block: var(--ins_heading_grp-pd-block-start) var(--ins_heading_grp-pd-block-end);
      padding-inline: var(--ins_heading_grp-pd-inline-start) var(--ins_heading_grp-pd-inline-end);
      @media (max-width: 991px) {
        padding-block: var(--ins_heading_grp-pd-block-start-mb) var(--ins_heading_grp-pd-block-end-mb);
        padding-inline: var(--ins_heading_grp-pd-inline-start-mb) var(--ins_heading_grp-pd-inline-end-mb);
      }
    }
    .ins-heading-grp-content {
    }
    .ins-heading-grp-content-inner {
      width: 100%;
      height: 100%;
      display: flex;
      flex-direction: var(--ins_heading_grp_outside-direction, column);
      justify-content: var(--ins_heading_grp_outside-justify-content, center);
      align-items: var(--ins_heading_grp_outside-alignment, center);
      gap: var(--ins_heading_grp_outside-flex-gap, var(--ins_heading_grp_inside-flex-gap));
      text-align: var(--ins-heading-grp-outside-text-align);
      @media (max-width: 991px) {
        flex-direction: var(--ins_heading_grp_outside-direction-mb, column);
        align-items: var(--ins_heading_grp_outside-alignment-mb, center);
        justify-content: var(--ins_heading_grp_outside-justify-content-mb, center);
        gap: var(--ins_heading_grp_outside-flex-gap-mb, var(--ins_heading_grp_inside-flex-gap-mb));
        text-align: var(--ins-heading-grp-outside-text-align-mb);
      }
    }
  }
/* END_SNIPPET:panel-instagram-heading-grp */

/* START_SNIPPET:panel-list-collection-page-listing (INDEX:317) */
.sc-collection-page-listing {
    padding-inline: var(--sc-mg-inline);
    @media (max-width: 991px) {
      padding-inline: var(--sc-mg-inline-mb);
    }
    .sc-collection-page-listing-inner {
      border-radius: var(--sc-radius);
      width: 100%;
      margin-block: var(--sc-mg-block);
      @media (max-width: 991px) {
        margin-block: var(--sc-mg-block-mb);
      }
    }
    .sc-collection-page-listing-content {
      max-width: max(var(--sc-content-width), var(--sc-content-maxwidth));
      margin-inline: auto;
      padding-block: var(--sc-pd-block-start) var(--sc-pd-block-end);
      padding-inline: var(--sc-pd-inline-start) var(--sc-pd-inline-end);
      @media (max-width: 991px) {
        padding-block: var(--sc-pd-block-start-mb) var(--sc-pd-block-end-mb);
        padding-inline: var(--sc-pd-inline-start-mb) var(--sc-pd-inline-end-mb);
      }
    }
    .sc-collection-page-listing-content-inner {
      display: flex;
      flex-direction: column;
      gap: var(--sc-flex-gap);
      @media (max-width: 991px) {
        gap: var(--sc-flex-gap-mb);
      }
    }
    .sc-collection-page-listing-bg {
      background: var(--sc-background);
      background-repeat: no-repeat;
    }
  }
/* END_SNIPPET:panel-list-collection-page-listing */

/* START_SNIPPET:panel-logo-header-v2 (INDEX:318) */
.panel-logo-header-v2 {
    max-width: 100%;
    max-height: var(--logo-header-height-base);
    font-size: var(--logo-header-height-base);
    height: auto;

    @media (max-width: 991px) {
      max-height: var(--logo-header-height-base-mb);
      font-size: var(--logo-header-height-base-mb);
    }

    .logo-header-v2-content-image-inner {
      display: flex;
      width: 100%;
      max-width: 100%;
      max-height: 100%;
    }

    /* Normal logo sizing */
    .logo-header-v2-content-item.item-normal {
      width: var(--logo-header-width-normal);

      @media (max-width: 991px) {
        width: var(--logo-header-width-normal-mb);
      }
    }

    /* Inverse logo sizing */
    .logo-header-v2-content-item.item-inverse {
      width: var(--logo-header-width-inverse);

      @media (max-width: 991px) {
        width: var(--logo-header-width-inverse-mb);
      }
    }

    .logo-header-v2__image {
      object-fit: contain;
      height: var(--logo-header-height-base);
      width: auto;

      @media (max-width: 991px) {
        height: var(--logo-header-height-base-mb);
      }
    }

    .logo-header-v2-jumbo-text-content {
      opacity: 0;
      font-size: var(--jt-fs-dk, var(--logo-header-height-base));
      @media (max-width: 991px) {
        font-size: var(--jt-fs-mb, var(--logo-header-height-base-mb));
      }
      white-space: nowrap;
      display: block;
      width: 100%;
      overflow: visible;
      font-family: var(--typo-ff-heading);
      font-weight: var(--font-weight-bold);
      letter-spacing: 0em;
      line-height: 1;
      transition: color var(--trans-duration) var(--trans-easing);
      color: var(--color-foreground_100);
      &.active {
        opacity: 1;
        transition: opacity var(--trans-duration) var(--trans-easing);
      }
    }

    .logo-header-v2-content-item {
      transition: opacity var(--trans-duration) var(--trans-easing);
    }
  }

  /* Combine with header */
  /* Component base defaults */
  .header-v3-wrap {
    .header-logo {
      text-decoration: none;
      display: flex;
      align-items: center;
    }
    .item-normal,
    .item-inverse {
      transition: opacity var(--_t);
    }
    .item-normal {
      opacity: 1;
    }
    .item-inverse {
      opacity: 0;
    }

    &[data-transparent='transparent'][data-logo='inverse'] {
      .item-normal {
        opacity: 0;
      }
      .item-inverse {
        opacity: 1;
      }

      /* Revert to default logo when bg is forced visible */
      &.is-sticky,
      &.is-open,
      &:has(.is-dropdown-active),
      &:has(.megamenu-v2.active),
      &:has(dropdown-localization-component.i18n-active),
      &[data-display-bg-when-hover='true']:hover {
        .item-normal {
          opacity: 1;
        }
        .item-inverse {
          opacity: 0;
        }
      }
    }
  }
/* END_SNIPPET:panel-logo-header-v2 */

/* START_SNIPPET:panel-logo-v2 (INDEX:319) */
.panel-logo-v2 {
    max-width: var(--logo-max-width);
    width: var(--logo-width);
    max-height: var(--logo-height-base);
    font-size: var(--logo-height-base);
    height: auto;
    margin-block: var(--logo-mg-block-start) var(--logo-mg-block-end);
    margin-inline: var(--logo-mg-inline-start) var(--logo-mg-inline-end);
    @media (max-width: 991px) {
      max-width: var(--logo-max-width-mb);
      width: var(--logo-width-mb);
      max-height: var(--logo-height-base-mb);
      font-size: var(--logo-height-base-mb);
      margin-block: var(--logo-mg-block-start-mb) var(--logo-mg-block-end-mb);
      margin-inline: var(--logo-mg-inline-start-mb) var(--logo-mg-inline-end-mb);
    }
    .logo-v2-content-image-inner {
      display: flex;
      width: 100%;
      max-width: 100%;
      max-height: 100%;
    }
    .logo-v2__image {
      object-fit: contain;
      width: 100%;
    }
    .logo-v2-jumbo-text-content {
      opacity: 0;
      font-size: var(--jt-fs-dk, var(--logo-height-base));
      @media (max-width: 991px) {
        font-size: var(--jt-fs-mb, var(--logo-height-base-mb));
      }
      white-space: nowrap;
      display: block;
      width: 100%;
      overflow: visible;
      color: var(--inverse_color);
      font-family: var(--typo-ff-heading);
      font-weight: var(--font-weight-bold);
      letter-spacing: 0em;
      line-height: 0.8em;
      transition: opacity var(--trans-duration) var(--trans-easing);
      &.active {
        opacity: 1;
      }
    }
  }
/* END_SNIPPET:panel-logo-v2 */

/* START_SNIPPET:panel-main-cart-section (INDEX:320) */
.panel-main-cart-section {
    padding-inline: var(--sc-mg-inline);
    @media (max-width: 991px) {
      padding-inline: var(--sc-mg-inline-mb);
    }

    .main-cart-inner {
      border-radius: var(--sc-radius);

      width: 100%;
      max-width: var(--content-width-full);
      margin-inline: auto;
      margin-block: var(--sc-mg-block) var(--sc-mg-block);
      @media (max-width: 991px) {
        margin-block: var(--sc-mg-block-mb) var(--sc-mg-block-mb);
      }
    }

    .main-cart-content-inner {
      --sidebar-width: 29.5rem;
      display: grid;
      grid-template-columns: 1fr min(50vw, var(--sidebar-width));
      grid-template-rows: min-content;
      gap: var(--section-gap);
      @media screen and (max-width: 991px) {
        display: flex;
        flex-direction: column;
        align-items: stretch;
      }
    }

    .main-cart-content {
      max-width: max(var(--sc-content-width), var(--sc-content-maxwidth));
      margin-inline: auto;
      padding-block: var(--sc-pd-block-start) var(--sc-pd-block-end);
      padding-inline: var(--sc-pd-inline-start) var(--sc-pd-inline-end);
      @media (max-width: 991px) {
        padding-block: var(--sc-pd-block-start-mb) var(--sc-pd-block-end-mb);
        padding-inline: var(--sc-pd-inline-start-mb) var(--sc-pd-inline-end-mb);
      }
    }
    .main-cart-bg {
      border-radius: var(--sc-radius);
      background: var(--sc-background);
      background-repeat: no-repeat;
    }
  }
/* END_SNIPPET:panel-main-cart-section */

/* START_SNIPPET:panel-main-product-container (INDEX:321) */
.panel-main-product-container {
    width: 100%;
    max-width: max(var(--ctn-content-width), var(--ctn-content-maxwidth));
    margin-inline: auto;

    .ctn-main-product-content-inner {
      width: 100%;
      display: grid;
      grid-template-columns: minmax(0px, 1fr) minmax(0px, 1fr);
      grid-template-rows: auto;
      gap: var(--ctn-flex-gap);
      @media (max-width: 991px) {
        grid-template-columns: minmax(0px, 1fr);
        grid-template-rows: auto auto;
        gap: var(--ctn-flex-gap-mb);
      }
    }
  }
/* END_SNIPPET:panel-main-product-container */

/* START_SNIPPET:panel-main-product-section (INDEX:322) */
.panel-main-product-section {
    padding-inline: var(--sc-mg-inline);
    @media (max-width: 991px) {
      padding-inline: var(--sc-mg-inline-mb);
    }
    .sc-main-product-inner {
      border-radius: var(--sc-radius);
      width: 100%;
      max-width: var(--content-width-full);
      margin-inline: auto;
      margin-block: var(--sc-mg-block) var(--sc-mg-block);
      @media (max-width: 991px) {
        margin-block: var(--sc-mg-block-mb) var(--sc-mg-block-mb);
      }
    }
    .sc-main-product-bg {
      background: var(--sc-background);
      background-repeat: no-repeat;
      border-radius: var(--sc-radius);
    }
    .sc-main-product-content {
      padding-block: var(--sc-pd-block-start) var(--sc-pd-block-end);
      padding-inline: var(--sc-pd-inline-start) var(--sc-pd-inline-end);
      @media (max-width: 991px) {
        padding-block: var(--sc-pd-block-start-mb) var(--sc-pd-block-end-mb);
        padding-inline: var(--sc-pd-inline-start-mb) var(--sc-pd-inline-end-mb);
      }
    }
    .sc-main-product-content {
      min-height: var(--sc-content-height);
      @media (max-width: 991px) {
        min-height: var(--sc-content-height-mb);
      }
    }
  }
/* END_SNIPPET:panel-main-product-section */

/* START_SNIPPET:panel-marquee-v2 (INDEX:323) */
.panel-custom-marquee {
    mask-image: var(--marquee-mask-gradient);
    width: var(--marquee-size-width);
    max-width: var(--marquee-size-max-width);
    height: var(--marquee-size-height);
    @media (max-width: 991px) {
      width: var(--marquee-size-width-mb);
      max-width: var(--marquee-size-max-width-mb);
      height: var(--marquee-size-height-mb);
    }
    .marquee-v2-inner {
      margin-block: var(--marquee-mg-block-start) var(--marquee-mg-block-end);
      margin-inline: var(--marquee-mg-inline-start) var(--marquee-mg-inline-end);
      position: relative;
      @media (max-width: 991px) {
        margin-block: var(--marquee-mg-block-start-mb) var(--marquee-mg-block-end-mb);
        margin-inline: var(--marquee-mg-inline-start-mb) var(--marquee-mg-inline-end-mb);
      }
    }
    .marquee-v2-content {
      padding-block: var(--marquee-pd-block-start) var(--marquee-pd-block-end);
      padding-inline: var(--marquee-pd-inline-start) var(--marquee-pd-inline-end);
      @media (max-width: 991px) {
        padding-block: var(--marquee-pd-block-start-mb) var(--marquee-pd-block-end-mb);
        padding-inline: var(--marquee-pd-inline-start-mb) var(--marquee-pd-inline-end-mb);
      }
    }
    .marquee-v2-track {
      --marquee-gap: var(--marquee-flex-gap);
      --marquee-gap-mb: var(--marquee-flex-gap-mb);
    }
  }
/* END_SNIPPET:panel-marquee-v2 */

/* START_SNIPPET:panel-megamenu-automenu (INDEX:324) */
.megamenu-v2-automenu {
    position: relative;
    min-width: 1px;
    width: var(--mm_automenu-size-width);
    max-width: var(--mm_automenu-size-max-width);
    /* height: 100%; */
    @media (max-width: 991px) {
      height: auto;
    }
    .megamenu-v2-automenu-inner {
      contain: paint;
      position: relative;
    }
    .megamenu-v2-automenu-content {
      padding-block: var(--mm_automenu-pd-block-start) var(--mm_automenu-pd-block-end);
      padding-inline: var(--mm_automenu-pd-inline-start) var(--mm_automenu-pd-inline-end);
      @media (max-width: 991px) {
        padding-block: var(--mm_automenu-pd-block-start-mb) var(--mm_automenu-pd-block-end-mb);
        padding-inline: var(--mm_automenu-pd-inline-start-mb) var(--mm_automenu-pd-inline-end-mb);
      }
    }
    .megamenu-v2-automenu-content-inner {
      width: 100%;
      display: grid;
      grid-template-columns: repeat(var(--mm-automenu-grid-columns), 1fr);
      column-gap: var(--mm_automenu_horizontal-flex-gap);
      row-gap: var(--mm_automenu_vertical-flex-gap);
      @media (max-width: 991px) {
        grid-template-columns: repeat(var(--mm-automenu-grid-columns-mb), 1fr);
        column-gap: var(--mm_automenu_horizontal-flex-gap-mb);
        row-gap: var(--mm_automenu_vertical-flex-gap-mb);
      }
    }
    .megamenu-v2-automenu-label {
      display: block;
      transition: color var(--trans-duration) var(--trans-easing);
      color: var(--mm-automenu-label-color);
      font-family: var(--mm-automenu-label-ff);
      line-height: var(--mm-automenu-label-line-height);
      font-weight: var(--mm-automenu-label-font-weight);
      letter-spacing: var(--mm-automenu-label-letter-spacing);
      text-transform: var(--mm-automenu-label-text-transform);
      font-size: var(--mm-automenu-label-font-size);
      margin-block-end: var(--mm-automenu-label-mg-block-end);
      @media (max-width: 991px) {
        font-family: var(--mm-automenu-label-ff-mb);
        font-weight: var(--mm-automenu-label-font-weight-mb);
        line-height: var(--mm-automenu-label-line-height-mb);
        letter-spacing: var(--mm-automenu-label-letter-spacing-mb);
        text-transform: var(--mm-automenu-label-text-transform-mb);
        font-size: var(--mm-automenu-label-font-size-mb);
        margin-block-end: var(--mm-automenu-label-mg-block-end-mb);
      }
    }
    .megamenu-v2-automenu-item {
      min-width: 0;
      width: 100%;
      display: flex;
      flex-direction: column;
      justify-content: flex-start;
      align-items: flex-start;
      gap: var(--mm_automenu-flex-gap);
      @media (max-width: 991px) {
        gap: var(--mm_automenu-flex-gap-mb);
      }
      &.menu-hover-inactive-wrap {
        .menu-hover-inactive-item {
          .megamenu-v2-automenu-item-link-inner {
            transition: opacity var(--trans-duration) var(--trans-easing);
          }
        }
        @media (hover: hover) {
          &:has(.menu-hover-inactive-item:hover) {
            .menu-hover-inactive-item:not(:hover) {
              .megamenu-v2-automenu-item-link-inner {
                opacity: 0.5;
              }
            }
          }
        }
      }
    }
    .megamenu-v2-automenu-item-link {
      /* display: block;
      width: 100%;
      max-width: 100%; */
      transition: color var(--trans-duration) var(--trans-easing);
      color: var(--mm-automenu-item-color);
      font-family: var(--mm-automenu-item-ff);
      line-height: var(--mm-automenu-item-line-height);
      font-weight: var(--mm-automenu-item-font-weight);
      letter-spacing: var(--mm-automenu-item-letter-spacing);
      text-transform: var(--mm-automenu-item-text-transform);
      font-size: var(--mm-automenu-item-font-size);
      @media (max-width: 991px) {
        font-family: var(--mm-automenu-item-ff-mb);
        font-weight: var(--mm-automenu-item-font-weight-mb);
        line-height: var(--mm-automenu-item-line-height-mb);
        letter-spacing: var(--mm-automenu-item-letter-spacing-mb);
        text-transform: var(--mm-automenu-item-text-transform-mb);
        font-size: var(--mm-automenu-item-font-size-mb);
      }
      @media (hover: hover) {
        &:hover {
          .megamenu-v2-automenu-item-divider {
            .megamenu-v2-automenu-item-divider-inner {
              clip-path: inset(0 0 0 0);
            }
          }
        }
      }
    }
    /* .megamenu-v2-automenu-item-link-inner {
      -webkit-box-orient: vertical;
      -webkit-line-clamp: 1;
      align-self: stretch;
      overflow: hidden;
      line-clamp: 1;
      text-overflow: ellipsis;
      display: -webkit-box;
    } */
    .megamenu-v2-automenu-item-divider {
      display: block;
      width: var(--divider-width);
      height: var(--divider-height);
      background: var(--divider-background);
      background-size: var(--divider-background-size);
      position: relative;
      margin-block-start: 4px;
      .megamenu-v2-automenu-item-divider-inner {
        position: absolute;
        bottom: 0;
        left: 0;
        display: var(--divider-inner-display);
        width: 100%;
        height: 100%;
        background: var(--divider-inner-background);
        background-size: var(--divider-background-size);
        clip-path: inset(0 100% 0 0);
        transition: clip-path var(--trans-duration) var(--trans-easing);
      }
    }
  }
/* END_SNIPPET:panel-megamenu-automenu */

/* START_SNIPPET:panel-megamenu-container (INDEX:325) */
.panel-megamenu-container {
    width: 100%;
    margin-inline: auto;
    .ctn-megamenu-inner {
      margin: 0px;
    }
    .ctn-megamenu-content {
      padding-block: 0px;
    }
    .ctn-megamenu-content {
      display: flex;
      justify-content: stretch;
      height: 100%;
    }
    .ctn-megamenu-content-inner {
      width: 100%;
      display: flex;
      flex-direction: var(--mm-direction);
      justify-content: var(--mm-justify-content);
      align-items: var(--mm-alignment);
      gap: var(--mm-flex-gap);
      @media (max-width: 991px) {
        flex-direction: var(--mm-direction-mb);
        align-items: var(--mm-alignment-mb);
        justify-content: flex-start;
        gap: var(--mm-flex-gap-mb);
      }
    }
  }
/* END_SNIPPET:panel-megamenu-container */

/* START_SNIPPET:panel-megamenu-group (INDEX:326) */
.megamenu-group {
    position: relative;
    min-width: 1px;
    min-height: var(--mm_grp-size-min-height);
    width: var(--mm_grp-size-width);
    max-width: var(--mm_grp-size-max-width);
    height: var(--mm_grp-size-height);
    text-align: var(--mm_grp-text-align);
    @media (max-width: 991px) {
      width: 100%;
      height: var(--mm_grp-size-height-mb);
      min-height: var(--mm_grp-size-min-height-mb);
      text-align: var(--mm_grp-text-align-mb);
      max-width: var(--mm_grp-size-max-width-mb);
    }
    .megamenu-group-inner {
      contain: var(--mm_grp-overflow-contain);
      position: relative;
      border-radius: var(--mm_grp-radius);
      margin-block: var(--mm_grp-mg-block-start) var(--mm_grp-mg-block-end);
      margin-inline: var(--mm_grp-mg-inline-start) var(--mm_grp-mg-inline-end);
      @media (max-width: 991px) {
        margin-block: var(--mm_grp-mg-block-start-mb) var(--mm_grp-mg-block-end-mb);
        margin-inline: var(--mm_grp-mg-inline-start-mb) var(--mm_grp-mg-inline-end-mb);
      }
    }
    .megamenu-group-content {
      padding-block: var(--mm_grp-pd-block-start) var(--mm_grp-pd-block-end);
      padding-inline: var(--mm_grp-pd-inline-start) var(--mm_grp-pd-inline-end);
      @media (max-width: 991px) {
        padding-block: var(--mm_grp-pd-block-start-mb) var(--mm_grp-pd-block-end-mb);
        padding-inline: var(--mm_grp-pd-inline-start-mb) var(--mm_grp-pd-inline-end-mb);
      }
    }
    .megamenu-group-content-inner {
      width: 100%;
      height: 100%;
      display: flex;
      flex-direction: var(--mm_grp-direction);
      justify-content: var(--mm_grp-justify-content);
      align-items: var(--mm_grp-alignment);
      gap: var(--mm_grp-flex-gap);
      @media (max-width: 991px) {
        flex-direction: var(--mm_grp-direction-mb);
        align-items: var(--mm_grp-alignment-mb);
        justify-content: var(--mm_grp-justify-content-mb);
        gap: var(--mm_grp-flex-gap-mb);
      }
    }
    .megamenu-group-bg {
      border-radius: var(--mm_grp-radius);
      border-style: solid;
      border-color: var(--color-border-default);
      border-top-width: var(--mm_grp-border-top);
      border-bottom-width: var(--mm_grp-border-bottom);
      border-left-width: var(--mm_grp-border-left);
      border-right-width: var(--mm_grp-border-right);
      background: var(--mm_grp-background);
      background-repeat: no-repeat;
      background-size: calc(100% + var(--mm_grp-border-left) + var(--mm_grp-border-right))
        calc(100% + var(--mm_grp-border-top) + var(--mm_grp-border-bottom));
      background-position: calc(var(--mm_grp-border-left) * -1) calc(var(--mm_grp-border-top) * -1);
    }
  }
/* END_SNIPPET:panel-megamenu-group */

/* START_SNIPPET:panel-megamenu-v2 (INDEX:327) */
.megamenu-v2 {
    --_t-mega: 0.6s cubic-bezier(0.3, 1, 0.3, 1);
    width: 100%;

    .megamenu-v2-inner {
      width: 100%;
      margin-inline: auto;
      margin-block: 0px;
    }

    .megamenu-v2-content {
      padding-block: var(--mm-pd-block);
      @media (max-width: 991px) {
        padding-block: var(--mm-pd-block-mb);
      }
    }

    .ctn-custom-content {
      display: flex;
      justify-content: stretch;
    }

    .megamenu-v2-bg,
    .megamenu-v2-bg-sticky {
      transition: transform var(--_t), opacity var(--_t);
      @media (max-width: 991px) {
        display: none;
      }
    }

    .megamenu-v2-bg {
      overflow: hidden;
      border-radius: var(--header-radius);

      .megamenu-v2-bg-inner {
        transform: translateY(-101%);
        transition: transform var(--_t-mega);
        width: 100%;
        height: 100%;
        border-radius: inherit;
        background-color: var(--color-background);
      }
    }

    .megamenu-v2-bg-sticky {
      max-width: 100%;
      transform: scaleX(var(--_scale-x, 0.92));
      opacity: 0;
      overflow: hidden;
      border-radius: 0px 0px var(--header-radius) var(--header-radius);

      .megamenu-v2-bg-sticky-inner {
        transform: translateY(-101%);
        border-radius: 0px 0px var(--header-radius) var(--header-radius);
        transition: transform var(--_t-mega);
        width: 100%;
        height: 100%;
        background-color: var(--color-background);
      }
    }
  }

  /* Combined with Header */
  .header-v3-wrap {
    &.is-sticky {
      .header-mega {
        padding-inline: 0px;
        .megamenu-v2 {
          padding-top: 0px;
        }
        .header-mega-container,
        .megamenu-v2-inner {
          border-radius: 0px;
        }
        .megamenu-v2 .megamenu-v2-content {
          max-height: calc(max(100svh, 43.75rem) - var(--actual-header-height, var(--header-minheight, 3.75rem)));
        }

        .megamenu-v2 .megamenu-v2-bg {
          border-top-color: transparent;
          transform: scaleX(calc(1 / var(--_scale-x, 0.92)));
        }

        .megamenu-v2 .megamenu-v2-bg-sticky {
          opacity: 1;
          transform: scaleX(1);
        }
      }
    }
    /* Transparent header: hide megamenu bgs by default */
    &[data-transparent='transparent'] {
      .megamenu-v2 .megamenu-v2-bg,
      .megamenu-v2 .megamenu-v2-bg-sticky {
        opacity: 0;
      }

      .megamenu-v2.active .megamenu-v2-bg {
        opacity: 1;
      }

      &.is-sticky .megamenu-v2.active .megamenu-v2-bg-sticky {
        opacity: 1;
      }
    }
  }

  /* Desktop */
  @media (min-width: 992px) {
    .header-mega {
      display: block;
      position: absolute;
      top: 100%;
      left: 0;
      right: 0;
      z-index: 200;
      pointer-events: none;
      padding-inline: var(--header-mg-inline);
      transition: padding-inline var(--_t);

      &:has(.megamenu-v2.active) {
        pointer-events: auto;
      }

      .header-mega-container {
        display: grid;
        grid-template-columns: 1fr;
        grid-template-rows: 1fr;
        align-items: flex-start;
        width: 100%;
        margin-inline: auto;
        overflow: hidden;
        border-radius: var(--header-radius);
        transition: border-radius var(--_t);
        pointer-events: none;
        & > * {
          grid-column: 1 / -1;
          grid-row: 1/-1;
        }
      }

      .megamenu-v2-inner {
        border-radius: var(--header-radius);
        width: 100%;
      }

      .megamenu-v2 {
        padding-top: var(--header-mega-gap);
        transition: padding-top var(--_t);
        display: flex;
        align-items: stretch;
        pointer-events: none;

        .megamenu-v2-content {
          width: 100%;
          max-height: calc(
            max(100svh, 43.75rem) - var(--header-mg-block-start) - var(--src-header-minheight) - var(--header-mega-gap)
          );
          overflow-y: auto;
          margin-inline: auto;
          max-width: max(var(--header-content-width, 0px), var(--header-content-maxwidth));
          padding-inline: var(--header-pd-inline);
          opacity: 0;
          transform: translateY(-101%);
          transition: transform var(--_t-mega), opacity var(--_t), max-height var(--_t);
        }

        .megamenu-v2-bg {
          width: 100%;
          margin-inline: auto;
          max-width: var(--header-bg-maxwidth);
        }

        &.active {
          pointer-events: auto;

          .megamenu-v2-content {
            transform: translateY(0%);
            opacity: 1;
            transition: transform var(--_t-mega), opacity var(--_t) 0.3s;
          }

          .megamenu-v2-bg-inner,
          .megamenu-v2-bg-sticky-inner {
            transform: translateY(0%);
            transition: transform var(--_t-mega);
          }
        }
      }
    }
  }

  @media (max-width: 991px) {
    .header-mega {
      display: none;
    }
  }
/* END_SNIPPET:panel-megamenu-v2 */

/* START_SNIPPET:panel-overlay-cart-drawer (INDEX:328) */
cart-drawer {
    display: contents;
  }

  .cart-drawer-body {
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: stretch;

    .cart-drawer-item-block {
      margin-block-end: var(--cart-products-line-item-mg-block-end);
      padding-block-end: var(--cart-products-line-item-pd-block-end);
      border-bottom: var(--cart-products-divider);

      @media (max-width: 768px) {
        margin-block-end: var(--cart-products-line-item-mg-block-end-mb);
        padding-block-end: var(--cart-products-line-item-pd-block-end-mb);
      }
    }

    .cart-drawer-items-wrap {
      flex: 1;
      .cart-drawer-empty {
        .cart-drawer-empty-heading {
          padding-block: 2rem;
          padding-inline: 2rem;
          background-color: var(--color-background);
          border-radius: var(--radius-new-small);
          .cart-drawer-empty-heading-inner {
            display: flex;
            flex-direction: column;
            gap: 0.5rem;
            align-items: center;
            text-align: center;
          }
        }
        .cart-drawer-empty-button {
          width: fit-content;
          margin-inline: auto;
        }
        .cart-drawer-empty-collections {
          .cart-drawer-empty-collections-content {
            display: flex;
            flex-wrap: wrap;
            margin-left: calc(var(--empty_cart-flex-gap) * -1);
            row-gap: var(--empty_cart-flex-gap);
            @media (max-width: 991px) {
              margin-left: calc(var(--empty_cart-flex-gap-mb) * -1);
              row-gap: var(--empty_cart-flex-gap-mb);
            }
          }
          .cart-drawer-empty-collections-item {
            width: 50%;
            padding-left: var(--empty_cart-flex-gap);
            @media (max-width: 991px) {
              padding-left: var(--empty_cart-flex-gap-mb);
            }
          }
        }
      }
    }

    .cart-drawer-product-recommendations {
      display: block;
      .cart-drawer-product-recommendations-heading {
        margin-block-end: 1rem;
        display: flex;
        justify-content: space-between;
        align-items: center;
      }
    }
  }

  .cart-drawer-footer-inner {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;

    .cart-drawer-features {
      display: flex;
      gap: 0.25rem;
      .cart-drawer-features-item {
        flex: 1;
      }
    }
  }

  .cart-items-disabled {
    pointer-events: none;
  }
/* END_SNIPPET:panel-overlay-cart-drawer */

/* START_SNIPPET:panel-page-heading-breadcrumb (INDEX:329) */
.breadcrumb {
    display: flex;
    width: var(--breadcrumb-size-width);
    max-width: var(--breadcrumb-size-max-width);
    @media (max-width: 991px) {
      width: var(--breadcrumb-size-width-mb);
      max-width: var(--breadcrumb-size-max-width-mb);
    }
    .breadcrumb-inner {
      width: 100%;
    }
    .breadcrumb-content {
      padding-block: var(--breadcrumb-pd-block-start) var(--breadcrumb-pd-block-end);
      padding-inline: var(--breadcrumb-pd-inline-start) var(--breadcrumb-pd-inline-end);
      @media (max-width: 991px) {
        padding-block: var(--breadcrumb-pd-block-start-mb) var(--breadcrumb-pd-block-end-mb);
        padding-inline: var(--breadcrumb-pd-inline-start-mb) var(--breadcrumb-pd-inline-end-mb);
      }
    }
    .breadcrumb-content-inner {
      display: flex;
      flex-direction: row;
      align-items: center;
      justify-content: var(--breadcrumb-alignment);
      gap: 0.5rem;
      @media (max-width: 991px) {
        gap: 0.25rem;
      }
    }
    .breadcrumb-divider {
      color: var(--color-text-divider);
      margin-inline: 0;
    }
    .breadcrumb-item {
      flex: none;
      color: var(--color-text-title);
      .inline-btn-label {
        flex-shrink: 0;
        width: max-content;
      }
    }
    .breadcrumb-content-inner > :last-child {
      color: var(--color-text-title-highlight);
      pointer-events: none;
    }
  }
/* END_SNIPPET:panel-page-heading-breadcrumb */

/* START_SNIPPET:panel-page-heading (INDEX:330) */
.sc-page-heading {
    padding-inline: var(--sc-mg-inline);
    @media (max-width: 991px) {
      padding-inline: var(--sc-mg-inline-mb);
    }
    .sc-page-heading-inner {
      contain: layout style var(--sc-overflow-contain);
      width: 100%;
      border-radius: var(--sc-radius);
      margin-block: var(--sc-mg-block) var(--sc-mg-block);
      @media (max-width: 991px) {
        margin-block: var(--sc-mg-block-mb) var(--sc-mg-block-mb);
      }
    }
    &[data-template='search'] .sc-page-heading-inner {
      contain: none;
    }
    .sc-page-heading-content {
      padding-block: var(--sc-pd-block-start) var(--sc-pd-block-end);
      padding-inline: var(--sc-pd-inline-start) var(--sc-pd-inline-end);
      @media (max-width: 991px) {
        padding-block: var(--sc-pd-block-start-mb) var(--sc-pd-block-end-mb);
        padding-inline: var(--sc-pd-inline-start-mb) var(--sc-pd-inline-end-mb);
      }
    }
    .sc-page-heading-content {
      display: flex;
      max-width: max(var(--sc-content-width), var(--sc-content-maxwidth));
      min-height: var(--sc-content-height);
      margin-inline: auto;
      @media (max-width: 991px) {
        min-height: var(--sc-content-height-mb);
      }
    }
    .sc-page-heading-content-inner {
      width: 100%;
      display: flex;
      flex-direction: column;
      align-items: var(--sc-alignment);
      justify-content: var(--sc-justify-content);
      gap: var(--sc-flex-gap, var(--heading_page-flex-gap));
      @media (max-width: 991px) {
        align-items: var(--sc-alignment-mb);
        justify-content: var(--sc-justify-content-mb);
        gap: var(--sc-flex-gap-mb, var(--heading_page-flex-gap-mb));
      }

      quick-filter[data-width='fit'] {
        .quick-filter-content-inner {
          justify-content: var(--sc-alignment);
          @media (max-width: 991px) {
            justify-content: var(--sc-alignment-mb);
          }
        }
      }
      page-tag[data-width='fit'] {
        .page-tags-content-inner {
          justify-content: var(--sc-alignment);
          @media (max-width: 991px) {
            justify-content: var(--sc-alignment-mb);
          }
        }
      }
      results-tab[data-width='fit'] {
        .page-result-tabs-content-inner {
          justify-content: var(--sc-alignment);
          @media (max-width: 991px) {
            justify-content: var(--sc-alignment-mb);
          }
        }
      }
    }
    .sc-page-heading-bg {
      background: var(--sc-background);
      background-repeat: no-repeat;
      border-radius: var(--sc-radius);
    }
  }
/* END_SNIPPET:panel-page-heading */

/* START_SNIPPET:panel-page-pagination (INDEX:331) */
.page-pagination {
    display: block;
    padding-inline: var(--sc_mg-mg-inline-start) var(--sc_mg-mg-inline-end);
    transition: opacity var(--trans-duration) var(--trans-easing), visibility var(--trans-duration) var(--trans-easing),
      height var(--trans-duration) var(--trans-easing), margin var(--trans-duration) var(--trans-easing),
      padding var(--trans-duration) var(--trans-easing);

    &.is-hidden {
      opacity: 0;
      visibility: hidden;
      pointer-events: none;
      height: 0;
      margin: 0 !important;
      padding: 0 !important;
      overflow: hidden;
    }

    @media (max-width: 991px) {
      padding-inline: var(--sc_mg-mg-inline-start-mb) var(--sc_mg-mg-inline-end-mb);
    }
    .page-pagination-inner {
      display: flex;
      align-items: stretch;
      contain: paint;
      position: relative;
      border-radius: var(--pagination-radius);
    }
    .page-pagination-content {
      position: relative;
      z-index: 2;
      width: 100%;
      padding-block: var(--pagination-pd-block-start) var(--pagination-pd-block-end);
      padding-inline: var(--pagination-pd-inline-start) var(--pagination-pd-inline-end);
      @media (max-width: 991px) {
        padding-block: var(--pagination-pd-block-start-mb) var(--pagination-pd-block-end-mb);
        padding-inline: var(--pagination-pd-inline-start-mb) var(--pagination-pd-inline-end-mb);
      }
    }
    .page-pagination-content-inner {
      position: relative;
      width: 100%;
      height: 100%;
      display: flex;
      justify-content: center;
      align-items: center;
      gap: 0.25rem;

      .page-pagination-item {
        width: 2.75rem;
        height: 2.75rem;
        display: flex;
        align-items: center;
        justify-content: center;
        color: var(--color-text-title);
        border-radius: var(--pagination-btn-radius);
        transition: all var(--trans-duration) var(--trans-easing);
      }
      .page-pagination-item a {
        color: inherit;
        text-decoration: none;
        display: flex;
        width: 100%;
        height: 100%;
        align-items: center;
        justify-content: center;
      }
      .page-pagination-nav a {
        display: flex;
        align-items: center;
        justify-content: center;
      }
      .page-pagination-nav-icon {
        width: 1.25rem;
        height: 1.25rem;
        display: flex;
        align-items: center;
        justify-content: center;
      }
      .page-pagination-item:hover:not(.page-pagination-item-active),
      .page-pagination-item:focus-visible:not(.page-pagination-item-active) {
        background-color: var(--button-alt-overlay);
        color: var(--color-text-title);
      }
      .page-pagination-item-active {
        color: var(--color-primary_button_text);
        background-color: var(--color-primary_button_background);
      }
      .page-pagination-nav {
        color: var(--color-indicator-inactive);
      }
      /* Mobile Responsive */
      @media (max-width: 991px) {
        .page-pagination-item {
          width: 2rem;
          height: 2rem;
          border-radius: var(--pagination-btn-radius);
          font-size: var(--typo-description-size);
          line-height: var(--typo-description-lh);
          @media (max-width: 991px) {
            font-size: var(--typo-description-size-mb);
            line-height: var(--typo-description-lh-mb);
          }
        }
        .page-pagination-nav-icon {
          width: 0.75rem;
          height: 0.75rem;
        }
      }
    }
    .page-pagination-bg {
      pointer-events: none;
      position: absolute;
      z-index: 1;
      inset: 0;
      border-radius: var(--pagination-radius);
      background: var(--pagination-background);
      background-repeat: no-repeat;
      background-size: calc(100% + var(--pagination-border-left) + var(--pagination-border-right))
        calc(100% + var(--pagination-border-top) + var(--pagination-border-bottom));
      background-position: calc(var(--pagination-border-left) * -1) calc(var(--pagination-border-top) * -1);
    }
  }

  /* Article Item Fade-in */
  .pagination-container > * {
    transition: opacity var(--trans-duration) var(--trans-easing), transform var(--trans-duration) var(--trans-easing);
    &.is-loading {
      opacity: 0;
      transform: translateY(10px);
    }
  }
/* END_SNIPPET:panel-page-pagination */

/* START_SNIPPET:panel-page-tags (INDEX:332) */
.page-tags {
    min-height: 1px;
    height: auto;
    width: var(--tag-size-width);
    max-width: var(--tag-size-max-width);
    @media (max-width: 991px) {
      width: 100%;
      height: auto;
      max-height: unset;
      max-width: unset;
    }
    .page-tags-inner {
      margin-block: var(--tag-mg-block-start) var(--tag-mg-block-end);
      margin-inline: var(--tag-mg-inline-start) var(--tag-mg-inline-end);
      @media (max-width: 991px) {
        margin-block: var(--tag-mg-block-start-mb) var(--tag-mg-block-end-mb);
        margin-inline: var(--tag-mg-inline-start-mb) var(--tag-mg-inline-end-mb);
      }
    }
    .page-tags-content-inner {
      width: 100%;
      height: 100%;
      display: flex;
      flex-wrap: wrap;
      justify-content: var(--tag-justify-content);
      gap: var(--tags-gap);

      @media (max-width: 991px) {
        justify-content: var(--tag-justify-content-mb);
        gap: var(--tags-gap-mb);
        overflow-x: auto;
        padding-bottom: 0.25rem;

        -webkit-overflow-scrolling: touch;
        scroll-behavior: smooth;
        > * {
          @media (max-width: 991px) {
            flex-shrink: 0;
            white-space: nowrap;
          }
        }
      }

      .tag-btn-content {
        position: relative;
        border: var(--tag-border);
        border-radius: var(--tag-radius);
        transition: border-color var(--trans-duration) var(--trans-easing);
        padding-inline: var(--tag-pd-inline);
        padding-block: var(--tag-pd-block);
        @media (max-width: 991px) {
          padding-inline: var(--tag-pd-inline-mb);
          padding-block: var(--tag-pd-block-mb);
        }
        .tag-btn-content-inner {
          display: flex;
          z-index: 2;
          flex-direction: column;
          .tag-btn-label {
            transition: color var(--trans-duration) var(--trans-easing);
            color: var(--tag-label-color);
            font-family: var(--tag-label-ff);
            font-size: var(--tag-label-fs);
            line-height: var(--tag-label-lh);
            font-weight: var(--tag-label-fw);
            @media (max-width: 991px) {
              font-size: var(--tag-label-fs-mb);
              line-height: var(--tag-label-lh-mb);
            }
          }
        }
        .tag-btn-bg {
          pointer-events: none;
          background: var(--tag-bg);
          border-color: var(--tag-border);
          position: absolute;
          inset: 0;
          border-radius: inherit;
          z-index: 1;
          transition: background-color var(--trans-duration) var(--trans-easing),
            border-color var(--trans-duration) var(--trans-easing);
        }

        &:not([aria-disabled]):not(:disabled) {
          &:hover {
            border: var(--tag-border-active);
            .tag-btn-label {
              color: var(--tag-label-color-hover);
            }
          }
        }
      }

      .tag-btn-content {
        cursor: pointer;
        position: relative;
        white-space: nowrap;

        .tag-btn-content-inner.active {
          .tag-btn-label {
            color: var(--tag-label-color-active);
          }
        }
        &:has(.tag-btn-content-inner.active) {
          border: var(--tag-border-active);
        }
        .tag-btn-content-inner.active ~ .tag-btn-line .tag-btn-line-inner {
          transform: scaleX(1);
          transform-origin: left;
        }
      }
      .tag-btn-divider {
        width: var(--1px);
        height: calc(1em - 0.25rem);
        background-color: var(--color-border-default);
        align-self: center;
      }
      .tag-btn-line {
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: var(--1px);
        display: var(--tag-input-line-display);
        .tag-btn-line-inner {
          display: block;
          width: 100%;
          height: 100%;
          background-color: var(--color-border-hover);
          transform-origin: right;
          transform: scaleX(0);
          transition: transform var(--trans-duration) var(--trans-easing);
        }
      }
      @media (hover: hover) {
        .tag-btn-content:hover .tag-btn-line-inner {
          transform: scaleX(1);
          transform-origin: left;
        }
      }
    }
  }
/* END_SNIPPET:panel-page-tags */

/* START_SNIPPET:panel-password-group (INDEX:333) */
.panel-password-group {
    position: relative;
    min-width: 1px;
    min-height: var(--ag-size-min-height);
    width: var(--ag-size-width);
    max-width: var(--ag-size-max-width);
    height: var(--ag-size-height);
    text-align: var(--ag-text-align);
    @media (max-width: 991px) {
      width: var(--ag-size-width-mb);
      height: var(--ag-size-height-mb);
      min-height: var(--ag-size-min-height-mb);
      text-align: var(--ag-text-align-mb);
      max-width: var(--ag-size-max-width-mb);
    }
    .ag-inner {
      contain: var(--ag-overflow-contain);
      position: relative;
      border-radius: var(--ag-radius);
      margin-block: var(--ag-mg-block-start) var(--ag-mg-block-end);
      margin-inline: var(--ag-mg-inline-start) var(--ag-mg-inline-end);
      @media (max-width: 991px) {
        margin-block: var(--ag-mg-block-start-mb) var(--ag-mg-block-end-mb);
        margin-inline: var(--ag-mg-inline-start-mb) var(--ag-mg-inline-end-mb);
      }
    }
    .ag-content {
      padding-block: var(--ag-pd-block-start) var(--ag-pd-block-end);
      padding-inline: var(--ag-pd-inline-start) var(--ag-pd-inline-end);
      @media (max-width: 991px) {
        padding-block: var(--ag-pd-block-start-mb) var(--ag-pd-block-end-mb);
        padding-inline: var(--ag-pd-inline-start-mb) var(--ag-pd-inline-end-mb);
      }
    }
    .ag-content-inner {
      width: 100%;
      height: 100%;
      display: flex;
      flex-direction: column;
      justify-content: var(--ag-justify-content);
      align-items: var(--ag-alignment);
      gap: var(--ag-flex-gap);
      max-width: 30rem;
      margin: auto;
      @media (max-width: 991px) {
        align-items: var(--ag-alignment-mb);
        justify-content: var(--ag-justify-content-mb);
        gap: var(--ag-flex-gap-mb);
        
      }
    }
    .ag-bg {
      border-radius: var(--ag-radius);
      background: var(--ag-background);
      background-repeat: no-repeat;
    }
  }
/* END_SNIPPET:panel-password-group */

/* START_SNIPPET:panel-password-information (INDEX:334) */
.panel-password-information {
    width: 100%;
    .pi-inner {
      .pi-content {
        .pi-content-inner {
          .pi-title {
            margin-block-start: 0.75rem;
            margin-block-end: 1rem;
            @media (max-width: 991px) {
              margin-block-start: 0;
              margin-block-end: 0.75rem;
            }
          }

          .pi-desc {
            font-size: var(--typo-paragraph-size);
            line-height: var(--typo-paragraph-lh);
            font-weight: var(--font-weight-regular);
            color: var(--color-text-subtitle);
            margin-block-end: 2.5rem;
            @media (max-width: 991px) {
              font-size: var(--typo-paragraph-size-mb);
              line-height: var(--typo-paragraph-lh-mb);
              margin-block-end: 2rem;
            }
          }

          .notification {
            margin-block-start: 0;
            margin-block-end: 1.25rem;
          }

          .pi-form {
            display: flex;
            flex-direction: column;
            gap: 1rem;
            text-align: left;
            @media (max-width: 991px) {
              gap: 0.75rem;
            }

            .pi-form-content {
              display: flex;
              flex-direction: column;
              gap: 0.25rem;

              .pi-form-name {
                display: flex;
                gap: 0.25rem;

                @media (max-width: 991px) {
                  flex-direction: column;
                }
              }
            }
            /* Input wrapper */
            .pi-field-text {
              width: 100%;
              display: flex;
              flex-direction: column;
              gap: 0.375rem;
              position: relative;
            }
          }

          .pi-actions {
            display: flex;
            flex-direction: column;
            margin-block-start: 1rem;
            text-align: center;
            align-items: center;
            gap: 0.5rem;
            .pi-owner-login-btn,
            .pi-enter-password-btn {
              span {
                @media (max-width: 991px) {
                  font-weight: var(--font-weight-medium);
                }
              }
            }
            .pi-or-text {
              @media (max-width: 991px) {
                color: var(--color-text-subtitle-highlight);
              }
            }
            .pi-owner-login-wrap {
              display: flex;
              align-items: center;
              justify-content: center;
              column-gap: 0.375rem;
            }
          }
        }
        .password-drawer {
          padding-inline: var(--modals-default-padding);
          padding-block-end: var(--modals-default-padding);

          @media (max-width: 991px) {
            padding-inline: var(--modals-default-padding-mb);
            padding-block-end: var(--modals-default-padding-mb);
          }
          .notification {
            margin-block-start: 0;
            margin-block-end: 0;
          }
          .pi-owner-login-wrap {
            display: flex;
            align-items: center;
            justify-content: center;
            column-gap: 0.375rem;
            margin-block-start: 2rem;
            @media (max-width: 991px) {
              margin-block-start: 1.5rem;
            }
          }
        }
      }
    }
  }
/* END_SNIPPET:panel-password-information */

/* START_SNIPPET:panel-password-media (INDEX:335) */
.alm {
    order: var(--alm-order, 0);
    min-width: 1px;
    min-height: var(--alm-size-min-height);
    width: var(--alm-size-width);
    max-width: var(--alm-size-max-width);
    height: var(--alm-size-height);
    @media (max-width: 991px) {
      width: var(--alm-size-width-mb);
      max-width: var(--alm-size-max-width-mb);
      height: var(--alm-size-height-mb);
      min-height: unset !important;
    }
    .alm-inner {
      border-radius: var(--alm-radius);
      margin-block: var(--alm-mg-block-start) var(--alm-mg-block-end);
      margin-inline: var(--alm-mg-inline-start) var(--alm-mg-inline-end);
      filter: var(--alm-filter);
      @media (max-width: 991px) {
        margin-block: var(--alm-mg-block-start-mb) var(--alm-mg-block-end-mb);
        margin-inline: var(--alm-mg-inline-start-mb) var(--alm-mg-inline-end-mb);
      }
    }
    .alm-content {
      position: relative;
      z-index: 2;
      width: 100%;
    }
  }
/* END_SNIPPET:panel-password-media */

/* START_SNIPPET:panel-pickup-availability (INDEX:336) */
local-pickup:not([hidden]) {
    display: block;
  }

  toggle-overlay {
    display: block;
  }

  /* Product info styles */
  .pickup-availability-v2 {
    .pickup-availability-inner {
      .pickup-location {
        display: flex;
        gap: 0.5rem;
        .status-dot {
          display: inline-block;
          margin-inline-start: max(-1px, 0.0625rem);
          vertical-align: middle;
          --status-dot-size: 0.375rem;
          width: var(--status-dot-size);
          height: var(--status-dot-size);
          border-radius: var(--radius-new-pill);

          &.status-dot--available {
            background-color: var(--color-status_success);
          }
          &.status-dot--unavailable {
            background-color: var(--color-status_error);
          }
        }
        .pickup-location-info {
          flex: 1;
          display: flex;
          flex-wrap: wrap;
          justify-content: space-between;
          align-items: center;
          gap: 0.75rem;
          @media screen and (max-width: 991px) {
            flex-direction: column;
            align-items: flex-start;
            gap: 0.75rem;
          }
          .pickup-location-info-details {
            & > *:not(:last-child) {
              margin-block-end: 0.25rem;
            }
          }
        }
      }
    }

    &:not(:has(.product-pickup-availability-inner)) {
      display: none;
    }
  }

  /* Modal styles */
  .pickup-location-drawer-wrap-v2 {
    .bento-box {
      padding-block: 1.5rem;
      padding-inline: 1.5rem;
      background-color: var(--color-surface-alt);
      border-radius: var(--radius-new-small);

      @media screen and (max-width: 991px) {
        padding-block: 1rem;
        padding-inline: 1rem;
      }
    }

    .pickup-location-list {
      .pickup-location-list-inner {
        display: flex;
        flex-direction: column;
        row-gap: 0.25rem;
        .pickup-location-list-item {
          .pickup-location-list-item-inner {
            .pickup-location-list-item-name {
              margin-bottom: 0.25rem;
            }
            .pickup-location-list-item-availability {
              padding-block-end: 0.75rem;
              margin-bottom: 1.5rem;
              border-bottom: var(--1px) solid var(--color-text-divider);
            }
            .pickup-location-list-item-address {
              display: flex;
              flex-direction: row;
              align-items: flex-start;
              gap: 0.75rem;
              font-style: normal;
              .link-block {
                height: 100%;
              }
              .text-with-icon {
                flex: 1;
                svg {
                  path {
                    stroke-width: 1;
                  }
                }
              }
            }
          }
        }
      }
    }
  }
/* END_SNIPPET:panel-pickup-availability */

/* START_SNIPPET:panel-product-buy-buttons (INDEX:337) */
.product-buy-buttons-v2 {
    container-type: inline-size;

    .add-to-cart-error {
      margin-block-start: 0;
      margin-block-end: 1rem;

      @media (max-width: 991px) {
        margin-block-start: 0;
        margin-block-end: 0.5rem;
      }
    }

    .product-buy-buttons-form-inner {
      display: grid;
      grid-template-columns: minmax(0px, 1fr) minmax(0px, 1fr);
      grid-template-rows: auto auto;
      gap: 0.25rem;
      grid-template-areas: var(--buy-buttons-grid-areas);

      @media (max-width: 991px) {
        grid-template-columns: minmax(0px, 1fr) minmax(0px, 1fr);
        .button-product-sold-out,
        .button-product-add-to-cart {
          --button-height: var(--button-md-height, auto);
        }
      }

      .accelerated-checkout-block {
        grid-column: span 2;
      }

      .btn-add-to-cart {
        grid-area: add-to-cart;
        &:disabled {
          background-color: var(--color-button_product_sold_out_background_disabled);
        }
      }

      .quantity-selector {
        grid-area: quantity;
        &[disabled] {
          background-color: var(--color-button_product_sold_out_background_disabled);
        }
      }

      .product-buy-buttons-form-status {
        grid-column: span 2;
      }
    }

    @container (max-width: 200px) {
      .product-buy-buttons-form-inner {
        grid-template-areas:
          'quantity quantity' 'add-to-cart add-to-cart'
          'accelerated-checkout accelerated-checkout';
      }
    }

    .gift-card-checkbox {
      margin-block-end: 1rem;
    }

    .gift-card-form {
      display: flex;
      flex-wrap: wrap;
      gap: var(--content-gap);
      margin-block-end: calc(var(--content-gap) * 3);
    }
  }
/* END_SNIPPET:panel-product-buy-buttons */

/* START_SNIPPET:panel-product-card (INDEX:338) */
.product-card {
    display: block;
    container-type: inline-size;

    &[data-visual-preview-mode] {
      width: 20rem;
    }

    .product-card-inner {
      height: 100%;
      position: relative;
      border-radius: var(--product-card-border-radius);
      overflow: hidden;

      .product-card-content {
        height: 100%;
        padding-block: var(--product-card-pd);
        padding-inline: var(--product-card-pd);

        .product-card-content-inner {
          height: 100%;
          display: flex;
          flex-direction: column;
          row-gap: 0.25rem;
        }
      }

      .product-card-bg {
        position: absolute;
        inset: 0;
        z-index: 1;
        pointer-events: none;
        border-radius: var(--product-card-border-radius);
        background: var(--product-card-bg-surface);
      }
    }

    /* Desktop */
    @media (min-width: 992px) {
      @container (max-width: 20rem) {
        .product-card-media {
          .product-card-quick-actions {
            .product-card-quick-actions-content {
              .product-card-quick-add,
              .product-card-quick-view {
                --btn-size-width: var(--button-input-height-medium);
                .btn-quick-action {
                  --button-pd-inline: 0;
                  .btn-quick-action-inner {
                    .btn-quick-action-content {
                      padding-inline: 0;
                      .btn-quick-action-content-inner {
                        .btn-quick-action-label {
                          display: none;
                        }
                        .btn-quick-action-icon {
                          display: flex;
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        }
      }
    }

    /* Mobile */
    @media (max-width: 991px) {
      @container (max-width: 20rem) {
        --quick-actions-top-mb: 0;
        --quick-actions-margin-inline-mb: auto 0;
        --product-card-quick-actions-transform-default-mb: translateX(75%);
        --product-card-quick-actions-transform-hover-mb: translateX(0);

        .product-card-media {
          .product-card-quick-actions {
            top: calc(-1 * var(--product-card-pd));
            right: calc(-1 * var(--product-card-pd));
            left: auto;
            bottom: auto;

            .product-card-quick-actions-content {
              grid-auto-flow: column;
              grid-template-columns: auto;
              grid-template-rows: auto;
              margin-inline: auto 0;

              .btn-quick-action-inner {
                .btn-quick-action-content {
                  width: var(--button-input-height-small);
                }
              }

              .product-card-quick-view {
                display: none;
              }

              .product-card-quick-add {
                --btn-size-width: var(--button-input-height-small);
                --btn-size-width-mb: var(--button-input-height-small);
              }

              .btn-quick-action {
                --btn-size-min-height: var(--button-input-height-small);
                --btn-size-min-height-mb: var(--button-input-height-small);
                --button-height: var(--button-input-height-small);
                --button-height-mb: var(--button-input-height-small);
                --button-pd-inline: 0;
                --button-pd-inline-mb: 0;
                --button-icon-size: var(--button-input-icon-small);
                --button-icon-size-mb: var(--button-input-icon-small);
                .btn-quick-action-inner {
                  .btn-quick-action-content {
                    padding-inline: 0;
                    .btn-quick-action-content-inner {
                      .btn-quick-action-label {
                        display: none;
                      }
                      .btn-quick-action-icon {
                        display: flex;
                      }
                    }
                  }
                }
              }
            }
          }
        }
      }
    }
  }

  .embla__slide > .product-card {
    height: 100%;
  }
/* END_SNIPPET:panel-product-card */

/* START_SNIPPET:panel-product-countdown-timer (INDEX:339) */
.panel-product-countdown-timer {
    .product-countdown-timer-label {
      em {
        color: var(--typo-color-highlight);
      }
      strong {
        font-weight: var(--font-weight-semibold);
      }
    }
  }
/* END_SNIPPET:panel-product-countdown-timer */

/* START_SNIPPET:panel-product-general-information (INDEX:340) */
.product-general-information {
    height: auto;
    .accordion-inner {
    }
    .accordion-content {
    }
    .accordion-content-inner {
      width: 100%;
      height: 100%;
      display: flex;
      flex-direction: column;
      justify-content: flex-start;
    }
    .accordion-row-items {
      display: flex;
      flex-direction: column;
      gap: var(--accordion-flex-gap);
      @media (max-width: 991px) {
        gap: var(--accordion-flex-gap-mb);
      }
      .accordion-body-content,
      .accordion__toggle {
        transition: all var(--trans-duration) var(--trans-easing);
      }

      .accordion-body-content {
        ul {
          list-style: inside;
        }
      }
    }

    /* Accordion Row Item Styles */
    accordion-component.accordion-row-item {
      min-width: 1px;
      min-height: 1px;
      width: 100%;
      height: auto;
      display: block;
      position: relative;
      counter-increment: accordion-counter;
    }

    .accordion-row-item-inner {
      border-radius: var(--acc-boxed-item-radius);
      border: var(--acc-border) solid var(--color-border-divider);
      text-align: left;
      background: var(--accordion-bg);
      @media (max-width: 991px) {
        border-radius: var(--acc-boxed-item-mb-radius);
        border: var(--acc-border-mb) solid var(--color-border-default);
      }

      &.active {
        .accordion-head-toggle .plus-vertical {
          transform: scaleY(0);
        }
        .accordion-head {
          padding-block-end: var(--acc-heading-padding-block-end);
        }
      }
    }

    .accordion-head {
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      column-gap: 1.5rem;
      cursor: pointer;
      padding-inline: var(--acc-item-padding-inline);
      padding-block: var(--acc-item-padding-block);
      padding-block-start: var(--acc-item-padding-block);
      padding-block-end: var(--acc-item-padding-block);
      transition: padding-block-end var(--trans-duration) var(--trans-easing);

      @media (max-width: 991px) {
        padding-inline: var(--acc-item-padding-inline-mb);
        padding-block: var(--acc-item-padding-block-mb);
      }

      .accordion-head-inner {
        display: flex;
        align-items: flex-start;
        gap: 0.75rem;
        .accordion-head-counter {
          color: var(--color-foreground_30);
          font-weight: var(--heading-font-weight);
          font-family: var(--heading-font-family);
          font-size: var(--heading-font-size);
          line-height: var(--heading-line-height);
          min-width: var(--acc-order-number-min-width);
          display: var(--acc-counter-display);
          &::before {
            content: counter(accordion-counter) '. ';
          }
          @media (max-width: 991px) {
            display: var(--acc-counter-display-mb);
            min-width: var(--acc-order-number-min-width-mb);
            font-family: var(--heading-font-family-mb);
            font-weight: var(--heading-font-weight-mb);
            line-height: var(--heading-line-height-mb);
            font-size: var(--heading-font-size-mb);
          }
        }
      }

      .accordion-head-toggle {
        margin-inline-start: max(0.1rem, 1px);
      }

      .accordion-head-title,
      .accordion-head-counter {
        transition: color var(--trans-duration) var(--trans-easing);
      }
    }

    .accordion-body {
      text-align: left;
      height: auto;
      padding-inline: var(--acc-item-padding-inline);
      transition: max-height var(--trans-duration) var(--trans-easing),
        opacity var(--trans-duration) var(--trans-easing);
      @media (max-width: 991px) {
        padding-inline: var(--acc-item-padding-inline-mb);
      }
      .accordion-body-inner {
        padding-inline-start: var(--accordion-order-number-padding-inline-start);
        padding-block-end: var(--acc-item-padding-block);
        @media (max-width: 991px) {
          padding-inline-start: var(--accordion-order-number-padding-inline-start-mb);
          padding-block-end: var(--acc-item-padding-block-mb);
        }
        &.unset-show-quantity {
          padding-inline-start: 0;
        }
      }
    }
  }
  .accordion-input-line {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: var(--color-border-divider);
    display: var(--accordion-input-line-display);
    .accordion-input-line-inner {
      display: block;
      width: 100%;
      height: 100%;
      background-color: var(--color-border-hover);
      transform-origin: right;
      transform: scaleX(0);
      transition: transform var(--trans-duration) var(--trans-easing);
    }
  }

  @media (hover: hover) {
    accordion-component:hover .accordion-input-line-inner {
      transform: scaleX(1);
      transform-origin: left;
    }
    .accordion-hover {
      .accordion-row-items:has(accordion-component:hover) accordion-component:not(:hover) {
        .accordion-head-title {
          color: var(--color-text-inactive);
        }
        .accordion-body-content {
          color: var(--color-text-inactive);
        }
      }
    }
  }

  .head-typo-target {
    font-family: var(--heading-font-family);
    font-size: var(--heading-font-size);
    font-weight: var(--heading-font-weight);
    line-height: var(--heading-line-height);
    letter-spacing: var(--heading-letter-spacing);
    text-transform: var(--heading-text-transform);
    em {
      font-style: normal;
      font-family: var(--typo-ff-highlight);
    }
  }
  .body-typo-target {
    font-family: var(--content-font-family);
    font-size: var(--content-font-size);
    font-weight: var(--content-font-weight);
    line-height: var(--content-line-height);
    letter-spacing: var(--content-letter-spacing);
    text-transform: var(--content-text-transform);
    em {
      font-style: normal;
      font-family: var(--typo-ff-highlight);
    }
    & > * {
      &:not(:last-child) {
        margin-bottom: var(--typo-paragraph-spacing);
        @media (max-width: 991px) {
          margin-bottom: var(--typo-paragraph-spacing-mb);
        }
      }
    }
  }
  @media (max-width: 991px) {
    .head-typo-target {
      font-family: var(--heading-font-family-mb);
      font-size: var(--heading-font-size-mb);
      font-weight: var(--heading-font-weight-mb);
      line-height: var(--heading-line-height-mb);
      letter-spacing: var(--heading-letter-spacing-mb);
      text-transform: var(--heading-text-transform-mb);
    }
    .body-typo-target {
      font-family: var(--content-font-family-mb);
      font-size: var(--content-font-size-mb);
      font-weight: var(--content-font-weight-mb);
      line-height: var(--content-line-height-mb);
      letter-spacing: var(--content-letter-spacing-mb);
      text-transform: var(--content-text-transform-mb);
    }
  }
/* END_SNIPPET:panel-product-general-information */

/* START_SNIPPET:panel-product-info (INDEX:341) */
.panel-product-info {
    grid-column: var(--layout-width);

    @media (max-width: 991px) {
      grid-column: span 2;
    }

    .panel-product-info-inner {
      height: 100%;
      background-color: var(--info-background, transparent);
      border-radius: var(--info-radius, 0px);

      padding-inline: var(--pd-inline-start) var(--pd-inline-end);
      padding-block: var(--pd-block-start) var(--pd-block-end);

      @media screen and (max-width: 991px) {
        grid-column: span 2;
        padding-inline: var(--pd-inline-start-mb) var(--pd-inline-end-mb);
        padding-block: var(--pd-block-start-mb) var(--pd-block-end-mb);
      }
    }

    &:has(.product-info-block-hidden) {
      display: none;
    }
  }
/* END_SNIPPET:panel-product-info */

/* START_SNIPPET:panel-product-information-details (INDEX:342) */
.panel-product-information-details {
    height: fit-content;
    position: sticky;
    top: var(--sidebar-top, var(--main-margin-top, var(--page-margin)));
    transition: top calc(var(--trans-duration) * 0.6) var(--trans-easing);
    @media (max-width: 991px) {
      grid-column: 1 / 2;
      grid-row: 2 / 3;
      top: auto;
      position: relative;
    }

    .product-information-details-inner {
      position: relative;
      border-radius: var(--details-radius, 0px);
      overflow: hidden;
    }

    .product-information-details-content {
      padding-block: var(--details-pd-block-start, 0px) var(--details-pd-block-end, 0px);
      padding-inline: var(--details-pd-inline-start, 0px) var(--details-pd-inline-end, 0px);
      @media (max-width: 991px) {
        padding-block: var(--details-pd-block-start-mb, 0px) var(--details-pd-block-end-mb, 0px);
        padding-inline: var(--details-pd-inline-start-mb, 0px) var(--details-pd-inline-end-mb, 0px);
      }
    }

    .product-information-details-content-inner {
      display: grid;
      grid-template-columns: minmax(0px, 1fr) minmax(0px, 1fr);
      gap: var(--pid-flex-gap);
      @media (max-width: 991px) {
        gap: var(--pid-flex-gap-mb);
      }

      & > .shopify-app-block {
        grid-column: span 2;
        background-color: var(--info-background, transparent);
        border-radius: var(--info-radius, 0px);
        padding-inline: var(--info-pd-inline-start, 0px) var(--info-pd-inline-end, 0px);
        padding-block: var(--info-pd-block-start, 0px) var(--info-pd-block-end, 0px);

        &:before {
          content: '';
          display: var(--divider-display);
          width: 100%;
          height: 1px;
          background-color: var(--color-border-default);
          margin-block-end: var(--pid-flex-gap);
        }

        div:empty {
          display: none;
        }
      }
    }

    .product-information-details-bg {
      pointer-events: none;
      position: absolute;
      z-index: -1;
      inset: 0;
      border-radius: var(--details-radius, 0px);
      background: var(--details-background);
      background-repeat: no-repeat;
    }
  }
/* END_SNIPPET:panel-product-information-details */

/* START_SNIPPET:panel-product-information-media (INDEX:343) */
.product-information-media {
    order: var(--order);
    height: fit-content;
    position: sticky;
    top: var(--sidebar-top, var(--main-margin-top, var(--page-margin)));

    @media (max-width: 991px) {
      height: auto;
      position: relative;
      top: auto;
      grid-column: 1 / 2;
      grid-row: 1 / 2;
    }

    .product-information-media-inner {
      padding: var(--media-padding);
      border-radius: var(--product_info-radius);
      background: var(--media-background);
      overflow: hidden;

      @media (max-width: 991px) {
        padding: 0.625rem;
        background: var(--color-background);
      }
    }

    .media-slider {
      display: block;
    }

    .embla {
      display: flex;
      flex-direction: column;
      justify-content: stretch;
      gap: 2rem;

      @media (max-width: 991px) {
        gap: 0.625rem;
      }

      .embla__viewport {
        width: 100%;
        border-radius: var(--product_info-radius);
        flex: 1;
        .embla__container {
          & > * {
            &:first-child {
              flex: 0 0 var(--first-slide-size-desktop);

              @media (max-width: 991px) {
                flex: 0 0 var(--slide-size-mobile);
              }
            }
          }
        }
      }

      .embla-thumbs {
        display: var(--thumbs-display);
        @media (max-width: 991px) {
          display: var(--thumbs-display-mb);
        }

        .embla-thumbs__viewport {
          position: relative;
          overflow: hidden;

          .embla-thumbs__container {
            display: flex;
            flex-wrap: nowrap;
            margin-left: calc(var(--thumbs-slide-spacing-desktop) * -1);

            @media (max-width: 991px) {
              margin-left: calc(var(--thumbs-slide-spacing-mobile) * -1);
            }

            .embla-thumbs__slide {
              flex: 0 0 var(--thumbs-slide-size-desktop);
              padding-left: var(--thumbs-slide-spacing-desktop);
              transform: translate3d(0, 0, 0);

              &:first-child {
                margin-inline-start: auto;
              }

              &:last-child {
                margin-inline-end: auto;
              }

              &.embla-thumbs__slide--selected {
                .thumbs-item {
                  border: var(--1px) solid var(--color-foreground);
                }
              }

              @media (max-width: 991px) {
                flex: 0 0 var(--thumbs-slide-size-mobile);
                padding-left: var(--thumbs-slide-spacing-mobile, var(--thumbs-slide-spacing-desktop));
              }
            }
          }
        }
      }
    }

    .media-item {
      display: block;
      background: var(--media-item-background);
      border-radius: var(--product_info-radius);
      overflow: hidden;
      aspect-ratio: var(--aspect-ratio);
      position: relative;

      @media (max-width: 991px) {
        aspect-ratio: var(--aspect-ratio-mb);
      }

      &:focus-visible {
        outline: none;
      }

      img,
      svg {
        max-width: 100%;
        max-height: 100%;
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
        border-radius: var(--media-item-image-radius);

        @media (max-width: 991px) {
          object-fit: cover;
        }
      }

      .zoom-button-wrap {
        display: var(--zoom-button-display);
        width: 100%;
        height: 100%;
        cursor: zoom-in;

        position: absolute;
        top: 0;
        left: 0;
        z-index: 3;

        @media (hover: hover) {
          opacity: 0;
          visibility: hidden;
          transition: all var(--trans-duration) var(--trans-ease-smooth);
        }

        @media screen and (max-width: 991px) {
          display: var(--zoom-button-display-mb);
        }

        .zoom-button {
          position: absolute;
          top: 1.25rem;
          right: 1.25rem;
          z-index: 1;

          @media (max-width: 991px) {
            top: 0.75rem;
            right: 0.75rem;
          }
        }
      }

      @media (hover: hover) {
        &:hover {
          .zoom-button-wrap {
            opacity: 1;
            visibility: visible;
          }
        }
      }
    }

    .thumbs-item {
      aspect-ratio: 1 / 1;
      cursor: pointer;
      border-radius: var(--media-item-image-radius);
      overflow: hidden;
      border: var(--1px) solid transparent;
      transition: all var(--trans-duration) var(--trans-easing);
      position: relative;

      &:hover {
        outline-color: var(--color-border-default);
      }

      &:has(.thumbs-item-play-icon) {
        position: relative;
      }

      .thumbs-item-play-icon {
        width: 2rem;
        height: 2rem;
        position: absolute;
        z-index: 1;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        color: var(--color-background);
      }

      img,
      svg {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
      }

      .thumbs-item-icon {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        z-index: 1;
        width: 2rem;
        height: 2rem;
        display: flex;
        justify-content: center;
        align-items: center;
        pointer-events: none;

        @media (max-width: 991px) {
          width: 1.5rem;
          height: 1.5rem;
        }

        .thumbs-item-icon-inner {
          background-color: var(--color-background);
          color: var(--color-foreground);
          width: 100%;
          height: 100%;
          border-radius: var(--radius-button-input-theme-st);
          display: flex;
          justify-content: center;
          align-items: center;

          .thumbs-item-icon-content {
            width: 1.25rem;
            height: 1.25rem;
            display: flex;
            justify-content: center;
            align-items: center;

            @media (max-width: 991px) {
              width: 0.75rem;
              height: 0.75rem;
            }
          }
        }
      }
    }

    &.full-height {
      min-height: 43.75rem;
      height: calc(100vh - var(--sidebar-top, 0px) - (var(--section-gap, 0px) * 2));
      max-height: 87.5rem;
      transition: all var(--trans-duration) var(--trans-easing);

      @media (max-width: 991px) {
        min-height: auto;
        height: auto;
        max-height: none;
      }

      .product-information-media-inner,
      .media-slider,
      .embla,
      .embla__container {
        height: 100%;

        @media (max-width: 991px) {
          height: auto;
        }
      }

      .media-item {
        width: 100%;
        height: 100%;
        & > img,
        & > svg {
          position: absolute;
          top: 0;
          left: 0;
          z-index: 1;

          @media (max-width: 991px) {
            position: unset;
          }
        }
      }
    }
  }
/* END_SNIPPET:panel-product-information-media */

/* START_SNIPPET:panel-product-listing (INDEX:344) */
.product-listing {
    width: 100%;
    &[data-visual-preview-mode] {
      [data-items-per-row-desktop='5'] {
        product-card {
          width: 100%;
        }
      }
      [data-items-per-row-desktop='1'] {
        width: 20rem;
      }
    }
    product-listing-component {
      display: block;
    }
    .product-listing-inner {
      .product-listing-content {
        padding-block: var(--product_listing-pd-block-start) var(--product_listing-pd-block-end);
        padding-inline: var(--product_listing-pd-inline-start) var(--product_listing-pd-inline-end);
        @media (max-width: 991px) {
          padding-block: var(--product_listing-pd-block-start-mb) var(--product_listing-pd-block-end-mb);
          padding-inline: var(--product_listing-pd-inline-start-mb) var(--product_listing-pd-inline-end-mb);
        }
      }
    }
  }
/* END_SNIPPET:panel-product-listing */

/* START_SNIPPET:panel-product-recommendations-card (INDEX:345) */
.product-recommendations-card {
    width: 100%;
    height: 100%;
    display: block;

    .product-recommendations-card-inner {
      width: 100%;
      height: 100%;
      position: relative;
      border-radius: var(--product-card-radius);
      overflow: hidden;
    }

    .product-recommendations-card-content {
      width: 100%;
      height: 100%;
      padding-inline: var(--product-card-pd-inline);
      padding-block: var(--product-card-pd-block);

      position: relative;
      z-index: 2;
    }

    .product-recommendations-card-content-inner {
      width: 100%;
      height: 100%;
      display: flex;
      align-items: center;
      column-gap: 1rem;

      @media (max-width: 991px) {
        column-gap: 0.625rem;
      }
    }

    .product-recommendations-card-media {
      display: block;
      flex-shrink: 0;
      width: 5.625rem;
      aspect-ratio: var(--product-card-media-aspect-ratio);
      border-radius: var(--radius-new-x-small);
      overflow: hidden;
      position: relative;

      img {
        width: 100%;
        height: 100%;
        object-fit: cover;

        position: relative;
        z-index: 2;
      }

      .product-recommendations-card-media-bg {
        position: absolute;
        inset: 0;
        z-index: 1;
        background: linear-gradient(var(--color-foreground_04), var(--color-foreground_04)),
          linear-gradient(var(--color-background), var(--color-background));
        pointer-events: none;
      }
    }

    .product-recommendations-card-info {
      flex: 1;
      display: flex;
      flex-direction: column;
      row-gap: var(--product-card-info-row-gap);
      justify-content: center;

      @media (max-width: 991px) {
        white-space: nowrap;
        overflow: hidden;
      }

      @media (hover: hover) {
        transition: transform var(--trans-duration) var(--trans-ease-smooth);
        transform: translateY(calc((var(--input-height-medium) + var(--product-card-info-row-gap)) / 2));
      }

      .product-recommendations-card-title {
        .product-recommendations-card-title-link {
          position: relative;
          display: block;
          .product-recommendations-card-title-text {
            max-width: 100%;
            width: 100%;
            display: block;
            position: relative;
            overflow: hidden;

            .product-recommendations-card-title-text-inner {
              display: -webkit-box;
              -webkit-box-orient: vertical;
              overflow: hidden;
              transition: transform var(--trans-duration) var(--trans-ease-smooth);
              transform: translateY(0);
              white-space: normal;
            }

            &::after {
              content: attr(data-text);
              position: absolute;
              top: 0;
              left: 0;
              width: 100%;
              height: 100%;
              display: -webkit-box;
              -webkit-box-orient: vertical;
              overflow: hidden;
              transform: translateY(100%);
              transition: transform var(--trans-duration) var(--trans-ease-smooth);
              white-space: normal;
            }
          }

          @media (hover: hover) {
            &:hover,
            &:focus-visible {
              .product-recommendations-card-title-text-inner {
                transform: translateY(-100%);
              }

              .product-recommendations-card-title-text::after {
                transform: translateY(0);
              }
            }
          }
        }
      }

      .product-recommendations-card-price {
        .product-recommendations-card-price-content {
          display: flex;
          justify-content: space-between;
          gap: 0.5rem;
          @media (max-width: 991px) {
            gap: 0.25rem;
          }
        }

        .price-wrapper {
          display: flex;
          align-items: center;
          flex-wrap: wrap;
          column-gap: 0.25rem;
          white-space: nowrap;

          .price-range-label {
            display: var(--product-card-info-price-range-label-display);
            @media screen and (max-width: 991px) {
              display: var(--product-card-info-price-range-label-display-mb);
            }
          }
        }

        .unit-price-wrapper {
          display: var(--product-card-info-unit-price-display);
          @media screen and (max-width: 991px) {
            display: var(--product-card-info-unit-price-display-mb);
          }
        }
      }

      .product-recommendations-card-quick-add {
        margin-block-start: var(--product-card-info-actions-mg-block-start, 0.25rem);
        padding-block-start: 0.25rem;
        @media (max-width: 991px) {
          padding-block-start: 0.375rem;
        }
      }
    }

    .product-recommendations-card-bg {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      background: var(--product-card-bg);
      border-radius: var(--product-card-radius);
      z-index: 1;
    }

    &:hover,
    &:has(a:focus-visible, button:focus-visible) {
      .product-recommendations-card-info {
        transform: translateY(0);
      }
    }
  }
/* END_SNIPPET:panel-product-recommendations-card */

/* START_SNIPPET:panel-product-recommendations-heading (INDEX:346) */
.panel-product-recommendations-heading {
    .title-product-recommendations-inner {
      color: var(--color-text-title);
      em {
        color: var(--color-text-title-highlight);
      }
      a,
      button {
        color: var(--color-text-title-link);
        &:hover {
          color: var(--color-text-title-link-hover);
        }
      }
    }
  }
/* END_SNIPPET:panel-product-recommendations-heading */

/* START_SNIPPET:panel-product-recommendations (INDEX:347) */
.product-recommendations {
    display: block;
    .product-recommendations-inner {
      .product-recommendations-heading {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-block-end: 1.25rem;

        @media screen and (max-width: 991px) {
          margin-block-end: 0.75rem;
        }

        .product-recommendations-heading-slider-navigation {
          .slider-control-item {
            background-color: var(--color-surface-alt);
          }
        }
      }
    }
  }
/* END_SNIPPET:panel-product-recommendations */

/* START_SNIPPET:panel-product-share (INDEX:348) */
.product-share {
    .product-share-inner {
      @media (max-width: 991px) {
        gap: 0.75rem;
      }
    }

    .product-share-content-inner {
      display: flex;
      flex-direction: row;
      gap: 0.75rem;
      justify-content: space-between;

      @media (max-width: 991px) {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.75rem;
      }
    }

    .sharing-options {
      max-width: 75%;
      @media (max-width: 991px) {
        max-width: 100%;
      }
      .sharing-options-inner {
        display: flex;
        gap: 0.75rem;
        align-items: flex-start;

        .sharing-options-title {
          flex-shrink: 0;
          height: var(--sharing-options-title-height);
          display: flex;
          align-items: center;
          @media (max-width: 991px) {
            height: var(--sharing-options-title-height-mb);
          }
        }

        .sharing-options-list {
          display: flex;
          flex-wrap: wrap;
          gap: 0.5rem;
        }
      }
    }

    .help-desk {
      flex-shrink: 0;
      height: var(--sharing-options-title-height);
      display: flex;
      align-items: center;
      @media (max-width: 991px) {
        height: var(--sharing-options-title-height-mb);
      }
      .help-desk-contact-form {
        width: 100%;
        .contact-form-controls-wrap {
          display: flex;
          flex-wrap: wrap;
          gap: 0.25rem;
        }

        .contact-form-status {
          width: 100%;
          grid-column: span 2;
          &:focus-visible {
            outline: none;
          }
        }

        .contact-form-submit {
          margin-block-start: 1rem;

          @media (max-width: 991px) {
            margin-block-start: 0.5rem;
          }
        }
      }
    }
  }
/* END_SNIPPET:panel-product-share */

/* START_SNIPPET:panel-product-sticky-card (INDEX:349) */
.product-sticky-card {
    max-width: 28.125rem;
    width: 100%;
    display: block;

    position: fixed;
    bottom: 1.25rem;
    right: 1.25rem;
    z-index: 100;

    opacity: 0;
    visibility: hidden;
    transform: translateY(10%);
    transition: all var(--trans-duration) var(--trans-ease-smooth);

    @media (max-width: 991px) {
      max-width: 100%;
      left: 0;
      right: 0;
      bottom: 0;
    }

    &.fade-in-up {
      opacity: 1;
      visibility: visible;
      transform: translateY(0);
    }

    .product-sticky-card-inner {
      width: 100%;
      height: 100%;
      position: relative;
      overflow: hidden;
      border-radius: var(--product-card-radius);
      box-shadow: 0px 0.375rem 1.25rem 0px rgba(149, 157, 165, 0.2);

      @media (max-width: 991px) {
        border-radius: 0;
        box-shadow: none;
      }
    }

    .product-sticky-card-content {
      width: 100%;
      height: 100%;
      padding-inline: 0.625rem;
      padding-block: 0.625rem;

      @media (max-width: 991px) {
        padding-inline: 1rem;
        padding-block: 0.75rem 1rem;
      }
    }

    .product-sticky-card-content-inner {
      width: 100%;
      height: 100%;
      display: flex;
      align-items: center;
      column-gap: 1rem;

      @media (max-width: 991px) {
        column-gap: 0.625rem;
      }
    }

    .product-sticky-card-media {
      display: block;
      flex-shrink: 0;
      width: 5.625rem;
      aspect-ratio: var(--product-card-media-aspect-ratio);
      border-radius: var(--radius-new-x-small);
      overflow: hidden;
      position: relative;
      background: var(--color-background-linear);

      @media (max-width: 991px) {
        display: none;
      }

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

    .product-sticky-card-info {
      flex: 1;
      display: flex;
      flex-direction: column;
      row-gap: var(--product-card-info-row-gap);
      justify-content: center;

      .product-sticky-card-price {
        .product-sticky-card-price-content {
          display: flex;
          justify-content: space-between;
          gap: 0.5rem;
          @media (max-width: 991px) {
            gap: 0.25rem;
          }
        }

        .price-wrapper {
          display: flex;
          align-items: center;
          column-gap: 0.25rem;
          white-space: nowrap;

          .price-range-label {
            display: var(--product-card-info-price-range-label-display);
            @media screen and (max-width: 991px) {
              display: var(--product-card-info-price-range-label-display-mb);
            }
          }
        }

        .unit-price-wrapper {
          display: var(--product-card-info-unit-price-display);
          @media screen and (max-width: 991px) {
            display: var(--product-card-info-unit-price-display-mb);
          }
        }
      }

      .product-sticky-card-quick-add {
        margin-block-start: var(--product-card-info-actions-mg-block-start, 0.25rem);
        padding-block-start: 0.25rem;
        @media (max-width: 991px) {
          position: absolute;
          right: var(--page-margin-mb);
          top: 50%;
          transform: translateY(-50%);
          margin-block-start: 0;
          padding-block-start: 0;
        }
      }
    }

    .product-sticky-card-bg {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      background: var(--product-card-bg);
      border: var(--1px) solid var(--color-border-divider);
      z-index: -1;
      border-radius: inherit;

      @media (max-width: 991px) {
        border-left: none;
        border-right: none;
        border-bottom: none;
      }
    }
  }
/* END_SNIPPET:panel-product-sticky-card */

/* START_SNIPPET:panel-product-variant-picker (INDEX:350) */
.variant-picker {
    grid-column: span 2;
    @media screen and (max-width: 991px) {
      grid-column: span 2;
    }

    .variant-picker-form {
      .variant-picker-form-inner {
        display: flex;
        flex-wrap: wrap;
        gap: var(--pid-flex-gap);

        @media screen and (max-width: 991px) {
          flex-direction: column;
          gap: var(--pid-flex-gap-mb);
        }

        .variant-option {
          width: var(--variant-option-width);
          border: none;

          &:last-child:nth-child(odd) {
            width: 100%;
          }

          @media screen and (max-width: 991px) {
            width: 100%;
          }

          .variant-option-legend {
            margin-block-end: 0.75rem;

            .variant-option-legend-content {
              display: flex;
              align-items: center;
              justify-content: space-between;
              gap: 0.5rem;

              .variant-option-size-chart-trigger {
                display: flex;
              }
            }
          }

          /* Option list: buttons / swatches */
          .variant-option-list-button {
            display: flex;
            flex-wrap: wrap;
            gap: 0.25rem;

            .variant-option-button-wrap {
              cursor: pointer;
              position: relative;

              input {
                position: absolute;
                top: 0;
                left: 0;
                width: 100%;
                height: 100%;
                z-index: -1;
                opacity: 0;
                cursor: pointer;
                &:focus-visible {
                  outline: none;
                }
              }

              .variant-option-button {
                min-width: var(--variant-option-button-size);
                height: var(--variant-option-button-size);
                flex-shrink: 0;

                .variant-option-button-inner {
                  width: 100%;
                  height: 100%;
                  padding-inline: var(--variant-option-button-padding-inline);
                  border-radius: var(--variant-picker-swatch-border-radius);
                  overflow: hidden;
                  position: relative;
                }

                .variant-option-button-content {
                  width: 100%;
                  height: 100%;
                  display: flex;
                  justify-content: center;
                  align-items: center;
                  position: relative;
                  z-index: 1;

                  .variant-option-button-text {
                    transition: all var(--trans-duration) var(--trans-easing);
                    .text-custom-content-inner {
                      transition: color var(--trans-duration) var(--trans-easing);
                    }
                  }
                }

                .variant-option-button-strikethrough {
                  display: none;
                  position: absolute;
                  top: 0;
                  left: 0;
                  width: 100%;
                  height: 100%;
                  z-index: 2;
                  overflow: hidden;
                  color: var(--color-foreground_30);
                }

                .variant-option-button-bg {
                  position: absolute;
                  inset: 0;
                  border-radius: inherit;
                  border: var(--button-border-width) solid var(--color-border-default);
                  background-color: var(--color-background);
                  transition: all var(--trans-duration) var(--trans-easing);
                  z-index: 0;
                }
              }

              /* Disabled state */
              &.variant-option-button-wrap-disabled {
                .variant-option-button {
                  color: var(--color-text-disabled);
                  .variant-option-button-bg {
                    border-color: var(--color-border-disable);
                  }
                  .variant-option-button-text {
                    .text-custom-content-inner {
                      color: var(--color-text-disabled);
                    }
                  }
                  .variant-option-button-strikethrough {
                    display: block;
                  }
                }
              }

              /* Hover state */
              @media (hover: hover) {
                &:hover,
                &:focus-visible {
                  /* Style swatch */
                  .variant-picker-swatch-wrap {
                    .variant-picker-swatch {
                      outline-color: var(--color-foreground);
                    }
                  }

                  /* Style button */
                  .variant-option-button-bg {
                    border-color: var(--color-foreground);
                  }
                }
              }

              /* Checked state */
              &:has(:checked) {
                /* Style swatch */
                .variant-picker-swatch-wrap {
                  .variant-picker-swatch {
                    outline-color: var(--color-foreground);
                  }
                }

                /* Style button */
                .variant-option-button {
                  .variant-option-button-inner {
                    .variant-option-button-bg {
                      border-color: var(--color-foreground);
                      background-color: var(--color-foreground);
                    }
                  }
                  .variant-option-button-text {
                    .text-custom-content-inner {
                      color: var(--color-background);
                    }
                  }
                  .variant-option-button-strikethrough {
                    svg {
                      color: var(--color-background);
                    }
                  }
                }
              }

              /* Focus-visible state */
              &:has(input:focus-visible) {
                .variant-picker-swatch-wrap {
                  .variant-picker-swatch {
                    outline-color: var(--color-keyboard-focus-visible);
                  }
                }
                .variant-option-button {
                  .variant-option-button-inner {
                    .variant-option-button-bg {
                      border-color: var(--color-keyboard-focus-visible);
                    }
                  }
                }
              }
            }
          }
        }

        /* Dropdown style variant option */
        .variant-option.variant-style-dropdown {
          .field {
            width: 100%;
          }
        }
      }
    }
  }
/* END_SNIPPET:panel-product-variant-picker */

/* START_SNIPPET:panel-quantity-selector (INDEX:351) */
.quantity-selector {
    width: 100%;
    max-width: var(--quantity-selector-width);
    height: var(--quantity-selector-height);
    display: flex;
    align-items: center;
    transition: all var(--trans-duration) var(--trans-easing);

    border: var(--1px) solid var(--color-border-default);
    border-color: var(--quantity-selector-border-color-default);
    border-radius: var(--quantity-selector-radius);
    background: var(--quantity-selector-bg-default);

    position: relative;
    @media (max-width: 991px) {
      max-width: var(--quantity-selector-width-mb);
      height: var(--quantity-selector-height-mb);
      border-radius: var(--quantity-selector-radius-mb);
      &[disabled] {
        max-width: unset;
      }
    }

    input {
      width: 100%;
      height: 100%;
      text-align: center;
      color: var(--color-text-input-default);
      font-size: var(--quantity-number-font-size);
      line-height: 1;
      font-weight: var(--font-weight-medium);

      &::-webkit-outer-spin-button,
      &::-webkit-inner-spin-button {
        -webkit-appearance: none;
        margin: 0;
        -moz-appearance: textfield;
      }
      &[disabled] {
        color: var(--color-secondary_button_text_disabled);
        cursor: not-allowed;
      }
    }

    button {
      width: auto;
      height: 100%;

      display: flex;
      justify-content: center;
      align-items: center;

      aspect-ratio: 1;
      flex-shrink: 0;
      color: var(--color-foreground_60);
      transition: all var(--trans-duration) var(--trans-easing);
      @media (hover: none) {
        color: var(--color-border-hover);
      }
      &:hover,
      &:focus {
        color: var(--color-border-hover);
      }
      &[disabled] {
        color: var(--color-foreground_30);
        &:hover,
        &:focus {
          color: var(--color-foreground_30);
        }
      }
      .svg-wrapper {
        width: var(--quantity-icon-size);
        height: var(--quantity-icon-size);
        display: flex;
        align-items: center;
        justify-content: center;
        transition: all var(--trans-duration) var(--trans-easing);
      }
    }

    &:has(input:focus) {
      border-color: var(--quantity-selector-border-color-focus);
    }

    &[disabled]:hover,
    &[disabled]:focus,
    &[disabled]:active {
      box-shadow: none;
      transform: none;
    }

    &:hover {
      background-color: var(--quantity-selector-bg-hover);
      border-color: var(--quantity-selector-border-color-hover);
    }

    &:focus {
      background-color: var(--quantity-selector-bg-focus);
      border-color: var(--quantity-selector-border-color-focus);
      outline: none;
    }

    &[disabled] {
      color: var(--color-secondary_button_text_disabled);
      background: var(--button-bg-disabled);
      cursor: not-allowed;
    }
  }
/* END_SNIPPET:panel-quantity-selector */

/* START_SNIPPET:panel-quick-view-buy-buttons (INDEX:352) */
.quick-add-buy-buttons {
    height: 100%;

    @media (max-width: 991px) {
      height: auto;
    }

    .add-to-cart-error {
      margin-block-start: 0;
      margin-block-end: 1rem;

      @media (max-width: 991px) {
        margin-block-start: 0;
        margin-block-end: 0.5rem;
      }
    }

    .product-buy-buttons-form-inner {
      height: 100%;
      display: grid;
      grid-template-columns: minmax(0px, 1fr) minmax(0px, 1fr);
      grid-template-rows: auto auto;
      gap: 0.25rem;
      grid-template-areas: var(--buy-buttons-grid-areas);

      @media (max-width: 991px) {
        grid-template-columns: minmax(0px, 1fr) minmax(0px, 1fr);
        .button-product-sold-out,
        .btn-add-to-cart {
          --button-height: var(--button-md-height, auto);
        }
      }

      .accelerated-checkout-block {
        grid-column: span 2;
      }

      .btn-add-to-cart {
        grid-area: add-to-cart;
        &:disabled {
          background-color: var(--color-button_product_sold_out_background_disabled);
        }
      }

      .quantity-selector {
        grid-area: quantity;
        &[disabled] {
          background-color: var(--color-button_product_sold_out_background_disabled);
        }
      }

      .product-buy-buttons-form-status {
        grid-column: span 2;
      }
    }

    .gift-card-checkbox {
      margin-block-end: 1rem;
    }

    .gift-card-form {
      display: flex;
      flex-wrap: wrap;
      gap: var(--content-gap);
      margin-block-end: calc(var(--content-gap) * 3);
    }
  }
/* END_SNIPPET:panel-quick-view-buy-buttons */

/* START_SNIPPET:panel-quick-view-details (INDEX:353) */
.panel-quick-view-details {
    .quick-view-details-inner {
      border-radius: var(--details-radius, 0px);
    }

    .quick-view-details-content {
      padding-block-start: 1rem;
      @media (max-width: 991px) {
        padding-block-end: 1rem;
      }
    }

    .quick-view-details-content-inner {
      width: 100%;
      display: flex;
      flex-direction: column;
      gap: var(--info-flex-gap);
      @media (max-width: 991px) {
        gap: var(--info-flex-gap-mb);
      }
    }

    .quick-view-details-bg {
      pointer-events: none;
      position: absolute;
      z-index: -1;
      inset: 0;
      border-radius: var(--details-radius, 0px);
      background: var(--details-background);
      background-repeat: no-repeat;
    }
  }
/* END_SNIPPET:panel-quick-view-details */

/* START_SNIPPET:panel-quick-view-media (INDEX:355) */
.quick-view-media {
    height: 100%;

    @media (max-width: 991px) {
      min-height: auto;
      height: auto;
      max-height: none;
    }

    .quick-view-media-inner,
    .media-slider,
    .embla,
    .embla__container {
      height: 100%;
      @media (max-width: 991px) {
        height: auto;
      }
    }

    .quick-view-media-inner {
      overflow: hidden;
    }

    .media-slider {
      display: block;
    }

    .embla {
      display: flex;
      flex-direction: column;
      justify-content: stretch;
      gap: var(--modals-default-padding);

      @media (max-width: 991px) {
        gap: 0.625rem;
      }

      .embla__viewport {
        width: 100%;
        border-radius: var(--qv-radius);
        background: var(--color-background);
        overflow: hidden;
        flex: 1;
      }

      .embla-thumbs {
        display: var(--thumbs-display);
        @media (max-width: 991px) {
          display: var(--thumbs-display-mb);
        }

        .embla-thumbs__viewport {
          position: relative;
          overflow: hidden;

          .embla-thumbs__container {
            display: flex;
            flex-wrap: nowrap;
            margin-left: calc(var(--thumbs-slide-spacing-desktop) * -1);

            @media (max-width: 991px) {
              margin-left: calc(var(--thumbs-slide-spacing-mobile) * -1);
            }

            .embla-thumbs__slide {
              flex: 0 0 var(--thumbs-slide-size-desktop);
              padding-left: var(--thumbs-slide-spacing-desktop);
              transform: translate3d(0, 0, 0);

              @media (max-width: 991px) {
                flex: 0 0 var(--thumbs-slide-size-mobile);
                padding-left: var(--thumbs-slide-spacing-mobile, var(--thumbs-slide-spacing-desktop));
              }

              &:first-child {
                margin-inline-start: auto;
              }

              &:last-child {
                margin-inline-end: auto;
              }

              &.embla-thumbs__slide--selected {
                .thumbs-item {
                  border-color: var(--color-foreground);
                }
              }
            }
          }
        }
      }
    }

    .media-item {
      position: relative;
      width: 100%;
      height: 100%;

      &:focus-visible {
        outline: none;
      }

      img {
        max-width: 100%;
        max-height: 100%;
        aspect-ratio: 1 / 1;
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
        border-radius: var(--media-item-image-radius);
        margin: auto;

        @media (max-width: 991px) {
          aspect-ratio: var(--aspect-ratio-mb);
          object-fit: cover;
        }
      }
    }

    .thumbs-item {
      aspect-ratio: 1 / 1;
      cursor: pointer;
      border-radius: var(--media-item-image-radius);
      overflow: hidden;
      border: var(--1px) solid transparent;
      transition: all var(--trans-duration) var(--trans-easing);
      position: relative;

      &:hover {
        border-color: var(--color-border-default);
      }

      &:has(.thumbs-item-play-icon) {
        position: relative;
      }

      .thumbs-item-play-icon {
        width: 2rem;
        height: 2rem;
        position: absolute;
        z-index: 1;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        color: var(--color-background);
      }

      img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
      }

      .thumbs-item-icon {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        z-index: 1;
        width: 2rem;
        height: 2rem;
        display: flex;
        justify-content: center;
        align-items: center;
        pointer-events: none;

        @media (max-width: 991px) {
          width: 1.5rem;
          height: 1.5rem;
        }

        .thumbs-item-icon-inner {
          background-color: var(--color-background);
          color: var(--color-foreground);
          width: 100%;
          height: 100%;
          border-radius: var(--radius-button-input-theme-st);
          display: flex;
          justify-content: center;
          align-items: center;

          .thumbs-item-icon-content {
            width: 1.25rem;
            height: 1.25rem;
            display: flex;
            justify-content: center;
            align-items: center;

            @media (max-width: 991px) {
              width: 0.75rem;
              height: 0.75rem;
            }
          }
        }
      }
    }
  }
/* END_SNIPPET:panel-quick-view-media */

/* START_SNIPPET:panel-quick-view-picker (INDEX:356) */
.quick-add-picker {
    .variant-picker-form {
      .variant-picker-form-inner {
        display: flex;
        flex-wrap: wrap;
        gap: var(--info-flex-gap);

        @media screen and (max-width: 991px) {
          flex-direction: column;
          gap: var(--info-flex-gap-mb);
        }

        .variant-option {
          width: var(--variant-option-width);
          border: none;
          padding: 0;

          &:last-child:nth-child(odd) {
            width: 100%;
          }

          @media screen and (max-width: 991px) {
            width: 100%;
          }

          .variant-option-legend {
            margin-block-end: 0.75rem;

            .variant-option-legend-content {
              display: flex;
              align-items: center;
              justify-content: space-between;
              gap: 0.5rem;

              .variant-option-size-chart-trigger {
                display: flex;
              }
            }
          }

          /* Option list: buttons / swatches */
          .variant-option-list-button {
            display: flex;
            flex-wrap: wrap;
            gap: 0.25rem;

            .variant-option-button-wrap {
              cursor: pointer;
              position: relative;

              input {
                position: absolute;
                top: 0;
                left: 0;
                width: 100%;
                height: 100%;
                z-index: -1;
                opacity: 0;
                cursor: pointer;
                &:focus-visible {
                  outline: none;
                }
              }

              .variant-option-button {
                min-width: var(--variant-option-button-size);
                height: var(--variant-option-button-size);
                flex-shrink: 0;

                .variant-option-button-inner {
                  width: 100%;
                  height: 100%;
                  padding-inline: var(--variant-option-button-padding-inline);
                  border-radius: var(--variant-picker-swatch-border-radius);
                  overflow: hidden;
                  position: relative;
                }

                .variant-option-button-content {
                  width: 100%;
                  height: 100%;
                  display: flex;
                  justify-content: center;
                  align-items: center;
                  position: relative;
                  z-index: 1;

                  .variant-option-button-text {
                    transition: all var(--trans-duration) var(--trans-easing);
                    .text-custom-content-inner {
                      transition: color var(--trans-duration) var(--trans-easing);
                    }
                  }
                }

                .variant-option-button-strikethrough {
                  display: none;
                  position: absolute;
                  top: 0;
                  left: 0;
                  width: 100%;
                  height: 100%;
                  z-index: 2;
                  overflow: hidden;
                  color: var(--color-foreground_30);
                }

                .variant-option-button-bg {
                  position: absolute;
                  inset: 0;
                  border-radius: inherit;
                  border: var(--button-border-width) solid var(--color-border-default);
                  background-color: var(--color-background);
                  transition: all var(--trans-duration) var(--trans-easing);
                  z-index: 0;
                }

                @media (hover: hover) {
                  &:hover,
                  &:focus-visible {
                    .variant-option-button-bg {
                      border-color: var(--color-foreground);
                    }
                  }
                }
              }

              /* Disabled state */
              &.variant-option-button-wrap-disabled {
                .variant-option-button {
                  color: var(--color-text-disabled);
                  .variant-option-button-bg {
                    border-color: var(--color-border-disable);
                  }
                  .variant-option-button-text {
                    .text-custom-content-inner {
                      color: var(--color-text-disabled);
                    }
                  }
                  .variant-option-button-strikethrough {
                    display: block;
                  }
                }
              }

              /* Checked state */
              &:has(:checked) {
                .variant-picker-swatch-wrap {
                  .variant-picker-swatch {
                    outline-color: var(--color-foreground);
                  }
                }
                .variant-option-button {
                  .variant-option-button-inner {
                    .variant-option-button-bg {
                      border-color: var(--color-foreground);
                      background-color: var(--color-foreground);
                    }
                  }
                  .variant-option-button-text {
                    .text-custom-content-inner {
                      color: var(--color-background);
                    }
                  }
                  .variant-option-button-strikethrough {
                    svg {
                      color: var(--color-background);
                    }
                  }
                }
              }

              /* Focus-visible state */
              &:has(input:focus-visible) {
                .variant-picker-swatch-wrap {
                  .variant-picker-swatch {
                    outline-color: var(--color-keyboard-focus-visible);
                  }
                }
                .variant-option-button {
                  .variant-option-button-inner {
                    .variant-option-button-bg {
                      border-color: var(--color-keyboard-focus-visible);
                    }
                  }
                }
              }
            }
          }
        }

        /* Dropdown style variant option */
        .variant-option.variant-style-dropdown {
          .field {
            width: 100%;
          }
        }
      }
    }
  }
/* END_SNIPPET:panel-quick-view-picker */

/* START_SNIPPET:panel-ratings (INDEX:357) */
.panel-rating {
    width: fit-content;
    height: fit-content;
    .rating-content-inner {
      display: flex;
      flex-direction: var(--rating-direction);
      align-items: var(--rating-alignment);
      flex-wrap: wrap;
      gap: var(--rating-flex-gap);
      @media (max-width: 991px) {
        flex-direction: var(--rating-direction-mb);
        align-items: var(--rating-alignment-mb);
        gap: var(--rating-flex-gap-mb);
      }
    }
    .rating-content-stars-inner {
      display: flex;
      flex-direction: row;
      gap: 0.2rem;
    }
    .rating-content-star {
      width: 1rem;
      height: 1rem;
      color: var(--color-foreground_08);
      &.full {
        color: var(--color-foreground_100);
      }
    }
    .rating-content-score-text {
      color: var(--color-foreground_60);
    }
  }
/* END_SNIPPET:panel-ratings */

/* START_SNIPPET:panel-results-listing (INDEX:358) */
.collection-page-listing {
    padding-inline: var(--sc-mg-inline);
    @media (max-width: 991px) {
      padding-inline: var(--sc-mg-inline-mb);
    }
    .collection-page-listing-inner {
      border-radius: var(--sc-radius);
      width: 100%;
      max-width: var(--content-width-full);
      margin-inline: auto;
      margin-block: var(--sc-mg-block);
      @media (max-width: 991px) {
        margin-block: var(--sc-mg-block-mb);
      }
    }
    .collection-page-listing-content {
      display: flex;
      justify-content: stretch;
      max-width: max(var(--sc-content-width), var(--sc-content-maxwidth));
      margin-inline: auto;
      padding-inline: var(--sc-pd-inline-start) var(--sc-pd-inline-end);
      padding-block: var(--sc-pd-block-start) var(--sc-pd-block-end);
      @media (max-width: 991px) {
        padding-inline: var(--sc-pd-inline-start-mb) var(--sc-pd-inline-end-mb);
        padding-block: var(--sc-pd-block-start-mb) var(--sc-pd-block-end-mb);
      }
    }
    .collection-page-listing-bg {
      border-radius: var(--sc-radius);
      background: var(--sc-background);
      background-repeat: no-repeat;
    }
    .collection-page-listing-content-inner {
      width: 100%;
      display: flex;
      flex-direction: column;
      row-gap: var(--section-gap);
    }
    .collection-page-grid-items {
      display: flex;
      flex-wrap: wrap;
      gap: var(--sc-flex-gap);
      scroll-margin-top: calc(var(--header-height, 0px) + var(--sc-flex-gap) * 2);
      @media (max-width: 991px) {
        gap: var(--sc-flex-gap-mb);
        scroll-margin-top: calc(var(--header-height, 0px) + var(--sc-flex-gap-mb) * 2);
      }
      &:has(.facet-sidebar):not(:has(.facets-form-component[data-desktop-filter-layout='drawer'])) {
        &:has(.facets-form-component[data-filter='close']),
        &:has(.facet-top.no-filters) {
          .collection-page-wrapper {
            margin-left: calc(var(--sc-flex-gap) * -1);
            @media (max-width: 991px) {
              margin-left: 0;
            }
          }
          .facet-sidebar:not(#filterSortingDialog *) {
            width: 0;
            opacity: 0;
            pointer-events: none;
          }
          .facet-sidebar-sticky:not(#filterSortingDialog *) .facet-sidebar-inner {
            height: 0;
            /* padding: 0; */
          }
        }
      }
    }
  }
/* END_SNIPPET:panel-results-listing */

/* START_SNIPPET:panel-sbc-list-content (INDEX:359) */
.sbc-list-content {
    min-width: 1px;
    min-height: 1px;
    width: var(--sbc_lc-size-width);
    max-width: var(--sbc_lc-size-max-width);
    height: var(--sbc_lc-size-height);
    @media (min-width: 992px) {
      .sbc-collection-item {
        text-align: var(--sbc-txt-align, left);
      }
      .sbc-collection-item-content {
        text-align: var(--sbc-txt-align, left);
      }
      &[data-show-button='false'] .sbc-btn-wrapper {
        display: none !important;
      }
      & .sbc-slider-mobile {
        .embla__container {
          flex-direction: column;
          gap: var(--sbc_title-flex-gap);
        }
      }
    }
    .sbc-lc-content {
      padding-block: var(--sbc_lc-pd-block-start) var(--sbc_lc-pd-block-end);
      padding-inline: var(--sbc_lc-pd-inline-start) var(--sbc_lc-pd-inline-end);
    }
    .sbc-lc-content-inner {
      width: 100%;
      height: 100%;
      display: flex;
      flex-direction: var(--sbc_lc-direction);
      justify-content: var(--sbc_lc-justify-content);
      align-items: var(--sbc_lc-alignment);
      gap: var(--sbc_lc-flex-gap);
      .sbc-collection-item-title {
        /* width: 100%; */
        position: relative;
        z-index: 2;
        cursor: pointer;
        display: inline-flex;
        margin: 0;
        font-family: var(--sbc-lc-title-font-family);
        font-size: var(--sbc-lc-title-font-size);
        font-weight: var(--sbc-lc-title-font-weight);
        line-height: var(--sbc-lc-title-line-height);
        letter-spacing: var(--sbc-lc-title-letter-spacing);
        text-transform: var(--sbc-lc-title-text-transform);
        transition: color var(--trans-duration) var(--trans-easing);
        color: var(--sbc-lc-title-color);
        @media (max-width: 991px) {
          font-family: var(--sbc-lc-title-font-family-mb);
          font-size: var(--sbc-lc-title-font-size-mb);
          font-weight: var(--sbc-lc-title-font-weight-mb);
          line-height: var(--sbc-lc-title-line-height-mb);
          letter-spacing: var(--sbc-lc-title-letter-spacing-mb);
          text-transform: var(--sbc-lc-title-text-transform-mb);
          pointer-events: none;
          cursor: default;
        }
        /* Slide-up hover animation */
        .sbc-title-label-wrap {
          overflow: hidden;
          position: relative;
          display: inline-block;
          .sbc-title-label {
            position: relative;
            display: block;
            transform: translate3d(0, 0, 0);
            transform-style: preserve-3d;
            transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.05s;
            pointer-events: none;

            &::after {
              content: attr(data-text);
              position: absolute;
              inset: 0px;
              font-family: inherit;
              line-height: inherit;
              font-weight: inherit;
              letter-spacing: inherit;
              text-transform: inherit;
              font-size: inherit;
              white-space: nowrap;
              transform: translateY(100%);
            }
          }
        }
        @media (hover: hover) {
          &:hover .sbc-title-label-wrap .sbc-title-label,
          &:focus-visible .sbc-title-label-wrap .sbc-title-label {
            transform: translate3d(0, -100%, 0);
          }
        }
      }
      sup {
        display: var(--sbc-lc-count-display);
        color: var(--sbc-lc-title-color);
        font-size: max(var(--typo-description-size), calc(var(--sbc-lc-title-font-size) * 0.5));
        font-weight: var(--sbc-lc-title-font-weight);
        line-height: var(--sbc-lc-title-line-height);
        /* vertical-align: baseline; */
        position: relative;
        top: -0.8em;
        transition: color var(--trans-duration) var(--trans-easing);
        @media (max-width: 991px) {
          font-size: max(var(--typo-description-size-mb), calc(var(--sbc-lc-title-font-size-mb) * 0.5));
          font-weight: var(--sbc-lc-title-font-weight-mb);
          line-height: var(--sbc-lc-title-line-height-mb);
        }
      }
      .sbc-collection-item-title:not(.is-active) {
        color: var(--color-text-note);
      }
      .sbc-collection-item-title:not(.is-active) + sup {
        color: var(--color-text-note);
      }
    }
    .sbc-collection-item-content {
      display: grid;
      gap: var(--sbc_desc-mg-block-end);
      width: 100%;
      max-width: 28.5rem;
      position: relative;
      z-index: 2;
      @media (max-width: 991px) {
        gap: var(--sbc_desc-mg-block-end-mb);
        width: 100%;
      }
      .sbc-content-item {
        grid-area: 1/1;
        opacity: 0;
        pointer-events: none;
        transition: opacity var(--trans-duration) var(--trans-easing);
        display: flex;
        flex-direction: column;
        align-items: var(--sbc_lc-content-alignment);
        gap: inherit;
        &.is-active {
          opacity: 1;
          pointer-events: auto;
        }
      }
    }
    .sbc-collection-item-desc {
      margin: 0;
      font-family: var(--sbc-lc-desc-font-family);
      font-size: var(--sbc-lc-desc-font-size);
      font-weight: var(--sbc-lc-desc-font-weight);
      line-height: var(--sbc-lc-desc-line-height);
      letter-spacing: var(--sbc-lc-desc-letter-spacing);
      text-transform: var(--sbc-lc-desc-text-transform);
      color: var(--sbc-lc-desc-color);
      @media (max-width: 991px) {
        font-family: var(--sbc-lc-desc-font-family-mb);
        font-size: var(--sbc-lc-desc-font-size-mb);
        font-weight: var(--sbc-lc-desc-font-weight-mb);
        line-height: var(--sbc-lc-desc-line-height-mb);
        letter-spacing: var(--sbc-lc-desc-letter-spacing-mb);
        text-transform: var(--sbc-lc-desc-text-transform-mb);
        flex-direction: column;
        justify-content: flex-end;

        > * {
          margin-top: auto;
        }
      }
    }
  }
/* END_SNIPPET:panel-sbc-list-content */

/* START_SNIPPET:panel-sc-gift-card (INDEX:360) */
.panel-sc-gift-card {
    min-height: var(--sc-content-height);
    display: flex;
    flex-direction: column;
    padding-inline: var(--sc-mg-inline);
    @media (max-width: 991px) {
      padding-inline: var(--sc-mg-inline-mb);
      min-height: var(--sc-content-height-mb);
    }
    .sc-gift-card-inner {
      flex: 1;
      display: flex;
      flex-direction: column;
      position: relative;
      width: 100%;
      margin-inline: auto;
      margin-block: var(--sc-mg-block) var(--sc-mg-block);
      border-radius: var(--sc-default-radius);
      overflow: hidden;
      @media (max-width: 991px) {
        margin-block: var(--sc-mg-block-mb) var(--sc-mg-block-mb);
      }
      .sc-gift-card-content {
        flex: 1;
        position: relative;
        z-index: 2;
        align-items: stretch;
        display: flex;
        flex-direction: column;
        width: 100%;
        padding-block: var(--sc-pd-block-start) var(--sc-pd-block-end);
        padding-inline: var(--sc-pd-inline-start) var(--sc-pd-inline-end);
        @media (max-width: 991px) {
          padding-block: var(--sc-pd-block-start-mb) var(--sc-pd-block-end-mb);
          padding-inline: var(--sc-pd-inline-start-mb) var(--sc-pd-inline-end-mb);
        }

        .sc-gift-card-content-inner {
          flex: 1;
          display: flex;
          flex-direction: var(--gift-card-direction);
          gap: var(--sc-flex-gap, 0);
          @media (max-width: 991px) {
            flex-direction: column;
            gap: var(--sc-flex-gap-mb, 0);
          }

          .gift-card-image-wrapper {
            width: 50%;
            min-width: 0;
            display: flex;
            align-items: center;
            justify-content: center;
            overflow: hidden;
            border-radius: var(--sc-radius);
            @media (max-width: 991px) {
              height: 13.125rem;
              width: 100%;
              img {
                height: 100%;
                width: 100%;
                object-fit: cover;
              }
              &.img-empty {
                background-color: transparent;
              }
            }

            .gift-card-image {
              width: 80%;
              height: 80%;
              object-fit: contain;
              @media (max-width: 991px) {
                width: 100%;
                height: 100%;
                object-fit: cover;
              }
            }
          }
          .gift-card-content {
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: space-between;
            padding-inline: 2.5rem;
            padding-block: 2.5rem;
            width: 50%;
            background: var(--sc-content-bg-color);
            border-radius: var(--sc-radius);
            gap: 3.5rem;
            @media (max-width: 991px) {
              padding-inline: 1rem;
              padding-block: 1rem;
              width: 100%;
              flex: 1;
            }
            .gift-card-content-logo-wrapper {
              &:not(:has(jumbo-text)) {
                @media (max-width: 991px) {
                  width: 7.25rem;
                }
              }
              .panel-logo-v2 {
                --logo-height-base: 1.75rem !important;
                --logo-width: auto !important;
                --logo-max-width: 100% !important;
                @media (max-width: 991px) {
                  --logo-height-base-mb: 1.25rem !important;
                  --logo-width-mb: auto !important;
                  --logo-max-width-mb: 100% !important;
                }
              }
              img {
                height: 1.75rem;
                @media (max-width: 991px) {
                  height: 1.25rem;
                }
              }
            }
            .gift-card-content-inner {
              display: flex;
              flex-direction: column;
              align-items: center;
              height: max-content;
              width: 100%;
              max-width: 30rem;
            }
            .gift-card-text-wrapper {
              display: flex;
              flex-direction: column;
              align-items: center;
              margin-bottom: 2.5rem;
              width: 100%;
              @media (max-width: 991px) {
                margin-bottom: 1.5rem;
              }
              .gift-card-text-title {
                margin-block-end: 1rem;
                @media (max-width: 991px) {
                  margin-block-end: 0.5rem;
                }
              }
              .gift-card-text-balance {
                margin-block-end: 1rem;
                @media (max-width: 991px) {
                  margin-block-end: 0.5rem;
                }
              }
            }
            .gift-card-number-wrapper-actions {
              display: flex;
              flex-direction: column;
              align-items: center;
              gap: 1rem;
              margin-block-end: 2.5rem;
              width: 100%;
              @media (max-width: 991px) {
                margin-block-end: 1.5rem;
              }
              .gift-card-number-wrapper {
                display: flex;
                align-items: center;
                justify-content: center;
                width: 100%;
              }
            }
            .gift-card-visit-button {
              margin-block-start: 0.75rem;
              @media (max-width: 991px) {
                margin-block-start: 0.5rem;
              }
            }
            .gift-card-qr-code-wrapper {
              display: flex;
              flex-direction: column;
              align-items: center;
              gap: 1rem;
              width: 100%;
              @media (max-width: 991px) {
                gap: 0.75rem;
              }
            }
            .gift-card-qr-code {
              padding: 0.375rem;
              background: white;
              img {
                width: max(9.25rem, 120px);
                height: max(9.25rem, 120px);
                @media (max-width: 991px) {
                  width: max(7.5rem, 120px);
                  height: max(7.5rem, 120px);
                }
              }
            }
            .gift_card-apple-wallet {
              img {
                width: 11.25rem;
                height: 11.25rem;
                @media (max-width: 991px) {
                  width: 6.563rem;
                  height: 6.563rem;
                }
              }
            }
          }
          .gift-card-copyright {
            text-align: center;
            font-weight: var(--font-weight-regular);
          }
        }
      }

      .sc-gift-card-bg {
        position: absolute;
        inset: 0;
        z-index: 1;
        pointer-events: none;
        background: var(--sc-bg-color);
      }
    }
  }
/* END_SNIPPET:panel-sc-gift-card */

/* START_SNIPPET:panel-sc-heading-description (INDEX:361) */
.sc-page-heading-description {
    min-width: 1px;
    min-height: fit-content;
    width: var(--sc_ph_desc-size-width);
    max-width: var(--sc_ph_desc-size-max-width);
    height: fit-content;
    text-align: var(--sc_ph_desc-text-align);
    @media (max-width: 991px) {
      width: var(--sc_ph_desc-size-width-mb);
      text-align: var(--sc_ph_desc-text-align-mb);
      max-width: var(--sc_ph_desc-size-max-width-mb);
    }
    .sc-page-heading-description-content {
      padding-block: var(--sc_ph_desc-pd-block-start) var(--sc_ph_desc-pd-block-end);
      padding-inline: var(--sc_ph_desc-pd-inline-start) var(--sc_ph_desc-pd-inline-end);
      @media (max-width: 991px) {
        padding-block: var(--sc_ph_desc-pd-block-start-mb) var(--sc_ph_desc-pd-block-end-mb);
        padding-inline: var(--sc_ph_desc-pd-inline-start-mb) var(--sc_ph_desc-pd-inline-end-mb);
      }
    }
    .sc-page-heading-description-content-inner {
      em {
        color: var(--color-text-paragraph-highlight);
      }
      a,
      button {
        color: var(--color-text-paragraph-link);
        &:hover {
          color: var(--color-text-paragraph-link-hover);
        }
      }
      a {
        position: relative;
        transition: color var(--trans-duration) var(--trans-easing);

        &::before {
          content: '';
          position: absolute;
          bottom: 0;
          left: 0;
          width: 100%;
          height: var(--1px);
          background-color: var(--color-text-paragraph-link);
          transform: scaleX(0);
          transform-origin: right;
          transition: transform var(--trans-duration) var(--trans-easing);
        }

        &::after {
          content: '';
          position: absolute;
          bottom: 0;
          left: 0;
          width: 100%;
          height: var(--1px);
          background-color: var(--color-text-paragraph-link);
          transform: scaleX(1);
          transform-origin: left;
          transition: transform var(--trans-duration) var(--trans-easing);
          transition-delay: var(--trans-duration);
        }

        &:hover {
          color: var(--color-text-paragraph-link-hover);
          &::before {
            transform: scaleX(1);
            transform-origin: left;
            background-color: var(--color-text-paragraph-link-hover);
            transition-delay: var(--trans-duration);
          }
          &::after {
            transform: scaleX(0);
            transform-origin: right;
            background-color: var(--color-text-paragraph-link-hover);
            transition-delay: 0s;
          }
        }
      }
    }
  }
/* END_SNIPPET:panel-sc-heading-description */

/* START_SNIPPET:panel-sc-heading-title (INDEX:362) */
.sc-page-heading-title {
    min-width: 1px;
    min-height: fit-content;
    width: var(--sc_ph_title-size-width);
    max-width: var(--sc_ph_title-size-max-width);
    height: fit-content;
    text-align: var(--sc_ph_title-text-align);
    @media (max-width: 991px) {
      width: var(--sc_ph_title-size-width-mb);
      text-align: var(--sc_ph_title-text-align-mb);
      max-width: var(--sc_ph_title-size-max-width-mb);
    }
    .sc-page-heading-title-inner {
      color: var(--color-text-title);
      em {
        color: var(--color-text-title-highlight);
      }
      a,
      button {
        color: var(--color-text-title-link);
        &:hover {
          color: var(--color-text-title-link-hover);
        }
      }
    }
    .sc-page-heading-title-content {
      padding-block: var(--sc_ph_title-pd-block-start) var(--sc_ph_title-pd-block-end);
      padding-inline: var(--sc_ph_title-pd-inline-start) var(--sc_ph_title-pd-inline-end);
      @media (max-width: 991px) {
        padding-block: var(--sc_ph_title-pd-block-start-mb) var(--sc_ph_title-pd-block-end-mb);
        padding-inline: var(--sc_ph_title-pd-inline-start-mb) var(--sc_ph_title-pd-inline-end-mb);
      }
      .sc-page-heading-title-content-inner {
        p,
        ul,
        ol,
        h1,
        h2,
        h3,
        h4,
        h5,
        h6 {
          margin-block: var(--sc_ph_title-typo-para-spacing);
          &:first-child {
            margin-block-start: 0;
          }
          &:last-child {
            margin-block-end: 0;
          }
        }
      }
    }
    .sc-page-heading-title-heading {
      display: inline-block;
      font-family: var(--sc_ph_title-typo-ff);
      font-size: var(--sc_ph_title-typo-font-size);
      font-weight: var(--sc_ph_title-typo-font-weight);
      line-height: var(--sc_ph_title-typo-line-height);
      letter-spacing: var(--sc_ph_title-typo-letter-spacing);
      text-transform: var(--sc_ph_title-typo-text-transform);
      @media (max-width: 991px) {
        font-family: var(--sc_ph_title-typo-ff-mb);
        font-size: var(--sc_ph_title-typo-font-size-mb);
        font-weight: var(--sc_ph_title-typo-font-weight-mb);
        line-height: var(--sc_ph_title-typo-line-height-mb);
        letter-spacing: var(--sc_ph_title-typo-letter-spacing-mb);
        text-transform: var(--sc_ph_title-typo-text-transform-mb);
      }
    }
    .sc-page-heading-title-count {
      position: relative;
      vertical-align: baseline;
      top: -0.8em;
      font-family: var(--typo-ff-body);
      font-size: max(var(--typo-description-size), calc(var(--sc_ph_title-typo-font-size) * 0.5));
      line-height: var(--sc_ph_title-typo-line-height);
      font-weight: var(--font-weight-medium);
      color: var(--color-text-paragraph);
      @media (max-width: 991px) {
        font-size: max(var(--typo-description-size-mb), calc(var(--sc_ph_title-typo-font-size-mb) * 0.5));
        line-height: var(--sc_ph_title-typo-line-height-mb);
      }
    }
  }
/* END_SNIPPET:panel-sc-heading-title */

/* START_SNIPPET:panel-sc-main-quick-view (INDEX:363) */
.panel-sc-main-quick-view {
    .sc-main-quick-view-inner {
      display: flex;
      flex-direction: row;
      gap: var(--quick_view-flex-gap);

      @media (max-width: 991px) {
        flex-direction: column;
        align-items: stretch;
        gap: var(--quick_view-flex-gap-mb);
      }

      & > * {
        flex: 0 0 calc(50% - var(--quick_view-flex-gap) / 2);
        @media (max-width: 991px) {
          flex: 0 0 100%;
        }
      }
    }
  }
/* END_SNIPPET:panel-sc-main-quick-view */

/* START_SNIPPET:panel-search-article-card-mini (INDEX:364) */
.search-article-card-mini {
    width: 100%;
    display: block;
    .article-item-inner {
      width: 100%;
      height: auto;
      display: flex;
      align-items: center;
      column-gap: 2rem;

      @media (max-width: 991px) {
        column-gap: 1rem;
      }
    }
    .article-item-content {
      display: flex;
      width: 100%;
      gap: 2rem;
      align-items: center;
      @media (max-width: 991px) {
        flex-direction: column;
        align-items: flex-start;
      }
    }
    .article-item-image {
      position: relative;
      display: block;
      flex-shrink: 0;
      width: 9.375rem;
      aspect-ratio: 150 / 113;
      border-radius: var(--radius-new-small);
      overflow: hidden;
      background-color: var(--color-surface-alt);

      @media (max-width: 991px) {
        width: 6.25rem;
      }
    }

    .article-item-content-inner {
      flex: 1;
      display: flex;
      flex-direction: column;
      row-gap: 0.5rem;
      min-width: 0;
    }

    /* Details: tag / date / author */
    .article-card-mini-details {
      display: flex;
      gap: 0.5rem;
      align-items: center;
      flex-wrap: nowrap;
      white-space: nowrap;
      overflow: hidden;

      color: var(--color-text-paragraph);
      font-family: var(--typo-ff-body);
      font-size: var(--typo-description-size);
      font-weight: var(--font-weight-medium);
      line-height: var(--typo-description-lh);
      text-transform: var(--typo-label-case);

      @media (max-width: 991px) {
        font-size: var(--typo-description-size-mb);
        line-height: var(--typo-description-lh-mb);
      }

      .article-card-mini-details-item {
        display: flex;
        gap: 0.5rem;
        align-items: center;
      }
      .article-card-mini-details-item::before {
        content: '/';
        color: var(--color-text-divider);
        font-size: 0.75rem;
        line-height: var(--typo-label-lh);
        font-weight: var(--font-weight-medium);
        display: none;
        @media (max-width: 991px) {
          line-height: var(--typo-label-lh-mb);
        }
      }
      .article-card-mini-details-item ~ .article-card-mini-details-item::before {
        display: inline;
      }
    }

    /* Title */
    .article-card-mini-title {
      overflow: hidden;
      text-overflow: ellipsis;
      display: -webkit-box;
      -webkit-line-clamp: 2;
      line-clamp: 2;
      -webkit-box-orient: vertical;

      .article-card-mini-link-title {
        position: relative;
        color: var(--color-text-title);
        text-decoration: none;
        font-family: var(--typo-ff-heading);
        font-size: var(--typo-h6-size);
        font-weight: var(--font-weight-medium);
        line-height: var(--typo-h6-lh);

        @media (max-width: 991px) {
          font-size: var(--typo-h6-size-mb);
          line-height: var(--typo-h6-lh-mb);
        }
        @media (max-width: 991px) {
          font-size: var(--typo-lead-size);
          line-height: var(--typo-lead-lh);
        }
      }

      .article-card-mini-title-text {
        --line-width: max(max(1px, 0.0625rem), 0.05em);
        --line-y: calc(1em + 0.1em);
        position: relative;
        color: inherit;
        display: inline;
        background-image: linear-gradient(currentColor, currentColor);
        background-position: 100% var(--line-y);
        background-repeat: no-repeat;
        background-size: 0% var(--line-width, var(--1px));
        transition: background-size var(--trans-duration) var(--trans-easing);
      }
    }

    /* Hover: underline on title + zoom on image */
    @media (hover: hover) {
      &:hover {
        .article-card-mini-title-text {
          background-position: 0% var(--line-y);
          background-size: 100% var(--line-width, var(--1px));
        }
      }
    }
  }
/* END_SNIPPET:panel-search-article-card-mini */

/* START_SNIPPET:panel-search-page-card-mini (INDEX:365) */
.search-page-card-mini {
    width: 100%;
    display: block;

    .page-card-mini-inner {
      width: 100%;
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding-block: 1rem;
      gap: 1rem;
    }

    /* Title */
    .page-card-mini-title {
      flex: 1;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
      min-width: 0;

      .page-card-mini-link-title {
        position: relative;
        color: var(--color-text-paragraph-highlight);
        text-decoration: none;
        font-family: var(--typo-ff-heading);
        font-size: var(--typo-h6-size);
        font-weight: var(--font-weight-medium);
        line-height: var(--typo-h6-lh);

        @media (max-width: 991px) {
          font-size: var(--typo-h6-size-mb);
          line-height: var(--typo-h6-lh-mb);
        }
      }

      .page-card-mini-title-text {
        --line-width: max(max(1px, 0.0625rem), 0.05em);
        --line-y: calc(1em + 0.1em);
        position: relative;
        color: inherit;
        display: inline;
        background-image: linear-gradient(currentColor, currentColor);
        background-position: 100% var(--line-y);
        background-repeat: no-repeat;
        background-size: 0% var(--line-width, var(--1px));
        transition: background-size var(--trans-duration) var(--trans-easing);
      }
    }

    /* Icon */
    .page-card-mini-icon {
      flex-shrink: 0;
      --icon-size: 1.25rem;
      width: var(--icon-size);
      height: var(--icon-size);
      color: var(--color-text-paragraph-highlight);
      display: flex;
      align-items: center;
      justify-content: center;
    }

    /* Hover: running line on title */
    @media (hover: hover) {
      &:hover {
        .page-card-mini-title-text {
          background-position: 0% var(--line-y);
          background-size: 100% var(--line-width, var(--1px));
        }
      }
    }
  }
/* END_SNIPPET:panel-search-page-card-mini */

/* START_SNIPPET:panel-search-page-grid (INDEX:366) */
.search-page-grid {
    position: relative;
    .search-page-grid-inner {
      border-radius: var(--results_grid-radius);
    }
    .search-page-grid-content {
      display: flex;
      flex-direction: column;
      align-items: stretch;
      padding-inline: var(--results_grid-pd-inline-start) var(--results_grid-pd-inline-end);
      padding-block: var(--results_grid-pd-block-start) var(--results_grid-pd-block-end);
      @media (max-width: 991px) {
        padding-inline: var(--results_grid-pd-inline-start-mb) var(--results_grid-pd-inline-end-mb);
        padding-block: var(--results_grid-pd-block-start-mb) var(--results_grid-pd-block-end-mb);
      }
    }
    .search-page-grid-content-inner {
      display: flex;
      flex-direction: column;
      row-gap: 1rem;

      .article-item {
        min-height: 25rem;
        height: 100%;
      }
    }
    .search-page-grid-bg {
      background: var(--results_grid-background);
      background-repeat: no-repeat;
    }
  }
/* END_SNIPPET:panel-search-page-grid */

/* START_SNIPPET:panel-search-page-input (INDEX:367) */
.sc-search-input {
    position: relative;
    z-index: 10;
    width: var(--search-size-width);
    min-width: 25rem;
    max-width: var(--search-size-max-width);
    container-type: inline-size;
    @media (max-width: 991px) {
      width: var(--search-size-width-mb);
      min-width: unset;
      max-width: var(--search-size-max-width-mb);
    }

    .sc-search-input-inner {
      position: relative;
      margin-block: var(--search-mg-block-start) var(--search-mg-block-end);
      margin-inline: var(--search-mg-inline-start) var(--search-mg-inline-end);
      @media (max-width: 991px) {
        margin-block: var(--search-mg-block-start-mb) var(--search-mg-block-end-mb);
        margin-inline: var(--search-mg-inline-start-mb) var(--search-mg-inline-end-mb);
      }
    }

    /* Form */
    .search-input-form {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 0.75rem;
      position: relative;
      z-index: 3;
      width: 100%;
    }

    /* Input */
    .search-input-main {
      padding-inline-start: var(--input-pd-inline-start);
      padding-inline-end: var(--input-pd-inline-end);

      @media (max-width: 991px) {
        padding-inline-start: var(--input-pd-inline-start-mb);
        padding-inline-end: var(--input-pd-inline-end-mb);
      }

      &::-webkit-search-cancel-button {
        -webkit-appearance: none;
        appearance: none;
        height: 0;
        width: 0;
        margin: 0;
      }
      &::-ms-clear,
      &::-ms-reveal {
        display: none;
        width: 0;
        height: 0;
      }
      &::-o-clear {
        display: none;
      }
    }

    /* Icon lookup */
    .search-input-icon-wrapper {
      display: var(--search-icon-display);
      width: var(--input-lookup-icon-size);
      height: var(--input-lookup-icon-size);
      flex-shrink: 0;
      color: var(--color-foreground_60);
      position: absolute;
      top: 50%;
      left: var(--input-pd-inline);
      z-index: 4;
      transform: translateY(-50%);
      transition: left var(--trans-duration) var(--trans-easing);
      @media (max-width: 991px) {
        width: var(--input-lookup-icon-size-mb);
        height: var(--input-lookup-icon-size-mb);
        left: var(--input-pd-inline-mb);
      }
    }

    /* Icon clear */
    .search-input-clear {
      width: var(--input-clear-icon-size);
      height: var(--input-clear-icon-size);
      cursor: pointer;
      color: var(--color-foreground_60);
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      right: calc(var(--input-pd-inline) - 0.5rem);
      z-index: 4;
      transition: opacity var(--trans-duration) var(--trans-easing), color var(--trans-duration) var(--trans-easing),
        right var(--trans-duration) var(--trans-easing);

      display: flex;
      align-items: center;
      justify-content: center;

      @media (max-width: 991px) {
        width: var(--input-clear-icon-size-mb);
        height: var(--input-clear-icon-size-mb);
        right: calc(var(--input-pd-inline-mb) - 0.5rem);
      }

      &:hover {
        color: var(--color-foreground_100);
      }

      .search-input-clear-icon {
        width: calc(var(--input-clear-icon-size) / 2);
        height: calc(var(--input-clear-icon-size) / 2);
        @media (max-width: 991px) {
          width: calc(var(--input-clear-icon-size-mb) / 2);
          height: calc(var(--input-clear-icon-size-mb) / 2);
        }
      }
    }

    /* ---- Predictive Search Dropdown ---- */
    .predictive-search-form-content-wrap {
      --box-shadow: 0 8px 24px 0 rgba(149, 157, 165, 0.2);
      position: absolute;
      top: var(--predictive-form-content-top);
      left: 0;
      width: 100%;
      z-index: 2;
      display: none;
      box-shadow: var(--box-shadow);
    }

    .predictive-search-form-content {
      background-color: var(--color-background);
      border-radius: var(--predictive-dropdown-radius);
      border-top: var(--predictive-content-border-top);
      padding-block: var(--predictive-padding-block);
      @media (max-width: 991px) {
        border-radius: var(--predictive-dropdown-radius-mb);
        padding-block: var(--predictive-padding-block-mb);
      }
    }

    .predictive-search-empty {
      display: flex;
      flex-direction: row;
      align-items: stretch;
      @media (min-width: 992px) {
        @container (width <= 50rem) {
          flex-direction: column;
          max-height: calc(100vh - 6.25rem - var(--predictive-padding-block));
          overflow-y: auto;
        }
      }
      @media (max-width: 991px) {
        flex-direction: column;
        max-height: 25rem;
        overflow-y: auto;
      }
    }

    .predictive-searched-products {
      .predictive-searched-products-title {
        padding-block-end: 1rem;
      }
      .predictive-searched-products-list {
        .predictive-searched-products-item {
          padding-block: 1rem;
          &:first-child {
            padding-block-start: 0;
          }
          &:not(:last-child) {
            border-bottom: var(--1px) solid var(--color-border-default);
          }
          .product-card.product-card-direction--horizontal {
            .product-card-inner {
              padding-inline: 0;
            }
          }
        }
      }
    }

    .predictive-search-results-inner {
      display: flex;
      flex-direction: row;
      gap: 0rem;
      align-items: stretch;
      @media (min-width: 992px) {
        @container (width <= 50rem) {
          flex-direction: column;
          max-height: calc(100vh - 6.25rem - var(--predictive-padding-block));
          overflow-y: auto;
        }
      }
      @media (max-width: 991px) {
        flex-direction: column;
        max-height: 25rem;
        overflow-y: auto;
      }
    }

    .predictive-search-results-left {
      width: 100%;
      max-width: 21.5rem;
      padding-inline: 2rem 4rem;
      @media (min-width: 992px) {
        @container (width <= 50rem) {
          max-width: unset;
          padding-inline: 1rem;
        }
      }
      @media (max-width: 991px) {
        max-width: unset;
        padding-inline: 1rem;
      }
    }

    .predictive-search-results-right {
      border-left: var(--1px) solid var(--color-border-default);
      width: 100%;
      padding-inline: 4rem 2rem;
      max-height: calc(100vh - 6.25rem - var(--predictive-padding-block));
      overflow-y: auto;
      > *:not(:first-child) {
        border-top: var(--1px) solid var(--color-border-default);
        padding-top: 1rem;
      }
      @media (min-width: 992px) {
        @container (width <= 50rem) {
          padding: 1rem;
          border-left: none;
          max-height: none;
          overflow-y: visible;
        }
      }
      @media (max-width: 991px) {
        padding: 1rem;
        border-left: none;
        max-height: none;
        overflow-y: visible;
      }
    }

    .predictive-search-pills:not(:first-child) {
      padding-block-start: 1rem;
    }

    .predictive-search-results-left .predictive-search-pills:only-child {
      @media (min-width: 992px) {
        border-bottom: none;
        padding-block-end: 0;
      }
    }

    .predictive-search-results-left .predictive-search-pills:last-child {
      border-bottom: none;
      padding-block-end: 0;
      @media (min-width: 992px) {
        @container (width <= 50rem) {
          border-bottom: var(--1px) solid var(--color-border-default);
          padding-block-end: 1rem;
        }
      }
      @media (max-width: 991px) {
        border-bottom: var(--1px) solid var(--color-border-default);
        padding-block-end: 1rem;
      }
    }

    .predictive-searched-products-see-all-results {
      padding-block-start: 0rem;
    }

    .see-all-products-icon {
      width: 0.75rem;
      height: 0.75rem;
      display: inline-block;
      vertical-align: middle;
      svg {
        color: var(--color-foreground_100);
      }
    }

    /* ---- Overlay ---- */
    .search-overlay {
      position: fixed;
      inset: 0;
      background: rgba(0, 0, 0, 0.5);
      z-index: 1;
      opacity: 0;
      visibility: hidden;
      transition: opacity var(--trans-duration) var(--trans-easing),
        visibility var(--trans-duration) var(--trans-easing);
      pointer-events: none;
    }

    /* ---- Active state: focus + has value ---- */
    &.has-value {
      z-index: 9999;
      .field-wrap {
        --input-pd-inline: var(--input-pd-inline-type-fill-large) !important;
        --input-pd-inline-mb: var(--input-pd-inline-type-fill-medium) !important;
        border-radius: var(--predictive-active-input-radius);
        border-bottom: var(--predictive-active-border-bottom);

        @media (max-width: 991px) {
          border-radius: var(--predictive-active-input-radius-mb);
        }

        &::after {
          background: var(--color-background);
          opacity: 1;
        }

        .field-input {
          --input-pd-inline-start: calc(var(--input-pd-inline) + var(--input-lookup-icon-size) + 0.5rem);
          --input-pd-inline-start-mb: calc(var(--input-pd-inline-mb) + var(--input-lookup-icon-size-mb) + 0.5rem);
          --input-pd-inline-end: calc(var(--input-pd-inline) + var(--input-clear-icon-size) + 0.5rem);
          --input-pd-inline-end-mb: calc(var(--input-pd-inline-mb) + var(--input-clear-icon-size-mb) + 0.5rem);
        }

        .field-underline {
          background-color: var(--color-border-default);
          opacity: var(--predictive-active-underline-opacity);
        }
      }
      .predictive-search-form-content-wrap {
        display: block;
      }
      .search-overlay {
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
      }
    }
  }
/* END_SNIPPET:panel-search-page-input */

/* START_SNIPPET:panel-search-result-tabs (INDEX:368) */
.page-result-tabs {
    min-height: 1px;
    height: auto;
    width: var(--result_tabs-size-width);
    max-width: var(--result_tabs-size-max-width);
    @media (max-width: 991px) {
      width: 100%;
      height: auto;
      max-height: unset;
      max-width: unset;
    }
    .page-result-tabs-inner {
      margin-block: var(--result_tabs-mg-block-start) var(--result_tabs-mg-block-end);
      margin-inline: var(--result_tabs-mg-inline-start) var(--result_tabs-mg-inline-end);
      @media (max-width: 991px) {
        margin-block: var(--result_tabs-mg-block-start-mb) var(--result_tabs-mg-block-end-mb);
        margin-inline: var(--result_tabs-mg-inline-start-mb) var(--result_tabs-mg-inline-end-mb);
      }
    }
    .page-result-tabs-content-inner {
      width: 100%;
      height: 100%;
      display: flex;
      flex-wrap: wrap;
      justify-content: var(--result-tabs-justify-content);
      gap: var(--result-tabs-gap);

      @media (max-width: 991px) {
        justify-content: var(--result-tabs-justify-content-mb);
        gap: var(--result-tabs-gap-mb);
        overflow-x: auto;
        padding-bottom: 0.25rem;

        -webkit-overflow-scrolling: touch;
        scroll-behavior: smooth;
        > * {
          @media (max-width: 991px) {
            flex-shrink: 0;
            white-space: nowrap;
          }
        }
      }

      .result-tabs-btn-content {
        position: relative;
        border: var(--result-tabs-border);
        border-radius: var(--result-tabs-radius);
        transition: border-color var(--trans-duration) var(--trans-easing);
        padding-inline: var(--result-tabs-pd-inline);
        padding-block: var(--result-tabs-pd-block);
        @media (max-width: 991px) {
          padding-inline: var(--result-tabs-pd-inline-mb);
          padding-block: var(--result-tabs-pd-block-mb);
        }
        .result-tabs-btn-content-inner {
          z-index: 2;

          > * {
            transition: color var(--trans-duration) var(--trans-easing);
          }

          sup {
            font-size: max(var(--typo-description-size), calc(var(--result-tabs-label-fs) * 0.5));
            font-weight: var(--result-tabs-label-fw);
            vertical-align: baseline;
            position: relative;
            top: -0.2em;
            color: var(--color-text-paragraph);
            @media (max-width: 991px) {
              font-size: max(var(--typo-description-size-mb), calc(var(--result-tabs-label-fs) * 0.5));
              line-height: var(--result-tabs-label-lh);
            }
          }
          .result-tabs-btn-label {
            color: var(--result-tabs-label-color);
            font-family: var(--result-tabs-label-ff);
            font-size: var(--result-tabs-label-fs);
            line-height: var(--result-tabs-label-lh);
            font-weight: var(--result-tabs-label-fw);
          }
        }
        .result-tabs-btn-bg {
          pointer-events: none;
          background: var(--result-tabs-bg);
          border-color: var(--result-tabs-border);
          position: absolute;
          inset: 0;
          border-radius: inherit;
          z-index: 1;
          transition: background-color var(--trans-duration) var(--trans-easing),
            border-color var(--trans-duration) var(--trans-easing);
        }

        &:not([aria-disabled]):not(:disabled) {
          &:hover {
            border: var(--result-tabs-border-active);
            .result-tabs-btn-label,
            sup {
              color: var(--result-tabs-label-color-hover);
            }
          }
        }
      }

      .result-tabs-btn-content {
        cursor: pointer;
        position: relative;
        white-space: nowrap;

        .result-tabs-btn-content-inner.active {
          .result-tabs-btn-label {
            color: var(--result-tabs-label-color-active);
          }
        }
        &:has(.result-tabs-btn-content-inner.active) {
          border: var(--result-tabs-border-active);
        }
        .result-tabs-btn-content-inner.active ~ .result-tabs-btn-line .result-tabs-btn-line-inner {
          transform: scaleX(1);
          transform-origin: left;
        }
      }
      .result-tabs-btn-divider {
        width: var(--1px);
        height: calc(1em - 0.25rem);
        background-color: var(--color-border-default);
        align-self: center;
      }
      .result-tabs-btn-line {
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: var(--1px);
        display: var(--result-tabs-input-line-display);
        .result-tabs-btn-line-inner {
          display: block;
          width: 100%;
          height: 100%;
          background-color: var(--color-border-hover);
          transform-origin: right;
          transform: scaleX(0);
          transition: transform var(--trans-duration) var(--trans-easing);
        }
      }
      @media (hover: hover) {
        .result-tabs-btn-content:hover .result-tabs-btn-line-inner {
          transform: scaleX(1);
          transform-origin: left;
        }
      }
    }
  }
/* END_SNIPPET:panel-search-result-tabs */

/* START_SNIPPET:panel-shop-by-collection (INDEX:369) */
.shop-by-collection {
    position: relative;
    min-width: 1px;
    min-height: 1px;
    width: var(--sbc-size-width, 100%);
    height: var(--sbc-size-height);
    &[data-visual-preview-mode] {
      min-width: 90rem;
      aspect-ratio: 16 / 9;
    }
    @media (max-width: 991px) {
      width: var(--sbc-size-width-mb, 100%);
      height: var(--sbc-size-height-mb);
    }
    .sbc-inner {
      position: relative;
      contain: paint;
      height: 100%;
      width: 100%;
    }
    .sbc-content {
      position: relative;
      z-index: 2;
      height: 100%;
      width: 100%;
    }
    .sbc-content-inner {
      position: relative;
      z-index: 2;
      display: flex;
      width: 100%;
      height: var(--sbc-size-height);
      aspect-ratio: var(--sbc-ratio);
      gap: var(--sbc-flex-gap);
      flex-direction: var(--sbc-direction);
      justify-content: var(--sbc-justify-content);
      align-items: var(--sbc-alignment);
      padding-block: var(--sbc-pd-block-start) var(--sbc-pd-block-end);
      padding-inline: var(--sbc-pd-inline-start) var(--sbc-pd-inline-end);
      @media (max-width: 991px) {
        height: var(--sbc-size-height-mb);
        aspect-ratio: var(--sbc-ratio-mb);
        gap: var(--sbc-flex-gap-mb);
        flex-direction: var(--sbc-direction-mb);
        justify-content: var(--sbc-justify-content-mb);
        align-items: var(--sbc-alignment-mb);
        padding-block: var(--sbc-pd-block-start-mb) var(--sbc-pd-block-end-mb);
        padding-inline: var(--sbc-pd-inline-start-mb) var(--sbc-pd-inline-end-mb);
      }
      .grp-custom {
        z-index: 3;
      }
    }
    .sbc-media {
      position: absolute;
      inset: 0;
      z-index: 1;
      contain: layout paint style;
      border-radius: var(--sbc-radius);
      display: grid;
      background-color: var(--color-background);
      pointer-events: none;
    }
    .sbc-media-item {
      grid-area: 1 / 1 / 2 / 2;
      z-index: 1;
      opacity: 0;
      transition: opacity var(--trans-duration, 0.3s) var(--trans-easing, ease);
      filter: var(--lc_item_img-filter, none);
    }
    .sbc-media-item.is-active {
      opacity: 1;
      z-index: 2;
    }
    .sbc-bg {
      position: absolute;
      z-index: 1;
      inset: 0;
    }
    .sbc-full-link-overlay {
      position: absolute;
      z-index: 5;
      inset: 0;
    }
  }
/* END_SNIPPET:panel-shop-by-collection */

/* START_SNIPPET:panel-shop-the-look (INDEX:370) */
.shoptl-v2 {
    &[data-visual-preview-mode] {
      width: max(100%, 50rem);
      max-width: 120rem;
      &[data-layout-type='split'] {
        .shoptl-v2-inner {
          .shoptl-v2-content {
            .shoptl-v2-content-inner {
              .shoptl-v2-media {
                aspect-ratio: 3 / 4;
              }
            }
          }
        }
      }
      .product-card[data-visual-preview-mode] {
        width: 100%;
      }
    }
    display: flex;
    align-items: stretch;
    min-width: 1px;
    min-height: 1px;
    width: var(--shoptl-size-width);
    max-width: var(--shoptl-size-max-width);

    @media (max-width: 991px) {
      width: var(--shoptl-size-width-mb);
      max-width: var(--shoptl-size-max-width-mb);
    }

    .shoptl-v2-inner {
      contain: paint;
      width: 100%;
      position: relative;
      margin-block: var(--shoptl-mg-block-start) var(--shoptl-mg-block-end);
      margin-inline: var(--shoptl-mg-inline-start) var(--shoptl-mg-inline-end);
      @media (max-width: 991px) {
        margin-block: var(--shoptl-mg-block-start-mb) var(--shoptl-mg-block-end-mb);
        margin-inline: var(--shoptl-mg-inline-start-mb) var(--shoptl-mg-inline-end-mb);
      }

      .shoptl-v2-content {
        height: 100%;
        width: 100%;

        padding-block: var(--shoptl-pd-block-start) var(--shoptl-pd-block-end);
        padding-inline: var(--shoptl-pd-inline-start) var(--shoptl-pd-inline-end);
        @media (max-width: 991px) {
          padding-block: var(--shoptl-pd-block-start-mb) var(--shoptl-pd-block-end-mb);
          padding-inline: var(--shoptl-pd-inline-start-mb) var(--shoptl-pd-inline-end-mb);
        }

        .shoptl-v2-content-inner {
          position: relative;
          align-items: center;
          display: flex;
          flex-direction: var(--shoptl-content-inner-flex-direction);
          flex-wrap: nowrap;
          gap: var(--shoptl-flex-gap, 0);

          @media (max-width: 991px) {
            flex-direction: column;
            gap: 0;
          }

          .shoptl-v2-media {
            width: var(--shoptl-content-inner-media-size-width);
            max-width: var(--shoptl-content-inner-media-size-max-width);
            aspect-ratio: var(--shoptl-media-aspect-ratio);
            border-radius: var(--shoptl-radius);
            overflow: hidden;
            @media (max-width: 991px) {
              width: var(--shoptl-content-inner-media-size-width-mb);
              max-width: var(--shoptl-content-inner-media-size-max-width-mb);
              aspect-ratio: var(--shoptl-media-aspect-ratio-mb);
            }
            .shoptl-v2-media-inner {
              width: 100%;
              height: 100%;
              position: relative;
              overflow: hidden;
              .shoptl-v2-media-content {
                width: 100%;
                height: 100%;

                display: flex;
                align-items: stretch;

                position: absolute;
                top: 0;
                left: 0;

                & > img {
                  width: 100%;
                  height: 100%;
                  max-width: unset;
                  object-fit: cover;
                }

                & > placeholder-image {
                  width: 100%;
                  height: 100%;
                  img,
                  svg {
                    width: 100%;
                    height: 100%;
                    object-fit: cover;
                  }
                }
              }
            }
          }

          .shoptl-v2-product-list {
            align-self: stretch;
            width: var(--shoptl-product-list-width);
            height: var(--shoptl-product-list-height);

            display: flex;
            align-items: var(--shoptl-product-list-align-items);
            justify-content: flex-start;

            position: var(--shoptl-product-list-position);
            left: var(--shoptl-product-list-position-left);
            bottom: var(--shoptl-product-list-position-bottom);

            padding-inline: var(--shoptl-product-list-spacing);
            padding-block: var(--shoptl-product-list-spacing);

            opacity: var(--shoptl-product-list-opacity);
            visibility: var(--shoptl-product-list-visibility);
            transform: var(--shoptl-product-list-translate);
            transition: all var(--trans-duration) var(--trans-easing);
            z-index: 2;

            &.show {
              opacity: 1;
              visibility: visible;
              transform: translate(0, 0);
            }

            .shoptl-v2-product-list-inner {
              position: sticky;
              bottom: var(--shoptl-product-list-spacing);
              width: var(--shoptl-product-list-inner-width);
              height: var(--shoptl-product-list-inner-height);
              border-radius: var(--shoptl-product-list-radius);
              overflow: hidden;
              background: var(--shoptl-background, var(--shoptl-product-list-bg));

              .shoptl-v2-product-list-content {
                width: 100%;
                height: 100%;
                position: relative;

                display: flex;
                justify-content: center;
                align-items: center;
                flex-direction: column;
                gap: 2rem;

                .shoptl-v2-product-list-close-button-wrap {
                  width: fit-content;
                  height: fit-content;
                  position: absolute;
                  top: 0;
                  right: 0;
                  z-index: 1;
                  @media (hover: hover) {
                    opacity: 0;
                    visibility: hidden;
                    transform: scale(0.75);
                    transition: all var(--trans-duration) var(--trans-easing);
                  }
                  .button-close-wrapper {
                    top: 0.75rem;
                    right: 1rem;
                  }
                }

                .shoptl-v2-product-list-slider {
                  width: 100%;
                  max-width: var(--shoptl-product-list-slider-width);
                  display: block;
                  contain: layout style paint;

                  @media (max-width: 991px) {
                    max-width: 100%;
                  }
                }

                @media (hover: hover) {
                  &:hover {
                    .shoptl-v2-product-list-close-button-wrap {
                      opacity: 1;
                      visibility: visible;
                      transform: scale(1);
                    }
                  }
                }
              }

              /* Button add all to cart */
              shop-the-look-add-all-to-cart-button {
              }
            }
          }
        }
      }

      .shoptl-v2-bg {
        pointer-events: none;
      }
    }
  }
/* END_SNIPPET:panel-shop-the-look */

/* START_SNIPPET:panel-slideshow (INDEX:371) */
.slideshow {
    width: var(--ss-size-width);
    max-width: var(--ss-size-max-width);
    height: var(--ss-size-height);
    aspect-ratio: var(--ss-aspect-ratio);
    @media (max-width: 991px) {
      width: var(--ss-size-width-mb);
      max-width: var(--ss-size-max-width-mb);
      height: var(--ss-size-height-mb);
      aspect-ratio: var(--ss-aspect-ratio-mb);
    }
    .embla__viewport {
      border-radius: var(--ss-radius);
    }
    .slideshow-component {
      height: 100%;
      .embla,
      .embla__viewport,
      .embla__container {
        height: 100%;
      }
    }

    .slideshow-inner {
      width: calc(100% - var(--ss-mg-inline-start) - var(--ss-mg-inline-end));
      height: calc(100% - (var(--ss-mg-block-start) + var(--ss-mg-block-end)));
      margin-block: var(--ss-mg-block-start) var(--ss-mg-block-end);
      margin-inline: var(--ss-mg-inline-start) var(--ss-mg-inline-end);

      @media (max-width: 991px) {
        width: calc(100% - var(--ss-mg-inline-start-mb) - var(--ss-mg-inline-end-mb));
        height: calc(100% - (var(--ss-mg-block-start-mb) + var(--ss-mg-block-end-mb)));
        margin-block: var(--ss-mg-block-start-mb) var(--ss-mg-block-end-mb);
        margin-inline: var(--ss-mg-inline-start-mb) var(--ss-mg-inline-end-mb);
      }

      .slideshow-content {
        height: 100%;
        padding-block: var(--ss-pd-block-start) var(--ss-pd-block-end);
        padding-inline: var(--ss-pd-inline-start) var(--ss-pd-inline-end);

        @media (max-width: 991px) {
          padding-block: var(--ss-pd-block-start-mb) var(--ss-pd-block-end-mb);
          padding-inline: var(--ss-pd-inline-start-mb) var(--ss-pd-inline-end-mb);
        }

        .slideshow-content-pagination {
          position: absolute;
          width: 100%;
          bottom: 2rem;
          left: 50%;
          transform: translateX(-50%);
          @media (max-width: 991px) {
            bottom: 1rem;
          }
        }
      }
    }
  }
/* END_SNIPPET:panel-slideshow */

/* START_SNIPPET:panel-social-media (INDEX:372) */
.panel-social-media {
    width: var(--social-size-width);
    height: var(--social-size-height);
    max-width: var(--social-size-max-width);
    @media (max-width: 991px) {
      width: var(--social-size-width-mb);
      height: var(--social-size-height-mb);
      max-width: var(--social-size-max-width-mb);
    }
    .social-media-inner {
      margin-block: var(--social-mg-block-start) var(--social-mg-block-end);
      margin-inline: var(--social-mg-inline-start) var(--social-mg-inline-end);
      @media (max-width: 991px) {
        margin-block: var(--social-mg-block-start-mb) var(--social-mg-block-end-mb);
        margin-inline: var(--social-mg-inline-start-mb) var(--social-mg-inline-end-mb);
      }
    }
    .social-media-content {
      position: relative;
      padding-block: var(--social-pd-block-start) var(--social-pd-block-end);
      padding-inline: var(--social-pd-inline-start) var(--social-pd-inline-end);
      @media (max-width: 991px) {
        padding-block: var(--social-pd-block-start-mb) var(--social-pd-block-end-mb);
        padding-inline: var(--social-pd-inline-start-mb) var(--social-pd-inline-end-mb);
      }
    }
    .social-media-content-inner {
      display: flex;
      flex-direction: var(--social-direction);
      gap: var(--social-flex-gap);
      align-items: var(--social-align);
      justify-content: var(--social-justify);
      flex-wrap: wrap;
      @media (max-width: 991px) {
        flex-direction: var(--social-direction-mb);
        gap: var(--social-flex-gap-mb);
        align-items: var(--social-align-mb);
        justify-content: var(--social-justify-mb);
      }
    }
  }
/* END_SNIPPET:panel-social-media */

/* START_SNIPPET:panel-tab-content (INDEX:373) */
.panel-tab-content {
    position: var(--tab-content-position);
    top: var(--tab-content-top);
    min-width: 1px;
    min-height: fit-content;
    width: 100%;
    max-width: unset;
    height: fit-content;
    max-height: unset;
    @media (max-width: 991px) {
      position: relative;
      top: auto;
      width: 100%;
      height: fit-content;
      max-height: unset;
      max-width: unset;
    }
    .tabs-content-inner {
      position: relative;
      border-radius: var(--tab_content-radius);
    }
    .tabs-content-content {
      padding-block: var(--tab_content-pd-block-start) var(--tab_content-pd-block-end);
      padding-inline: var(--tab_content-pd-inline-start) var(--tab_content-pd-inline-end);
      @media (max-width: 991px) {
        padding-block: var(--tab_content-pd-block-start-mb) var(--tab_content-pd-block-end-mb);
        padding-inline: var(--tab_content-pd-inline-start-mb) var(--tab_content-pd-inline-end-mb);
      }
    }
    .tabs-content-bg {
      border-radius: var(--tab_content-radius);
      border-style: solid;
      border-color: var(--color-border-default);
      border-top-width: var(--tab_content-border-top);
      border-bottom-width: var(--tab_content-border-bottom);
      border-left-width: var(--tab_content-border-left);
      border-right-width: var(--tab_content-border-right);
      background: var(--tab_content-background);
      background-repeat: no-repeat;
      background-size: calc(100% + var(--tab_content-border-left) + var(--tab_content-border-right))
        calc(100% + var(--tab_content-border-top) + var(--tab_content-border-bottom));
      background-position: calc(var(--tab_content-border-left) * -1) calc(var(--tab_content-border-top) * -1);
    }
    .tabs-content-content-inner {
      overflow: hidden;
      transition: height var(--trans-duration) var(--trans-easing);
      height: auto;

      .tab-item {
        display: none;
      }

      .tab-item.active {
        display: flex;
        animation: fade-in var(--trans-duration) var(--trans-ease-smooth);
      }
    }
  }
/* END_SNIPPET:panel-tab-content */

/* START_SNIPPET:panel-tab-item-list (INDEX:374) */
.tab-item-list {
    position: var(--til-position);
    top: var(--til-top);
    min-width: auto;
    min-height: 1px;
    width: var(--til-size-width);
    max-width: var(--til-size-max-width);
    height: fit-content;
    max-height: unset;
    @media (max-width: 991px) {
      position: relative;
      top: auto;
      width: 100%;
      height: fit-content;
      max-height: unset;
      max-width: unset;
    }
    .tab-item-list-content {
      padding-block: var(--til-pd-block-start) var(--til-pd-block-end);
      padding-inline: var(--til-pd-inline-start) var(--til-pd-inline-end);
      @media (max-width: 991px) {
        padding-block: var(--til-pd-block-start-mb) var(--til-pd-block-end-mb);
        padding-inline: var(--til-pd-inline-start-mb) var(--til-pd-inline-end-mb);
      }
    }
    .tab-item-list-content-inner {
      width: 100%;
      height: 100%;
      display: flex;
      justify-content: var(--til-justify-content);
      gap: var(--til-flex-gap);
      border-bottom: var(--til-border-bottom);

      .btn-til-label-wrap {
        overflow: hidden;
        position: relative;
        font-family: var(--til-title-font-family);
        font-size: var(--til-title-font-size);
        font-weight: var(--til-title-font-weight);
        line-height: var(--til-title-line-height);
        letter-spacing: var(--til-title-letter-spacing);
        text-transform: var(--til-title-text-transform);
        transition: color var(--trans-duration) var(--trans-easing);
        @media (max-width: 991px) {
          font-size: var(--til-title-font-size-mb);
          font-weight: var(--til-title-font-weight-mb);
          line-height: var(--til-title-line-height-mb);
          letter-spacing: var(--til-title-letter-spacing-mb);
          text-transform: var(--til-title-text-transform-mb);
        }
        .btn-til-label {
          position: relative;
          display: block;
          transform: translate3d(0, 0, 0);
          transform-style: preserve-3d;
          transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.05s;

          &::after {
            content: var(--til-title-text);
            position: absolute;
            inset: 0%;
            font-family: inherit;
            line-height: inherit;
            font-weight: inherit;
            letter-spacing: inherit;
            text-transform: inherit;
            font-size: inherit;
            white-space: nowrap;
            transform: translateY(100%);
          }
        }
      }
      @media (hover: hover) {
        .tab-button:hover .btn-til-label-wrap .btn-til-label {
          transform: translate3d(0, -100%, 0);
        }
      }
      @media (max-width: 991px) {
        width: 100%;
        flex-direction: row;
        justify-content: flex-start;
        gap: var(--til-flex-gap-mb);
        overflow-x: auto;
        padding-bottom: 0.25rem;
        scrollbar-width: none;

        &::-webkit-scrollbar {
          display: none;
        }

        -webkit-overflow-scrolling: touch;
        scroll-behavior: smooth;
        > * {
          @media (max-width: 991px) {
            flex-shrink: 0;
            white-space: nowrap;
          }
        }
      }

      .btn-til-content {
        position: relative;
        border: var(--button-border);
        border-radius: var(--button-radius);
        padding-inline: var(--button-pd-inline);
        padding-block: var(--button-pd-block);
        @media (max-width: 991px) {
          padding-inline: var(--button-pd-inline-mb);
          padding-block: var(--button-pd-block-mb);
          border-radius: var(--button-radius-mb);
        }
        .btn-til-content-inner {
          display: flex;
          z-index: 2;
          flex-direction: column;
          .btn-til-label-wrap {
            color: var(--til-label-color);
          }
        }
        .btn-til-bg {
          background: var(--button-bg);
          border-color: var(--button-border);
          position: absolute;
          inset: 0;
          border-radius: inherit;
          z-index: 1;
          transition: background-color var(--trans-duration) var(--trans-easing),
            border-color var(--trans-duration) var(--trans-easing);
        }

        &:not([aria-disabled]):not(:disabled) {
          &:hover {
            .btn-til-label-wrap {
              color: var(--til-label-color-hover);
            }
          }
        }
      }

      .tab-button {
        width: var(--til-tab-button-width);
        text-align: var(--til-text-align);
        cursor: pointer;
        position: relative;
        white-space: nowrap;
        .tab-button-underline {
          display: var(--til-tab-button-underline-display);
          width: 100%;
          height: var(--1px);
          background-color: var(--color-border-divider);
          position: relative;
          align-items: center;
          justify-content: center;
          @media (max-width: 991px) {
            display: none;
          }
          .tab-button-underline-inner {
            width: 100%;
            height: max(2px, 0.125rem);
            background-color: var(--color-border-hover);
            transform: scaleX(0);
            transform-origin: var(--til-text-align);
            transition: transform var(--trans-duration) var(--trans-easing);
          }
        }

        &.active {
          .btn-til-label-wrap {
            color: var(--til-label-color-active);
          }
          .tab-button-underline {
            .tab-button-underline-inner {
              transform: scaleX(1);
            }
          }
        }
      }
      .tab-divider {
        width: var(--1px);
        height: calc(100% - 0.75rem);
        background-color: var(--color-border-default);
        align-self: center;
      }
    }
  }
  .til-indicator {
    position: absolute;
    bottom: 0;
    height: max(2px, 0.125rem);
    background-color: var(--color-border-hover);
    display: var(--til-input-line-display);
    opacity: 0;
    pointer-events: none;
    left: 0;
    right: 100%;
    transition: left var(--trans-duration) var(--trans-easing), right var(--trans-duration) var(--trans-easing);
  }
/* END_SNIPPET:panel-tab-item-list */

/* START_SNIPPET:panel-tabs-group (INDEX:375) */
.panel-tabs-group {
    position: var(--tabs-position);
    top: var(--tabs-top);
    min-width: 1px;
    min-height: var(--tabs-size-min-height);
    width: var(--tabs-size-width);
    max-width: var(--tabs-size-max-width);
    height: var(--tabs-size-height);
    text-align: var(--tabs-text-align);
    @media (max-width: 991px) {
      position: relative;
      top: auto;
      width: var(--tabs-size-width-mb);
      height: var(--tabs-size-height-mb);
      text-align: var(--tabs-text-align-mb);
      max-width: var(--tabs-size-max-width-mb);
    }
    .tabs-custom-inner {
      position: relative;
      border-radius: var(--tabs-radius);
      margin-block: var(--tabs-mg-block-start) var(--tabs-mg-block-end);
      margin-inline: var(--tabs-mg-inline-start) var(--tabs-mg-inline-end);
      @media (max-width: 991px) {
        margin-block: var(--tabs-mg-block-start-mb) var(--tabs-mg-block-end-mb);
        margin-inline: var(--tabs-mg-inline-start-mb) var(--tabs-mg-inline-end-mb);
      }
    }
    .tabs-custom-content {
      padding-block: var(--tabs-pd-block-start) var(--tabs-pd-block-end);
      padding-inline: var(--tabs-pd-inline-start) var(--tabs-pd-inline-end);
      @media (max-width: 991px) {
        padding-block: var(--tabs-pd-block-start-mb) var(--tabs-pd-block-end-mb);
        padding-inline: var(--tabs-pd-inline-start-mb) var(--tabs-pd-inline-end-mb);
      }
    }
    .tabs-custom-content-inner {
      width: 100%;
      height: 100%;
      display: flex;
      flex-direction: var(--tabs-direction);
      justify-content: var(--tabs-justify-content);
      align-items: var(--tabs-alignment);
      gap: var(--tabs-flex-gap);
      @media (max-width: 991px) {
        flex-direction: var(--tabs-direction-mb);
        align-items: var(--tabs-alignment-mb);
        justify-content: var(--tabs-justify-content-mb);
        gap: var(--tabs-flex-gap-mb);
      }
    }
    .tabs-custom-bg {
      border-radius: var(--tabs-radius);
      border-style: solid;
      border-color: var(--color-border-default);
      border-top-width: var(--tabs-border-top);
      border-bottom-width: var(--tabs-border-bottom);
      border-left-width: var(--tabs-border-left);
      border-right-width: var(--tabs-border-right);
      background: var(--tabs-background);
      background-repeat: no-repeat;
      background-size: calc(100% + var(--tabs-border-left) + var(--tabs-border-right))
        calc(100% + var(--tabs-border-top) + var(--tabs-border-bottom));
      background-position: calc(var(--tabs-border-left) * -1) calc(var(--tabs-border-top) * -1);
    }
  }
/* END_SNIPPET:panel-tabs-group */

/* START_SNIPPET:panel-testimonial-banner (INDEX:376) */
.testimonial-banner {
    position: relative;
    min-width: 18.75rem;
    min-height: 1px;
    width: var(--banner-size-width);
    max-width: var(--banner-size-max-width);
    @media (max-width: 991px) {
      width: var(--banner-size-width-mb);
      max-width: var(--banner-size-max-width-mb);
    }
    .banner-inner {
      aspect-ratio: var(--banner-ratio);
      width: calc(100% - var(--banner-mg-inline-start) - var(--banner-mg-inline-end));
      border-radius: var(--banner-radius);
      margin-block: var(--banner-mg-block-start) var(--banner-mg-block-end);
      margin-inline: var(--banner-mg-inline-start) var(--banner-mg-inline-end);
      @media (max-width: 991px) {
        aspect-ratio: var(--banner-ratio-mb);
        width: calc(100% - var(--banner-mg-inline-start-mb) - var(--banner-mg-inline-end-mb));
        margin-block: var(--banner-mg-block-start-mb) var(--banner-mg-block-end-mb);
        margin-inline: var(--banner-mg-inline-start-mb) var(--banner-mg-inline-end-mb);
      }
    }
    .banner-content {
      padding-block: var(--banner-pd-block-start) var(--banner-pd-block-end);
      padding-inline: var(--banner-pd-inline-start) var(--banner-pd-inline-end);
      @media (max-width: 991px) {
        padding-block: var(--banner-pd-block-start-mb) var(--banner-pd-block-end-mb);
        padding-inline: var(--banner-pd-inline-start-mb) var(--banner-pd-inline-end-mb);
      }

      @media (hover: hover) {
        /* 1. Grayscale */
        &.animate-hover--grayscale {
          .banner-bg .media-with-hover-overlay-inner img,
          .banner-bg .media-with-hover-overlay-inner placeholder-image svg {
            filter: grayscale(0%);
            transition: all var(--trans-duration) var(--trans-easing);
          }

          &:hover .banner-bg .media-with-hover-overlay-inner img,
          &:hover .banner-bg .media-with-hover-overlay-inner placeholder-image svg {
            filter: grayscale(100%);
          }
        }

        /* 2. Zoom In */
        &.animate-hover--zoom-in {
          .banner-bg .media-with-hover-overlay-inner img,
          .banner-bg .media-with-hover-overlay-inner placeholder-image svg {
            transform: scale(1);
            transition: all var(--trans-duration) var(--trans-easing);
          }

          &:hover .banner-bg .media-with-hover-overlay-inner img,
          &:hover .banner-bg .media-with-hover-overlay-inner placeholder-image svg {
            transform: scale(1.1);
          }
        }

        /* 3. Zoom Out */
        &.animate-hover--zoom-out {
          .banner-bg .media-with-hover-overlay-inner img,
          .banner-bg .media-with-hover-overlay-inner placeholder-image svg {
            transform: scale(1.1);
            transition: all var(--trans-duration) var(--trans-easing);
          }

          &:hover .banner-bg .media-with-hover-overlay-inner img,
          &:hover .banner-bg .media-with-hover-overlay-inner placeholder-image svg {
            transform: scale(1);
          }
        }

        /* 4. Overlay Fade (Transition) */
        &.animate-hover-transition--fade {
          .banner-bg .hover-overlay {
            transition: opacity var(--trans-duration) var(--trans-easing),
              visibility var(--trans-duration) var(--trans-easing);
            opacity: 0;
            visibility: hidden;
          }

          &:hover .banner-bg .hover-overlay {
            opacity: 1;
            visibility: visible;
          }
        }

        /* 5. Overlay Zoom (Transition) */
        &.animate-hover-transition--zoom {
          .banner-bg .hover-overlay img,
          .banner-bg .hover-overlay placeholder-image svg {
            transform: scale(1.1);
            transition: all var(--trans-duration) var(--trans-easing);
          }

          .banner-bg .hover-overlay {
            opacity: 0;
            visibility: hidden;
            transition: opacity var(--trans-duration), visibility var(--trans-duration);
          }

          &:hover .banner-bg .hover-overlay {
            opacity: 1;
            visibility: visible;
          }

          &:hover .banner-bg .hover-overlay img,
          &:hover .banner-bg .hover-overlay placeholder-image svg {
            transform: scale(1);
          }
        }
      }
    }
    .banner-content-inner {
      width: 100%;
      height: 100%;
      display: flex;
      gap: var(--banner-flex-gap);
      flex-direction: var(--banner-direction);
      justify-content: var(--banner-justify-content);
      align-items: var(--banner-alignment);
      @media (max-width: 991px) {
        gap: var(--banner-flex-gap-mb);
        flex-direction: var(--banner-direction-mb);
        justify-content: var(--banner-justify-content-mb);
        align-items: var(--banner-alignment-mb);
      }
    }
    .banner-bg {
      filter: var(--banner-filter);
    }
  }
/* END_SNIPPET:panel-testimonial-banner */

/* START_SNIPPET:panel-testimonial-card (INDEX:377) */
.testimonial-card {
    position: var(--testi-position);
    top: var(--testi-top);
    min-width: 1px;
    min-height: var(--testi-size-min-height);
    width: var(--testi-size-width);
    height: var(--testi-size-height);
    max-width: var(--testi-size-max-width);
    text-align: var(--testi-text-align);
    @media (max-width: 991px) {
      position: relative;
      top: auto;
      width: var(--testi-size-width-mb);
      height: var(--testi-size-height-mb);
      min-height: var(--testi-size-min-height-mb);
      text-align: var(--testi-text-align-mb);
      max-width: var(--testi-size-max-width-mb);
    }
    .testi-custom-inner {
      contain: var(--testi-overflow-contain);
      position: relative;
    }
    .testi-custom-content {
      padding-block: var(--testi-pd-block-start) var(--testi-pd-block-end);
      padding-inline: var(--testi-pd-inline-start) var(--testi-pd-inline-end);
      @media (max-width: 991px) {
        padding-block: var(--testi-pd-block-start-mb) var(--testi-pd-block-end-mb);
        padding-inline: var(--testi-pd-inline-start-mb) var(--testi-pd-inline-end-mb);
      }
    }
    .testi-custom-content-inner {
      width: 100%;
      height: 100%;
      display: flex;
      flex-direction: var(--testi-direction);
      justify-content: var(--testi-justify-content);
      align-items: var(--testi-alignment);
      gap: var(--testi-flex-gap);
      @media (max-width: 991px) {
        flex-direction: column;
        align-items: var(--testi-alignment-mb);
        justify-content: var(--testi-justify-content-mb);
        gap: var(--testi-flex-gap-mb);
      }
      .testimonial-banner {
      }
    }
  }
/* END_SNIPPET:panel-testimonial-card */

/* START_SNIPPET:panel-testimonial-content (INDEX:378) */
.panel-testimonial-content {
    min-width: 1px;
    min-height: 1px;
    width: 100%;
    text-align: var(--text-text-align);
    @media (max-width: 991px) {
      text-align: var(--text-text-align-mb);
    }
    .text-custom-inner {
      color: var(--typo-color-normal);
      em {
        color: var(--typo-color-highlight);
      }
      a,
      button {
        color: var(--typo-color-link);
        &:hover {
          color: var(--typo-color-link-hover);
        }
      }
    }
    .text-custom-content {
      .text-custom-content-inner {
        p,
        ul,
        ol,
        h1,
        h2,
        h3,
        h4,
        h5,
        h6 {
          margin-block: var(--typo-paragraph-spacing);
          &:first-child {
            margin-block-start: 0;
          }
          &:last-child {
            margin-block-end: 0;
          }
          @media (max-width: 991px) {
            margin-block: var(--typo-paragraph-spacing-mb);
            &:first-child {
              margin-block-start: 0;
            }
            &:last-child {
              margin-block-end: 0;
            }
          }
        }
      }
    }
  }
/* END_SNIPPET:panel-testimonial-content */

/* START_SNIPPET:panel-testimonial-review (INDEX:379) */
.panel-testimonial-review {
    position: var(--review-position);
    top: var(--review-top);
    min-width: 1px;
    min-height: var(--review-size-min-height);
    width: var(--review-size-width);
    height: var(--review-size-height);
    max-width: var(--review-size-max-width);
    text-align: var(--review-text-align);
    @media (max-width: 991px) {
      position: relative;
      top: auto;
      width: var(--review-size-width-mb);
      height: var(--review-size-height-mb);
      min-height: var(--review-size-min-height-mb);
      text-align: var(--review-text-align-mb);
      max-width: var(--review-size-max-width-mb);
    }
    .review-custom-inner {
      border-radius: var(--review-radius);
      margin-block: var(--review-mg-block-start) var(--review-mg-block-end);
      margin-inline: var(--review-mg-inline-start) var(--review-mg-inline-end);
      position: relative;
      @media (max-width: 991px) {
        margin-block: var(--review-mg-block-start-mb) var(--review-mg-block-end-mb);
        margin-inline: var(--review-mg-inline-start-mb) var(--review-mg-inline-end-mb);
      }
    }
    .review-custom-content {
      padding-block: var(--review-pd-block-start) var(--review-pd-block-end);
      padding-inline: var(--review-pd-inline-start) var(--review-pd-inline-end);
      @media (max-width: 991px) {
        padding-block: var(--review-pd-block-start-mb) var(--review-pd-block-end-mb);
        padding-inline: var(--review-pd-inline-start-mb) var(--review-pd-inline-end-mb);
      }
    }
    .review-custom-content {
    }
    .review-custom-content-inner {
      width: 100%;
      height: 100%;
      display: flex;
      flex-direction: var(--review-direction);
      justify-content: var(--review-justify-content);
      align-items: var(--review-alignment);
      gap: var(--review-flex-gap);
      @media (max-width: 991px) {
        flex-direction: var(--review-direction-mb);
        align-items: var(--review-alignment-mb);
        justify-content: var(--review-justify-content-mb);
        gap: var(--review-flex-gap-mb);
      }
    }
    .review-custom-bg {
      border-radius: var(--review-radius);
      border-style: solid;
      border-color: var(--color-border-default);
      border-top-width: var(--review-border-top);
      border-bottom-width: var(--review-border-bottom);
      border-left-width: var(--review-border-left);
      border-right-width: var(--review-border-right);
      background: var(--review-background);
      background-repeat: no-repeat;
      background-size: calc(100% + var(--review-border-left) + var(--review-border-right))
        calc(100% + var(--review-border-top) + var(--review-border-bottom));
      background-position: calc(var(--review-border-left) * -1) calc(var(--review-border-top) * -1);
    }
  }
/* END_SNIPPET:panel-testimonial-review */

/* START_SNIPPET:snip_accelerated_checkout (INDEX:381) */
.shopify-payment-button__button {
    /* Force button primary style */
    height: var(--button-lg-height);

    display: flex;
    align-items: center;
    justify-content: center;

    background: var(--button-type-primary-bg);
    color: var(--button-type-primary-color);
    border: var(--1px) solid var(--button-type-primary-border);

    padding-inline: var(--button-input-pd-inline-large);
    border-radius: var(--radius-button-input-theme-st);

    font-size: var(--button-input-font-size-large);
    line-height: var(--button-input-font-lh-large);
    font-weight: var(--button-default-weight);
    letter-spacing: var(--button-default-ls);
    text-transform: var(--button-default-case);
    white-space: nowrap;

    text-decoration: none;
    transition: all var(--trans-duration) var(--trans-easing);
    position: relative;
    overflow: hidden;

    @media screen and (max-width: 991px) {
      height: var(--button-md-height);
      padding-inline: var(--button-input-pd-inline-medium);
      font-size: var(--button-input-font-size-medium);
      line-height: var(--button-input-font-lh-medium);
    }

    .button-loader-wrap {
      opacity: 0;
      visibility: hidden;
      position: absolute;
      z-index: 3;
      inset: 0;
      flex-shrink: 0;
      display: flex;
      align-items: center;
      justify-content: center;
      transition: all var(--trans-duration) var(--trans-easing);
      background: var(--color-primary_button_background);
      .button-loader {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 0.1875rem;
        .dot-1,
        .dot-2,
        .dot-3 {
          width: 0.375rem;
          height: 0.375rem;
          border-radius: 50%;
          background-color: var(--button-type-primary-color);
          flex-shrink: 0;
        }
      }
    }

    &:hover:not([disabled]) {
      background: var(--button-type-primary-bg-hover);
      color: var(--button-type-primary-color-hover);
      border-color: var(--button-type-primary-border-hover);
    }

    &:disabled {
      opacity: 1;
      background: var(--button-type-primary-bg-disabled);
      color: var(--button-type-primary-color-disabled);
      border-color: var(--button-type-primary-border-disabled);
    }

    &[loading]:disabled {
      opacity: 1;
    }

    &:focus-visible {
      outline: 1px solid var(--color-primary);
    }

    &[loading] {
      pointer-events: none;
      .button-loader-wrap {
        opacity: 1;
        visibility: visible;
        .button-loader {
          .dot-1,
          .dot-2,
          .dot-3 {
            animation: loading-dot-button 1s infinite ease-in-out;
          }
          .dot-1 {
            animation-delay: -0.16s;
          }
          .dot-2 {
            animation-delay: 0;
          }
          .dot-3 {
            animation-delay: 0.16s;
          }
        }
      }
    }
  }

  .accelerated-checkout-block[data-visual-preview-mode] {
    width: 300px;
  }

  more-payment-options-link {
    font-size: smaller;
  }

  more-payment-options-link a {
    --button-color: var(--color-primary);
  }

  more-payment-options-link a:hover {
    --button-color: var(--color-primary-hover);
  }

  .shopify-payment-button__more-options[aria-hidden='true'] {
    display: none;
  }
/* END_SNIPPET:snip_accelerated_checkout */

/* START_SNIPPET:snip_accordion (INDEX:382) */
.accordion-group {
    display: flex;
    align-items: stretch;
    .accordion-inner {
      position: relative;
      width: 100%;
      display: flex;
      align-items: stretch;
      contain: paint;
      border-radius: var(--grp-radius);
    }
    .accordion-content {
      position: relative;
      z-index: 2;
      width: 100%;
    }
    .accordion-content-inner {
      position: relative;
    }
  }
/* END_SNIPPET:snip_accordion */

/* START_SNIPPET:snip_accordion_item (INDEX:383) */
.accord-item-inner {
    background-color: var(--color-alt-bg);
    text-align: left;
  }

  .accord-item-head {
    padding: 0.75rem;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    column-gap: 1.5rem;
    cursor: pointer;

    > .accord-item-head-inner {
      display: flex;
      align-items: flex-start;
      gap: 0.75rem;

      @media (max-width: 768px) {
        gap: 0.625rem;
      }
    }

    > .accord-item-head-toggle {
      margin-inline-start: max(0.1rem, 1px);
    }
  }

  .accord-item-body {
    padding-inline: var(--size-spacing);
    height: auto;
    transition: max-height var(--trans-duration) var(--trans-easing), opacity var(--trans-duration) var(--trans-easing);

    .accord-item-body-inner {
      padding-block-end: 0.75rem;
    }
  }

  .accord-item {
    display: block;
    .accord-item-inner {
      &.active {
        .accord-item-head-toggle .plus-vertical {
          transform: scaleY(0);
        }
      }
    }
  }
/* END_SNIPPET:snip_accordion_item */

/* START_SNIPPET:snip_accordion_toggle (INDEX:385) */
.accordion-toggle {
    width: 1.25rem;
    height: 1.25rem;
    border-radius: var(--radius-new-pill);
    color: var(--color-primary_button_text);
    background-color: var(--color-primary_button_background);
    display: flex;
    align-items: center;
    justify-content: center;
    .accordion-toggle-ic {
      width: 0.75rem;
      height: 0.75rem;
      display: flex;
      align-items: center;
      justify-content: center;
    }
    @media (max-width: 768px) {
      --icon-size: 0.875rem;
      width: var(--icon-size);
      height: var(--icon-size);
      .accordion-toggle-ic {
        --icon-size: 0.625rem;
        width: var(--icon-size);
        height: var(--icon-size);
      }
    }
  }
/* END_SNIPPET:snip_accordion_toggle */

/* START_SNIPPET:snip_alert (INDEX:386) */
.alert {
    width: 100%;
    border-radius: var(--radius-new-small);
    overflow: hidden;
    border: var(--1px) dashed var(--color-foreground_40);
    background-color: var(--color-background);
    &.alert--success {
      --color-alert-icon: var(--color-status_success);
    }
    &.alert--error {
      --color-alert-icon: var(--color-status_error);
    }
    &.alert--warning {
      --color-alert-icon: var(--color-status_warning);
    }
    &.alert--info {
      --color-alert-icon: var(--color-status_info);
    }
    .alert-inner {
      padding: 1.5rem;
      display: flex;
      flex-direction: column;
      align-items: stretch;
      row-gap: 0.5rem;
      text-align: left;
      .alert-inner-item {
        display: flex;
        align-items: flex-start;
        gap: 0.5rem;
        .alert-icon-wrap {
          flex: none;
          display: block;
          .alert-icon {
            display: inline-block;
            background-color: var(--color-alert-icon);
            width: 0.375rem;
            height: 0.375rem;
            border-radius: var(--radius-new-pill);
            vertical-align: middle;
          }
        }
      }
    }
  }
/* END_SNIPPET:snip_alert */

/* START_SNIPPET:snip_article_container (INDEX:387) */
.container {
    .container-inner {
      position: relative;
      overflow: hidden;
    }
    .container-content {
      position: relative;
      z-index: 2;
      width: 100%;
    }
    .container-content-inner {
      position: relative;
    }
    .container-bg {
      pointer-events: none;
      position: absolute;
      z-index: 1;
      inset: 0;
    }
  }
/* END_SNIPPET:snip_article_container */

/* START_SNIPPET:snip_article_container_comments (INDEX:388) */
/* Smooth scroll when navigating via anchor */
  html:has(:target) {
    scroll-behavior: smooth;
  }

  .comments {
    scroll-margin-top: var(--actual-header-height, var(--header-minheight, 0px));

    @media (max-width: 991px) {
      scroll-margin-top: calc(var(--header-minheight-mb, 0px) + var(--sidebar-article-height, 0px));
    }

    /* Animate only when this section is the anchor target */
    &:target .comments-list {
      animation: all var(--trans-duration-long) var(--trans-easing) both;
    }

    .comments-inner {
      position: relative;
    }
    .comments-content {
      position: relative;
      z-index: 2;
      width: 100%;
    }
    .comments-content-inner {
      position: relative;
    }
    .comments-bg {
      pointer-events: none;
      position: absolute;
      z-index: 1;
      inset: 0;
    }
  }
/* END_SNIPPET:snip_article_container_comments */

/* START_SNIPPET:snip_article_container_content (INDEX:389) */
.ac {
    .ac-inner {
      position: relative;
      z-index: 0;
    }
    .ac-content {
      position: relative;
      z-index: 2;
      width: 100%;
    }
    .ac-content-inner {
      position: relative;
    }
    .ac-content-inner-image {
      max-width: var(--sc-article-container-width);
      width: 100%;
      border-radius: var(--radius-new-small);
      overflow: hidden;
      margin-block-end: 3.75rem;
      @media (max-width: 991px) {
        margin-block-end: 2rem;
      }
    }
    .ac-bg {
      pointer-events: none;
      position: absolute;
      z-index: 1;
      inset: 0;
    }
  }
/* END_SNIPPET:snip_article_container_content */

/* START_SNIPPET:snip_article_container_navigation (INDEX:390) */
.an {
    .an-inner {
      position: relative;
    }
    .an-content {
      position: relative;
      z-index: 2;
      width: 100%;
    }
    .an-content-inner {
      position: relative;
    }
    .an-bg {
      pointer-events: none;
      position: absolute;
      z-index: 1;
      inset: 0;
    }
  }
/* END_SNIPPET:snip_article_container_navigation */

/* START_SNIPPET:snip_article_detail_sc (INDEX:392) */
.sc-article-detail {
    display: flex;
    align-items: stretch;
    .sc-article-detail-inner {
      position: relative;
      contain: paint;
      width: 100%;
      display: flex;
      align-items: stretch;
      @media (max-width: 991px) {
        &:has(.sidebar.is-sticky) {
          contain: none;
        }
      }
    }
    .sc-article-detail-content {
      position: relative;
      z-index: 2;
      width: 100%;
    }
    .sc-article-detail-content-inner {
      position: relative;
    }
    .sc-article-detail-bg {
      pointer-events: none;
      position: absolute;
      z-index: 1;
      inset: 0;
    }
  }
/* END_SNIPPET:snip_article_detail_sc */

/* START_SNIPPET:snip_article_hero (INDEX:394) */
.article-header {
    display: block;
    .article-header-inner {
      position: relative;
      contain: paint;
    }
    .article-header-content {
      position: relative;
      z-index: 2;
    }
    .article-header-content-inner {
      position: relative;
    }
    .article-header-bg {
      pointer-events: none;
      position: absolute;
      z-index: 1;
      inset: 0;
      .media-overlay {
        background: #1d1d1d66;
      }
    }
  }
/* END_SNIPPET:snip_article_hero */

/* START_SNIPPET:snip_article_hero_details (INDEX:396) */
.article-details {
    .article-details-inner {
      position: relative;
      height: 100%;
      width: 100%;
    }
  }
/* END_SNIPPET:snip_article_hero_details */

/* START_SNIPPET:snip_article_hero_title (INDEX:398) */
.article-title {
    .article-title-inner {
      position: relative;
      height: 100%;
      width: 100%;
    }
  }
/* END_SNIPPET:snip_article_hero_title */

/* START_SNIPPET:snip_article_item (INDEX:399) */
.article-item {
    display: flex;
    align-items: stretch;

    .article-item-hover-content {
      display: grid;
      grid-template-rows: 0fr;
      transition: grid-template-rows var(--trans-duration) var(--trans-easing);
    }

    .article-item-hover-content-inner {
      overflow: hidden;
      opacity: 0;
      transform: translateY(0.5rem);
      transition: opacity var(--trans-duration) var(--trans-easing), transform var(--trans-duration) var(--trans-easing);
    }

    &:hover,
    &:focus-within {
      .article-item-hover-content {
        grid-template-rows: 1fr;
      }
      .article-item-hover-content-inner {
        opacity: 1;
        transform: translateY(0);
      }
    }

    @media (max-width: 991px) {
      .article-item-hover-content {
        grid-template-rows: 1fr;
      }
      .article-item-hover-content-inner {
        opacity: 1;
        transform: translateY(0);
      }
    }

    .article-item-inner {
      position: relative;
      width: 100%;
      height: auto;
      display: flex;
      align-items: stretch;
    }
    .article-item-content {
      position: relative;
      z-index: 2;
      width: 100%;
    }
    .article-item-content-inner {
      position: relative;
    }
    .article-item-bg {
      pointer-events: none;
      position: absolute;
      z-index: 1;
      inset: 0;
    }
  }
/* END_SNIPPET:snip_article_item */

/* START_SNIPPET:snip_article_main_content (INDEX:401) */
.main-content {
    display: flex;
    align-items: stretch;
    .main-content-inner {
      position: relative;
      contain: paint;
      width: 100%;
      display: flex;
      align-items: stretch;
      @media (max-width: 991px) {
        &:has(.sidebar.is-sticky) {
          contain: none;
        }
      }
    }
    .main-content-content {
      position: relative;
      z-index: 2;
      width: 100%;
    }
    .main-content-content-inner {
      position: relative;
    }
    .main-content-bg {
      pointer-events: none;
      position: absolute;
      z-index: 1;
      inset: 0;
    }
  }
/* END_SNIPPET:snip_article_main_content */

/* START_SNIPPET:snip_article_page_grid (INDEX:402) */
.article-page-grid {
    display: flex;
    align-items: stretch;
    .article-page-grid-inner {
      position: relative;
      contain: layout style var(--apl-overflow-contain);
      width: 100%;
      display: flex;
      align-items: stretch;
    }
    .article-page-grid-content {
      position: relative;
      z-index: 2;
      width: 100%;
    }
    .article-page-grid-content-inner {
      position: relative;
    }
    .pagination-content-inner {
      --transition-duration: var(--trans-duration);
      --transition-easing: var(--trans-easing);
      transition: opacity var(--transition-duration) var(--transition-easing);
    }
    .pagination-container {
      display: contents;
    }
    .article-page-grid-bg {
      pointer-events: none;
      position: absolute;
      z-index: 1;
      inset: 0;
    }
  }
/* END_SNIPPET:snip_article_page_grid */

/* START_SNIPPET:snip_article_page_listing (INDEX:403) */
.article-page-listing {
    display: block;
    .article-page-listing-inner {
      position: relative;
    }
    .article-page-listing-content {
      position: relative;
      z-index: 2;
      display: flex;
      align-items: stretch;
    }
    .article-page-listing-content-inner {
      position: relative;
    }
    .article-page-listing-bg {
      pointer-events: none;
      position: absolute;
      z-index: 1;
      inset: 0;
    }
  }
/* END_SNIPPET:snip_article_page_listing */

/* START_SNIPPET:snip_article_related_articles (INDEX:404) */
.ra {
    .ra-inner {
      position: relative;
      .ra-content {
        position: relative;
        z-index: 3;
        width: 100%;
      }
      .ra-bg {
        pointer-events: none;
        position: absolute;
        z-index: 2;
        inset: 0;
      }
    }
  }
/* END_SNIPPET:snip_article_related_articles */

/* START_SNIPPET:snip_article_tabs_of_content (INDEX:406) */
.toc {
    .toc-inner {
      position: relative;
      .toc-content {
        position: relative;
        z-index: 3;
        width: 100%;
        overflow: hidden;
      }
      .toc-bg {
        pointer-events: none;
        position: absolute;
        z-index: 2;
        inset: 0;
      }
    }
  }

  @media (max-width: 991px) {
    .toc-content,
    .toc-content-inner,
    .toc-content-inner-blogs,
    .sidebar-container,
    .sidebar-content {
      overflow: visible !important;
      z-index: 10;
    }

    .sidebar-container .sidebar-content .sidebar-content-list-wrapper {
      max-height: none !important;
      overflow: visible !important;
      height: auto !important;
    }
  }
/* END_SNIPPET:snip_article_tabs_of_content */

/* START_SNIPPET:snip_author_ratings (INDEX:409) */
.authorrating-custom {
    .authorrating-custom-inner {
      position: relative;
      contain: paint;
      height: 100%;
      width: 100%;
    }
    .authorrating-custom-content {
      position: relative;
      z-index: 2;
      height: 100%;
      width: 100%;
    }
    .authorrating-custom-content-inner {
      position: relative;
    }
  }
/* END_SNIPPET:snip_author_ratings */

/* START_SNIPPET:snip_avatar_group (INDEX:410) */
.avatar-grp {
    .avatar-grp-inner {
      position: relative;
      width: 100%;
      display: flex;
      align-items: stretch;
      .avatar-grp-content {
        position: relative;
        z-index: 2;
        width: 100%;
      }

      .avatar-grp-bg {
        pointer-events: none;
        position: absolute;
        z-index: 1;
        inset: 0;
        background-color: var(--color-background);
      }
    }
  }
/* END_SNIPPET:snip_avatar_group */

/* START_SNIPPET:snip_avatar_group_avatar (INDEX:411) */
.avatar {
    width: var(--size-fit);
    .avatar-inner {
      .avatar-content {
        .avatar-content-inner {
          display: flex;
          .avatar-image {
            border-radius: var(--radius-new-pill);
            overflow: hidden;
            position: relative;
            z-index: 2;
            flex-shrink: 0;

            &:not(:first-child) {
              margin-left: calc(-1 * ((var(--image-size) / 2) - var(--image-border-width)));
            }

            &:not(:last-child) {
              --mask-radius: calc((var(--image-size) / 2) + var(--image-border-width));
              -webkit-mask-image: radial-gradient(
                circle var(--mask-radius) at calc(100% + var(--image-border-width)) 50%,
                transparent 100%,
                black 100%
              );
              mask-image: radial-gradient(
                circle var(--mask-radius) at calc(100% + var(--image-border-width)) 50%,
                transparent 100%,
                black 100%
              );
            }

            &:last-child {
              & > * {
                z-index: 1;
              }
              &::before {
                content: var(--count-number);
                position: absolute;
                z-index: 2;
                inset: 0;
                background-color: var(--color-foreground_60);
                color: #fff;

                display: var(--count-display);
                justify-content: center;
                align-items: center;

                font-weight: var(--font-weight-medium);
                font-size: var(--typo-description-size);
                line-height: var(--typo-description-lh);
                @media (max-width: 991px) {
                  font-size: var(--typo-description-size-mb);
                  line-height: var(--typo-description-lh-mb);
                }
              }
            }

            & > * {
              width: var(--image-size);
              height: var(--image-size);
            }
          }
        }
      }
    }
  }
/* END_SNIPPET:snip_avatar_group_avatar */

/* START_SNIPPET:snip_avatar_group_review (INDEX:412) */
.review {
    width: var(--review-size-width);
    max-width: var(--review-size-max-width);
    @media (max-width: 991px) {
      width: var(--review-size-width-mb);
      max-width: var(--review-size-max-width-mb);
    }
    .review-inner {
      .review-content {
        .review-content-inner {
          display: flex;
          flex-direction: column;
          gap: var(--review-flex-gap);
          align-items: var(--review-alignment);

          @media (max-width: 991px) {
            align-items: var(--review-alignment-mb);
            gap: var(--review-flex-gap-mb);
          }
          .review-content-inner-stars {
            display: flex;
            gap: 0.125rem;
            color: var(--color-foreground);
            width: fit-content;
            .review-content-inner-star {
              width: 1rem;
              height: 1rem;
              &.filled path {
                fill-opacity: 1;
              }
            }
          }
          .review-content-inner-text {
            width: fit-content;
            color: var(--typo-color-normal);
            text-align: var(--review-text);

            @media (max-width: 991px) {
              text-align: var(--review-text-mb);
            }
            em {
              color: var(--typo-color-highlight);
            }
            a,
            button {
              color: var(--typo-color-link);
              &:hover { color: var(--typo-color-link-hover); }
            }
          }
        }
      }
    }
  }
/* END_SNIPPET:snip_avatar_group_review */

/* START_SNIPPET:snip_badge (INDEX:413) */
.badge {
    overflow: hidden;
    display: inline-block;
    white-space: nowrap;
    border-radius: var(--radius-new-pill);
    &.badge--solid {
      --badge-bg: var(--color-foreground_100);
      --badge-fg: var(--color-background);
    }
    &.badge--ghost {
      --badge-bg: transparent;
      --badge-fg: var(--color-foreground_100);
    }
    &.bg-alt-solid {
      &:after {
        content: '';
        display: block;
        position: absolute;
        inset: 0;
        background-color: var(--color-surface-alt);
        pointer-events: none;
        z-index: 1;
      }
    }
    .badge-inner {
      display: flex;
      align-items: center;
      color: var(--badge-fg);
      background-color: var(--badge-bg);
      padding-block: 0.25rem;
      padding-inline: 0.625rem;
      &.badge-inner--dot {
        gap: 0.375rem;
        padding-inline-start: 0.5rem;
      }
    }
    .badge-dot {
      flex: none;
      background-color: var(--badge-dot-color);
      width: 0.375rem;
      height: 0.375rem;
      border-radius: 50%;
    }
  }
/* END_SNIPPET:snip_badge */

/* START_SNIPPET:snip_banner (INDEX:414) */
.banner {
    display: flex;
    align-items: stretch;
    .banner-inner {
      position: relative;
      contain: layout style paint;
    }
    .banner-content {
      position: relative;
      z-index: 2;
      height: 100%;
      width: 100%;
    }
    .banner-content-inner {
      position: relative;
      z-index: 4;
      pointer-events: none;
      a {
        pointer-events: auto;
      }
    }
    .banner-bg {
      position: absolute;
      z-index: 1;
      inset: 0;
    }
    .banner-full-link-overlay {
      position: absolute;
      z-index: 3;
      inset: 0;
      border-radius: var(--banner-radius);
    }
  }
/* END_SNIPPET:snip_banner */

/* START_SNIPPET:snip_before_after (INDEX:415) */
.before-after {
    .before-after-inner {
      position: relative;
      contain: paint;
      height: 100%;
      width: 100%;
    }
    .before-after-content {
      position: relative;
      z-index: 2;
      height: 100%;
      width: 100%;
    }
    .before-after-content-inner {
      position: relative;
    }
  }

  before-after {
    .before-after__cursor-row,
    .before-after__cursor-column {
      display: none;
    }

    &[data-direction-row] .before-after__cursor-row {
      display: block;
    }

    &[data-direction-column] .before-after__cursor-column {
      display: block;
    }
  }
/* END_SNIPPET:snip_before_after */

/* START_SNIPPET:snip_before_after_media (INDEX:416) */
.before-after-media {
    .before-after-media-inner {
      width: 100%;
      height: 100%;
      overflow: hidden;
      border-radius: var(--img-radius);
      position: relative;

      img {
        height: 100%;
        object-fit: cover;
      }
    }
  }
/* END_SNIPPET:snip_before_after_media */

/* START_SNIPPET:snip_blur_overlay (INDEX:417) */
.blur-overlay {
    pointer-events: none;
    z-index: 10;
    flex: none;
    height: 100px;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    --blur-factor: 1;
    .blur-overlay-inner {
      position: absolute;
      inset: 0;
      overflow: hidden;
      --blur-factor: 1;
      .blur-overlay-item {
        position: absolute;
        inset: 0px;
        pointer-events: none;
        will-change: auto;
        &:nth-child(1) {
          z-index: 1;
          mask-image: linear-gradient(rgba(0, 0, 0, 0) 0%, rgb(0, 0, 0) 12.5%, rgb(0, 0, 0) 25%, rgba(0, 0, 0, 0) 37.5%);
          backdrop-filter: blur(calc(0.0546875px * var(--blur-factor)));
        }
        &:nth-child(2) {
          z-index: 2;
          mask-image: linear-gradient(rgba(0, 0, 0, 0) 12.5%, rgb(0, 0, 0) 25%, rgb(0, 0, 0) 37.5%, rgba(0, 0, 0, 0) 50%);
          backdrop-filter: blur(calc(0.109375px * var(--blur-factor)));
        }
        &:nth-child(3) {
          z-index: 3;
          mask-image: linear-gradient(rgba(0, 0, 0, 0) 25%, rgb(0, 0, 0) 37.5%, rgb(0, 0, 0) 50%, rgba(0, 0, 0, 0) 62.5%);
          backdrop-filter: blur(calc(0.21875px * var(--blur-factor)));
        }
        &:nth-child(4) {
          z-index: 4;
          mask-image: linear-gradient(rgba(0, 0, 0, 0) 37.5%, rgb(0, 0, 0) 50%, rgb(0, 0, 0) 62.5%, rgba(0, 0, 0, 0) 75%);
          backdrop-filter: blur(calc(0.4375px * var(--blur-factor)));
        }
        &:nth-child(5) {
          z-index: 5;
          mask-image: linear-gradient(rgba(0, 0, 0, 0) 50%, rgb(0, 0, 0) 62.5%, rgb(0, 0, 0) 75%, rgba(0, 0, 0, 0) 87.5%);
          backdrop-filter: blur(calc(0.875px * var(--blur-factor)));
        }
        &:nth-child(6) {
          z-index: 6;
          mask-image: linear-gradient(rgba(0, 0, 0, 0) 62.5%, rgb(0, 0, 0) 75%, rgb(0, 0, 0) 87.5%, rgba(0, 0, 0, 0) 100%);
          backdrop-filter: blur(calc(1.75px * var(--blur-factor)));
        }
        &:nth-child(7) {
          z-index: 7;
          mask-image: linear-gradient(rgba(0, 0, 0, 0) 75%, rgb(0, 0, 0) 87.5%, rgb(0, 0, 0) 100%);
          backdrop-filter: blur(calc(3.5px * var(--blur-factor)));
        }
        &:nth-child(8) {
          z-index: 8;
          mask-image: linear-gradient(rgba(0, 0, 0, 0) 87.5%, rgb(0, 0, 0) 100%);
          backdrop-filter: blur(calc(7px * var(--blur-factor)));
        }
      }
    }
  }
/* END_SNIPPET:snip_blur_overlay */

/* START_SNIPPET:snip_button_close (INDEX:418) */
.button-close-wrapper {
    position: absolute;
    top: var(--drawer-pd, var(--modals-default-padding));
    right: var(--drawer-pd, var(--modals-default-padding));
    z-index: 3;

    @media (max-width: 991px) {
      top: var(--drawer-pd-mb, var(--modals-default-padding-mb));
      right: var(--drawer-pd-mb, var(--modals-default-padding-mb));
    }
  }

  .button-close {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    border-radius: var(--button-close-radius);
    background-color: var(--color-background);
    color: var(--color-foreground_60);
    transition: all var(--trans-duration) var(--trans-easing);
    cursor: pointer;
    overflow: hidden;
    position: relative;

    &::before {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      z-index: 1;
      width: 100%;
      height: 100%;
      background-color: var(--button-close-bg);
      transition: all var(--trans-duration) var(--trans-easing);
      border-radius: var(--button-close-radius);
      border: var(--button-close-border);
    }

    .button-close-icon {
      display: flex;
      align-items: center;
      justify-content: center;
      width: 1.25rem;
      height: 1.25rem;
      position: relative;
      z-index: 2;

      svg {
        cursor: pointer;
      }
    }

    @media (hover: hover) {
      &:hover,
      &:focus-visible {
        color: var(--color-foreground_100);
        &::before {
          background-color: var(--button-close-bg-hover);
          border: var(--button-close-border-hover);
        }
        .icon-close-x {
          .icon-close-x-1 {
            transform: rotate(135deg);
          }
          .icon-close-x-2 {
            transform: rotate(225deg);
          }
        }
      }
    }
  }
/* END_SNIPPET:snip_button_close */

/* START_SNIPPET:snip_button_v2 (INDEX:419) */
.btn-custom {
    display: flex;
    .btn-custom-inner {
      width: 100%;
      position: relative;
    }
    .btn-custom-content {
      display: block;
      position: relative;
      overflow: hidden;
      .btn-custom-content-inner {
        height: 100%;
        position: relative;
        z-index: 3;
        display: flex;
        align-items: center;
        justify-content: center;
        transition: color var(--trans-duration) var(--trans-easing);
        .btn-custom-icon {
          flex-shrink: 0;
          display: flex;
          align-items: center;
          justify-content: center;
        }
      }
      .btn-custom-bg {
        position: absolute;
        inset: 0;
        z-index: 1;
        border-radius: inherit;

        .btn-custom-bg-initial,
        .btn-custom-bg-hover {
          position: absolute;
          inset: 0;
          border-radius: inherit;
          border-style: solid;
          border-width: var(--1px);
          transition: opacity var(--trans-duration) var(--trans-easing);
          pointer-events: none;
          opacity: 0;
        }

        .btn-custom-bg-initial {
          background: var(--button-bg);
          border-color: var(--button-border);
          z-index: 1;
        }

        .btn-custom-bg-hover {
          background: var(--button-bg-hover);
          border-color: var(--button-border-hover);
          z-index: 2;
        }
      }
    }
  }
/* END_SNIPPET:snip_button_v2 */

/* START_SNIPPET:snip_cart_accordion_item (INDEX:420) */
.cart-accord-item {
    width: 100%;
    cursor: auto;
    .cart-accord-item-divider {
      width: 100%;
      height: 1px;
      background-color: var(--color-border-default);
    }
    .accord-item {
      .accord-item-inner {
        border-radius: var(--radius-new-none);
        background-color: transparent;
        .accord-item-head {
          padding-block: 1rem;
          padding-inline: 0;
          .cart-accord-item-head {
            display: flex;
            align-items: center;
            gap: 0.5rem;
            .icon {
              flex: none;
              width: 1rem;
              height: 1rem;
              color: var(--color-foreground_60);
              svg {
                path {
                  stroke-width: 2;
                }
              }
            }
          }
        }

        .accord-item-body {
          padding-block-end: 1rem;
          padding-inline: 0;
          .accord-item-body-inner {
            padding-inline-start: 0;
            padding-block-end: 0;
          }
        }
      }
    }
    &.cart-note-item {
      .accord-item-inner {
        .accord-item-head {
          padding-block-start: 0;
        }
      }
    }
  }
/* END_SNIPPET:snip_cart_accordion_item */

/* START_SNIPPET:snip_cart_actions (INDEX:421) */
.cart__ctas {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 0.25rem;
    margin-block-start: 0.5rem;

    @media (max-width: 991px) {
      margin-block-start: 0.25rem;
    }
    .cart__ctas-main-buttons {
      display: flex;
      gap: 0.25rem;
      @media (max-width: 991px) {
        .button-radius-rounded {
          border-radius: var(--radius-new-main);
        }
      }

      & > * {
        flex: 1;
      }
    }

    .cart-terms-checkbox {
      padding-block-start: 1.25rem;
      padding-block-end: 1rem;
    }
  }
/* END_SNIPPET:snip_cart_actions */

/* START_SNIPPET:snip_cart_applied_discounts (INDEX:422) */
.cart-applied-discounts {
    .cart-applied-discounts-accordion {
      border: none;
    }

    .cart-applied-discounts-summary {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 0.5rem;
      cursor: pointer;
      list-style: none;
      user-select: none;

      &::-webkit-details-marker {
        display: none;
      }
    }

    .cart-applied-discounts-summary-content {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 0.5rem;
      flex: 1;
    }

    .cart-applied-discounts-icon {
      display: flex;
      align-items: center;
      justify-content: center;
      width: 1rem;
      height: 1rem;
      transition: transform 0.25s ease;
      flex-shrink: 0;
      color: var(--color-foreground_60);

      svg {
        width: 100%;
        height: 100%;
      }
    }

    .cart-applied-discounts-accordion.active .cart-applied-discounts-icon {
      transform: rotate(180deg);
    }

    .cart-applied-discounts-content {
      overflow: hidden;
      max-height: 0;
    }

    .cart-applied-discounts-list {
      padding-top: 0.75rem;
      display: flex;
      flex-direction: column;
      gap: 1rem;
    }

    .cart-applied-discount-item {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 0.5rem;

      .cart-applied-discount-title {
        display: flex;
        align-items: center;
        gap: 0.375rem;
      }

      .cart-applied-discount-item-icon {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 1rem;
        height: 1rem;
        flex-shrink: 0;
      }
    }
  }
/* END_SNIPPET:snip_cart_applied_discounts */

/* START_SNIPPET:snip_cart_discount (INDEX:423) */
.cart-discount {
    width: 100%;
    display: block;
  }

  .cart-discount__form {
    .button {
      margin-block-start: 0.75rem;
    }
  }

  .cart-discount__content {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 1rem;
  }

  .cart-discount__codes {
    display: none;
    gap: 0.25rem;
  }

  .cart-discount__codes:has(.cart-discount__pill) {
    display: flex;
  }

  .cart-discount__error {
    margin-block-start: 1rem;
    padding-block: 1.25rem;
    padding-inline: 1.25rem;
    border-radius: var(--radius-new-small);
    border: var(--1px) dashed var(--color-foreground_40);
    overflow: hidden;
  }
/* END_SNIPPET:snip_cart_discount */

/* START_SNIPPET:snip_cart_drawer_button_trigger (INDEX:424) */
.cart-drawer-button-trigger {
    width: 100%;
    height: 2.875rem;
    padding-inline: 1rem;
    text-align: center;
    background-color: var(--color-surface-alt);
    border-radius: var(--radius-button-input-theme-st);
    border: none;
    outline: none;
    cursor: pointer;
    transition: background-color var(--trans-duration) var(--trans-easing);

    display: flex;
    align-items: center;
    justify-content: center;
    column-gap: 0.25rem;
    text-align: center;

    color: var(--color-text-title);

    @media screen and (max-width: 991px) {
      height: 2.75rem;
      padding-inline: 0.5rem;
    }

    .cart-drawer-button-trigger-icon {
      display: flex;
      align-items: center;
      justify-content: center;
      width: 1rem;
      height: 1rem;
      color: var(--color-text-paragraph);
    }

    &:hover,
    &:active,
    &:focus-visible {
      background-color: var(--color-surface-alt-hover);
    }
  }
/* END_SNIPPET:snip_cart_drawer_button_trigger */

/* START_SNIPPET:snip_cart_drawer_listing (INDEX:425) */
.cart-drawer-listing {
    display: block;
    .cart-items__table {
      width: 100%;

      & * {
        margin: 0;
      }
    }

    .cart-items__table-row {
      display: grid;
      column-gap: 1rem;
      grid-template-rows: min-content auto auto;
      grid-template-columns: 6.875rem 1fr minmax(auto, 0.5fr);
      grid-template-areas:
        'media details total'
        'media price total'
        'media quantity quantity'
        'media error error';

      margin-block-end: var(--cart-products-line-item-mg-block-end);
      padding-block-end: var(--cart-products-line-item-pd-block-end);
      border-bottom: var(--cart-products-divider);

      @media (max-width: 768px) {
        column-gap: 0.875rem;
        grid-template-rows: min-content auto auto auto;
        grid-template-columns: 6.25rem 1fr;
        grid-template-areas:
          'media details total'
          'media price total'
          'media quantity quantity'
          'media error error';

        margin-block-end: var(--cart-products-line-item-mg-block-end-mb);
        padding-block-end: var(--cart-products-line-item-pd-block-end-mb);
      }

      &.removing {
        overflow: hidden;
        animation: removeRow calc(0.125s * 2) ease-in-out forwards;
        animation-delay: 0.125s;
      }

      .cart-items__media {
        grid-area: media;
        .cart-items__media-container {
          display: block;
          background-color: var(--color-surface-alt);
          border-radius: var(--radius-new-small);
          overflow: hidden;

          &::before {
            z-index: 3;
          }

          .cart-items__image {
            display: block;
            border-radius: inherit;
            img {
              width: 100%;
              object-fit: cover;
              aspect-ratio: var(--cart-products-image-ratio);
            }
          }
        }
      }

      .cart-items__details {
        grid-area: details;
        padding: 0;

        & > * + * {
          margin-block-start: 0.25rem;
        }

        .cart-items__title {
          display: block;
          position: relative;

          .cart-items__title-text {
            max-width: 100%;
            width: 100%;
            display: block;
            position: relative;
            overflow: hidden;

            .cart-items__title-text-inner {
              display: -webkit-box;
              -webkit-box-orient: vertical;
              overflow: hidden;
              transition: transform var(--trans-duration) var(--trans-ease-smooth);
              transform: translateY(0);
            }

            &::after {
              content: attr(data-text);
              position: absolute;
              top: 0;
              left: 0;
              width: 100%;
              height: 100%;
              display: -webkit-box;
              -webkit-box-orient: vertical;
              overflow: hidden;
              transform: translateY(100%);
              transition: transform var(--trans-duration) var(--trans-ease-smooth);
            }
          }

          @media (hover: hover) {
            &:hover {
              .cart-items__title-text-inner {
                transform: translateY(-100%);
              }

              .cart-items__title-text::after {
                transform: translateY(0);
              }
            }
          }
        }

        .cart-items__info {
          & > * + * {
            margin-block-start: 0.25rem;
          }

          .cart-items__variants {
            display: flex;
          }

          .cart-items__properties {
            & > * + * {
              margin-block-start: 0.25rem;
            }
          }

          .cart-items__property {
            .text-custom-content-inner {
              display: flex;
            }
          }
        }

        .cart-items__selling-plan {
          padding-block: 0.25rem;
        }

        .cart-items__discounts {
          display: flex;
          flex-wrap: wrap;
          gap: 0.25rem;
          margin-block-start: 0.375rem;
        }
      }

      .cart-items__price {
        grid-area: price;
        padding: 0;
        margin-block-start: 0.25rem;

        .price-wrapper {
          display: flex;
          gap: 0.25rem;
          white-space: nowrap;
        }

        .compare-at-price {
          white-space: nowrap;
        }
      }

      .cart-items__quantity {
        grid-area: quantity;
        display: flex;
        justify-content: space-between;
        gap: 0.625rem;
        margin-block-start: 1rem;

        .quantity-selector {
          &.quantity-selector-size-sm {
            --quantity-selector-width: 5rem;
          }
          @media (max-width: 991px) {
            border: var(--1px) solid var(--color-border-default);
          }
        }
        .quantity-cart-drawer {
          max-width: 6.75rem;
        }
        .cart-items__remove {
          white-space: nowrap;

          .remove-text-link {
            max-width: 100%;
            width: 100%;
            display: block;
            position: relative;
            overflow: hidden;

            .remove-text-link-inner {
              display: -webkit-box;
              -webkit-box-orient: vertical;
              overflow: hidden;
              transition: transform var(--trans-duration) var(--trans-ease-smooth);
              transform: translateY(0);
            }

            &::after {
              content: attr(data-text);
              position: absolute;
              top: 0;
              left: 0;
              width: 100%;
              height: 100%;
              display: -webkit-box;
              -webkit-box-orient: vertical;
              overflow: hidden;
              transform: translateY(100%);
              transition: transform var(--trans-duration) var(--trans-ease-smooth);
            }
          }

          @media (hover: hover) {
            opacity: 0;
            visibility: hidden;
            transition: opacity var(--trans-duration) var(--trans-easing),
              visibility var(--trans-duration) var(--trans-easing);

            &:hover {
              .remove-text-link-inner {
                transform: translateY(-100%);
              }

              .remove-text-link::after {
                transform: translateY(0);
              }
            }
          }
        }
      }

      .cart-items__error {
        grid-area: error;
      }

      .cart-items__total {
        grid-area: total;
        padding: 0;
        text-align: right;
      }

      &:hover {
        .cart-items__quantity {
          .cart-items__remove {
            opacity: 1;
            visibility: visible;
          }
        }
      }
    }
  }
/* END_SNIPPET:snip_cart_drawer_listing */

/* START_SNIPPET:snip_cart_notes (INDEX:427) */
.cart-note {
    display: block;
    width: 100%;
  }

  .cart-note-item {
    .cart-note-item__button {
      margin-block-start: 1rem;
      margin-inline-start: auto;
    }
  }
/* END_SNIPPET:snip_cart_notes */

/* START_SNIPPET:snip_cart_products (INDEX:428) */
cart-items {
    display: blocks;
  }

  .cart-products {
    grid-column: 1 / 2;
    grid-row: 1;

    .cart-items {
      width: 100%;

      .cart-items__table {
        width: 100%;
        margin: 0;

        .cart-items__table-row {
          display: grid;
          column-gap: 1rem;
          align-items: center;
          grid-template-rows: min-content 1fr;
          grid-template-columns: 6.875rem 2fr 1fr 1fr 1fr;
          grid-template-areas:
            'media details price quantity total'
            '. . . error .';

          @media (max-width: 768px) {
            grid-template-rows: min-content auto auto auto;
            grid-template-columns: 6.875rem 1fr;
            grid-template-areas:
              'media details'
              'media price'
              'media quantity'
              'media error';
          }
        }

        thead {
          display: block;
          @media screen and (max-width: 768px) {
            display: none;
          }
          th {
            text-align: left;
            &:last-child {
              text-align: right;
            }
          }
          .cart-items__table-row {
            padding-block-end: 1rem;
          }
        }

        tbody {
          display: block;
          .cart-items__table-row {
            padding-block: var(--cart_products-line-item-pd-block-start) var(--cart_products-flex-gap);
            border-top: var(--cart_products-divider);
            @media screen and (max-width: 768px) {
              padding-block-start: 0.625rem;
              padding-block-end: 0.625rem;
            }
            &:first-child {
              @media screen and (max-width: 768px) {
                border-top: none;
              }
            }
            &:last-child {
              /* padding-block-end: 0; */
              @media screen and (max-width: 768px) {
                padding-block-end: 0.625rem;
              }
            }
            &.removing {
              overflow: hidden;
              animation: removeRow calc(0.125s * 2) ease-in-out forwards;
              animation-delay: 0.125s;
            }

            @media (hover: hover) {
              &:hover {
                .cart-items__quantity {
                  .cart-items__remove {
                    opacity: 1;
                    visibility: visible;
                  }
                }
              }
            }

            .cart-items__media {
              grid-area: media;

              .cart-items__media-container {
                display: block;
                background-color: var(--color-surface-alt);
                border-radius: var(--radius-new-small);
                overflow: hidden;

                .cart-items__image {
                  display: block;
                  border-radius: inherit;
                  img {
                    width: 100%;
                    object-fit: cover;
                    aspect-ratio: var(--cart_products-media-aspect-ratio);
                  }
                }
              }
            }

            .cart-items__details {
              grid-area: details;

              & > * + * {
                margin-block-start: 0.25rem;
              }

              .cart-items__title {
                display: block;
                position: relative;

                .cart-items__title-text {
                  max-width: 100%;
                  width: 100%;
                  display: block;
                  position: relative;
                  overflow: hidden;

                  .cart-items__title-text-inner {
                    display: -webkit-box;
                    -webkit-box-orient: vertical;
                    overflow: hidden;
                    transition: transform var(--trans-duration) var(--trans-ease-smooth);
                    transform: translateY(0);
                  }

                  &::after {
                    content: attr(data-text);
                    position: absolute;
                    top: 0;
                    left: 0;
                    width: 100%;
                    height: 100%;
                    display: -webkit-box;
                    -webkit-box-orient: vertical;
                    overflow: hidden;
                    transform: translateY(100%);
                    transition: transform var(--trans-duration) var(--trans-ease-smooth);
                  }
                }

                @media (hover: hover) {
                  &:hover {
                    .cart-items__title-text-inner {
                      transform: translateY(-100%);
                    }

                    .cart-items__title-text::after {
                      transform: translateY(0);
                    }
                  }
                }
              }

              .cart-items__discounts {
                display: flex;
                flex-wrap: wrap;
                gap: var(--content-gutter);
              }
            }

            .cart-items__info {
              & > * + * {
                margin-block-start: 0.25rem;
              }

              .cart-items__variants {
                display: flex;
              }

              .cart-items__properties {
                & > * + * {
                  margin-block-start: 0.25rem;
                }
              }

              .cart-items__property {
                .text-custom-content-inner {
                  display: flex;
                }
              }
            }

            .cart-items__price {
              grid-area: price;
              @media screen and (max-width: 768px) {
                margin-block-start: 0.25rem;
              }

              .price-wrapper {
                display: flex;
                gap: 0.25rem;
                white-space: nowrap;
              }
            }

            .cart-items__quantity {
              grid-area: quantity;
              display: flex;
              gap: 0.625rem;
              @media screen and (max-width: 768px) {
                margin-block-start: 1rem;
                justify-content: space-between;
              }
              .quantity-cart-page {
                max-width: 7.25rem;
              }
              .cart-items__remove {
                white-space: nowrap;
                .remove-text-link {
                  max-width: 100%;
                  width: 100%;
                  display: block;
                  position: relative;
                  overflow: hidden;

                  .remove-text-link-inner {
                    display: -webkit-box;
                    -webkit-box-orient: vertical;
                    overflow: hidden;
                    transition: transform var(--trans-duration) var(--trans-ease-smooth);
                    transform: translateY(0);
                  }

                  &::after {
                    content: attr(data-text);
                    position: absolute;
                    top: 0;
                    left: 0;
                    width: 100%;
                    height: 100%;
                    display: -webkit-box;
                    -webkit-box-orient: vertical;
                    overflow: hidden;
                    transform: translateY(100%);
                    transition: transform var(--trans-duration) var(--trans-ease-smooth);
                  }
                }

                @media (hover: hover) {
                  opacity: 0;
                  visibility: hidden;
                  transition: opacity var(--trans-duration) var(--trans-easing),
                    visibility var(--trans-duration) var(--trans-easing);

                  &:hover {
                    .remove-text-link-inner {
                      transform: translateY(-100%);
                    }

                    .remove-text-link::after {
                      transform: translateY(0);
                    }
                  }
                }
              }
            }

            .cart-items__error {
              grid-area: error;
            }

            .cart-items__total {
              grid-area: total;
              text-align: right;
              @media screen and (max-width: 768px) {
                display: none;
              }
            }
          }
        }
      }
    }

    .cart-items-disabled {
      pointer-events: none;
    }
  }
/* END_SNIPPET:snip_cart_products */

/* START_SNIPPET:snip_cart_recommendation_product_listing (INDEX:429) */
.cart-recommendation-product-listing {
    width: 100%;
    display: flex;
    align-items: stretch;
    align-self: flex-start;
  }
/* END_SNIPPET:snip_cart_recommendation_product_listing */

/* START_SNIPPET:snip_cart_summary (INDEX:430) */
.cart-summary {
    position: sticky;
    top: var(--sidebar-top, var(--main-margin-top, var(--page-margin)));
    transition: top calc(var(--trans-duration) * 0.6) var(--trans-easing);
    height: fit-content;

    grid-column: 2;
    grid-row: 1;
    display: flex;
    align-items: stretch;

    .cart-summary-inner {
      position: relative;
      width: 100%;
      display: flex;
      align-items: stretch;
    }

    .cart-summary-content {
      position: relative;
      z-index: 2;
      width: 100%;
    }

    .cart-summary-content-inner {
      position: relative;
    }

    .cart-summary-bg {
      pointer-events: none;
      position: absolute;
      z-index: 1;
      inset: 0;
    }
  }
/* END_SNIPPET:snip_cart_summary */

/* START_SNIPPET:snip_cart_summary_details (INDEX:431) */
.cart-summary-details {
    display: flex;
    align-items: stretch;
    .cart-summary-details-inner {
      position: relative;
      width: 100%;
      display: flex;
      align-items: stretch;
    }
    .cart-summary-details-content {
      position: relative;
      z-index: 2;
      width: 100%;
    }
    .cart-summary-details-content-inner {
      position: relative;
    }
    .cart-summary-details-bg {
      pointer-events: none;
      position: absolute;
      z-index: 1;
      inset: 0;
    }
  }
/* END_SNIPPET:snip_cart_summary_details */

/* START_SNIPPET:snip_cart_summary_group (INDEX:432) */
.cart-summary-group {
    display: flex;
    align-items: stretch;
    .cart-summary-group-inner {
      position: relative;
      width: 100%;
      display: flex;
      align-items: stretch;
    }
    .cart-summary-group-content {
      position: relative;
      z-index: 2;
      width: 100%;
    }
    .cart-summary-group-content-inner {
      position: relative;
    }
    .cart-summary-group-bg {
      pointer-events: none;
      position: absolute;
      z-index: 1;
      inset: 0;
    }
  }
/* END_SNIPPET:snip_cart_summary_group */

/* START_SNIPPET:snip_cart_total (INDEX:434) */
.cart-total {
    &.cart-total--drawer {
      padding-block: 0.5rem;
      padding-inline: 1rem;
      background-color: var(--color-surface-alt);
      border-radius: var(--radius-button-input-lg-theme-st);

      .cart-subtotal-price {
        padding-block: 1rem;
        border-bottom: var(--1px) solid var(--color-border-default);
      }

      .cart-applied-discounts {
        padding-block: 1rem;
        border-bottom: var(--1px) solid var(--color-border-default);
        @media screen and (max-width: 991px) {
          padding-block: 0.5rem;
        }
      }

      .cart-total-price {
        padding-block: 1rem;
        @media screen and (max-width: 991px) {
          padding-block: 0.5rem;
        }
      }
    }

    &.cart-total--page {
      display: flex;
      flex-direction: column;
      justify-content: stretch;
      gap: 1.25rem;
    }

    .cart-subtotal-price {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 0.5rem;
    }

    .cart-total-price {
      display: grid;
      grid-template-columns: 1fr auto;
      grid-template-rows: auto auto;
      align-items: center;
      gap: 0.25rem;

      &:has(.tax-note) {
        .cart-total-price-label {
          grid-column: 1;
          grid-row: 1;
        }
      }

      &:not(:has(.tax-note)) {
        .cart-total-price-label {
          grid-column: 1;
          grid-row: -1 / 1;
        }
      }

      .tax-note {
        grid-column: 1;
        grid-row: 2;

        a {
          font-weight: var(--font-weight-semibold);
        }
      }

      .cart-total-price-value {
        grid-column: 2;
        grid-row: 1 / 3;
      }
    }
  }
/* END_SNIPPET:snip_cart_total */

/* START_SNIPPET:snip_checkbox (INDEX:435) */
.checkbox {
    --checkbox-border-width: max(1.5px, 0.09375rem);
    --checkbox-border-color-default: var(--color-foreground_15);
    --checkbox-border-color-hover: var(--color-foreground);
    --checkbox-border-color-checked: var(--color-foreground);
    --checkbox-border-color-disabled: var(--color-foreground_08);

    display: flex;
    align-items: center;
    gap: 0.5rem;
    cursor: pointer;

    .checkbox-input {
      width: 0.875rem;
      height: 0.875rem;
      margin: 0;
      opacity: 0;
      position: absolute;
    }
    .checkbox-input:focus-visible ~ .checkbox-icon {
      outline: 2px solid var(--color-keyboard-focus-visible);
      outline-offset: 2px;
    }
    .checkbox-icon {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 0.875rem;
      height: 0.875rem;
      border: var(--checkbox-border-width) solid var(--checkbox-border-color-default);
      border-radius: 0.1875rem;
      background: transparent;
      position: relative;
      pointer-events: none;
      transition: background-color var(--trans-duration) var(--trans-easing),
        border-color var(--trans-duration) var(--trans-easing);
      .checkbox-checked-icon {
        width: 100%;
        height: 100%;
        color: var(--color-background);
        opacity: 0;
        position: absolute;
        transition: opacity var(--trans-duration) var(--trans-easing);
      }
    }
    .checkbox-label {
      transition: color var(--trans-duration) var(--trans-easing);
    }
    &:not(:has(:disabled, .disabled)):hover {
      .checkbox-icon {
        border-color: var(--checkbox-border-color-hover);
      }
      .checkbox-label {
        color: var(--color-foreground);
      }
    }
    &:has(.checkbox-input:checked) {
      .checkbox-icon {
        background-color: var(--checkbox-border-color-checked);
        border-color: var(--checkbox-border-color-checked);
        .checkbox-checked-icon {
          opacity: 1;
        }
      }
    }
    &:has(:disabled, .disabled) {
      cursor: not-allowed;
      .checkbox-icon {
        border-color: var(--checkbox-border-color-disabled);
      }
      .checkbox-label {
        color: var(--checkbox-border-color-disabled);
      }
    }

    &.is-disabled {
      .text-custom-content-inner {
        color: var(--color-text-disabled);
      }
    }
  }
/* END_SNIPPET:snip_checkbox */

/* START_SNIPPET:snip_collection_list_item (INDEX:438) */
.collection-list-item {
    display: flex;
    align-items: stretch;
    height: 100%;
    .collection-list-item-link {
      position: absolute;
      inset: 0;
      z-index: 2;
    }
    .collection-list-item-inner {
      position: relative;
      width: 100%;
      display: grid;
      min-width: 0;
      contain: layout style paint;
      &::before {
        content: '';
        display: block;
        grid-area: 1 / 1;
        width: 100%;
        min-width: 0;
        aspect-ratio: var(--cli-aspect-ratio);
        pointer-events: none;
        @media (max-width: 991px) {
          aspect-ratio: var(--cli-aspect-ratio-mb, 5/7);
        }
      }
    }
    .collection-list-item-content {
      pointer-events: none;
      grid-area: 1 / 1;
      position: relative;
      z-index: 3;
      display: flex;
      flex-direction: column;
      justify-content: flex-end;
      min-width: 0;
      min-height: 0;
    }
    .collection-list-item-content-inner {
      position: relative;
      width: 100%;
      display: flex;
      flex-direction: row;
      justify-content: flex-start;
      align-items: flex-end;
      gap: 0.75rem;
    }
    .collection-list-item-bg {
      pointer-events: none;
      grid-area: 1 / 1;
      position: relative;
      z-index: 1;
      width: 100%;
      height: 100%;
      overflow: hidden;
    }
    .collection-list-item-description {
      pointer-events: auto;
      display: -webkit-box;
      -webkit-box-orient: vertical;
      -webkit-line-clamp: 2;
      line-clamp: 2;
      overflow: hidden;
      font-family: var(--typo-ff-body);
      font-size: var(--typo-description-size);
      font-weight: var(--font-weight-medium);
      line-height: var(--typo-description-lh);
      color: var(--color-text-paragraph);

      em {
        font-style: normal;
        font-family: var(--typo-ff-highlight);
        @media (max-width: 991px) {
          font-size: var(--typo-description-size-mb);
          line-height: var(--typo-description-lh-mb);
        }
      }
    }
    .collection-list-item-wrapper {
      display: flex;
      flex: 1;
      flex-direction: column;
      gap: 0.25rem;
    }
    .collection-list-item-header {
      width: fit-content;
      position: relative;
    }
    .collection-list-item-name {
      pointer-events: auto;
      position: relative;
      text-decoration: none;
      color: inherit;
      align-items: baseline;

      .collection-list-item-title-text {
        --line-width: max(max(1px, 0.0625rem), 0.05em);
        --line-y: calc(1em + 0.1em);
        color: inherit;
        display: inline;
        background-image: linear-gradient(currentColor, currentColor);
        background-position: 100% var(--line-y);
        background-repeat: no-repeat;
        background-size: 0% var(--line-width, var(--1px));
        transition: background-size var(--trans-duration) var(--trans-easing);
      }

      &:hover .collection-list-item-title-text,
      .collection-list-item:hover .collection-list-item-title-text {
        background-position: 0% var(--line-y);
        background-size: 100% var(--line-width, var(--1px));
      }
    }
    .collection-list-item-button {
      flex-shrink: 0;
      pointer-events: auto;
      z-index: 4;
      position: relative;
      width: 2.75rem;
      height: 2.75rem;
      display: flex;
      align-items: center;
      justify-content: center;
      color: var(--button-type-primary-color);

      cursor: pointer;
      opacity: 0;
      transform: translateY(0.5rem);
      transition: opacity var(--trans-duration) var(--trans-easing), transform var(--trans-duration) var(--trans-easing),
        color var(--trans-duration) var(--trans-easing);

      .collection-list-item-button-inner {
        position: relative;
        z-index: 2;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        height: 100%;
      }

      .collection-list-item-button-bg {
        position: absolute;
        z-index: 1;
        inset: 0;
        background: var(--button-type-primary-bg);
        border: 1px solid var(--button-type-primary-border);
        border-radius: var(--button-radius);
        transition: background var(--trans-duration) var(--trans-easing),
          border-color var(--trans-duration) var(--trans-easing);
      }

      .collection-list-item-icon {
        width: 1rem;
        height: 1rem;

        svg [stroke-width] {
          stroke-width: var(--button-default-icon-stroke);
        }
      }

      &:hover {
        color: var(--button-type-primary-color-hover);

        .collection-list-item-button-bg {
          background: var(--button-type-primary-bg-hover);
          border-color: var(--button-type-primary-border-hover);
        }
      }

      @media screen and (max-width: 991px) {
        display: none;
      }
    }

    &:hover {
      .collection-list-item-button {
        opacity: 1;
        transform: translateY(0);
      }
    }
  }
/* END_SNIPPET:snip_collection_list_item */

/* START_SNIPPET:snip_collection_list_page_grid (INDEX:439) */
.collection-page-grid {
    display: flex;
    align-items: stretch;
    width: 100%;
    .collection-page-grid-inner {
      position: relative;
      contain: layout style paint;
      width: 100%;
      display: flex;
      align-items: stretch;
    }
    .collection-page-grid-content {
      position: relative;
      z-index: 2;
      width: 100%;
    }
    .collection-page-grid-content-inner {
      position: relative;
    }
    .collection-page-grid-bg {
      pointer-events: none;
      position: absolute;
      z-index: 1;
      inset: 0;
    }
    .pagination-container {
      --transition-duration: var(--trans-duration);
      --transition-easing: var(--trans-easing);
      transition: opacity var(--transition-duration) var(--transition-easing);
    }
  }
/* END_SNIPPET:snip_collection_list_page_grid */

/* START_SNIPPET:snip_collection_page_product_grid (INDEX:440) */
.collection-page-product-grid {
    .collection-page-product-grid-inner {
      position: relative;
    }
    .collection-page-product-grid-content {
      position: relative;
      z-index: 2;
      display: flex;
      align-items: stretch;
    }
    .collection-page-product-grid-content-inner {
      width: 100%;
      position: relative;
    }
    .collection-page-product-grid-bg {
      pointer-events: none;
      position: absolute;
      z-index: 1;
      inset: 0;
    }
  }
/* END_SNIPPET:snip_collection_page_product_grid */

/* START_SNIPPET:snip_collection_page_quick_filter (INDEX:441) */
.quick-filter {
    display: flex;
    align-items: stretch;
    .quick-filter-inner {
      position: relative;
      width: 100%;
      display: flex;
      align-items: stretch;
    }
    .quick-filter-content {
      position: relative;
      z-index: 2;
      width: 100%;
    }
    .quick-filter-content-inner {
      position: relative;
    }
  }
/* END_SNIPPET:snip_collection_page_quick_filter */

/* START_SNIPPET:snip_content-expand (INDEX:442) */
content-expand {
    display: block;
    contain: layout style;
  }
  .content-body-main {
    text-overflow: ellipsis;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: var(--max-lines, 3);
    line-clamp: var(--max-lines, 3);
    -webkit-box-orient: vertical;

    &.expanded {
      display: block;
      -webkit-line-clamp: unset;
      line-clamp: unset;
      overflow: visible;
    }
  }

  .content-expand-button {
    opacity: 1;
    transition: opacity var(--trans-duration) var(--trans-easing);

    & > * {
      margin-top: 0.75rem;
      @media (max-width: 768px) {
        margin-top: 0;
      }
    }

    .button-show-more,
    .button-show-less {
      &.hidden {
        display: none;
      }
    }
  }
/* END_SNIPPET:snip_content-expand */

/* START_SNIPPET:snip_content_group (INDEX:443) */
.content-group {
    display: block;
    .content-group-inner {
      position: relative;
      contain: layout style paint;
    }
    .content-group-content {
      position: relative;
      z-index: 2;
      display: flex;
      align-items: stretch;
    }
    .content-group-content-inner {
      width: 100%;
      position: relative;
    }
  }
/* END_SNIPPET:snip_content_group */

/* START_SNIPPET:snip_copyright (INDEX:444) */
.copyright {
    .copyright-inner {
      .copyright-content {
        .copyright-content-hightlight,
        a {
          color: var(--color-text-subtitle-link);
          font-weight: var(--font-weight-semibold);
          --line-width: var(--1px);
          position: relative;
          display: inline-block; /* Essential for accurate ::after/::before coordinates on hover underlines */
          padding-bottom: var(--line-width, var(--1px));
          z-index: 1;

          [data-link-hover-style="none"] & {
            transition: color var(--trans-duration) var(--trans-easing);

            @media (hover: hover) {
              &:hover {
                color: var(--color-text-subtitle-link-hover);
              }
            }
          }

          [data-link-hover-style="classic"] & {
            text-decoration: underline;
            text-decoration-color: transparent;
            text-underline-offset: 0.2em;
            transition:
              color var(--trans-duration) var(--trans-easing),
              text-decoration-color var(--trans-duration) var(--trans-easing);

            @media (hover: hover) {
              &:hover {
                color: var(--color-text-subtitle-link-hover);
                text-decoration-color: currentColor;
              }
            }
          }

          [data-link-hover-style="underline"] & {
            transition: color var(--trans-duration) var(--trans-easing);

            &::before {
              content: '';
              position: absolute;
              bottom: 0;
              left: 0;
              width: 100%;
              height: var(--line-width, var(--1px));
              background-color: currentColor;
              transform: scaleX(0);
              transform-origin: right;
              transition: transform var(--trans-duration) var(--trans-easing);
            }

            &::after {
              content: '';
              position: absolute;
              bottom: 0;
              left: 0;
              width: 100%;
              height: var(--line-width, var(--1px));
              background-color: currentColor;
              transform: scaleX(1);
              transform-origin: left;
              transition: transform var(--trans-duration) var(--trans-easing);
              transition-delay: var(--trans-duration);
            }

            @media (hover: hover) {
              &:hover {
                color: var(--color-text-subtitle-link-hover);

                &::before {
                  transform: scaleX(1);
                  transform-origin: left;
                  transition-delay: var(--trans-duration);
                }

                &::after {
                  transform: scaleX(0);
                  transform-origin: right;
                  transition-delay: 0s;
                }
              }
            }
          }
        }
      }
    }
  }
/* END_SNIPPET:snip_copyright */

/* START_SNIPPET:snip_ctn_custom (INDEX:446) */
.ctn-custom {
    display: block;
    .ctn-custom-inner {
      position: relative;
      contain: paint;
    }
    .ctn-custom-content {
      height: 100%;
      position: relative;
      z-index: 2;
    }
    .ctn-custom-content-inner {
      position: relative;
    }
    .ctn-custom-bg {
      pointer-events: none;
      position: absolute;
      z-index: 1;
      inset: 0;
    }
  }
/* END_SNIPPET:snip_ctn_custom */

/* START_SNIPPET:snip_ctn_default (INDEX:447) */
.ctn-default {
    display: block;
    height: 100%;
    .ctn-default-inner {
      position: relative;
      contain: paint;
      height: 100%;
      border-radius: 0px;
    }
    .ctn-default-content {
      position: relative;
      z-index: 2;
    }
    .ctn-default-content-inner {
      position: relative;
    }
  }
/* END_SNIPPET:snip_ctn_default */

/* START_SNIPPET:snip_ctn_main_product (INDEX:448) */
.ctn-main-product {
    display: block;
    height: 100%;
    .ctn-main-product-inner {
      position: relative;
      contain: paint;
      height: 100%;
      border-radius: 0px;
    }
    .ctn-main-product-content {
      position: relative;
      z-index: 2;
    }
    .ctn-main-product-content-inner {
      position: relative;
    }
  }
/* END_SNIPPET:snip_ctn_main_product */

/* START_SNIPPET:snip_ctn_mega (INDEX:449) */
.ctn-megamenu {
    display: block;
    height: 100%;
    .ctn-megamenu-inner {
      display: flex;
      justify-content: stretch;
      position: relative;
      height: 100%;
      border-radius: 0px;
    }
    .ctn-megamenu-content {
      width: 100%;
      display: flex;
      justify-content: stretch;
      position: relative;
      z-index: 2;
    }
    .ctn-megamenu-content-inner {
      width: 100%;
      position: relative;
    }
  }
/* END_SNIPPET:snip_ctn_mega */

/* START_SNIPPET:snip_discount_tag (INDEX:451) */
.discount-tag {
    --discount-tag-min-height: 1.75rem;
    --discount-tag-min-height-mb: 1.5rem;
    width: fit-content;
    min-height: var(--discount-tag-min-height);
    padding-block: 0.4375rem;
    padding-inline: 0.375rem;
    border-radius: min(calc(var(--discount-tag-min-height) / 2), var(--radius-button-input-theme-st));
    border: var(--1px) solid var(--color-border-default);
    overflow: hidden;

    @media screen and (max-width: 767px) {
      min-height: var(--discount-tag-min-height-mb);
      padding-block: 0.25rem;
      padding-inline: 0.25rem;
      border-radius: min(calc(var(--discount-tag-min-height-mb) / 2), var(--radius-button-input-theme-st));
    }

    .text-with-icon {
      .icon-wrap {
        height: calc(var(--typo-label-size) * var(--typo-label-lh));
        display: flex;
        align-items: center;

        @media (max-width: 991px) {
          height: calc(var(--typo-label-size-mb) * var(--typo-label-lh-mb));
        }
      }
    }
  }
/* END_SNIPPET:snip_discount_tag */

/* START_SNIPPET:snip_drawer (INDEX:453) */
.drawer {
    width: 100%;
    max-width: var(--drawer-size-width);
    height: auto;
    max-height: 100dvh;
    position: fixed !important;

    margin-block: var(--drawer-mg);
    margin-inline: var(--drawer-mg-inline);
    padding: 0;

    contain: layout style paint;

    border: none;
    overflow: hidden;

    @media (max-width: 991px) {
      width: calc(100% - var(--drawer-mg-mb) * 2);
      max-height: calc(100dvh - var(--drawer-mg-mb) * 2);
      margin-block: var(--drawer-mg-mb);
      margin-inline: var(--drawer-mg-mb);
    }

    &:focus:not(:focus-visible) {
      outline: none;
    }

    .drawer-inner {
      width: 100%;
      height: 100%;
      border-radius: var(--drawer-border-radius);
      overflow: hidden;
      position: relative;

      @media (max-width: 991px) {
        border-radius: var(--drawer-border-radius-mb);
      }

      .drawer-content {
        width: 100%;
        height: 100%;
        padding: var(--drawer-pd);
        position: relative;
        z-index: 2;

        @media (max-width: 991px) {
          padding: var(--drawer-pd-mb);
        }

        .drawer-content-inner {
          width: 100%;
          height: 100%;
          display: flex;
          flex-direction: column;
          gap: 1.5rem;

          .drawer-header {
            width: 100%;
            display: flex;
            flex-direction: column;
            justify-content: space-between;
            color: var(--color-text-title);
            gap: 0.75rem;

            @media (max-width: 991px) {
              gap: 0.5rem;
            }

            .text-bubble {
              vertical-align: super;
            }
          }

          .drawer-body {
            flex: 1;
            overflow-x: hidden;
            overflow-y: auto;
            margin-inline: calc(-1 * var(--drawer-pd));
            padding-inline: var(--drawer-pd);

            @media (max-width: 991px) {
              margin-inline: calc(-1 * var(--drawer-pd-mb));
              padding-inline: var(--drawer-pd-mb);
            }

            &:focus:not(:focus-visible) {
              outline: none;
            }
          }

          .drawer-footer {
            flex-shrink: 0;
            padding-block-start: var(--drawer-pd);
            margin-top: auto;
            background-color: var(--color-background);
            position: sticky;
            bottom: 0;
            z-index: 3;
            border-top: 1px solid var(--color-border-divider);

            @media (max-width: 991px) {
              padding-block-start: var(--drawer-pd-mb);
              margin-inline: calc(-1 * var(--drawer-pd-mb));
              padding-inline: var(--drawer-pd-mb);
            }
          }
        }
      }

      .drawer-bg {
        position: absolute;
        z-index: 1;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: var(--color-background);
      }

      .sub-drawer-backdrop {
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        z-index: 4;
        background-color: var(--modals-default-backdrop-color);
        visibility: hidden;
        opacity: 0;
        transition: all var(--trans-duration) var(--trans-easing);
      }
    }

    &::backdrop {
      background: var(--modals-default-backdrop-color);
    }

    &[open] {
      will-change: transform, opacity;
      animation: var(--dialog-opening-animation);
      @media (max-width: 768px) {
        animation: var(--dialog-opening-animation-mobile, var(--dialog-opening-animation));
      }
      &::backdrop {
        animation: fade-in 0.6s cubic-bezier(0.7, 0, 0.2, 1) forwards;
      }
    }

    &.dialog-closing {
      will-change: transform, opacity;
      animation: var(--dialog-closing-animation);
      @media (max-width: 768px) {
        animation: var(--dialog-closing-animation-mobile, var(--dialog-closing-animation));
      }
      &::backdrop {
        animation: fade-out 0.6s cubic-bezier(0.7, 0, 0.2, 1) forwards;
      }
    }

    &.sub-drawer-active {
      .sub-drawer-backdrop {
        visibility: visible;
        opacity: 1;
      }
    }
  }
/* END_SNIPPET:snip_drawer */

/* START_SNIPPET:snip_email_form_button (INDEX:455) */
.btn-custom {
    display: flex;
    .btn-custom-inner {
      width: 100%;
      position: relative;
    }
    .btn-custom-content {
      display: block;
      position: relative;
      overflow: hidden;
      .btn-custom-content-inner {
        height: 100%;
        position: relative;
        z-index: 3;
        display: flex;
        align-items: center;
        justify-content: center;
        transition: color var(--trans-duration) var(--trans-easing);
        .btn-custom-icon {
          flex-shrink: 0;
          display: flex;
          align-items: center;
          justify-content: center;
        }
      }
      .btn-custom-bg {
        position: absolute;
        inset: 0;
        z-index: 1;
        border-radius: inherit;

        .btn-custom-bg-initial,
        .btn-custom-bg-hover {
          position: absolute;
          inset: 0;
          border-radius: inherit;
          border-style: solid;
          border-width: var(--1px);
          transition: opacity var(--trans-duration) var(--trans-easing);
          pointer-events: none;
          opacity: 0;
        }

        .btn-custom-bg-initial {
          background: var(--button-bg);
          border-color: var(--button-border);
          z-index: 1;
        }

        .btn-custom-bg-hover {
          background: var(--button-bg-hover);
          border-color: var(--button-border-hover);
          z-index: 2;
        }
      }
    }
  }

  .panel-custom-email-form-button {
    min-width: 1px;
    width: var(--button-width);
    min-height: 1px;
    height: var(--button-height);
    @media (max-width: 991px) {
      width: var(--button-width-mb);
      height: var(--button-height-mb);
    }

    /* Touch area expansion for classic inner icon-only buttons */
    .btn-custom-content {
      margin: var(--button-touch-mg, 0px);
      padding: var(--button-touch-pd, 0px);
      padding-inline: var(--button-touch-pd, var(--button-pd-inline));
      width: calc(100% + (var(--button-touch-pd, 0px) * 2));
      height: calc(100% + (var(--button-touch-pd, 0px) * 2));
      flex-shrink: 0;
      @media (max-width: 991px) {
        padding-inline: var(--button-touch-pd, var(--button-pd-inline-mb));
        border-radius: var(--button-radius-mb, var(--button-radius));
      }
    }
  }
/* END_SNIPPET:snip_email_form_button */

/* START_SNIPPET:snip_email_form_input (INDEX:456) */
.email-text {
    width: var(--field-width);
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
    position: relative;
    @media (max-width: 991px) {
      width: var(--field-width-mb);
    }
    .email-text-label {
      display: var(--field-text-label-display);
      position: var(--field-text-label-position);
      top: var(--field-text-label-top);
      left: var(--field-text-label-left);
      transform: var(--field-text-label-transform);
      transform-origin: var(--field-text-label-transform-origin);
      transition: var(--field-text-label-transition);
      pointer-events: var(--field-text-label-pointer-events);
      z-index: var(--field-text-label-z-index);
      color: var(--field-text-label-color-default);

      @media (max-width: 991px) {
        display: var(--field-text-label-display-mb);
        transform: var(--field-text-label-transform-mb);
        top: var(--field-text-label-top-mb);
        left: var(--field-text-label-left-mb);
      }

      .email-text-label-inner {
        font-size: var(--field-text-label-font-size);
        font-weight: var(--field-text-label-font-weight);
        line-height: var(--field-text-label-line-height);
        letter-spacing: var(--field-text-label-letter-spacing);
        text-transform: var(--field-text-label-text-transform);

        @media (max-width: 991px) {
          font-size: var(--field-text-label-font-size-mb);
          line-height: var(--field-text-label-line-height-mb);
        }
      }
    }

    .email-text-input-wrap {
      width: 100%;
      position: relative;

      border: var(--input-border);
      border-bottom: var(--input-border-bottom);
      border-color: var(--input-border-color-default);
      border-radius: var(--input-radius);
      background: var(--input-bg-default);
      transition: border-color var(--trans-duration) var(--trans-easing);
      &:before {
        content: '';
        position: absolute;
        inset: 0;
        border-radius: inherit;
        background: var(--input-bg-focus);
        z-index: 1;
        pointer-events: none;
        opacity: 0;
        transition: opacity var(--trans-duration) var(--trans-easing);
      }
      &:after {
        content: '';
        position: absolute;
        inset: 0;
        border-radius: inherit;
        background: var(--input-bg-hover);
        z-index: 2;
        pointer-events: none;
        opacity: 0;
        transition: opacity var(--trans-duration) var(--trans-easing);
      }
      /* &:has(.email-text-input:hover) {
        border-color: var(--input-border-color-default);
        &:after {
          opacity: 1;
        }
      }
      &:has(.email-text-input:not(:placeholder-shown)),
      &:has(.email-text-input:focus) {
        border-color: var(--color-foreground_30);
        &:before {
          opacity: 1;
        }
      }

      &:has(.email-text-input:not(:focus)) {
        border-color: var(--input-border-color-default);
        &:before {
          opacity: 1;
        }
      } */
      &:has(.email-text-input:hover) {
        border-color: var(--input-border-color-hover);
        &:after {
          opacity: 1;
        }
      }
      /* &:has(.email-text-input:not(:placeholder-shown)), */
      &:has(.email-text-input:focus) {
        border-color: var(--input-border-color-focus);
        &:before {
          opacity: 1;
        }
      }

      &:has(.email-text-input.is-error) {
        border: var(--input-border-error, var(--input-border));
        .email-text-input-underline {
          background-color: var(--color-status_error);
          transform: scaleX(1);
        }
      }

      .email-text-input-underline {
        display: var(--input-hover-underline-display);
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: var(--1px);
        background-color: var(--color-foreground_30);
        z-index: 1;
        transform: scaleX(0);
        transform-origin: right;
        transition: transform var(--trans-duration-long) var(--trans-easing);
      }
      .email-text-input {
        position: relative;
        z-index: 3;
        width: 100%;
        height: var(--input-height);
        border-radius: inherit;
        padding-block: var(--input-pd-block);
        padding-inline: var(--input-pd-inline);

        color: var(--color-text-input-default);

        font-family: var(--typo-ff-body);
        font-size: var(--input-font-size);
        line-height: var(--input-line-height);
        font-weight: normal;
        text-transform: none;

        transition: all var(--trans-duration) var(--trans-easing);

        @media (max-width: 991px) {
          height: var(--input-height-mb);
          padding-block: var(--input-pd-block-mb);
          padding-inline: var(--input-pd-inline-mb);
          font-size: var(--input-font-size-mb);
          line-height: var(--input-line-height-mb);
        }

        &:-webkit-autofill,
        &:-webkit-autofill:hover,
        &:-webkit-autofill:focus,
        &:-webkit-autofill:active {
          -webkit-text-fill-color: var(--color-text-input-default) !important;
          caret-color: var(--color-text-input-default);

          box-shadow: 0 0 0 1000px transparent inset !important;
          background-color: transparent !important;

          transition: all 9999s ease-out 0s;
        }

        &::placeholder {
          visibility: var(--input-placeholder-visibility);
          font-size: var(--input-font-size);
          font-weight: var(--input-font-weight);
          line-height: var(--input-line-height);
          letter-spacing: var(--input-letter-spacing);
          text-transform: var(--input-text-transform);
          color: var(--color-text-input-placeholder);
          transition: all var(--trans-duration) var(--trans-easing);

          @media (max-width: 991px) {
            font-size: var(--input-font-size-mb);
            line-height: var(--input-line-height-mb);
          }
        }

        &:hover {
          color: var(--color-text-input-hover);
          &::placeholder {
            color: var(--color-text-input-hover);
          }
        }

        &:not(:placeholder-shown),
        &:focus {
          color: var(--color-text-input-focus);
          outline: none;
          &::placeholder {
            opacity: 0;
          }
        }

        /* Firefox: hide placeholder when focused / filled */
        &::-moz-placeholder {
          opacity: 0;
        }

        &:-moz-focusring {
          &::-moz-placeholder {
            opacity: 0;
          }
        }
      }
    }

    &:has(.email-text-input:hover) {
      .email-text-label {
        color: var(--field-text-label-color-hover);
      }
      .email-text-input-wrap {
        .email-text-input-underline {
          transform: scaleX(1);
          transform-origin: left;
        }
      }
    }

    &:has(.email-text-input:focus),
    &:has(.email-text-input:not(:placeholder-shown)) {
      .email-text-label {
        color: var(--color-text-input-hover);
        transform: var(--field-text-label-transform-focus);

        @media (max-width: 991px) {
          transform: var(--field-text-label-transform-focus-mb);
        }
      }
    }
    &:has(.email-text-input:focus) {
      .email-text-input-wrap {
        .email-text-input-underline {
          transform: scaleX(1);
          transform-origin: left;
        }
      }
    }
    &:has(.email-text-input:not(:placeholder-shown)),
    &:has(.email-text-input:focus) {
      .email-text-label {
        display: var(--field-text-label-display-focus);

        @media (max-width: 991px) {
          display: var(--field-text-label-display-focus-mb);
        }
      }
    }
    .error-message-wrap {
      display: flex;
      gap: 0.5rem;
      margin-block-start: 0.375rem;
      .error-point {
        width: 0.375rem;
        height: 0.375rem;
        background: var(--color-status_error);
        border-radius: var(--radius-new-pill);
        margin-block: auto;
      }
      .error-message {
        color: var(--color-text-paragraph);
      }
    }
  }
/* END_SNIPPET:snip_email_form_input */

/* START_SNIPPET:snip_embla_bars (INDEX:458) */
.embla__snip-bars {
    display: var(--bars-display, flex);

    @media (min-width: 992px) {
      display: var(--bars-display-desktop, var(--bars-display, flex));
    }

    @media (max-width: 991px) {
      display: var(--bars-display-mb, var(--bars-display, flex));
    }

    .embla__bars-inner {
      display: flex;
      flex-direction: row;
      flex-wrap: nowrap;
      justify-content: center;
      align-items: center;
      gap: 0.25rem;
      margin-top: 1.625rem;
      width: 100%;
    }
    /* Inside variant: bars overlay content (slideshow) */
    &.embla__snip-bars--inside {
      .embla__bars-inner {
        margin-top: 0;
        margin-block: -0.125rem;
        width: var(--embla-bars-width);
        margin-inline: auto;
        @media (max-width: 991px) {
          width: var(--embla-bars-width-mb);
        }
      }
    }
    .embla__bar {
      flex: none;
      -webkit-appearance: none;
      appearance: none;
      background-color: transparent;
      touch-action: manipulation;
      cursor: pointer;
      border-radius: 0.375rem;
      position: relative;
      height: calc(0.1875rem + 2rem);
      padding-block: 1rem;
      margin-block: -1rem;
      width: 5rem;
      overflow: hidden;
      padding: 0;
      border: 0;
      transition: background-color var(--trans-duration) var(--trans-easing);
      @media (max-width: 991px) {
        width: calc(100% / var(--slides-items-count));
      }
      .embla__bar-inner {
        display: block;
        width: 100%;
        height: 0.1875rem;
        border-radius: inherit;
        position: relative;
        z-index: 2;
        overflow: hidden;
        pointer-events: none;
        transition: all var(--trans-duration) var(--trans-easing);
        &:before {
          content: '';
          border-radius: inherit;
          background-color: var(--color-indicator-inactive);
          position: absolute;
          inset: 0;
          z-index: 1;
        }
        &::after {
          content: '';
          border-radius: inherit;
          position: absolute;
          inset: 0;
          background-color: var(--color-indicator-default);
          z-index: 2;
          opacity: 0;
          transform: translateX(-100%);
          transition: opacity var(--trans-duration) var(--trans-easing);
        }
      }
    }
    .embla__bar--selected {
      .embla__bar-inner::after {
        transform: translateX(0);
        opacity: 1;
      }
    }
    &.autoplay {
      .embla__bar--selected {
        .embla__bar-inner::after {
          transform: translateX(calc(-100% * (1 - var(--autoplay-progress, 0))));
        }
      }
    }
  }
/* END_SNIPPET:snip_embla_bars */

/* START_SNIPPET:snip_embla_dots (INDEX:460) */
.embla__snip-dots {
    --dot-size: 0.5rem;
    --dot-size-active: calc(var(--dot-size) * 3);
    --dot-gap: 0.125rem;
    display: var(--dots-display, flex);

    @media (min-width: 992px) {
      display: var(--dots-display-desktop, var(--dots-display, flex));
    }

    @media (max-width: 991px) {
      display: var(--dots-display-mb, var(--dots-display, flex));
    }

    .embla__dots-inner {
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
      align-items: center;
      margin-top: 1.625rem;
      width: 100%;
      /* Reserve height so dots area doesn't collapse/expand when JS initializes, preventing CLS */
      min-height: calc(var(--dot-size) + (var(--dot-gap) * 2));
    }
    /* Inside variant: dots overlay content (slideshow) */
    &.embla__snip-dots--inside {
      .embla__dots-inner {
        margin-top: 0;
        margin-block: calc(-1 * var(--dot-gap));
      }
    }
    .embla__dot {
      flex: none;
      cursor: pointer;
      width: calc(var(--dot-size) + (var(--dot-gap) * 2));
      height: calc(var(--dot-size) + (var(--dot-gap) * 2));
      border-radius: var(--radius-new-pill);
      transition: width var(--trans-duration) var(--trans-easing);
      padding: var(--dot-gap);
      .embla__dot-inner {
        display: block;
        width: 100%;
        height: 100%;
        border-radius: inherit;
        background-color: var(--color-background);
        position: relative;
        z-index: 2;
        overflow: hidden;
        pointer-events: none;
        &:before {
          content: '';
          border-radius: inherit;
          background-color: var(--color-indicator-inactive);
          position: absolute;
          inset: 0;
          z-index: 1;
        }
        &::after {
          content: '';
          border-radius: inherit;
          position: absolute;
          inset: 0;
          background-color: var(--color-indicator-default);
          z-index: 2;
          opacity: 0;
          transform: translateX(-100%);
          transition: opacity var(--trans-duration) var(--trans-easing);
        }
      }
    }
    .embla__dot--selected {
      width: calc(var(--dot-size-active) + (var(--dot-gap) * 2));
      .embla__dot-inner {
        &:after {
          transform: translateX(0);
          opacity: 1;
        }
      }
    }
    &.autoplay {
      .embla__dot--selected {
        .embla__dot-inner {
          &:after {
            transform: translateX(calc(-100% * (1 - var(--autoplay-progress, 0))));
          }
        }
      }
    }
  }
/* END_SNIPPET:snip_embla_dots */

/* START_SNIPPET:snip_embla_fixed_navs (INDEX:461) */
.embla__snip-fixed-navs {
    --btn-offset-hover: 0;
    --btn-offset-default: 1rem;
    display: var(--navigation-display, block);
    pointer-events: none;

    @media (min-width: 992px) {
      display: var(--navigation-display-desktop, var(--navigation-display, block));
    }

    @media (max-width: 991px) {
      display: var(--navigation-display-mb, var(--navigation-display, none));
    }

    .embla__snip-fixed-navs-inner {
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 0.25rem;
    }

    .embla__snip-button:not([disabled]) {
      pointer-events: auto;
    }
    .embla__snip-button {
      position: relative;
      z-index: 2;
    }
  }
/* END_SNIPPET:snip_embla_fixed_navs */

/* START_SNIPPET:snip_embla_navs (INDEX:462) */
.embla__snip-navs {
    --btn-offset-hover: 0;
    --btn-offset-default: 1rem;
    opacity: 0;
    position: absolute;
    inset: 0;
    display: var(--navigation-display, block);
    pointer-events: none;
    transition: opacity var(--trans-duration) var(--trans-easing);

    @media (min-width: 992px) {
      display: var(--navigation-display-desktop, var(--navigation-display, block));
    }

    @media (max-width: 991px) {
      display: var(--navigation-display-mb, var(--navigation-display, none));
    }
    .embla__snip-navs-inner {
      width: 100%;
      height: 100%;
      padding: 1.5rem;
      display: flex;
      justify-content: space-between;
      align-items: center;
    }

    .embla__snip-button:not([disabled]) {
      pointer-events: auto;
    }
    .embla__snip-button {
      position: relative;
      z-index: 2;
      transition: transform var(--trans-duration) var(--trans-easing);
      &.embla__snip-button--prev {
        transform: translateX(calc(var(--btn-offset-default) * -1)) scale(1);
      }
      &.embla__snip-button--next {
        transform: translateX(calc(var(--btn-offset-default) * 1)) scale(1);
      }
    }
  }

  .embla__viewport:hover .embla__snip-navs,
  .embla__viewport:focus-within .embla__snip-navs {
    opacity: 1;
    .embla__snip-button--prev {
      transform: translateX(calc(var(--btn-offset-hover) * -1)) scale(1);
    }
    .embla__snip-button--next {
      transform: translateX(calc(var(--btn-offset-hover) * 1)) scale(1);
    }
  }
/* END_SNIPPET:snip_embla_navs */

/* START_SNIPPET:snip_embla_number_pagi (INDEX:463) */
.embla__number-pagination {
    width: fit-content;
    height: 2rem;
    display: var(--number-pagination-display, none);

    margin-inline: auto;
    margin-block: 0.625rem 0;

    @media (max-width: 991px) {
      display: var(--number-pagination-display-mb, none);
    }

    .embla__number-pagination-inner {
      height: 100%;
      padding: 0.375rem;
      position: relative;
      border-radius: var(--radius-button-input-theme-st, 2.75rem);
      overflow: hidden;
    }

    .embla__number-pagination-content {
      height: 100%;
      display: flex;
      align-items: center;
      justify-content: center;
      position: relative;
      z-index: 2;
    }

    .embla__number-pagination-bg {
      position: absolute;
      inset: 0;
      z-index: 1;
      background-color: var(--color-background);
      border-radius: var(--radius-button-input-theme-st, 2.75rem);
      &::before {
        content: '';
        position: absolute;
        inset: 0;
        border-radius: var(--radius-button-input-theme-st, 2.75rem);
        background-color: var(--color-foreground_04);
      }
    }

    .embla__number-nav {
      display: flex;
      align-items: center;
      justify-content: center;
      width: 1rem;
      height: 1rem;
      padding: 0;
      border: none;
      background: transparent;
      border-radius: 50%;
      cursor: pointer;
      color: var(--color-text-paragraph);
      transition: all 0.2s ease;
      -webkit-appearance: none;
      appearance: none;
      touch-action: manipulation;

      &:hover:not(:disabled),
      &:focus-visible:not(:disabled) {
        background: var(--color-background-alt-hover);
        color: var(--color-text-paragraph-highlight);
      }

      &:active:not(:disabled) {
        background: var(--color-background-alt-active);
      }

      &:disabled {
        color: var(--color-foreground_30);
        cursor: not-allowed;
      }

      svg {
        width: 1rem;
        height: 1rem;
        display: block;
        pointer-events: none;
      }
    }

    .embla__number-display {
      .text-custom-content-inner {
        display: flex;
        align-items: center;
        gap: 0.25rem;
        user-select: none;
        min-width: 3rem;
        justify-content: center;
      }
    }

    .embla__number-current {
      color: var(--color-text-paragraph-highlight);
    }

    .embla__number-separator {
      color: var(--color-text-paragraph);
    }

    .embla__number-total {
      color: var(--color-text-paragraph);
    }
  }
/* END_SNIPPET:snip_embla_number_pagi */

/* START_SNIPPET:snip_empty_result (INDEX:464) */
.block-empty {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    height: 100%;
    width: 100%;
    padding-block: var(--empty-pd-block);
    padding-inline: var(--empty-pd-inline);
    .block-empty-inner {
      width: 100%;
      display: flex;
      flex-direction: column;
      align-items: var(--empty-align);
      justify-content: flex-start;
      text-align: var(--empty-text-align);
      row-gap: var(--empty-gap);
    }
    @media (max-width: 991px) {
      padding-block: var(--empty-pd-block-mb);
      padding-inline: var(--empty-pd-inline-mb);
      .block-empty-inner {
        align-items: var(--empty-align-mb);
        text-align: var(--empty-text-align-mb);
      }
    }
  }
/* END_SNIPPET:snip_empty_result */

/* START_SNIPPET:snip_featured_product (INDEX:465) */
.featured-product {
    height: fit-content;
    position: sticky;
    top: var(--sidebar-top, var(--main-margin-top, var(--page-margin)));
    transition: top calc(var(--trans-duration) * 0.6) var(--trans-easing);

    .featured-product-inner {
      .featured-product-bg {
        pointer-events: none;
        position: absolute;
        z-index: -1;
        inset: 0;
      }
    }
  }
/* END_SNIPPET:snip_featured_product */

/* START_SNIPPET:snip_filter_sidebar (INDEX:466) */
.facet-sidebar {
    width: calc((100% - (var(--content-gap) * (var(--column-counts) - 1))) / var(--column-counts));
    transition: width var(--trans-duration) var(--trans-easing), opacity var(--trans-duration) var(--trans-easing);
    flex: none;
    position: relative;
    display: flex;
    align-items: flex-start;
    justify-content: flex-end;
    border-radius: var(--filter_sorting-radius);
    background: var(--filter_sorting-background);
    background-repeat: no-repeat;
    @media (max-width: 991px) {
      display: none;
    }
    .facet-sidebar-sticky {
      width: var(--sidebar-width, 100%);
      height: fit-content;
      max-height: calc(100svh - var(--header-height-w-gap));
      flex: none;
      position: sticky;
      top: var(--sidebar-top, var(--main-margin-top, var(--page-margin)));
      transition: top calc(var(--trans-duration) * 0.6) var(--trans-easing);
      .facet-sidebar-inner {
        max-height: calc(100svh - var(--header-height-w-gap));
        transition: max-height var(--trans-duration) var(--trans-easing);
        overflow-y: auto;
        padding-inline: var(--filter_sorting-pd-inline-start) var(--filter_sorting-pd-inline-end);
        padding-block: var(--filter_sorting-pd-block-start) var(--filter_sorting-pd-block-end);
        mask-image: linear-gradient(
          180deg,
          transparent,
          var(--color-background) 2rem,
          var(--color-background) calc(100svh - var(--header-height-w-gap) - 2rem),
          transparent
        );
        display: flex;
        justify-content: stretch;
        flex-direction: column;
        gap: 1.25rem;
        @media (max-width: 991px) {
          /* padding-inline: 0; */
          padding-inline: var(--filter_sorting-pd-inline-start-mb) var(--filter_sorting-pd-inline-end-mb);
          padding-block: var(--filter_sorting-pd-block-start-mb) var(--filter_sorting-pd-block-end-mb);
        }
        custom-dialog & {
          padding-inline: 0;
        }
      }
    }
    .facet-sidebar-grp {
      display: flex;
      flex-direction: column;
      position: relative;
      &::after {
        content: '';
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 1px;
        background-color: var(--color-border-divider);
      }
      &::before {
        content: '';
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 1px;
        background-color: var(--color-border-hover);
        transform-origin: right;
        transform: scaleX(0);
        transition: transform var(--trans-duration) var(--trans-easing);
        z-index: 1;
      }
      @media (hover: hover) {
        &:not(:has(.facet-sidebar-filter.active)):hover::before {
          transform: scaleX(1);
          transform-origin: left;
        }
      }
      &:last-child {
        &::after,
        &::before {
          display: none;
        }
      }
      .facet-sidebar-grp-inner {
        display: block;
      }
    }
    .facet-sidebar-actives {
      display: flex;
      flex-direction: column;
      gap: 0.5rem;
      padding-block-end: 1.25rem;
      .facet-sidebar-actives-inner {
        display: flex;
        flex-wrap: wrap;
        gap: 0.5rem;
      }
    }
    .facet-sidebar-filter {
      display: flex;
      flex-direction: column;
      .facet-sidebar-filter-head {
        cursor: pointer;
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding-block-end: 1.25rem;
        .facet-sidebar-filter-head-label {
          white-space: nowrap;
          display: flex;
          align-items: center;
          column-gap: 0.25rem;
          > .text-custom {
            max-width: max-content;
          }
        }
        .facet-sidebar-filter-head-icon {
          color: var(--color-text-paragraph);
          --icon-size: 1rem;
          width: var(--icon-size);
          height: var(--icon-size);
          transition: color var(--trans-duration) var(--trans-easing);
          @media (hover: hover) {
            &:hover {
              color: var(--color-text-paragraph-highlight);
            }
          }
        }
      }
      .facet-sidebar-filter-body {
        transition: max-height var(--trans-duration) var(--trans-easing),
          opacity var(--trans-duration) var(--trans-easing);
        .facet-sidebar-filter-body-inner {
          display: flex;
          flex-direction: column;
          row-gap: 0.5rem;
          padding-block-end: 1.25rem;
          &.inner-row {
            flex-direction: row;
            flex-wrap: wrap;
            gap: 0.25rem;
          }
          &.inner-button {
            flex-direction: row;
            flex-wrap: wrap;
            gap: 0.25rem;
          }
          &.inner-type-list {
          }
        }
        .facet-sidebar-filter-item {
          display: flex;
          align-items: center;
          justify-content: space-between;
          column-gap: 1rem;
          .checkbox {
            flex: 1;
          }
          .facet-sidebar-filter-item-count.is-disabled {
            .text-custom-content-inner {
              color: var(--color-text-disabled);
            }
          }
        }
      }
      /* Size filter button styles */
      .facet-size-button-wrap {
        cursor: pointer;
        position: relative;
        .facet-size-button-input {
          position: absolute;
          top: 0;
          left: 0;
          width: 100%;
          height: 100%;
          z-index: -1;
          opacity: 0;
          cursor: pointer;
          &:focus-visible ~ .facet-size-button .facet-size-button-bg {
            border-color: var(--color-keyboard-focus-visible);
          }
        }
        .facet-size-button {
          min-width: 2.75rem;
          height: 2.75rem;
          flex-shrink: 0;
          .facet-size-button-inner {
            width: 100%;
            height: 100%;
            padding-inline: 0.625rem;
            border-radius: var(--variant-picker-swatch-border-radius);
            overflow: hidden;
            position: relative;
            display: flex;
            justify-content: center;
            align-items: center;
            .text-custom-content-inner {
              text-align: center;
            }
          }
          .facet-size-button-text {
            position: relative;
            z-index: 1;
            transition: all var(--trans-duration) var(--trans-easing);
          }
          .facet-size-button-bg {
            position: absolute;
            inset: 0;
            border-radius: inherit;
            border: max(1px, 0.0625rem) solid var(--color-border-default);
            background-color: var(--color-background);
            transition: all var(--trans-duration) var(--trans-easing);
            z-index: 0;
          }
        }
        @media (hover: hover) {
          &:hover {
            .facet-size-button-bg {
              border-color: var(--color-foreground);
            }
          }
        }
        /* Checked state */
        &:has(:checked) {
          .facet-size-button {
            .facet-size-button-bg {
              border-color: var(--color-foreground);
              background-color: var(--color-foreground);
            }
            .text-custom-content-inner {
              color: var(--color-background);
            }
          }
        }
        /* Disabled state */
        &.facet-size-button-disabled {
          cursor: not-allowed;
          .facet-size-button {
            .text-custom-content-inner {
              color: var(--color-text-disabled);
            }
            .facet-size-button-bg {
              border-color: var(--color-border-disable);
            }
          }
        }
      }
      &.active {
        .facet-sidebar-filter-head-icon {
          .plus-horizontal {
            transform: rotate(180deg);
          }
          .plus-vertical {
            transform: rotate(270deg);
          }
        }
      }
    }
  }
/* END_SNIPPET:snip_filter_sidebar */

/* START_SNIPPET:snip_filter_sorting (INDEX:467) */
facets-form-component,
  .facets-form {
    display: contents;
  }

  /* Desktop drawer mode — hide sidebar, full-width grid */
  facets-form-component[data-desktop-filter-layout='drawer'] {
    .facet-sidebar {
      display: none;
    }
  }

  /* Dialog drawer layout — applies at all screen sizes */
  .facets-form-component-dialog {
    .facets-form {
      .facet-sidebar {
        --sidebar-width: 100% !important;
        display: flex;
        width: 100%;
        padding-inline: 0rem;
        .facet-sidebar-sticky {
          position: unset;
          border-radius: var(--radius-new-main);
          .facet-sidebar-inner {
            height: auto;
            max-height: unset;
            mask-image: none;
            -webkit-mask-image: none;
            padding-block: 0;
            row-gap: 0;

            .facet-sidebar-grp {
              row-gap: 0;
              .facet-sidebar-grp-inner {
                .facet-sidebar-actives {
                  padding-block: 1rem;
                }
                .facet-sidebar-filter-head {
                  padding-block: 1.25rem 1.25rem;
                  @media (max-width: 991px) {
                    padding-block: 1rem;
                  }
                }
              }
            }
          }
        }
      }
    }
  }

  #filterSortingDialog {
    .facet-top {
      display: none;
    }
    .drawer-inner .drawer-content .drawer-content-inner {
      gap: 0;
    }
  }
  .filter-sorting-dialog {
    .filter-drawer-footer-btn {
      width: 100%;
      align-items: center;
      min-height: var(--button-input-height-medium);
      padding-block: 0.75rem;
      padding-inline: var(--button-input-pd-inline-medium) var(--button-input-icon-medium);
      background-color: var(--color-primary_button_background);
      color: var(--color-primary_button_text);
      border-radius: var(--radius-button-input-theme-st);
      font-family: var(--typo-ff-body);
      font-weight: var(--font-weight-medium);
      font-size: var(--typo-description-size);
      line-height: var(--typo-description-lh);
      @media (max-width: 991px) {
        font-size: var(--typo-description-size-mb);
        line-height: var(--typo-description-lh-mb);
      }
      cursor: pointer;
      transition: background-color var(--trans-duration) var(--trans-easing),
        color var(--trans-duration) var(--trans-easing);

      &:hover {
        background-color: var(--color-primary_button_background_hover);
        color: var(--color-primary_button_text_hover);
      }
    }
  }
/* END_SNIPPET:snip_filter_sorting */

/* START_SNIPPET:snip_filter_toggle (INDEX:468) */
.filter-toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    column-gap: 0.75rem;
    height: var(--button-input-height-medium);
    @media (max-width: 991px) {
      height: var(--button-input-height-small);
    }
    @media (max-width: 768px) {
      padding-block: 0;
      padding-inline: 0;
      background-color: transparent;
      border-radius: var(--radius-new-none);
    }
    .filter-toggle-label-inner {
      text-align: left;
      .filter-toggle-label-inner-hide {
        display: none;
      }
    }
    .filter-toggle-icon {
      flex: none;
      @media (max-width: 767px) {
        --icon-size: 0.875rem;
        width: var(--icon-size);
        height: var(--icon-size);
      }
    }
    &.active {
      .filter-toggle-label-inner {
        .filter-toggle-label-inner-hide {
          display: inline;
        }
        .filter-toggle-label-inner-show {
          display: none;
        }
        @media (max-width: 991px) {
          .filter-toggle-label-inner-hide {
            display: none;
          }
          .filter-toggle-label-inner-show {
            display: inline;
          }
        }
      }
      .filter-toggle-icon {
        .plus-vertical {
          transform: scaleY(0);
          @media screen and (max-width: 991px) {
            transform: scaleY(1);
          }
        }
      }
    }
  }
/* END_SNIPPET:snip_filter_toggle */

/* START_SNIPPET:snip_filter_top (INDEX:469) */
.facet-top {
    width: 100%;
    flex: none;
    position: relative;
    z-index: 2;
    &.hide-facet-top {
      display: none;
    }
    @media (max-width: 768px) {
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding-inline: var(--filter_sorting-pd-inline-start-mb) var(--filter_sorting-pd-inline-end-mb);
      padding-block: var(--filter_sorting-pd-block-start-mb) var(--filter_sorting-pd-block-end-mb);
      background: var(--filter_sorting-background);
      background-repeat: no-repeat;
      border-radius: var(--filter_sorting-radius);
    }
    .facets-inner {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 2rem;
      background: var(--filter_sorting-background);
      background-repeat: no-repeat;
      border-radius: var(--filter_sorting-radius);
      padding-inline: var(--filter_sorting-pd-inline-start) var(--filter_sorting-pd-inline-end);
      padding-block: var(--filter_sorting-pd-block-start) var(--filter_sorting-pd-block-end);
      @media (max-width: 768px) {
        display: contents;
      }
    }
    .facet-top-info {
      width: var(--facet-top-info-width);
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 2rem;
      @media (max-width: 991px) {
        padding-block: 1.25rem;
        justify-content: flex-end;
      }
      @media (max-width: 768px) {
        margin-inline: 0;
        padding-block: 0;
        padding-inline: 0;
        background-color: transparent;
        border-radius: var(--radius-new-none);
      }
    }
    .paginate-info {
      b {
        font-style: normal;
        font-weight: 600;
        color: var(--color-text-title);
      }
      @media (max-width: 991px) {
        text-align: right;
      }
    }
    .collection-sort {
      justify-self: flex-end;
      &.collection-sort-desktop {
        @media (max-width: 991px) {
          display: none;
        }
      }
    }
    .sort-only-toggle {
      display: none;
      @media (max-width: 991px) {
        display: flex;
        flex-shrink: 0;
      }
    }
  }
/* END_SNIPPET:snip_filter_top */

/* START_SNIPPET:snip_free_shipping_goal (INDEX:472) */
.free-shipping-goal {
    width: 100%;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    gap: 2rem;

    @media (max-width: 768px) {
      flex-direction: column;
      gap: 1rem;
      align-items: stretch;
    }
  }

  .free-shipping-goal__progress-container {
    flex: 1;
    position: relative;
    height: 0.375rem;
    background-color: var(--color-foreground_08);
    border-radius: var(--radius-button-sm);
    overflow: hidden;

    @media (max-width: 768px) {
      width: 100%;
      flex: auto;
    }

    .free-shipping-goal__progress-value {
      position: absolute;
      inset: 0;
      height: 0.375rem;
      background-color: var(--color-foreground);
      border-radius: var(--radius-button-sm);
      transition: width 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    }
  }
/* END_SNIPPET:snip_free_shipping_goal */

/* START_SNIPPET:snip_group_new (INDEX:475) */
.grp-custom {
    display: flex;
    align-items: stretch;
    .grp-custom-inner {
      position: relative;
      width: 100%;
      display: flex;
      align-items: stretch;
    }
    .grp-custom-content {
      position: relative;
      z-index: 2;
      width: 100%;
    }
    .grp-custom-content-inner {
      position: relative;
    }
    .grp-custom-bg {
      pointer-events: none;
      position: absolute;
      z-index: 1;
      inset: 0;
    }
  }
/* END_SNIPPET:snip_group_new */

/* START_SNIPPET:snip_header_toggle (INDEX:476) */
.header-toggle {
    display: none;
    @media (max-width: 991px) {
      display: flex;
      align-items: center;
      justify-content: center;
    }
    .icon-wrap {
      --icon-size: var(--toggle-icon-size, 1rem);
      flex-shrink: 0;
      display: inline-block;
      width: var(--icon-size);
      height: var(--icon-size);
      color: var(--color-text-title);
      transition: opacity var(--trans-duration) var(--trans-easing);
      path {
        transform-origin: center center;
        transition: transform var(--trans-duration) var(--trans-easing),
          opacity calc(var(--trans-duration) * 0.5) var(--trans-easing);
      }
      path:nth-child(1) {
        transform: translateY(calc(4.5 / 24 * 100%)) scaleX(1);
      }
      path:nth-child(2) {
        transform: translateY(calc(-4.5 / 24 * 100%)) scaleX(1);
      }
    }
    &.active {
      .icon-wrap {
        path:nth-child(1) {
          transform: translateY(0) rotateZ(-45deg) scaleX(1.15);
        }
        path:nth-child(2) {
          transform: translateY(0) rotateZ(45deg) scaleX(1.15);
        }
      }
    }
  }
/* END_SNIPPET:snip_header_toggle */

/* START_SNIPPET:snip_hover_overlay (INDEX:481) */
.hover-overlay {
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    opacity: 0;
    pointer-events: none;
    transition: all var(--trans-duration) var(--trans-easing);

    &.hover-overlay-type-color {
      background: var(--hover-overlay-color, transparent);
    }

    custom-video {
      width: 100%;
      height: 100%;
      display: block;
    }

    .hover-overlay-media {
      width: 100%;
      height: 100%;
      position: absolute;
      top: 0;
      left: 0;
    }

    .hover-overlay-media-inner {
      width: 100%;
      height: 100%;
    }

    .hover-overlay-media-inner > img,
    .hover-overlay-media-inner > svg,
    .hover-overlay-media-inner > custom-video > video {
      height: 100%;
      object-fit: cover;
    }

    .hover-overlay-media-overlay {
      position: absolute;
      inset: 0;
      z-index: 2;
      pointer-events: none;
      background: var(--overlay-color, transparent);
    }
  }
/* END_SNIPPET:snip_hover_overlay */

/* START_SNIPPET:snip_icon_v2 (INDEX:486) */
.icon-custom {
    width: max-content;
    overflow: hidden;
  }
/* END_SNIPPET:snip_icon_v2 */

/* START_SNIPPET:snip_icon_with_text (INDEX:487) */
.icon-with-text-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.25rem;
    position: relative;
    width: var(--icon-box-width);
    height: var(--icon-box-height);
    background: var(--icon-boxed-bg);
    border: var(--icon-boxed-border);
    border-radius: var(--icon-border-radius);
    padding-block: var(--icon-inner-padding-block);
    padding-inline: var(--icon-inner-padding-inline);
    @media (max-width: 991px) {
      width: var(--icon-box-width-mb);
      height: var(--icon-box-height-mb);
      padding-inline: 0;
      padding-block: 0;
    }
    .icon-wrap {
      display: var(--icon-text-icon-display);
      align-items: center;
      justify-content: center;
      width: var(--icon-size, 1rem);
      aspect-ratio: 1/1;
      @media (max-width: 991px) {
        display: var(--icon-text-icon-display-mb);
      }
    }
    .text-wrap {
      display: var(--icon-text-text-display);
      @media (max-width: 991px) {
        display: var(--icon-text-text-display-mb);
      }
    }
  }

  .icon-with-text-wrap .text-content {
    position: relative;
  }

  .icon-with-text-wrap .link-hover-default {
    .link-block-label {
      --text-color: currentColor;
      color: var(--text-color);
      display: inline;
      background-repeat: no-repeat;
      background-position: bottom left;
      background: linear-gradient(var(--text-color) 0 0) calc(100% - var(--p, 0%)) / var(--p, 0%) no-repeat;
      background-position-y: bottom;
      background-size: var(--p, 0%) var(--line-width, var(--1px));
      transition: background-size var(--trans-duration), background-position 0s;
      z-index: 1;
    }
  }

  @media (hover: hover) {
    .icon-with-text-wrap:hover .link-block-label,
    [hover-trigger]:hover .link-block-label {
      --p: 100%;
      background-size: 100% var(--line-width, var(--1px));
      transition: background-size var(--trans-duration), background-position 0s;
    }
  }
/* END_SNIPPET:snip_icon_with_text */

/* START_SNIPPET:snip_instagram_heading_grp (INDEX:489) */
.ins-heading-grp {
    display: flex;
    align-items: stretch;
    .ins-heading-grp-inner {
      position: relative;
      width: 100%;
      display: flex;
      align-items: stretch;
    }
    .ins-heading-grp-content {
      position: relative;
      z-index: 2;
      width: 100%;
    }
    .ins-heading-grp-content-inner {
      position: relative;
    }
  }
/* END_SNIPPET:snip_instagram_heading_grp */

/* START_SNIPPET:snip_jumbo_text (INDEX:491) */
.jumbo-text-custom {
    flex: none;
    display: block;
    contain: layout style paint;

    &[data-visual-preview-mode] {
      jumbo-text {
        opacity: 1;
      }
    }

    .jumbo-text-custom-inner {
      position: relative;
      height: 100%;
      width: 100%;
    }
  }
  jumbo-text {
    opacity: 0;
    /* white-space: nowrap; */
    display: block;
    width: 100%;
    overflow: visible;
    &.color-inverse {
      &[class*='color-txt-'] {
        color: var(--inverse_color);
      }
    }
    &.active {
      opacity: 1;
    }
  }
/* END_SNIPPET:snip_jumbo_text */

/* START_SNIPPET:snip_list_collection_page_listing (INDEX:492) */
.sc-collection-page-listing {
    display: block;
    .sc-collection-page-listing-inner {
      position: relative;
      contain: layout style var(--sc-overflow-contain);
    }
    .sc-collection-page-listing-content {
      position: relative;
      z-index: 2;
      display: flex;
      align-items: stretch;
    }
    .sc-collection-page-listing-content-inner {
      width: 100%;
      position: relative;
    }
    .sc-collection-page-listing-bg {
      pointer-events: none;
      position: absolute;
      z-index: 1;
      inset: 0;
    }
  }
/* END_SNIPPET:snip_list_collection_page_listing */

/* START_SNIPPET:snip_localization (INDEX:494) */
.localization-block-outer {
    display: flex;
    align-items: stretch;
    .localization-block-inner {
      position: relative;
      width: 100%;
      display: flex;
      align-items: stretch;
    }
    .localization-block-content {
      position: relative;
      z-index: 2;
      width: 100%;
    }
    .localization-block-content-inner {
      position: relative;
    }
  }
/* END_SNIPPET:snip_localization */

/* START_SNIPPET:snip_logo_header_v2 (INDEX:496) */
.logo-header-v2-content-inner {
    display: grid;
    grid-template-columns: minmax(0px, 1fr);
    & > * {
      grid-area: 1/1/2/2;
    }
  }
/* END_SNIPPET:snip_logo_header_v2 */

/* START_SNIPPET:snip_main_cart (INDEX:498) */
cart-main {
    display: block;
  }

  .main-cart {
    .main-cart-inner {
      position: relative;
      contain: layout style var(--sc-overflow-contain);
    }
    .main-cart-content {
      position: relative;
      z-index: 2;
    }
    .main-cart-content-inner {
      position: relative;
    }
    .main-cart-bg {
      pointer-events: none;
      position: absolute;
      z-index: 1;
      inset: 0;
    }
  }
  .shopify-section:has(.main-cart):not(:has(.cart-products)) {
    display: none;
  }
/* END_SNIPPET:snip_main_cart */

/* START_SNIPPET:snip_marquee_v2 (INDEX:499) */
marquee-v2-component {
    display: block;
  }
  .marquee-v2 {
    .marquee-v2-inner {
      position: relative;
      height: 100%;
      width: 100%;
    }
    .marquee-v2-content {
      position: relative;
      z-index: 2;
      height: 100%;
      width: 100%;
    }
    .marquee-v2-content-inner {
      position: relative;
      height: 100%;
      width: 100%;
    }
    .marquee-v2-track {
      width: 100%;
      height: 100%;
      overflow: hidden;
      contain: layout style paint;
    }
    .marquee-v2-band {
      display: flex;
      width: max-content;
      height: 100%;
      will-change: transform;
      backface-visibility: hidden;
      contain: layout style paint;
    }
    .marquee-v2-group {
      height: 100%;
      flex: 0 0 auto;
      display: flex;
      flex-direction: row;
      align-items: center;
      justify-content: center;
      padding-left: var(--marquee-gap);
      column-gap: var(--marquee-gap);
      @media (max-width: 991px) {
        padding-left: var(--marquee-gap-mb);
        column-gap: var(--marquee-gap-mb);
      }
    }
  }
/* END_SNIPPET:snip_marquee_v2 */

/* START_SNIPPET:snip_media_bg (INDEX:500) */
media-bg-component {
    display: block;
    view-timeline-name: --parallax;
    view-timeline-axis: block;
  }
  custom-video {
    width: 100%;
    height: 100%;
    display: block;
  }

  .media-bg-block {
    position: absolute;
    inset: 0;

    &[data-visual-preview-mode] {
      &[data-parallax='true'] {
        .media-bg-block-content {
          transform-origin: center;
        }
      }
    }

    &[data-parallax='true'] {
      background-color: var(--color-background);
      transition: background-color var(--trans-duration) var(--trans-easing);
      contain: layout style paint;
      &.active {
        background-color: transparent;
        .media-bg-block-content {
          opacity: 1;
        }
      }
      .media-bg-block-content {
        opacity: 0;
        transform-origin: top;
        transform: scale(var(--parallax-strength));
        transition: opacity var(--trans-duration) var(--trans-easing);
      }
      /* LCP-safe: eager (above-fold) images must never start hidden — opacity 0
         prevents the browser from attributing them as LCP candidates */
      &[data-eager='true'] .media-bg-block-content {
        opacity: 1;
      }
      @supports (animation-timeline: view()) {
        &.active .media-bg-block-content {
          animation: parallax-scroll linear both;
          animation-timeline: --parallax;
        }
      }
      @media (prefers-reduced-motion: reduce) {
        background-color: transparent;
        transition: none;
        .media-bg-block-content {
          opacity: 1;
          transform: none;
          animation: none;
        }
      }
    }
  }
  .media-bg-block-content {
    position: absolute;
    inset: 0;
  }
  .media-bg-block-inner {
    width: 100%;
    height: 100%;
  }
  .media-bg-block-inner > img,
  .media-bg-block-inner > svg,
  .media-bg-block-inner > custom-video > video,
  .media-bg-block-inner > custom-video > iframe {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
/* END_SNIPPET:snip_media_bg */

/* START_SNIPPET:snip_media_overlay (INDEX:501) */
.media-overlay {
    position: absolute;
    inset: 0;
    z-index: 5;
    pointer-events: none;
    background: var(--overlay-color, transparent);
  }
/* END_SNIPPET:snip_media_overlay */

/* START_SNIPPET:snip_media_with_hover_overlay (INDEX:502) */
custom-video {
    width: 100%;
    height: 100%;
    display: block;
  }
  .media-with-hover-overlay {
    width: 100%;
    height: var(--media-height);
    position: var(--media-position);
    top: var(--media-top);
    left: var(--media-left);
  }
  .media-with-hover-overlay-inner {
    width: 100%;
    height: 100%;
  }
  .media-with-hover-overlay-inner > img,
  .media-with-hover-overlay-inner > svg,
  .media-with-hover-overlay-inner > custom-video > video {
    pointer-events: none;
    height: var(--media-height);
    object-fit: cover;
  }
/* END_SNIPPET:snip_media_with_hover_overlay */

/* START_SNIPPET:snip_megamenu_automenu (INDEX:503) */
.megamenu-v2-automenu {
    display: flex;
    align-items: stretch;
    .megamenu-v2-automenu-inner {
      position: relative;
      width: 100%;
      display: flex;
      align-items: stretch;
    }
    .megamenu-v2-automenu-content {
      position: relative;
      z-index: 2;
      width: 100%;
    }
    .megamenu-v2-automenu-content-inner {
      position: relative;
    }
  }
/* END_SNIPPET:snip_megamenu_automenu */

/* START_SNIPPET:snip_megamenu_group (INDEX:504) */
.megamenu-group {
    display: flex;
    align-items: stretch;
    .megamenu-group-inner {
      position: relative;
      width: 100%;
      display: flex;
      align-items: stretch;
    }
    .megamenu-group-content {
      position: relative;
      z-index: 2;
      width: 100%;
    }
    .megamenu-group-content-inner {
      position: relative;
    }
    .megamenu-group-bg {
      pointer-events: none;
      position: absolute;
      z-index: 1;
      inset: 0;
    }
  }
/* END_SNIPPET:snip_megamenu_group */

/* START_SNIPPET:snip_megamenu_v2 (INDEX:505) */
.megamenu-v2 {
    display: block;
    .megamenu-v2-inner {
      position: relative;
      contain: layout style paint;
    }
    .megamenu-v2-content {
      position: relative;
      z-index: 4;
    }
    .megamenu-v2-content-inner {
      position: relative;
    }
    .megamenu-v2-bg {
      pointer-events: none;
      position: absolute;
      z-index: 1;
      inset: 0;
    }
    .megamenu-v2-bg-sticky {
      pointer-events: none;
      position: absolute;
      z-index: 2;
      inset: 0;
    }
  }
/* END_SNIPPET:snip_megamenu_v2 */

/* START_SNIPPET:snip_menu_header_breadcrumb (INDEX:506) */
.megamenu-mobile-container {
    .menu-nav-v3-breadcrumb {
      padding-block-end: var(--header-pd-inline-mb);
    }
  }
  .menu-nav-v3-breadcrumb {
    display: none;
    align-items: center;
    gap: 0.5ch;
    padding-block-start: 0.75rem;
    padding-block-end: 0.25rem;
    flex-wrap: nowrap;
    @media (max-width: 991px) {
      display: flex;
    }
  }
  .menu-nav-v3-breadcrumb-item {
    color: var(--color-foreground_60);
    &:not(.active) {
      cursor: pointer;
    }
    &.active {
      color: var(--color-foreground_100);
    }
  }
  .menu-nav-v3-breadcrumb-div {
    color: var(--color-text-divider);
  }
/* END_SNIPPET:snip_menu_header_breadcrumb */

/* START_SNIPPET:snip_menu_header_dropdown_v3 (INDEX:507) */
.menu-header-v3-dropdown {
    --dropdown-pd-block: 0.25rem;
    --dropdown-pd-inline: 0.75rem;
    opacity: 0;
    transform: translateY(calc(-1 * var(--small-gap)));
    pointer-events: none;
    transition: opacity var(--_t), transform var(--_t);
    position: absolute;
    @media (max-width: 991px) {
      &:not(.active):not(.is-mobile-active):not(.is-megamenu-active) {
        a,
        button {
          pointer-events: none;
        }
      }
    }
    @media (min-width: 992px) {
      &[data-submenu-lvl='1'] {
        z-index: 10;
        top: 100%;
        left: 0;
        .menu-header-v3-dropdown-inner {
          margin-block-start: var(--small-gap);
        }
      }
      &[data-submenu-lvl='2'] {
        z-index: 20;
        left: 100%;
        top: calc(var(--dropdown-pd-block) * -1);
        .menu-header-v3-dropdown-inner {
          margin-block-start: 0px;
          margin-inline-start: var(--small-gap);
        }
        &.flipped {
          right: calc(100% + var(--dropdown-pd-inline));
          left: auto;
        }
      }
    }
    @media (max-width: 991px) {
      position: absolute;
      inset: 0;
      width: 100%;
      transform: none;
      background-color: var(--color-background);
      transition: opacity var(--_t);
      padding-inline: var(--header-pd-inline-mb);
      padding-block: 0.25rem var(--header-pd-inline-mb);
      z-index: 10;
      overflow-y: auto;
      -webkit-overflow-scrolling: touch;
      border-radius: 0px 0px var(--header-radius) var(--header-radius);
    }

    &.active,
    .menu-header-v3-item.is-dropdown-active > &,
    .menu-header-v3-subitem.is-dropdown-active > & {
      opacity: 1;
      pointer-events: auto;
      transform: translateY(0);
    }
    &.is-mobile-active,
    &.is-megamenu-active {
      opacity: 1;
      pointer-events: auto;
    }
  }
  .menu-header-v3-dropdown-inner {
    position: relative;
    min-width: 13.25rem;
    z-index: 100;
    @media (max-width: 991px) {
      position: static;
      min-width: unset;
    }
  }
  .menu-header-v3-dropdown-content {
    padding-block: var(--dropdown-pd-block);
    @media (max-width: 991px) {
      padding-block: 0px;
    }
  }

  .menu-header-v3-dropdown-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: var(--radius-new-x-small);
    background: linear-gradient(var(--color-foreground_04), var(--color-foreground_04)),
      linear-gradient(var(--color-background), var(--color-background));
    overflow: hidden;
    @media (max-width: 991px) {
      display: none;
    }
  }
  .header-v3-wrap.is-sticky.is-open {
    .menu-header-v3-dropdown {
      border-radius: 0px;
    }
  }
/* END_SNIPPET:snip_menu_header_dropdown_v3 */

/* START_SNIPPET:snip_menu_header_item_v3 (INDEX:508) */
.menu-header-v3-list {
    height: auto;
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    align-items: stretch;
    column-gap: var(--menu-flex-gap);
    @media (max-width: 991px) {
      position: static;
      height: auto;
      row-gap: 0px;
      flex-direction: column;
      align-items: stretch;
    }
  }
  .menu-header-v3-item {
    position: relative;
    height: auto;
    flex: none;
    display: flex;
    align-items: stretch;
    @media (max-width: 991px) {
      position: static;
    }
  }
  .menu-header-v3-item-inner {
    display: flex;
    align-items: center;
    column-gap: var(--menu-flex-gap);
    @media (max-width: 991px) {
      width: 100%;
    }
  }
  .menu-header-v3-item-link {
    position: relative;
    transition: opacity var(--_t);
    @media (max-width: 991px) {
      width: 100%;
    }
    .menu-header-v3-item-link-inner {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 0.375rem;
      color: var(--header-menu-item-color);
      padding-inline: var(--header-menu-item-padding-inline);
      padding-block: var(--header-menu-item-padding-block);
      border-radius: var(--header-menu-item-radius);
      position: relative;
      z-index: 2;
      transition: color var(--_t), background-size var(--_t);
      @media (max-width: 991px) {
        color: var(--header-menu-item-color-mb);
        padding-inline: 0px;
        padding-block: calc(var(--menu-flex-gap-mb) / 2);
        flex-direction: var(--menu-item-direction-mb);
        justify-content: var(--menu-item-justify-content-mb);
        text-align: var(--menu-item-text-align-mb);
      }
      &.hover-underline {
        background: linear-gradient(currentColor 0 0) no-repeat 0% 100%;
        background-size: 0% var(--1px);
      }
    }
    .menu-header-v3-item-link-bg {
      opacity: 0;
      pointer-events: none;
      position: absolute;
      inset: 0;
      border-radius: var(--header-menu-item-radius);
      background-color: var(--header-menu-item-bg);
      border-color: var(--header-menu-item-border-color);
      border-width: var(--1px);
      border-style: solid;
      z-index: 1;
      transition: opacity var(--_t);
      @media (max-width: 991px) {
        display: none;
      }
    }
    .menu-header-v3-item-link-dot {
      width: 0.25rem;
      height: 0.25rem;
      border-radius: var(--radius-new-pill);
      flex: none;
      background-color: var(--header-menu-item-dot-color);
      transition: background-color var(--_t);
      @media (max-width: 991px) {
        width: 0.375rem;
        height: 0.375rem;
      }
    }
  }
  @media (hover: hover) and (min-width: 992px) {
    .menu-header-v3-item-link:hover {
      .menu-header-v3-item-link-inner {
        color: var(--header-menu-item-color-hover);
        &.hover-underline {
          background-size: 100% var(--1px);
        }
      }
      .menu-header-v3-item-link-bg {
        opacity: 1;
      }
      .menu-header-v3-item-link-dot {
        background-color: var(--color-primary);
      }
    }
  }
  .menu-header-v3-item-divider {
    width: var(--1px);
    height: 1em;
    background-color: var(--color-border-default);
    &:last-child {
      display: none;
    }
    @media (max-width: 991px) {
      display: none;
    }
  }
  .menu-header-v3-item-divider-mb {
    display: none;
    width: 100%;
    height: var(--1px);
    background: var(--divider-background);
    background-size: var(--divider-background-size);
    background-color: var(--color-border-default);
    @media (max-width: 991px) {
      display: var(--divider-mb-display);
    }
  }

  @media (hover: hover) and (min-width: 992px) {
    .header-drawer-outer {
      .menu-header-v3-list.menu-hover-inactive {
        &:has(.menu-header-v3-item-link:hover) {
          .menu-header-v3-item-link:not(:hover) {
            opacity: 0.5;
          }
        }
      }
    }
  }
/* END_SNIPPET:snip_menu_header_item_v3 */

/* START_SNIPPET:snip_menu_header_subitem_v3 (INDEX:509) */
.menu-header-v3-sublist {
    position: relative;
    z-index: 1;
    @media (max-width: 991px) {
      position: static;
    }
  }
  .menu-header-v3-subitem {
    position: relative;
    flex: none;
    display: flex;
    align-items: center;
    @media (max-width: 991px) {
      position: static;
    }
  }
  .menu-header-v3-subitem-inner {
    width: 100%;
  }
  .menu-header-v3-subitem-link {
    display: block;
    width: 100%;
    transition: opacity var(--_t);
    padding-inline: var(--dropdown-pd-inline);
    @media (max-width: 991px) {
      padding-inline: 0px;
    }
    .menu-header-v3-subitem-link-inner {
      white-space: nowrap;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 0.375rem;
      color: var(--header-menu-subitem-color);
      padding-block: var(--header-menu-subitem-padding-block);
      border-radius: var(--header-menu-subitem-radius);
      position: relative;
      z-index: 2;
      transition: color var(--_t), background-size var(--_t);
      @media (max-width: 991px) {
        white-space: normal;
        color: var(--header-menu-subitem-color-mb);
        padding-block: calc(var(--menu-flex-gap-mb) / 2);
        flex-direction: var(--menu-item-direction-mb);
        justify-content: var(--menu-item-justify-content-mb);
        text-align: var(--menu-item-text-align-mb);
      }
    }
    .menu-header-v3-subitem-link-dot {
      width: 0.25rem;
      height: 0.25rem;
      border-radius: var(--radius-new-pill);
      flex: none;
      background-color: var(--header-menu-item-dot-color);
      transition: background-color var(--_t);
      @media (max-width: 991px) {
        width: 0.375rem;
        height: 0.375rem;
      }
    }
  }
  @media (min-width: 992px) {
    .menu-header-v3-subitem-divider-mb {
      position: relative;
      .menu-header-v3-subitem-divider-inner-mb {
        background-color: var(--color-border-hover);
        transform: scaleX(0);
        height: 100%;
        transform-origin: right;
        transition: transform var(--_t);
      }
    }
    @media (hover: hover) {
      .menu-header-v3-subitem-link:hover {
        .menu-header-v3-subitem-link-inner {
          color: var(--header-menu-subitem-color-hover);
          &.hover-underline {
            background-size: 100% var(--1px);
          }
        }
        .menu-header-v3-subitem-link-dot {
          background-color: var(--color-primary);
        }
      }
      .menu-header-v3-subitem-link:hover {
        .menu-header-v3-subitem-divider-mb {
          .menu-header-v3-subitem-divider-inner-mb {
            transform-origin: left;
            transform: scaleX(1);
          }
        }
      }
    }
    .menu-header-v3-subitem:last-child {
      > .menu-header-v3-subitem-inner > .menu-header-v3-subitem-link > .menu-header-v3-subitem-divider-mb {
        display: none;
      }
    }
  }
  .menu-header-v3-subitem-divider-mb {
    display: block;
    width: 100%;
    height: var(--1px);
    background: var(--color-border-divider);
    background-size: auto;
    @media (max-width: 991px) {
      display: var(--divider-mb-display);
      background: var(--divider-background);
      background-size: var(--divider-background-size);
      .menu-header-v3-subitem-divider-inner-mb {
        display: none;
      }
    }
  }

  @media (hover: hover) and (min-width: 992px) {
    .menu-header-v3-sublist.menu-hover-inactive[data-submenu-lvl='1'] {
      &:has(.menu-header-v3-subitem-link[data-submenu-lvl='1']:hover) {
        .menu-header-v3-subitem-link[data-submenu-lvl='1']:not(:hover) {
          opacity: 0.5;
        }
      }
    }
    .menu-header-v3-sublist.menu-hover-inactive[data-submenu-lvl='2'] {
      &:has(.menu-header-v3-subitem-link[data-submenu-lvl='2']:hover) {
        .menu-header-v3-subitem-link[data-submenu-lvl='2']:not(:hover) {
          opacity: 0.5;
        }
      }
    }
  }
/* END_SNIPPET:snip_menu_header_subitem_v3 */

/* START_SNIPPET:snip_notification (INDEX:512) */
.notification {
    padding-block: 1.25rem;
    padding-inline: 1.25rem;
    border: 1px dashed var(--color-border-default);
    border-radius: var(--radius-new-small);
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-block-start: 0.75rem;
    transition: all var(--trans-duration) var(--trans-easing);

    @media (max-width: 991px) {
      margin-block-start: 0.5rem;
      padding-block: 1rem;
      padding-inline: 1rem;
    }
    .notification-body {
      display: flex;
      justify-content: flex-start;
      align-items: flex-start;
      gap: 0.625rem;

      .notification-point-wrap {
        height: calc(var(--typo-description-size) * var(--typo-description-lh));
        display: flex;
        align-items: center;
        justify-content: center;
      }

      .notification-point {
        width: 0.375rem;
        height: 0.375rem;
        border-radius: var(--radius-new-pill);
        display: inline-block;
        background: var(--notification-point-bg);
        flex-shrink: 0;
      }

      .notification-text {
        font-size: var(--typo-description-size);
        line-height: var(--typo-description-lh);
        font-weight: var(--font-weight-regular);
        color: var(--color-foreground_80);
        @media (max-width: 991px) {
          font-size: var(--typo-description-size-mb);
          line-height: var(--typo-description-lh-mb);
        }
      }
    }

    .notification-btn {
      width: 1.25rem;
      height: 1.25rem;

      &:hover {
        cursor: pointer;
      }
    }
  }
/* END_SNIPPET:snip_notification */

/* START_SNIPPET:snip_overlay (INDEX:513) */
.overlay {
    position: absolute;
    inset: 0;
    z-index: var(--overlay-layer);
    pointer-events: none;
    background: var(--overlay-color);
  }
/* END_SNIPPET:snip_overlay */

/* START_SNIPPET:snip_page_heading (INDEX:514) */
.sc-page-heading {
    display: block;
    .sc-page-heading-inner {
      position: relative;
    }
    .sc-page-heading-content {
      position: relative;
      z-index: 2;
    }
    .sc-page-heading-content-inner {
      position: relative;
    }
    .sc-page-heading-bg {
      pointer-events: none;
      position: absolute;
      z-index: 1;
      inset: 0;
    }
  }
/* END_SNIPPET:snip_page_heading */

/* START_SNIPPET:snip_page_tags (INDEX:517) */
.page-tags {
    display: flex;
    align-items: stretch;
    .page-tags-inner {
      position: relative;
      width: 100%;
      display: flex;
      align-items: stretch;
    }
    .page-tags-content {
      position: relative;
      z-index: 2;
      width: 100%;
    }
    .page-tags-content-inner {
      position: relative;
    }
  }
/* END_SNIPPET:snip_page_tags */

/* START_SNIPPET:snip_pagi (INDEX:519) */
.blck-pagi-cmt {
    display: block;
    background-color: var(--color-background);
    overflow: hidden;
    .blck-pagi-cmt-inner {
      display: flex;
      flex-direction: row;
      align-items: center;
      justify-content: center;
      gap: 0.25rem;
      .blck-pagi-cmt-icon {
        width: 1.25rem;
        height: 1.25rem;
        @media (max-width: 991px) {
          width: 0.75rem;
          height: 0.75rem;
        }
      }
    }
  }
  .blck-pagi-cmt-item {
    width: 2.75rem;
    height: 2.75rem;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background-color var(--trans-duration) var(--trans-easing),
      color var(--trans-duration) var(--trans-easing);
    background-color: transparent;
    color: var(--color-text-note);
    border-radius: var(--pagi-radius);
    @media (max-width: 991px) {
      width: 2rem;
      height: 2rem;
    }
    &:hover:not(.active),
    &:focus-visible:not(.active) {
      background-color: var(--button-alt-overlay);
      color: var(--color-text-title);
    }
    &.active {
      background-color: var(--color-primary_button_background);
      color: var(--color-primary_button_text);
    }
  }
/* END_SNIPPET:snip_pagi */

/* START_SNIPPET:snip_password_group (INDEX:520) */
.ag {
    display: flex;
    align-items: stretch;
    .ag-inner {
      position: relative;
      width: 100%;
      display: flex;
      align-items: stretch;
    }
    .ag-content {
      position: relative;
      z-index: 2;
      width: 100%;
    }
    .ag-content-inner {
      position: relative;
    }
    .ag-bg {
      pointer-events: none;
      position: absolute;
      z-index: 1;
      inset: 0;
    }
  }
/* END_SNIPPET:snip_password_group */

/* START_SNIPPET:snip_password_media (INDEX:522) */
.alm {
    display: flex;
    align-items: stretch;

    .alm-inner {
      position: relative;
      width: 100%;
      display: flex;
      align-items: stretch;
      overflow: hidden;
    }
    .alm-content {
      position: relative;
      z-index: 2;
      width: 100%;
    }
    .alm-bg {
      pointer-events: none;
      position: absolute;
      z-index: 1;
      inset: 0;
    }
    .alm-bg > svg {
      width: 100%;
      height: 100%;
      object-fit: cover;
    }
  }
/* END_SNIPPET:snip_password_media */

/* START_SNIPPET:snip_payment_icons_v2 (INDEX:523) */
.payment-icons {
    width: fit-content;
    height: fit-content;
    .payment-icons-inner {
      position: relative;
      width: 100%;
      .payment-icons-content {
        position: relative;
        z-index: 2;
        width: 100%;
        padding-block: var(--pi-pd-block-start) var(--pi-pd-block-end);
        padding-inline: var(--pi-pd-inline-start) var(--pi-pd-inline-end);
        @media (max-width: 991px) {
          padding-block: var(--pi-pd-block-start-mb) var(--pi-pd-block-end-mb);
          padding-inline: var(--pi-pd-inline-start-mb) var(--pi-pd-inline-end-mb);
        }
        .payment-icons-content-inner {
          .payment-icons-list {
            display: flex;
            gap: var(--pi-flex-gap);
            justify-content: var(--pi-alignment);

            @media (max-width: 991px) {
              gap: var(--pi-flex-gap-mb);
              justify-content: var(--pi-alignment-mb);
            }

            .payment-icons-item {
              overflow: hidden;
              height: 1.5rem;
              border-radius: var(--radius-new-tooltip);
              border: var(--1px) solid var(--color-border-default);
              display: flex;
              color: var(--color-foreground);
              & > svg {
                width: 100%;
                height: 100%;
                transform: scale(1.02);
                [opacity='.07'] {
                  display: none;
                }
              }
            }
          }
        }
      }
    }
  }
/* END_SNIPPET:snip_payment_icons_v2 */

/* START_SNIPPET:snip_pickup_availability_v2 (INDEX:524) */
.pickup-status-row {
    display: flex;
    align-items: center;
    gap: 0.5rem;
  }
/* END_SNIPPET:snip_pickup_availability_v2 */

/* START_SNIPPET:snip_placeholder (INDEX:525) */
placeholder-image {
    pointer-events: none;
    position: relative;
    width: 100%;
    height: 100%;
    display: flex;
    visibility: visible;
    svg {
      z-index: 2;
      position: relative;
      fill: var(--color-foreground_40);
      background: linear-gradient(0deg, rgba(128, 128, 128, 0.2), rgba(128, 128, 128, 0.2)),
        linear-gradient(0deg, var(--color-background), var(--color-background));
    }
  }
/* END_SNIPPET:snip_placeholder */

/* START_SNIPPET:snip_popup (INDEX:527) */
.popup {
    width: var(--popup-size-width);
    max-width: calc(100vw - var(--modals-default-margin) * 2);
    height: fit-content;
    max-height: 90dvh;
    position: fixed !important;
    inset: 0;
    margin: auto;
    padding: 0;
    border-radius: var(--modals_default-radius);
    border: none;
    z-index: 1000;
    padding: 0;

    @media (max-width: 991px) {
      max-width: calc(100vw - var(--modals-default-margin-mb) * 2);
      max-height: calc(100dvh - (var(--modals-default-margin-mb) * 2));
      margin-block: auto var(--modals-default-margin-mb);
    }

    &:focus:not(:focus-visible) {
      outline: none;
    }

    .popup-inner {
      width: 100%;
      height: fit-content;
      max-height: inherit;
      border-radius: var(--modals_default-radius);
      overflow: hidden;
      position: relative;

      .popup-content {
        width: 100%;
        padding: var(--modals-default-padding);
        position: relative;
        z-index: 2;

        @media (max-width: 768px) {
          padding: var(--modals-default-padding-mb);
        }

        &.custom-scroll {
          overflow-x: hidden;
          overflow-y: auto;
          max-height: calc(90dvh - 8rem);
        }

        &.custom-scroll-mb {
          @media (max-width: 768px) {
            overflow-x: hidden;
            overflow-y: auto;
            max-height: calc(100dvh - (var(--modals-default-margin-mb) * 2));
          }
        }

        .popup-content-inner {
          width: 100%;
          display: flex;
          flex-direction: column;
          gap: 1rem;

          .popup-header {
            width: 100%;
            display: flex;
            flex-direction: row;
            justify-content: space-between;
            align-items: center;
            padding-bottom: 1rem;

            @media (max-width: 768px) {
              padding-bottom: 0.75rem;
            }

            &:has(.popup-header-description) {
              gap: 0.75rem;
              flex-direction: column;
              align-items: flex-start;
            }

            .popup-header-title {
              flex: 1;
            }
          }

          .popup-body {
            width: 100%;
            flex: 1;

            &:focus:not(:focus-visible) {
              outline: none;
            }
          }
        }
      }
    }

    .popup-bg {
      position: absolute;
      z-index: 1;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-color: var(--color-background);
    }

    &::backdrop {
      background: var(--modals-default-backdrop-color);
    }

    &[open] {
      animation: var(--dialog-opening-animation);
      @media (max-width: 768px) {
        animation: var(--dialog-opening-animation-mobile, var(--dialog-opening-animation));
      }
      &::backdrop {
        animation: fade-in 0.6s cubic-bezier(0.7, 0, 0.2, 1) forwards;
      }
    }

    &.dialog-closing {
      animation: var(--dialog-closing-animation);
      @media (max-width: 768px) {
        animation: var(--dialog-closing-animation-mobile, var(--dialog-closing-animation));
      }
      &::backdrop {
        animation: fade-out 0.6s cubic-bezier(0.7, 0, 0.2, 1) forwards;
      }
    }
  }
/* END_SNIPPET:snip_popup */

/* START_SNIPPET:snip_predictive_search (INDEX:528) */
.predictive-search {
    display: block;
    padding-block-end: 1.25rem;

    @media (max-width: 991px) {
      padding-block-end: 1rem;
    }

    .predictive-search-form {
      display: flex;
      flex-direction: column;
      gap: 1rem;
      align-items: stretch;

      .predictive-search-form-header {
        .predictive-search-form-header-inner {
          display: flex;
          align-items: center;
          position: relative;

          .predictive-search-input {
            padding-inline-start: var(--input-pd-start);
            padding-inline-end: var(--input-pd-end);

            @media (max-width: 991px) {
              padding-inline-start: var(--input-pd-start-mb);
              padding-inline-end: var(--input-pd-end-mb);
            }

            &::-webkit-search-cancel-button {
              -webkit-appearance: none;
              appearance: none;
              height: 0;
              width: 0;
              margin: 0;
            }
            &::-ms-clear,
            &::-ms-reveal {
              display: none;
              width: 0;
              height: 0;
            }
            &::-o-clear {
              display: none;
            }
          }

          .predictive-search-icon {
            width: 1.25rem;
            height: 1.25rem;
            position: absolute;
            top: 50%;
            left: var(--icon-lookup-left);
            z-index: 4;
            transform: translateY(-50%);
            color: var(--color-foreground_60);
            pointer-events: none;

            @media (max-width: 991px) {
              width: 1rem;
              height: 1rem;
            }
          }

          .predictive-search-reset-button {
            width: 1.25rem;
            height: 1.25rem;
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            right: var(--icon-clear-right);
            color: var(--color-foreground_60);
            z-index: 4;
            background: transparent;
            border: none;
            padding: 0;
            cursor: pointer;
            display: inline-flex;
            align-items: center;
            justify-content: center;

            @media (max-width: 991px) {
              width: 1rem;
              height: 1rem;
            }
          }
        }
      }

      .predictive-search-form-content-wrap {
        .predictive-search-form-content {
          .predictive-search-empty {
            display: flex;
            flex-direction: column;
            gap: 1rem;
          }
        }
      }
    }
  }
/* END_SNIPPET:snip_predictive_search */

/* START_SNIPPET:snip_price_filters (INDEX:529) */
price-range {
    display: block;
  }
  .facet-sidebar-filter-price {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    .facet-sidebar-filter-price-slider {
      width: 100%;
      position: relative;
      display: flex;
      align-items: center;
      justify-content: space-between;

      .facet-sidebar-filter-price-slider-track {
        width: 100%;
        height: 0.25rem;
        margin-block: 0.375rem;
        border-radius: var(--radius-new-pill);
        position: relative;
        background: linear-gradient(
          to right,
          var(--color-border-disable) var(--range-min),
          var(--color-foreground) var(--range-min),
          var(--color-foreground) var(--range-max),
          var(--color-border-disable) var(--range-max)
        );
      }
      .facet-sidebar-filter-price-slider-handle {
        position: absolute;
        appearance: none;
        width: 100%;
        height: 100%;
        pointer-events: none;
        background: transparent;
        &:focus-visible {
          outline: none;
        }
        &.min {
          width: 98%;
        }
        &.max {
          z-index: 1;
        }
        &::-webkit-slider-thumb {
          pointer-events: auto;
          -webkit-appearance: none;
          width: 1rem;
          height: 1rem;
          border-radius: 99px;
          background: var(--color-foreground);
          cursor: pointer;
        }
        &:focus-visible::-webkit-slider-thumb {
          outline: 2px solid var(--color-keyboard-focus-visible);
          outline-offset: 2px;
        }
        &::-moz-range-thumb {
          pointer-events: auto;
          -webkit-appearance: none;
          width: 1rem;
          height: 1rem;
          border-radius: 99px;
          background: var(--color-foreground);
          cursor: pointer;
        }
        &:focus-visible::-moz-range-thumb {
          outline: 2px solid var(--color-keyboard-focus-visible);
          outline-offset: 2px;
        }
        &::-ms-thumb {
          pointer-events: auto;
          -webkit-appearance: none;
          width: 1rem;
          height: 1rem;
          border-radius: 99px;
          background: var(--color-foreground);
          cursor: pointer;
        }
        &:focus-visible::-ms-thumb {
          outline: 2px solid var(--color-keyboard-focus-visible);
          outline-offset: 2px;
        }
      }
    }
    .facet-sidebar-filter-price-range {
      display: grid;
      grid-template-columns: minmax(0px, 1fr) auto minmax(0px, 1fr);
      align-items: center;
      gap: 1rem;
      .facet-sidebar-filter-price-range-item {
        display: flex;
        align-items: center;
        position: relative;
        background-color: var(--color-surface-alt);
        border-radius: var(--radius-new-pill);
        .facet-sidebar-filter-price-range-input {
          font-family: var(--typo-ff-body);
          -webkit-appearance: textfield;
          appearance: textfield;
          width: 100%;
          height: 100%;
          text-align: right;
          padding-block: 0.5rem;
          padding-inline: 1.75rem 0.75rem;
          &:focus-visible {
            outline: 2px solid var(--color-keyboard-focus-visible);
            outline-offset: 2px;
          }
        }
        .facet-sidebar-filter-price-range-label {
          position: absolute;
          left: 0.5rem;
          min-width: 1.2rem;
          text-align: center;
        }
      }
    }
  }
/* END_SNIPPET:snip_price_filters */

/* START_SNIPPET:snip_product_action_button (INDEX:530) */
.btn-quick-action {
    min-width: 1px;
    min-height: var(--btn-size-min-height);
    width: var(--btn-size-width);
    max-width: var(--btn-size-max-width);
    @media (max-width: 991px) {
      min-height: var(--btn-size-min-height-mb);
      width: var(--btn-size-width-mb);
      max-width: var(--btn-size-max-width-mb);
    }
    
    .btn-quick-action-inner {
      width: 100%;
      position: relative;
      
      .btn-quick-action-content {
        display: block;
        width: 100%;
        height: var(--button-height);
        position: relative;
        overflow: hidden;
        border-radius: var(--button-radius);
        padding-inline: var(--button-pd-inline);
        
        @media (max-width: 991px) {
          padding-inline: var(--button-pd-inline-mb);
          height: var(--button-height-mb);
          border-radius: var(--button-input-radius-pill);
        }
        
        .btn-quick-action-content-inner {
          height: 100%;
          position: relative;
          z-index: 2;
          display: flex;
          align-items: center;
          justify-content: center;
          transition: color var(--trans-duration) var(--trans-easing);
          color: var(--button-color);
          flex-direction: var(--button-icon-position);
          column-gap: var(--button-gap);
          
          .btn-quick-action-label {
            display: var(--button-label-display, block);
            line-height: var(--button-font-lh);
            font-weight: var(--button-weight);
            letter-spacing: var(--button-ls);
            text-transform: var(--button-case);
            font-size: var(--button-font-size);
            white-space: nowrap;
            @media (max-width: 991px) {
              display: var(--button-label-display-mb, none);
              font-size: var(--button-font-size-mb);
            }
          }
          
          .btn-quick-action-icon {
            flex-shrink: 0;
            display: var(--button-icon-display, flex);
            align-items: center;
            justify-content: center;
            width: var(--button-icon-size);
            height: var(--button-icon-size);
            @media (max-width: 991px) {
              display: flex;
              width: var(--button-icon-size-mb);
              height: var(--button-icon-size-mb);
            }
            svg [stroke-width] {
              stroke-width: var(--button-icon-stroke);
            }
          }
        }
        
        .btn-quick-action-bg {
          border-style: solid;
          border: none;
          position: absolute;
          inset: 0;
          border-radius: inherit;
          z-index: 1;
          transition: background-color var(--trans-duration) var(--trans-easing), border-color var(--trans-duration) var(--trans-easing);
          background: var(--button-bg);
          border-color: var(--button-border);
        }
        
        .button-loader-wrap {
          opacity: 0;
          visibility: hidden;
          position: absolute;
          z-index: 3;
          inset: 0;
          flex-shrink: 0;
          display: flex;
          align-items: center;
          justify-content: center;
          transition: all var(--trans-duration) var(--trans-easing);
          background: var(--button-bg);
          .button-loader {
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 0.1875rem;
            .dot-1,
            .dot-2,
            .dot-3 {
              width: 0.375rem;
              height: 0.375rem;
              border-radius: 50%;
              background-color: var(--button-color);
              flex-shrink: 0;
            }
          }
        }

        &:not([aria-disabled]):not(:disabled) {
          &:hover,
          &:focus-visible {
            .btn-quick-action-content-inner {
              color: var(--button-color-hover);
            }
            .btn-quick-action-bg {
              background: var(--button-bg-hover);
              border-color: var(--button-border-hover);
            }
          }
        }
        
        &[aria-disabled],
        &:disabled {
          pointer-events: none;
          .btn-quick-action-content-inner {
            color: var(--button-color-disabled);
          }
          .btn-quick-action-bg {
            background: var(--button-bg-disabled);
            border-color: var(--button-border-disabled);
          }
        }
        
        &[loading] {
          pointer-events: none;
          .button-loader-wrap {
            opacity: 1;
            visibility: visible;
            .button-loader {
              .dot-1,
              .dot-2,
              .dot-3 {
                animation: loading-dot-button 1s infinite ease-in-out;
              }
              .dot-1 {
                animation-delay: -0.16s;
              }
              .dot-2 {
                animation-delay: 0;
              }
              .dot-3 {
                animation-delay: 0.16s;
              }
            }
          }
        }
      }
    }
  }
/* END_SNIPPET:snip_product_action_button */

/* START_SNIPPET:snip_product_card_info (INDEX:533) */
.product-card-info {
    height: 100%;
    position: relative;
    z-index: 1;
    .product-card-info-inner {
      height: 100%;
      position: relative;
      z-index: 2;

      .product-card-info-bg {
        position: absolute;
        inset: 0;
        background: var(--product-card-info-bg-surface);
        z-index: 1;
        pointer-events: none;
        border-radius: var(--product-card-border-radius);
        overflow: hidden;
      }

      .product-card-info-content {
        position: relative;
        z-index: 2;
        padding-block: var(--product-card-info-pd-block);
        padding-inline: var(--product-card-info-pd-inline);

        @media screen and (max-width: 991px) {
          padding-block: var(--product-card-info-pd-block-mb);
          padding-inline: var(--product-card-info-pd-inline-mb);
        }

        .product-card-info-content-inner {
          display: flex;
          flex-direction: column;
          align-items: stretch;
          gap: 0.25rem;
          text-align: var(--product-card-info-alignment);
        }
      }
    }
  }
/* END_SNIPPET:snip_product_card_info */

/* START_SNIPPET:snip_product_card_media (INDEX:534) */
.product-card-media {
    @media (hover: none) {
      position: relative;
    }

    .product-card-media-inner {
      position: relative;
      z-index: 1;
      border-radius: var(--product-card-border-radius);
      overflow: hidden;

      .product-card-media-bg {
        position: absolute;
        inset: 0;
        background-color: var(--product-card-media-bg-surface);
        z-index: -1;
        pointer-events: none;
      }

      .product-card-media-content {
        width: 100%;
        aspect-ratio: var(--product-card-media-aspect-ratio);

        @media (max-width: 991px) {
          aspect-ratio: var(--product-card-media-aspect-ratio-mb);
        }
      }
    }

    .product-card-media-featured {
      width: 100%;
      height: 100%;
      opacity: 1;
      visibility: visible;
      transition: all var(--trans-duration) var(--trans-ease-smooth);

      .product-card-media-featured-image {
        width: 100%;
        height: 100%;
        display: block;
        position: relative;

        placeholder-image {
          &::after {
            display: none;
          }
        }

        img,
        svg {
          position: absolute;
          inset: 0;
          width: 100%;
          height: 100%;
          object-fit: cover;
          object-position: center;
          z-index: 1;
          background-color: transparent;
        }
      }
    }

    .product-card-media-second {
      width: 100%;
      height: 100%;
      opacity: 0;
      visibility: hidden;
      transition: all var(--trans-duration) var(--trans-ease-smooth);

      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      z-index: 1;

      background: var(--product-card-media-bg-surface);

      .product-card-media-second-image {
        width: 100%;
        height: 100%;
        display: block;
        position: relative;

        placeholder-image {
          &::after {
            display: none;
          }
        }

        img,
        svg {
          position: absolute;
          inset: 0;
          width: 100%;
          height: 100%;
          object-fit: cover;
          object-position: center;
          z-index: 1;
          background-color: transparent;
        }
      }
    }

    .product-card-media-hover {
      display: block;
      position: absolute;
      inset: 0;
      z-index: 2;
      border-radius: var(--product-card-border-radius);
      overflow: hidden;
      opacity: 0;
      visibility: hidden;
      transform: var(--product-card-media-hover-overlay-transform-default);
      transition: all var(--trans-duration) var(--trans-ease-smooth);

      .product-card-media-hover-bg {
        position: absolute;
        inset: 0;
        background-color: var(--product-card-bg-surface-inside);
        z-index: -1;
        pointer-events: none;
      }
    }

    .product-card-quick-actions {
      position: absolute;
      width: 100%;
      height: fit-content;
      bottom: 0;
      left: 0;
      z-index: 12;
      pointer-events: none;

      .product-card-quick-actions-inner {
        padding-inline: var(--quick-actions-pd-inline);
        padding-block: var(--quick-actions-pd-block);
        pointer-events: none;

        @media (max-width: 991px) {
          padding-block: var(--quick-actions-pd-block-mb);
        }
      }

      .product-card-quick-actions-content {
        width: fit-content;
        display: grid;
        gap: 0.25rem;
        grid-auto-flow: var(--quick-actions-direction);
        grid-template-columns: var(--quick-actions-grid-columns);
        grid-template-rows: var(--quick-actions-grid-rows);

        margin-inline: var(--quick-actions-margin-inline);
        pointer-events: none;

        @media (max-width: 991px) {
          grid-auto-flow: row;
          grid-template-rows: auto;
          grid-template-columns: 1fr;
          margin-inline: var(--quick-actions-margin-inline-mb, auto);
        }
      }
    }

    .product-card-quick-add,
    .product-card-quick-view {
      width: var(--btn-size-width);
      max-width: var(--btn-size-max-width);
      pointer-events: auto;

      @media (max-width: 991px) {
        width: var(--btn-size-width-mb);
        max-width: var(--btn-size-max-width-mb);
      }

      @media (hover: hover) {
        opacity: 0;
        visibility: hidden;
        transform: var(--product-card-quick-actions-transform-default);
        transition: all var(--trans-duration) var(--trans-ease-smooth);
        transition-delay: 0s;

        @media (max-width: 991px) {
          transform: var(
            --product-card-quick-actions-transform-default-mb,
            var(--product-card-quick-actions-transform-default)
          );
        }
      }
    }

    .product-card-quick-view {
      @media (max-width: 991px) {
        display: none;
      }
    }
  }

  /* Hover logic */
  .product-card {
    @media (hover: hover) {
      &:hover {
        .product-card-media {
          &.hide-on-hover {
            opacity: 0;
            visibility: hidden;
          }

          .product-card-media-hover {
            visibility: visible;
            opacity: 1;
            transform: var(--product-card-media-hover-overlay-transform-hover);
          }

          .product-card-media-gallery {
            .embla {
              .embla__snip-dots {
                opacity: 1;
                visibility: visible;
              }
            }
          }

          .product-card-media-second {
            opacity: 1;
            visibility: visible;
          }

          .product-card-quick-view,
          .product-card-quick-add {
            opacity: 1;
            visibility: visible;
            transform: var(--product-card-quick-actions-transform-hover);

            @media (max-width: 991px) {
              transform: var(
                --product-card-quick-actions-transform-hover-mb,
                var(--product-card-quick-actions-transform-hover)
              );
            }
          }
        }
      }
    }
  }
/* END_SNIPPET:snip_product_card_media */

/* START_SNIPPET:snip_product_card_media_gallery (INDEX:535) */
.product-card-media-gallery {
    display: block;
    height: 100%;
    width: 100%;

    .gallery {
      height: 100%;
      width: 100%;
      position: relative;

      .gallery__viewport {
        height: 100%;
        width: 100%;
        overflow: hidden;
      }

      .gallery__container {
        width: 100%;
        height: 100%;

        position: relative;

        display: flex;
        flex-direction: var(--product-card-media-embla-container-flex-direction, row);
        flex-wrap: nowrap;

        will-change: transform;
        transform: translate3d(0);
        transition: transform 0.3s ease-in-out;
      }

      .gallery__slide {
        flex-shrink: 0;
        flex: 0 0 100%;
        max-width: 100%;

        position: var(--gallery-slide-position);
        inset: 0;
        opacity: var(--gallery-slide-opacity);
        visibility: var(--gallery-slide-visibility);
        z-index: var(--gallery-slide-z-index);
        transition: all var(--trans-duration) var(--trans-easing);

        &:first-child {
          opacity: 1;
          visibility: visible;
          z-index: 1;
        }
      }

      .product-card-media-slide-item {
        display: block;
        width: 100%;
        height: 100%;
        position: relative;
        background: var(--product-card-media-bg-surface);

        .product-card-media-slide-image {
          width: 100%;
          height: 100%;
          position: relative;

          img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            object-position: center;
          }
        }
      }

      .embla__snip-dots {
        position: absolute;
        top: 1rem;
        right: 1rem;
        margin-top: 0;
        z-index: 11;
        opacity: 0;
        visibility: hidden;
        transition: all var(--trans-duration) var(--trans-easing);
      }

      .product-card-grid-overlay-container {
        position: absolute;
        inset: 0;
        display: flex;
        flex-direction: var(--product-card-media-embla-container-flex-direction, row);
        pointer-events: none;
        z-index: 10;

        .product-card-grid-zone {
          flex: 1;
          pointer-events: all;
          cursor: pointer;
        }
      }
    }
  }
/* END_SNIPPET:snip_product_card_media_gallery */

/* START_SNIPPET:snip_product_card_mini (INDEX:536) */
.product-card-mini {
    width: 100%;
    display: block;
    height: auto;

    .product-card-mini-inner {
      width: 100%;
      position: relative;
      border-radius: var(--pcm-radius, var(--radius-new-x-small));
      overflow: hidden;

      .product-card-mini-content {
        width: 100%;
        padding-inline: var(--pcm-pd-inline);
        padding-block: var(--pcm-pd-block);

        .product-card-mini-content-inner {
          width: 100%;
          display: flex;
          align-items: center;
          column-gap: 0.5rem;

          .product-card-mini-media {
            display: var(--pcm-media-display, flex);
            align-items: center;
            justify-content: center;
            flex-shrink: 0;
            width: 3.75rem;
            aspect-ratio: 1 / 1;
            border-radius: var(--radius-new-small);
            overflow: hidden;
            position: relative;

            @media (max-width: 991px) {
              display: var(--pcm-media-display-mb);
            }

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

          .product-card-mini-info {
            text-align: var(--pcm-info-text-align, left);
            align-self: center;
            flex: 1;
            display: flex;
            flex-direction: column;
            row-gap: 0.25rem;

            @media (max-width: 991px) {
              text-align: var(--pcm-info-text-align-mb);
            }
            .product-card-mini-price {
              display: var(--pcm-price-display, block);
              @media (max-width: 991px) {
                display: var(--pcm-price-display-mb);
              }
            }
          }
        }
      }

      .product-card-mini-bg {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        background: var(--pcm-bg, var(--color-background));
        border-radius: var(--pcm-radius, var(--radius-new-x-small));
        z-index: -1;
      }
    }
  }
/* END_SNIPPET:snip_product_card_mini */

/* START_SNIPPET:snip_product_card_overlay_top (INDEX:537) */
.product-card-overlay-top {
    width: calc(100% - 3.5rem);
    position: absolute;
    inset-inline: 0;
    top: 0;
    z-index: 3;
    pointer-events: none;

    .product-card-overlay-top-inner {
      padding-block: 1rem;
      padding-inline: 1rem;

      display: flex;
      align-items: center;
      justify-content: space-between;
      column-gap: 0.25rem;

      @media (max-width: 991px) {
        padding-block: 0.75rem;
        padding-inline: 0.75rem;
      }

      .product-card-badges {
        display: flex;
        align-items: center;
        flex-wrap: wrap;
        gap: 0.25rem;
        transition: all var(--trans-duration) var(--trans-easing);
      }
    }
  }
/* END_SNIPPET:snip_product_card_overlay_top */

/* START_SNIPPET:snip_product_card_price (INDEX:538) */
.product-card-price {
    .product-card-price-content {
      display: flex;
      justify-content: var(--product-card-info-alignment);
      gap: 0.5rem;
      @media (max-width: 991px) {
        gap: 0.25rem;
      }
    }

    .price-wrapper {
      display: flex;
      align-items: center;
      column-gap: 0.25rem;
      white-space: nowrap;
      flex-wrap: wrap;

      @media screen and (max-width: 991px) {
        flex-direction: column;
        align-items: var(--product-card-info-alignment);
        text-align: var(--product-card-info-alignment);
      }

      .price-range-label {
        display: var(--product-card-info-price-range-label-display);
        @media screen and (max-width: 991px) {
          display: var(--product-card-info-price-range-label-display-mb);
        }
      }
    }

    .unit-price-wrapper {
      display: var(--product-card-info-unit-price-display);
      margin-inline-start: var(--product-card-info-unit-price-mg-start);
      @media screen and (max-width: 991px) {
        display: var(--product-card-info-unit-price-display-mb);
      }
    }
  }
/* END_SNIPPET:snip_product_card_price */

/* START_SNIPPET:snip_product_card_swatch (INDEX:539) */
.product-card-swatch-wrap {
    flex: none;
    position: relative;
    width: var(--variant-picker-swatch-size);
    height: var(--variant-picker-swatch-size);

    &.unavailable {
      .product-card-swatch {
        .color-swatch-strikethrough {
          display: block;
        }
      }

      .color-swatch-inner {
        opacity: 0.5;
      }
    }

    &.color-swatch-radio {
      cursor: pointer;
    }
  }

  .product-card-swatch {
    width: 100%;
    height: 100%;

    display: flex;
    align-items: center;
    justify-content: center;

    overflow: hidden;
    border-radius: var(--variant-picker-swatch-border-radius);
    background-color: var(--color-surface-alt);

    outline: solid max(1px, 0.1rem) transparent;
    outline-offset: calc(max(1px, 0.1rem) * -1);

    padding-block: 0.125rem;
    padding-inline: 0.125rem;

    transition: all var(--trans-duration) var(--trans-easing);

    .color-swatch-strikethrough {
      display: none;
      width: 100%;
      height: 100%;
      position: absolute;
      z-index: 1;
      border-radius: var(--variant-picker-swatch-border-radius);
      overflow: hidden;
      svg {
        color: var(--color-foreground_60);
      }
    }

    .color-swatch-inner {
      width: 100%;
      height: 100%;
      flex: none;
      border-radius: var(--variant-picker-swatch-border-radius);
      &.color-swatch-inner--color {
        outline: solid max(1.5px, 0.09375rem) var(--color-border-default);
        outline-offset: calc(max(1.5px, 0.09375rem) * -1);
        background: var(--color-swatch-bg);
      }
      &.color-swatch-inner--image {
        background: var(--color-swatch-bg);
        background-size: cover;
        background-position: 50%;
        background-repeat: no-repeat;
      }
    }
  }

  .radio-swatch {
    position: relative;
    cursor: pointer;
    /* Reset <button> browser defaults when used as fallback */
    &:is(button, div) {
      appearance: none;
      background: none;
      border: none;
      padding: 0;
      font: inherit;
      color: inherit;
    }
    .radio-swatch-input {
      position: absolute;
      inset: 0;
    }
    &:not(:has(:disabled, .disabled)):hover {
      .radio-icon {
        border-color: var(--radio-border-color-hover);
      }
      .radio-label {
        color: var(--color-foreground);
      }
    }
    &:has(.radio-swatch-input:checked) {
      .product-card-swatch {
        outline-color: var(--color-border-hover);
      }
    }
    &:has(:disabled, .disabled) {
      cursor: not-allowed;
    }
  }
/* END_SNIPPET:snip_product_card_swatch */

/* START_SNIPPET:snip_product_card_title (INDEX:540) */
.product-card-title {
    font-weight: var(--font-weight-medium);
    color: var(--color-text-title);

    .product-card-title-link {
      display: flex;
      justify-content: var(--product-card-info-alignment);
      position: relative;

      .product-card-title-text {
        max-width: 100%;
        width: 100%;
        display: block;
        position: relative;
        overflow: hidden;

        .product-card-title-text-inner {
          display: -webkit-box;
          -webkit-box-orient: vertical;
          overflow: hidden;
          transition: transform var(--trans-duration) var(--trans-easing);
          transform: translateY(0);
        }

        &::after {
          content: attr(data-text);
          position: absolute;
          top: 0;
          left: 0;
          width: 100%;
          height: 100%;
          display: -webkit-box;
          -webkit-box-orient: vertical;
          overflow: hidden;
          transform: translateY(100%);
          transition: transform var(--trans-duration) var(--trans-easing);
        }
      }

      @media (hover: hover) {
        &:hover {
          .product-card-title-text-inner {
            transform: translateY(-100%);
          }

          .product-card-title-text::after {
            transform: translateY(0);
          }
        }
      }
    }
  }
/* END_SNIPPET:snip_product_card_title */

/* START_SNIPPET:snip_product_card_variant_picker (INDEX:541) */
.product-card-info-variants {
    width: 100%;
    position: relative;

    .color-variants {
      width: 100%;
      display: flex;
      align-items: center;
      justify-content: var(--product-card-info-alignment);
      column-gap: 0.25rem;

      .color-variants-inner {
        display: flex;
        align-items: center;
        justify-content: end;
        column-gap: 0.25rem;
      }
    }
  }
/* END_SNIPPET:snip_product_card_variant_picker */

/* START_SNIPPET:snip_product_countdown_timer_v2 (INDEX:542) */
.product-countdown-timer-v2 {
    display: block;

    &:not(:has(.product-countdown-timer-inner)) {
      display: none;
    }

    .product-countdown-timer-content-inner {
      display: flex;
      justify-content: space-between;
      align-items: center;

      @media screen and (max-width: 991px) {
        flex-direction: column;
        align-items: flex-start;
        row-gap: 0.5rem;
      }
    }
  }
/* END_SNIPPET:snip_product_countdown_timer_v2 */

/* START_SNIPPET:snip_product_form_tag (INDEX:544) */
product-form {
    display: block;
  }
/* END_SNIPPET:snip_product_form_tag */

/* START_SNIPPET:snip_product_general_information (INDEX:545) */
.product-general-information {
    /* display: flex;
    align-items: stretch; */
    .accordion-inner {
      position: relative;
      height: 100%;
    }
    .accordion-content {
      position: relative;
      z-index: 2;
      width: 100%;
    }
    .accordion-content-inner {
      position: relative;
    }
  }
/* END_SNIPPET:snip_product_general_information */

/* START_SNIPPET:snip_product_header (INDEX:546) */
.product-info-header-v2 {
    /* Content top: vendor + badges */
    .product-info-header-content-top {
      display: flex;
      justify-content: space-between;
      align-items: center;
      margin-block-end: 0.25rem;
    }

    /* Title */
    .product-info-header-title {
      color: var(--color-text-title);
      margin-block-end: 0.25rem;

      .product-info-header-title-link {
        display: flex;
        justify-content: var(--product-card-info-alignment);
        position: relative;

        .product-info-header-title-text {
          max-width: 100%;
          width: 100%;
          display: block;
          position: relative;
          overflow: hidden;

          .product-info-header-title-text-inner {
            display: -webkit-box;
            -webkit-box-orient: vertical;
            overflow: hidden;
            transition: transform var(--trans-duration) var(--trans-easing);
            transform: translateY(0);
          }

          &::after {
            content: attr(data-text);
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            display: -webkit-box;
            -webkit-box-orient: vertical;
            overflow: hidden;
            transform: translateY(100%);
            transition: transform var(--trans-duration) var(--trans-easing);
          }
        }

        @media (hover: hover) {
          &:hover {
            .product-info-header-title-text-inner {
              transform: translateY(-100%);
            }

            .product-info-header-title-text::after {
              transform: translateY(0);
            }
          }
        }
      }
    }

    /* Price column + rating */
    .product-info-header-content-columns {
      display: flex;
      justify-content: space-between;
      align-items: flex-start;
      margin-block-start: 0.625rem;

      @media screen and (max-width: 991px) {
        flex-direction: column;
        align-items: flex-start;
        row-gap: 0.5rem;
      }
    }

    .product-price {
      display: flex;
      align-items: center;
      column-gap: 0.5rem;
      font-weight: var(--font-weight-medium);

      .unit-price-wrapper {
        display: flex;
        align-items: center;
        column-gap: 0.5rem;
      }
    }

    .product-taxes-notice {
      margin-block-start: 0.25rem;
    }

    /* Divider before description */
    .product-info-header-divider {
      width: 100%;
      height: 1px;
      background-color: var(--color-border-default);
      margin-block-start: 0.75rem;
      margin-block-end: 1.5rem;

      @media screen and (max-width: 991px) {
        margin-block-end: 1rem;
      }
    }

    /* Description expand */
    .product-description-body-wrap {
      .content-expand-button {
        .button-show-more:not(.hidden),
        .button-show-less:not(.hidden) {
          @media screen and (max-width: 991px) {
            margin-block-start: 1rem;
          }
        }
      }
    }
  }
/* END_SNIPPET:snip_product_header */

/* START_SNIPPET:snip_product_info_custom (INDEX:547) */
.product-info-custom-inner {
    height: 100%;
  }
/* END_SNIPPET:snip_product_info_custom */

/* START_SNIPPET:snip_product_info_divider (INDEX:548) */
.product-info-divider {
    grid-column: span 2;
    display: var(--divider-display);
    width: 100%;
    height: 1px;
    background-color: var(--color-border-default);

    margin-block-end: var(--pid-flex-gap, var(--info-flex-gap));

    @media (max-width: 991px) {
      margin-block-end: var(--pid-flex-gap-mb, var(--info-flex-gap-mb));
    }
  }
/* END_SNIPPET:snip_product_info_divider */

/* START_SNIPPET:snip_product_info_divider_outside (INDEX:549) */
.product-info-divider-outside {
    grid-column: span 2;
    display: var(--divider-display);
    width: 100%;
    height: 1px;
    background-color: var(--color-border-default);
  }
/* END_SNIPPET:snip_product_info_divider_outside */

/* START_SNIPPET:snip_product_information_model (INDEX:552) */
.product-information-model {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 4;
    width: 100%;
    height: 100%;

    .shopify-model-viewer-ui {
      width: 100%;
      height: 100%;
    }

    .shopify-model-viewer-ui model-viewer {
      width: 100%;
      height: 100%;

      &:focus-visible,
      .userInput:focus-visible {
        outline: none;
      }
    }

    .deferred-media-play {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      z-index: 2;

      display: flex;
      align-items: center;
      justify-content: center;

      cursor: pointer;

      &.force-hide {
        opacity: 0;
        pointer-events: none;
      }
    }
  }
/* END_SNIPPET:snip_product_information_model */

/* START_SNIPPET:snip_product_information_video (INDEX:553) */
.product-information-video {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 4;
    width: 100%;
    height: 100%;

    iframe,
    video {
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center;
    }

    .deferred-media-play {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      z-index: 2;

      display: flex;
      align-items: center;
      justify-content: center;

      opacity: 1;
      visibility: visible;
      transition: all var(--trans-duration) var(--trans-easing);
      pointer-events: auto;
      cursor: pointer;

      &.force-hide {
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
      }
    }

    .deferred-media-toggle {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      z-index: 2;

      transition: all var(--trans-duration) var(--trans-easing);
      cursor: pointer;

      &.force-hide {
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
      }

      .icon-play,
      .icon-pause {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        opacity: 0;
        visibility: hidden;
        transition: opacity var(--trans-duration) var(--trans-easing);
        pointer-events: none;
        cursor: pointer;
        &.show {
          opacity: 1;
          visibility: visible;
          pointer-events: auto;
        }
      }

      .icon-pause {
        @media (hover: none) {
          display: none;
        }
      }
    }
  }
/* END_SNIPPET:snip_product_information_video */

/* START_SNIPPET:snip_product_inventory_status (INDEX:554) */
.product-inventory-status-v2 {
    display: block;

    &:not(:has(.product-inventory-status-inner)) {
      display: none;
    }

    .product-inventory-status-progress {
      display: flex;
      flex-direction: row;
      flex-wrap: nowrap;
      align-items: center;
      gap: 1.5rem;

      @media (max-width: 991px) {
        flex-direction: column;
        gap: 1rem;
        align-items: flex-start;
      }

      .progress-line {
        width: 100%;
        flex: 1;
        height: 0.375rem;
        border-radius: var(--radius-new-pill);
        overflow: hidden;
        background-color: var(--color-border-disable);

        @media (max-width: 991px) {
          flex: auto;
        }

        .progress-line-percent {
          width: 0%;
          height: 100%;
          background-color: var(--color-foreground);
          border-radius: var(--radius-new-pill);
          animation: progressBarGrow var(--trans-duration) var(--trans-ease-smooth) forwards;
        }
      }
    }
  }

  @keyframes progressBarGrow {
    from {
      width: 0%;
    }
    to {
      width: var(--percent);
    }
  }
/* END_SNIPPET:snip_product_inventory_status */

/* START_SNIPPET:snip_product_item (INDEX:555) */
.banner-block-product {
    width: var(--product_item-size-width, 100%);
    max-width: var(--product_item-size-max-width, unset);
    height: fit-content;
    @media (max-width: 991px) {
      width: var(--product_item-size-width-mb, 100%);
      max-width: var(--product_item-size-max-width-mb, unset);
    }
  }

  .banner-block-product {
    .product-card {
      &.product-card-direction--horizontal {
        .product-card-inner {
          gap: 0.5rem;
          align-items: center;
          padding: 0.625rem;
          border-radius: var(--radius-new-small);

          .product-card-media {
            border-radius: var(--radius-new-2x-small);
          }
          .product-card-media-wrap {
            --media-size: 3.75rem;
            width: var(--media-size);
            height: var(--media-size);
            display: var(--product-card-show-product-image);
          }
          .product-card-info-wrap {
            .product-card-info-inner {
              padding-inline: 0;
              transform: translateY(0);

              .product-card-info-bottom {
                display: var(--product-card-show-price);
              }
              .product-card-info-quick-add-wrap {
                display: none;
              }
            }
          }
        }

        .product-card-info-name .txt-style-override {
          font-weight: var(--font-weight-medium);
        }
      }
    }

    .overlay--gradient {
      visibility: hidden;
    }
  }

  @media (max-width: 991px) {
    .banner-block-product {
      .product-card.product-card-direction--horizontal {
        .product-card-inner {
          padding-inline: var(--box-padding, 0.5rem);
          padding-block: var(--box-padding, 0.5rem);
          gap: 0.5rem;
        }
        .product-card-info-wrap {
          width: 100%;

          .product-card-info-inner {
            padding-inline: 0;
            gap: 0.25rem;

            .product-card-info-content {
              gap: 0.25rem;

              .product-card-info-name {
                font-size: 0.875rem;
                line-height: 1.4;
              }
            }

            .product-card-info-bottom {
              .product-card-info-price {
                font-size: 0.75rem;
                line-height: 1.3;
              }
            }

            .product-card-info-quick-add-wrap {
              display: none;
            }
          }
        }
      }
    }
  }
/* END_SNIPPET:snip_product_item */

/* START_SNIPPET:snip_product_recommendations_heading (INDEX:560) */
.title-product-recommendations {
    .title-product-recommendations-inner {
      position: relative;
      height: 100%;
      width: 100%;
    }
    strong {
      font-weight: 600;
    }
  }
/* END_SNIPPET:snip_product_recommendations_heading */

/* START_SNIPPET:snip_product_recommendations_v2 (INDEX:562) */
/* .product-recommendations {
    &:not(:has(.product-recommendations-card)) {
      display: none;
    }
  } */
/* END_SNIPPET:snip_product_recommendations_v2 */

/* START_SNIPPET:snip_product_vendor (INDEX:565) */
.product-vendor {
    display: flex;
    align-items: center;
    justify-content: var(--product-card-info-alignment, flex-start);
    column-gap: 0.25rem;
    flex-wrap: wrap;
  }
/* END_SNIPPET:snip_product_vendor */

/* START_SNIPPET:snip_quick_view_details (INDEX:568) */
.quick-view-details {
    position: relative;

    .quick-view-details-inner {
      height: 100%;
      position: relative;
      margin-inline-end: calc(-1 * var(--modals-default-padding));
      padding-inline-end: var(--modals-default-padding);
    }

    .quick-view-details-content {
      height: 100%;
      display: flex;

      @media (max-width: 991px) {
        height: auto;
      }
    }

    .quick-view-details-bg {
      pointer-events: none;
      position: absolute;
      z-index: -1;
      inset: 0;
    }

    .quick-view-full-details-link {
      width: 100%;
      text-align: center;
      .link-block {
        width: 100%;
        height: 100%;
        .link-block-inner {
          width: 100%;
          height: 100%;
          justify-content: center;
        }
      }
    }
  }
/* END_SNIPPET:snip_quick_view_details */

/* START_SNIPPET:snip_quick_view_dialog (INDEX:569) */
quick-view-dialog {
    display: contents;
  }

  .quick-view-dialog-popup {
    width: 75rem;
    max-width: calc(100vw - var(--modals-default-margin) * 2);
    height: fit-content;
    max-height: 90dvh;
    position: fixed !important;
    inset: 0;
    margin: auto;
    padding: 0;
    border-radius: var(--modals_default-radius);
    border: none;
    z-index: 1000;

    --dialog-duration-animation: var(--trans-duration);
    --dialog-timing-animation: cubic-bezier(0.77, 0, 0.18, 1);
    --dialog-opening-animation: zoom-in-fade var(--dialog-duration-animation) var(--dialog-timing-animation) forwards;
    --dialog-closing-animation: zoom-out-fade var(--dialog-duration-animation) var(--dialog-timing-animation) forwards;
    --dialog-opening-animation-mobile: fade-up var(--dialog-duration-animation) var(--dialog-timing-animation) forwards;
    --dialog-closing-animation-mobile: fade-down var(--dialog-duration-animation) var(--dialog-timing-animation)
      forwards;

    @media (max-width: 991px) {
      max-width: calc(100vw - var(--modals-default-margin-mb) * 2);
      max-height: calc(100dvh - (var(--modals-default-margin-mb) * 2));
      margin-block: auto var(--modals-default-margin-mb);
    }

    &:focus-visible {
      outline: none;
    }

    .popup-inner {
      width: 100%;
      height: fit-content;
      max-height: inherit;
      border-radius: var(--modals_default-radius);
      overflow: hidden;
      position: relative;

      .popup-content {
        width: 100%;
        padding: var(--modals-default-padding);
        position: relative;
        z-index: 2;

        @media (max-width: 768px) {
          padding: var(--modals-default-padding-mb);
        }

        &.custom-scroll-mb {
          @media (max-width: 768px) {
            overflow-x: hidden;
            overflow-y: auto;
            height: calc(100dvh - (var(--modals-default-margin-mb) * 2));
          }
        }
      }
    }

    .popup-bg {
      position: absolute;
      z-index: 1;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-color: var(--color-background);
    }

    &::backdrop {
      background: var(--modals-default-backdrop-color);
    }

    &[open] {
      animation: var(--dialog-opening-animation);
      @media (max-width: 768px) {
        animation: var(--dialog-opening-animation-mobile, var(--dialog-opening-animation));
      }
      &::backdrop {
        animation: fade-in 0.6s cubic-bezier(0.7, 0, 0.2, 1) forwards;
      }
    }

    &.dialog-closing {
      animation: var(--dialog-closing-animation);
      @media (max-width: 768px) {
        animation: var(--dialog-closing-animation-mobile, var(--dialog-closing-animation));
      }
      &::backdrop {
        animation: fade-out 0.6s cubic-bezier(0.7, 0, 0.2, 1) forwards;
      }
    }
  }

  .quick-view-dialog-body {
    display: block;
    height: 48rem;
    max-height: calc(90dvh - 8rem);

    @media (max-width: 991px) {
      height: 100%;
      max-height: unset;
    }

    .quick-view-dialog-body-inner {
      position: relative;
      height: 100%;

      @media (max-width: 991px) {
        height: auto;
      }

      .quick-view-dialog-content {
        height: 100%;
        display: flex;
        align-items: stretch;

        @media (max-width: 991px) {
          height: auto;
        }

        &.content-loaded {
          animation: fade-in var(--trans-duration) var(--trans-easing) forwards;
        }
      }
    }
  }
/* END_SNIPPET:snip_quick_view_dialog */

/* START_SNIPPET:snip_quick_view_header (INDEX:570) */
.quick-add-header {
    /* Content top: vendor */
    .product-info-header-content-top {
      margin-block-end: 0.25rem;
    }

    .product-vendor {
      justify-content: flex-start;
    }

    /* Title */
    .product-info-header-title {
      color: var(--color-text-title);
      margin-block-end: 0.25rem;
    }

    /* Price column + rating */
    .product-info-header-content-columns {
      display: flex;
      justify-content: space-between;
      align-items: flex-start;
      margin-block-start: 0.625rem;

      @media screen and (max-width: 991px) {
        flex-direction: column;
        align-items: flex-start;
        row-gap: 0.5rem;
      }
    }

    .product-price {
      display: flex;
      align-items: center;
      column-gap: 0.5rem;
      font-weight: var(--font-weight-medium);

      .unit-price-wrapper {
        display: flex;
        align-items: center;
        column-gap: 0.5rem;
      }
    }

    .product-taxes-notice {
      margin-block-start: 0.25rem;
    }

    /* Divider before description */
    .product-info-header-divider {
      width: 100%;
      height: 1px;
      background-color: var(--color-border-default);
      margin-block-start: 0.75rem;
      margin-block-end: 1.5rem;

      @media screen and (max-width: 991px) {
        margin-block-end: 1rem;
      }
    }

    /* Description expand */
    .product-description-body-wrap {
      .content-expand-button {
        .button-show-more:not(.hidden),
        .button-show-less:not(.hidden) {
          @media screen and (max-width: 991px) {
            margin-block-start: 1rem;
          }
        }
      }
    }
  }
/* END_SNIPPET:snip_quick_view_header */

/* START_SNIPPET:snip_quick_view_toggle (INDEX:573) */
quick-view-toggle {
    cursor: pointer;
    display: contents;
  }
/* END_SNIPPET:snip_quick_view_toggle */

/* START_SNIPPET:snip_radio (INDEX:574) */
.radio {
    --radio-border-width: max(1.5px, 0.09375rem);
    --radio-border-color-default: var(--color-foreground_60);
    --radio-border-color-hover: var(--color-foreground);
    --radio-border-color-checked: var(--color-foreground);
    --radio-border-color-disabled: var(--color-foreground_20);

    width: 100%;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    cursor: pointer;

    .radio-input {
      width: 0.875rem;
      height: 0.875rem;
      margin: 0;
      opacity: 0;
      position: absolute;
    }
    .radio-input:focus-visible ~ .radio-icon {
      outline: 2px solid var(--color-keyboard-focus-visible);
      outline-offset: 2px;
    }
    .radio-icon {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 0.875rem;
      height: 0.875rem;
      border: var(--radio-border-width) solid var(--radio-border-color-default);
      border-radius: var(--radius-new-pill);
      background: transparent;
      position: relative;
      pointer-events: none;
      transition: all var(--trans-duration) var(--trans-easing);
      .radio-checked-icon {
        width: calc(100% - 0.125rem);
        height: calc(100% - 0.125rem);
        border-radius: var(--radius-new-pill);
        background-color: var(--radio-border-color-checked);
        opacity: 0;
        position: absolute;
        transition: opacity var(--trans-duration) var(--trans-easing);
      }
    }
    .radio-label {
      transition: color var(--trans-duration) var(--trans-easing);
    }
    &:not(:has(:disabled, .disabled)):hover {
      .radio-icon {
        border-color: var(--radio-border-color-hover);
      }
      .radio-label {
        color: var(--color-foreground);
      }
    }
    &:has(.radio-input:checked) {
      .radio-icon {
        border-color: var(--radio-border-color-checked);
        .radio-checked-icon {
          opacity: 1;
        }
      }
    }
    &:has(:disabled, .disabled) {
      cursor: not-allowed;
      .radio-icon {
        border-color: var(--radio-border-color-disabled);
      }
      .radio-label {
        color: var(--radio-border-color-disabled);
      }
    }
  }
/* END_SNIPPET:snip_radio */

/* START_SNIPPET:snip_rating (INDEX:575) */
.rating-wrapper {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    .rating {
      display: flex;
      align-items: center;
      gap: 0.125rem;
      svg {
        width: 1rem;
        height: 1rem;
        &.rating-star-filled {
          color: var(--color-foreground);
        }
        &:not(.rating-star-filled) {
          color: var(--color-foreground);
        }
      }
    }
    .rating-count {
      display: flex;
      align-items: center;
      gap: 0.25rem;
      line-height: 1;
      .rating-count-separator {
        font-weight: 400;
        color: var(--color-text-divider);
      }
    }
  }
/* END_SNIPPET:snip_rating */

/* START_SNIPPET:snip_results_listing (INDEX:578) */
.collection-page-listing {
    display: flex;
    align-items: stretch;
    .collection-page-listing-inner {
      position: relative;
      width: 100%;
      display: flex;
      align-items: stretch;
      contain: layout style var(--sc-overflow-contain);
    }
    .collection-page-listing-content {
      position: relative;
      z-index: 2;
      width: 100%;
    }
    .collection-page-listing-content-inner {
      position: relative;
    }
    .collection-page-listing-bg {
      pointer-events: none;
      position: absolute;
      z-index: 1;
      inset: 0;
    }
    .collection-page-grid-items {
      --column-counts: 4;
    }
  }
/* END_SNIPPET:snip_results_listing */

/* START_SNIPPET:snip_richtext (INDEX:579) */
.text-custom {
    .text-custom-inner {
      position: relative;
      height: 100%;
      width: 100%;
    }
    strong {
      font-weight: 600;
    }
  }
/* END_SNIPPET:snip_richtext */

/* START_SNIPPET:snip_sbc_list_content (INDEX:581) */
.sbc-list-content {
    display: flex;
    @media (max-width: 991px) {
      display: contents;
    }
    .sbc-lc-inner {
      width: 100%;
      display: flex;
      align-items: stretch;
      @media (max-width: 991px) {
        display: contents;
      }
    }
    .sbc-lc-content {
      z-index: 2;
      width: 100%;
      @media (max-width: 991px) {
        display: contents;
      }
    }
    .sbc-lc-content-inner {
      @media (max-width: 991px) {
        display: contents;
      }
    }
    /* Mobile carousel styles */
    .sbc-slider-mobile {
      width: fit-content;
      max-width: 100%;
      .embla__viewport {
        contain: layout style;
      }
      .embla__container {
        display: flex;
      }
      .sbc-collection-item {
        contain: layout style;
        flex: 0 0 auto;
        min-width: 0;
      }
    }
  }
/* END_SNIPPET:snip_sbc_list_content */

/* START_SNIPPET:snip_sc_cart_empty (INDEX:583) */
.cart-empty-section {
    display: flex;
    align-items: stretch;
    cart-empty {
      width: 100%;
      display: flex;
      align-items: stretch;
    }
    .cart-empty-inner {
      position: relative;
      contain: layout style var(--sc-overflow-contain);
      width: 100%;
      display: flex;
      align-items: stretch;
    }
    .cart-empty-content {
      position: relative;
      z-index: 2;
      width: 100%;
    }
    .cart-empty-content-inner {
      position: relative;
      .cart-empty-heading {
        .cart-empty-heading-content-inner {
          display: flex;
          flex-direction: column;
          align-items: center;
          justify-content: center;
          text-align: center;
          gap: 1rem;

          @media (max-width: 991px) {
            gap: 0.5rem;
          }
        }

        .cart-empty-button {
          margin-block-start: 1rem;
        }
      }
    }
    .cart-empty-bg {
      pointer-events: none;
      position: absolute;
      z-index: 1;
      inset: 0;
    }
  }
  .shopify-section:has(.cart-empty-section):not(:has(.cart-empty-inner)) {
    display: none;
  }
/* END_SNIPPET:snip_sc_cart_empty */

/* START_SNIPPET:snip_sc_cart_recommendation (INDEX:584) */
cart-recommendation {
    width: 100%;
    display: flex;
    align-items: stretch;
  }
  .cart-recommendation-section {
    display: flex;
    align-items: stretch;
    cart-empty {
      width: 100%;
      display: flex;
      align-items: stretch;
    }
    .cart-recommendation-inner {
      position: relative;
      contain: layout style var(--sc-overflow-contain);
      width: 100%;
      display: flex;
      align-items: stretch;
    }
    .cart-recommendation-content {
      position: relative;
      z-index: 2;
      width: 100%;
    }
    .cart-recommendation-content-inner {
      position: relative;
    }
    .cart-recommendation-bg {
      pointer-events: none;
      position: absolute;
      z-index: 1;
      inset: 0;
    }
  }
  .shopify-section:has(.cart-recommendation-section):not(:has(.cart-recommendation-inner)) {
    display: none;
  }
/* END_SNIPPET:snip_sc_cart_recommendation */

/* START_SNIPPET:snip_sc_custom (INDEX:585) */
.sc-custom {
    display: block;
    .sc-custom-inner {
      position: relative;
      contain: layout style paint;
    }
    .sc-custom-content {
      position: relative;
      z-index: 2;
    }
    .sc-custom-content-inner {
      position: relative;
    }
    .sc-custom-bg {
      pointer-events: none;
      position: absolute;
      z-index: 1;
      inset: 0;
    }
  }
/* END_SNIPPET:snip_sc_custom */

/* START_SNIPPET:snip_sc_default (INDEX:586) */
.sc-default {
    display: block;
    &[data-visual-preview-mode] {
      .sc-default-bg {
        background-color: var(--color-background) !important;
      }
    }
    .sc-default-inner {
      position: relative;
    }
    .sc-default-content {
      position: relative;
      z-index: 2;
      display: flex;
      align-items: stretch;
    }
    .sc-default-content-inner {
      width: 100%;
      position: relative;
    }
    .sc-default-bg {
      pointer-events: none;
      position: absolute;
      z-index: 1;
      inset: 0;
    }
  }
/* END_SNIPPET:snip_sc_default */

/* START_SNIPPET:snip_sc_heading_description (INDEX:587) */
.sc-page-heading-description {
    .sc-page-heading-description-inner {
      position: relative;
      height: 100%;
      width: 100%;
    }
    strong {
      font-weight: 600;
    }
  }
/* END_SNIPPET:snip_sc_heading_description */

/* START_SNIPPET:snip_sc_heading_title (INDEX:588) */
.sc-page-heading-title {
    .sc-page-heading-title-inner {
      position: relative;
      height: 100%;
      width: 100%;
    }
    strong {
      font-weight: 600;
    }
  }
/* END_SNIPPET:snip_sc_heading_title */

/* START_SNIPPET:snip_sc_main_product (INDEX:589) */
.sc-main-product {
    display: block;
    .sc-main-product-inner {
      position: relative;
      contain: paint;
    }
    .sc-main-product-content {
      position: relative;
      z-index: 2;
      display: flex;
      align-items: stretch;
    }
    .sc-main-product-content-inner {
      width: 100%;
      position: relative;
    }
    .sc-main-product-bg {
      pointer-events: none;
      position: absolute;
      z-index: 1;
      inset: 0;
    }
  }
/* END_SNIPPET:snip_sc_main_product */

/* START_SNIPPET:snip_sc_main_product_quick_view (INDEX:590) */
.sc-main-quick-view {
    display: block;
    width: 100%;
    height: 100%;
    @media (max-width: 991px) {
      height: auto;
    }

    .sc-main-quick-view-inner {
      width: 100%;
      height: 100%;

      @media (max-width: 991px) {
        height: auto;
      }
    }
  }
/* END_SNIPPET:snip_sc_main_product_quick_view */

/* START_SNIPPET:snip_search_drawer_pills_list (INDEX:594) */
.predictive-search-pills {
    padding-block-end: 1rem;
    border-bottom: var(--1px) solid var(--color-border-default);

    .predictive-search-pills-title {
      margin-block-end: 1rem;
    }
    .predictive-search-pills-list {
      display: flex;
      flex-wrap: wrap;
      flex-direction: row;
      gap: 0.25rem;

      .predictive-search-pill-item {
        .predictive-search-pill-item-link {
          --predictive-search-pill-item-link-min-height: 1.75rem;
          min-height: var(--predictive-search-pill-item-link-min-height);
          display: flex;
          align-items: center;
          justify-content: center;
          border-radius: min(
            calc(var(--predictive-search-pill-item-link-min-height) / 2),
            var(--radius-button-input-theme-st)
          );
          background: linear-gradient(var(--color-foreground_04), var(--color-foreground_04)),
            linear-gradient(var(--color-background), var(--color-background));
          border: none;
          padding-inline: 0.5rem;
          padding-block: 0.275rem;

          display: flex;
          justify-content: space-between;
          align-items: center;

          .text-custom-inner {
            transition: color var(--trans-duration) var(--trans-easing);
            mark {
              color: var(--color-primary);
              background-color: var(--color-surface);
            }
          }
        }
      }

      &:has(.predictive-search-pill-item:hover, .predictive-search-pill-item-link:focus-visible) {
        .predictive-search-pill-item:not(:hover):not(:has(.predictive-search-pill-item-link:focus-visible)) {
          .predictive-search-pill-item-link {
            .text-custom-inner {
              color: var(--color-text-disabled);
            }
          }
        }
      }
    }
  }
/* END_SNIPPET:snip_search_drawer_pills_list */

/* START_SNIPPET:snip_search_drawer_products_list (INDEX:595) */
.predictive-searched-products {
    .predictive-searched-products-title {
      padding-block-end: 1rem;
    }
    .predictive-searched-products-list {
      .predictive-searched-products-item {
        padding-block: 1rem;
        &:first-child {
          padding-block-start: 0;
        }
        &:not(:last-child) {
          border-bottom: var(--1px) solid var(--color-border-default);
        }
        .product-card.product-card-direction--horizontal {
          .product-card-inner {
            padding-inline: 0;
          }
        }
      }
    }
  }
/* END_SNIPPET:snip_search_drawer_products_list */

/* START_SNIPPET:snip_search_page_grid (INDEX:597) */
.search-page-grid {
    .search-page-grid-inner {
      position: relative;
      contain: paint;
    }
    .search-page-grid-content {
      position: relative;
      z-index: 2;
      display: flex;
      align-items: stretch;
    }
    .search-page-grid-content-inner {
      width: 100%;
      position: relative;
    }
    .search-page-grid-bg {
      pointer-events: none;
      position: absolute;
      z-index: 1;
      inset: 0;
    }
  }
/* END_SNIPPET:snip_search_page_grid */

/* START_SNIPPET:snip_search_product_card_mini (INDEX:599) */
.search-product-card-mini {
    width: 100%;
    display: block;
    height: auto;

    .product-card-mini-inner {
      width: 100%;
      position: relative;
      border-radius: var(--pcm-radius, var(--radius-new-x-small));
      overflow: hidden;

      .product-card-mini-content {
        width: 100%;
        padding-inline: 0;
        padding-block: 0;

        .product-card-mini-content-inner {
          width: 100%;
          display: flex;
          align-items: center;
          column-gap: 1rem;

          .product-card-mini-media {
            display: var(--pcm-media-display, flex);
            align-items: center;
            justify-content: center;
            flex-shrink: 0;
            width: 5.625rem;
            aspect-ratio: 4 / 5;
            border-radius: var(--radius-new-small);
            overflow: hidden;
            background-color: var(--color-surface-alt);
            position: relative;

            @media (max-width: 991px) {
              display: var(--pcm-media-display-mb);
            }

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

          .product-card-mini-info {
            text-align: var(--pcm-info-text-align, left);
            align-self: center;
            flex: 1;
            display: flex;
            flex-direction: column;
            row-gap: 0.25rem;

            @media (max-width: 991px) {
              text-align: var(--pcm-info-text-align-mb);
              white-space: nowrap;
              overflow: hidden;
            }

            @media (hover: hover) {
              transition: transform var(--trans-duration) var(--trans-ease-smooth);
              transform: translateY(calc((var(--input-height-medium) + 0.25rem) / 2));
            }

            .product-card-mini-title {
              @media (max-width: 991px) {
                overflow: hidden;
                text-overflow: ellipsis;
              }

              .product-card-mini-title-link {
                position: relative;
                display: block;

                .product-card-mini-title-text {
                  max-width: 100%;
                  width: 100%;
                  display: block;
                  position: relative;
                  overflow: hidden;

                  .product-card-mini-title-text-inner {
                    display: -webkit-box;
                    -webkit-box-orient: vertical;
                    overflow: hidden;
                    transition: transform var(--trans-duration) var(--trans-ease-smooth);
                    transform: translateY(0);
                    white-space: normal;
                  }

                  &::after {
                    content: attr(data-text);
                    position: absolute;
                    top: 0;
                    left: 0;
                    width: 100%;
                    height: 100%;
                    display: -webkit-box;
                    -webkit-box-orient: vertical;
                    overflow: hidden;
                    transform: translateY(100%);
                    transition: transform var(--trans-duration) var(--trans-ease-smooth);
                    white-space: normal;
                  }
                }

                @media (hover: hover) {
                  &:hover,
                  &:focus-visible {
                    .product-card-mini-title-text-inner {
                      transform: translateY(-100%);
                    }

                    .product-card-mini-title-text::after {
                      transform: translateY(0);
                    }
                  }
                }
              }
            }

            .product-card-mini-price {
              display: var(--pcm-price-display, block);
              @media (max-width: 991px) {
                display: var(--pcm-price-display-mb);
              }
            }

            .product-card-mini-actions {
              display: flex;
              column-gap: 0.25rem;
              margin-block-start: 0.75rem;
            }
          }
        }
      }

      .product-card-mini-bg {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        background: transparent;
        border-radius: var(--pcm-radius, var(--radius-new-x-small));
        z-index: -1;
      }
    }

    @media (hover: hover) {
      &:hover,
      &:has(a:focus-visible, button:focus-visible, input:focus-visible) {
        .product-card-mini-inner {
          .product-card-mini-content {
            .product-card-mini-content-inner {
              .product-card-mini-info {
                transform: translateY(0);
              }
            }
          }
        }
      }
    }
  }
/* END_SNIPPET:snip_search_product_card_mini */

/* START_SNIPPET:snip_search_result_tabs (INDEX:600) */
.page-result-tabs {
    display: flex;
    align-items: stretch;
    .page-result-tabs-inner {
      position: relative;
      width: 100%;
      display: flex;
      align-items: stretch;
    }
    .page-result-tabs-content {
      position: relative;
      z-index: 2;
      width: 100%;
    }
    .page-result-tabs-content-inner {
      position: relative;
    }
  }
/* END_SNIPPET:snip_search_result_tabs */

/* START_SNIPPET:snip_shipping_estimator (INDEX:602) */
.shipping-estimator {
    display: block;
    width: 100%;
  }

  .cart-shipping-estimate__form {
    .fieldset {
      display: flex;
      flex-direction: column;
      gap: var(--content-gap);
    }

    .button {
      margin-block-start: 0.75rem;
    }

    .cart-shipping-estimate__result {
      margin-block-start: 1rem;
      padding-block: 1.25rem;
      padding-inline: 1.25rem;
      border-radius: var(--radius-new-small);
      overflow: hidden;
      border: var(--1px) dashed var(--color-foreground_40);

      --color-red: rgba(255, 46, 18, 1);
      --color-green: rgba(56, 168, 106, 1);

      .estimate-result {
        display: block;
        position: relative;
        padding-inline-start: 1.25rem;
        &::before {
          content: '';
          position: absolute;
          inset: 0;
          top: 50%;
          transform: translateY(-50%);
          width: 0.375rem;
          height: 0.375rem;
          border-radius: var(--radius-new-pill);
        }
      }
      .estimate-result--success {
        &::before {
          background-color: var(--color-green);
        }
      }
      .estimate-result--failed {
        &::before {
          background-color: var(--color-red);
        }
      }
    }
  }
/* END_SNIPPET:snip_shipping_estimator */

/* START_SNIPPET:snip_shop_the_look_hotspot_v2 (INDEX:604) */
.shoptl-v2-hotspot {
    width: 0;
    height: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: var(--position-y);
    left: var(--position-x);
    z-index: 2;
    cursor: pointer;

    @media screen and (max-width: 991px) {
      top: var(--position-y-mb);
      left: var(--position-x-mb);
      z-index: 20;
    }

    .shoptl-v2-hotspot-outer {
      flex-shrink: 0;
      width: 2.8125rem;
      height: 2.8125rem;
      border-radius: 50%;
      background-color: rgba(255, 255, 255, 0.1);
      backdrop-filter: blur(0.4rem);

      display: flex;
      align-items: center;
      justify-content: center;

      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);

      @media screen and (max-width: 991px) {
        width: 2.125rem;
        height: 2.125rem;
      }

      .shoptl-v2-hotspot-inner {
        width: 2.3125rem;
        height: 2.3125rem;
        border-radius: 50%;
        background-color: var(--color-foreground_80);
        display: flex;
        align-items: center;
        justify-content: center;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        transition: all var(--trans-duration) var(--trans-easing);

        @media screen and (max-width: 991px) {
          width: 1.5rem;
          height: 1.5rem;
        }

        @media (hover: hover) {
          &:hover {
            & ~ .shoptl-v2-hotspot-tooltip {
              opacity: 1;
              visibility: visible;
              transform: translateX(-50%) translateY(0rem);
            }
          }
        }

        &:focus-visible {
          outline-offset: 0.25rem;
          & ~ .shoptl-v2-hotspot-tooltip {
            opacity: 1;
            visibility: visible;
            transform: translateX(-50%) translateY(0rem);
          }
        }

        .shoptl-v2-hotspot-text {
          font-size: var(--typo-paragraph-size);
          font-weight: var(--font-weight-semibold);
          color: var(--color-background);
          transition: all var(--trans-duration) var(--trans-easing);

          @media (max-width: 991px) {
            font-size: var(--typo-paragraph-size-mb);
          }
        }
      }

      .shoptl-v2-hotspot-pulse {
        position: absolute;
        width: 100%;
        height: 100%;
        border-radius: 50%;
        pointer-events: none;
        display: flex;
        justify-content: center;
        align-items: center;

        &::before,
        &::after {
          --border-width: var(--1px);
          content: '';
          position: absolute;
          inset: auto;
          width: calc(100% - var(--border-width) * 2);
          height: calc(100% - var(--border-width) * 2);
          border: var(--border-width) solid var(--color-foreground_80);
          border-radius: 100%;
          z-index: -1;
          animation: pulsing 2s ease-out infinite;
        }

        &::after {
          animation-delay: -0.4s;
        }
      }

      .shoptl-v2-hotspot-tooltip {
        --tooltip-spacing-bottom: 0.75rem;
        width: 15.125rem;
        position: absolute;
        bottom: calc(100% + var(--tooltip-spacing-bottom));
        left: 50%;

        cursor: default;

        opacity: 0;
        visibility: hidden;
        transform: translateX(-50%) translateY(0.5rem);
        transition: all var(--trans-duration) var(--trans-easing);

        display: flex;
        justify-content: center;

        @media (max-width: 991px) {
          display: none;
        }

        &::before {
          content: '';
          position: absolute;
          top: 100%;
          width: 0.75rem;
          height: 0.75rem;
          border-radius: max(1px, 0.1rem);
          background-color: var(--color-background);
          transform: translateY(-0.5rem) rotateZ(-45deg);
          clip-path: polygon(100% 100%, 0% 0%, 0% 100%);
        }
      }
    }

    &:hover,
    &.active {
      z-index: 2;
      .shoptl-v2-hotspot-outer {
        .shoptl-v2-hotspot-inner {
          background-color: var(--color-primary);
          .shoptl-v2-hotspot-text {
            color: white;
          }

          @media (max-width: 991px) {
            background-color: var(--color-foreground_80);
            .shoptl-v2-hotspot-text {
              color: var(--color-background);
            }
          }
        }
      }
    }
  }
  @keyframes pulsing {
    0% {
      opacity: 1;
      transform: scale(1);
      border-width: 1px;
    }
    100% {
      opacity: 0;
      transform: scale(2);
      border-width: calc(1px * 0.5);
    }
  }
/* END_SNIPPET:snip_shop_the_look_hotspot_v2 */

/* START_SNIPPET:snip_shopify_account (INDEX:606) */
.shopify-account-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
  }

  .shopify-account-wrap::part(signed-out-avatar) {
    line-height: var(--text-lh);
  }

  .account-button__avatar {
    border-radius: 0px;
  }
  .account-button__avatar:before {
    border-radius: 0px;
  }

  .header-v3 {
    /* account CTA — full-width filled button (shopify-account) */
    .header-account-drawer {
      display: none;
      @media (max-width: 991px) {
        display: block;
        padding-block-start: 1rem;
        border-top: var(--1px) solid var(--color-border-divider);
      }

      shopify-account,
      .shopify-account-wrap {
        display: block;
        width: 100%;
        height: auto;
      }

      /* Signed-out: style the slot as a primary CTA button */
      .shopify-account-wrap::part(signed-out-avatar) {
        width: 100%;
        height: var(--button-input-height-medium);
        padding: 0.5rem 0.75rem;
        background: var(--color-foreground);
        color: var(--button-type-primary-color);
        border-radius: var(--radius-button-input-theme-st);
        border: none;
        cursor: pointer;
        font-family: var(--typo-ff-body);
        font-size: var(--typo-paragraph-size);
        font-weight: var(--font-weight-regular);
        line-height: var(--typo-paragraph-lh);
        @media (max-width: 991px) {
          font-size: var(--typo-paragraph-size-mb);
          line-height: var(--typo-paragraph-lh-mb);
        }
      }
    }
  }
/* END_SNIPPET:snip_shopify_account */

/* START_SNIPPET:snip_size_chart_content (INDEX:607) */
.size-chart {
    display: flex;
    flex-direction: column;
    gap: var(--content-gutter);

    .bento-box {
      padding-block: 1rem;
      padding-inline: 1rem;
      background-color: var(--color-surface-alt);
      border-radius: var(--radius-new-small);

      @media screen and (max-width: 991px) {
        padding-block: 1rem;
        padding-inline: 1rem;
      }
    }

    .size-chart-content {
      table {
        width: 100%;
        border-collapse: collapse;
        margin: 0;
        overflow-x: auto;

        @media screen and (max-width: 991px) {
          display: block;
          width: 100%;
        }

        thead {
          th {
            padding-block: 1rem;
            padding-inline: 1rem;
            font-size: var(--typo-description-size);
            line-height: var(--typo-description-lh);
            color: var(--color-text-subtitle);
            font-weight: var(--font-weight-semibold);
            text-align: left;
            border-bottom: var(--1px) solid var(--color-border-default);

            @media (max-width: 991px) {
              font-size: var(--typo-description-size-mb);
              line-height: var(--typo-description-lh-mb);
            }
            @media screen and (max-width: 991px) {
              padding-inline: 0.5rem;
            }

            &:first-child {
              padding-inline-start: 0;
            }

            &:last-child {
              padding-inline-end: 0;
            }
          }
        }

        tbody {
          tr {
            border-bottom: var(--1px) solid var(--color-border-default);

            @media screen and (max-width: 991px) {
              padding-block: 1rem;
              border-bottom: var(--1px) solid var(--color-border-default);

              &:last-child {
                border-bottom: none;
              }
            }

            &:last-child {
              border-bottom: none;
            }
          }

          td {
            padding-block: 1rem;
            padding-inline: 1rem;
            font-size: var(--typo-description-size);
            line-height: var(--typo-description-lh);
            color: var(--color-text-title);
            font-weight: var(--font-weight-regular);
            text-align: left;

            @media (max-width: 991px) {
              font-size: var(--typo-description-size-mb);
              line-height: var(--typo-description-lh-mb);
            }
            @media screen and (max-width: 991px) {
              padding-inline: 0.5rem;
            }

            &:first-child {
              padding-inline-start: 0;
              font-weight: var(--font-weight-semibold);
              color: var(--color-text-subtitle);

              @media screen and (max-width: 991px) {
                font-size: var(--typo-label-size);
                line-height: var(--typo-label-lh);
              }
            }

            &:last-child {
              padding-inline-end: 0;
            }
          }
        }
      }

      h1,
      h2,
      h3,
      h4,
      h5,
      h6 {
        margin-block: 1rem 0.125rem !important;
      }

      h5,
      h6 {
        font-size: var(--typo-paragraph-size) !important;
        line-height: var(--typo-paragraph-lh) !important;
        font-weight: var(--font-weight-medium) !important;
        @media (max-width: 991px) {
          font-size: var(--typo-paragraph-size-mb) !important;
          line-height: var(--typo-paragraph-lh-mb) !important;
        }
      }
    }
  }
/* END_SNIPPET:snip_size_chart_content */

/* START_SNIPPET:snip_slideshow (INDEX:608) */
.slideshow-component {
    display: block;

    /* GPU compositing: isolate slide paint for both layout modes */
    .slide-item {
      contain: layout style paint;
    }

    /* Slider mode: container translates via Embla */
    &[data-anim-layout='true'] {
      .embla__container {
      }
    }

    &[data-anim-layout='false'] {
      .slide-item {
        /* Fade mode: promote each slide layer for fast opacity compositing */
        */ .media-bg-block {
          transition: transform 1000ms cubic-bezier(0.16, 1, 0.3, 1);
        }
      }
      &[data-anim-standard-effect='slide'] {
        .slide-item {
          .media-bg-block {
            transform-origin: right;
            transform: translateX(5%) scale(1.05);
          }
          &.is-snapped .media-bg-block {
            transform: translateX(0%) scale(1.05);
          }
        }
      }
      &[data-anim-standard-effect='scale'] {
        .slide-item {
          .media-bg-block {
            transform: scale(1.05);
          }
          &.is-snapped .media-bg-block {
            transform: scale(1);
          }
        }
      }
      &[data-anim-standard-effect='vertical'] {
        .slide-item {
          .media-bg-block {
            transform: translateY(-5%) scale(1.05);
            transform-origin: top;
          }
          &.is-snapped .media-bg-block {
            transform: translateY(0%) scale(1.05);
          }
        }
      }
    }
    &[data-autoplay='true'] {
      .slide-item {
        .slide-item-bg {
          transition: transform var(--autoplay-anim-duration);
        }
      }
      &[data-autoplay-anim='zoom-out'] .slide-item {
        .slide-item-bg {
          transform: scale(1.1);
          transition-timing-function: ease-out;
        }
        &.is-snapped .slide-item-bg {
          transform: scale(1);
        }
      }
      &[data-autoplay-anim='zoom-in'] .slide-item {
        .slide-item-bg {
          transform: scale(1);
          transition-timing-function: ease-out;
        }
        &.is-snapped .slide-item-bg {
          transform: scale(1.1);
        }
      }
      &[data-autoplay-anim='move-left'] .slide-item {
        .slide-item-bg {
          transform-origin: left;
          transform: translateX(0%) scale(1.03);
          transition-timing-function: linear;
        }
        &.is-snapped .slide-item-bg {
          transform: translateX(-3%) scale(1.03);
        }
      }
      &[data-autoplay-anim='move-right'] .slide-item {
        .slide-item-bg {
          transform-origin: right;
          transform: translateX(0%) scale(1.03);
          transition-timing-function: linear;
        }
        &.is-snapped .slide-item-bg {
          transform: translateX(3%) scale(1.03);
        }
      }
      &[data-autoplay-anim='move-top'] .slide-item {
        .slide-item-bg {
          transform-origin: top;
          transform: translateY(0%) scale(1.03);
          transition-timing-function: linear;
        }
        &.is-snapped .slide-item-bg {
          transform: translateY(-3%) scale(1.03);
        }
      }
      &[data-autoplay-anim='move-bottom'] .slide-item {
        .slide-item-bg {
          transform-origin: bottom;
          transform: translateY(0%) scale(1.03);
          transition-timing-function: linear;
        }
        &.is-snapped .slide-item-bg {
          transform: translateY(3%) scale(1.03);
        }
      }
    }
  }
/* END_SNIPPET:snip_slideshow */

/* START_SNIPPET:snip_slideshow_item (INDEX:609) */
.slide-item {
    display: flex;
    align-items: stretch;
    .slide-item-inner {
      position: relative;
      width: 100%;
      display: flex;
      align-items: stretch;
    }
    .slide-item-content {
      position: relative;
      z-index: 2;
      width: 100%;
    }
    .slide-item-content-inner {
      position: relative;
    }
    .slide-item-bg {
      pointer-events: none;
      position: absolute;
      z-index: 1;
      inset: 0;
    }
  }
/* END_SNIPPET:snip_slideshow_item */

/* START_SNIPPET:snip_snackbar (INDEX:610) */
.snackbar {
    width: 100%;
    border-radius: var(--radius-new-small);
    overflow: hidden;
    box-shadow: var(--shadow-md);
    &.snackbar--success {
      --color-snackbar-icon: var(--color-status_success);
    }
    &.snackbar--error {
      --color-snackbar-icon: var(--color-status_error);
    }
    &.snackbar--warning {
      --color-snackbar-icon: var(--color-status_warning);
    }
    &.snackbar--info {
      --color-snackbar-icon: var(--color-status_info);
    }
    .snackbar-inner {
      padding: 1rem;
      display: flex;
      flex-direction: column;
      align-items: stretch;
      text-align: left;
      .snackbar-inner-item {
        display: flex;
        align-items: stretch;
        gap: 0.75rem;
        .snackbar-icon-wrap {
          flex: none;
          display: block;
          .snackbar-icon {
            display: block;
            background-color: var(--color-snackbar-icon);
            width: calc(var(--1px) * 3);
            height: 100%;
            border-radius: var(--radius-new-pill);
          }
        }
      }
    }
  }
/* END_SNIPPET:snip_snackbar */

/* START_SNIPPET:snip_social_link (INDEX:611) */
copy-link {
    cursor: pointer;
  }
  .social-link-block {
    display: block;
    width: var(--social-item-width);
    height: var(--social-item-height);

    @media (max-width: 991px) {
      width: var(--social-item-width-mb);
      height: var(--social-item-height-mb);
    }
  }

  .social-link-block-label {
    font-size: var(--social-item-font-size);
    line-height: var(--social-item-font-lh);
    opacity: 1;
    transition: opacity var(--trans-duration) var(--trans-easing);
  }

  .social-link-block-icon {
    width: round(var(--social-item-icon), 1px);
    height: round(var(--social-item-icon), 1px);
    opacity: 1;
    transition: opacity var(--trans-duration) var(--trans-easing);
  }

  .social-link-block:hover ~ .social-link-block:not(:hover),
  .social-link-block:has(~ .social-link-block:hover) {
    .social-link-block-icon,
    .social-link-block-label {
      opacity: 0.4;
    }
  }

  .social-link-block-content {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-inline: var(--social-item-pd-inline);
    color: var(--social-item-color);
    position: relative;
    z-index: 2;
  }

  .social-link-block-inner {
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
    border-radius: var(--social-item-radius);
  }

  .social-link-block-bg {
    border-radius: inherit;
    position: absolute;
    inset: 0;
    z-index: 1;
    background: var(--social-item-bg);
    border: var(--1px) solid var(--social-item-border);
  }
/* END_SNIPPET:snip_social_link */

/* START_SNIPPET:snip_social_media (INDEX:612) */
.social-media-inner {
    &:has(.social-media-item:hover) {
      .social-media-item:not(:hover) {
        .social-media-item-label {
          opacity: 0.6;
        }
        .social-media-item-icon {
          opacity: 0.4;
        }
      }
    }
    .social-media-item {
      .social-media-item-label,
      .social-media-item-icon {
        transition: opacity var(--trans-duration) var(--trans-easing);
      }
    }
  }
/* END_SNIPPET:snip_social_media */

/* START_SNIPPET:snip_social_media_item (INDEX:613) */
.social-media-item {
    position: relative;
    border-radius: var(--social-item-radius);
    .social-media-item-content {
      display: flex;
      align-items: center;
      justify-content: center;
      position: relative;
      z-index: 2;
      height: var(--social-item-height);
      width: var(--social-item-width);
      padding-inline: var(--social-item-pd-inline);
      color: var(--social-item-color);
      @media (max-width: 991px) {
        height: var(--social-item-height-mb);
        width: var(--social-item-width-mb);
        padding-inline: var(--social-item-pd-inline-mb);
      }
      .social-media-item-label {
        font-size: var(--social-item-font-size);
        line-height: var(--social-item-font-lh);
        @media (max-width: 991px) {
          font-size: var(--social-item-font-size-mb);
          line-height: var(--social-item-font-lh-mb);
        }
      }
      .social-media-item-icon {
        width: var(--social-item-icon);
        height: var(--social-item-icon);
        @media (max-width: 991px) {
          width: var(--social-item-icon-mb);
          height: var(--social-item-icon-mb);
        }
      }
    }
    .social-media-item-bg {
      border-radius: inherit;
      position: absolute;
      inset: 0;
      z-index: 1;
      background: var(--social-item-bg);
      border: var(--1px) solid var(--social-item-border);
    }
  }
/* END_SNIPPET:snip_social_media_item */

/* START_SNIPPET:snip_sorting (INDEX:614) */
sorting-component {
    display: block;
  }
  .collection-sort {
    position: relative;
    z-index: 2;
    .collection-sort-inner {
      position: relative;
      &:has(.collection-sort-drop.active) .collection-sort-head-icon {
        transform: rotateZ(180deg);
      }
    }
    .collection-sort-head {
      position: relative;
      display: flex;
      align-items: center;
      column-gap: 0.625rem;
      .collection-sort-head-label {
        display: flex;
        align-items: center;
        column-gap: 0.5rem;
      }
      .collection-sort-head-icon {
        flex: none;
        color: var(--color-paragraph);
        --icon-size: 1rem;
        width: var(--icon-size);
        height: var(--icon-size);
        transition: transform var(--trans-duration) var(--trans-easing);
      }
    }

    .collection-sort-drop {
      opacity: 0;
      visibility: hidden;
      transform: translateY(-0.5rem);
      transition: all var(--trans-duration) var(--trans-easing);
      pointer-events: none;
      position: absolute;
      top: 100%;
      right: 0;
      & > * {
        pointer-events: none;
      }
      .collection-sort-drop-bg {
        position: absolute;
        top: 0%;
        left: 0%;
        width: 100%;
        height: 100%;
        border-radius: var(--radius-new-small);
        overflow: hidden;
        box-shadow: var(--shadow-md);
      }
      .collection-sort-drop-inner {
        margin-block-start: 0.75rem;
        padding-inline: 0.75rem;
        padding-block: 0.25rem;
        position: relative;
        min-width: 16.25rem;
        z-index: 100;
      }
      .collection-sort-drop-item {
        position: relative;
        cursor: pointer;
        &:last-of-type {
          .div-line {
            display: none;
          }
        }
        .div-line {
          width: 100%;
          position: absolute;
          bottom: 0;
          left: 0;
          height: var(--1px);
          background-color: var(--color-border-divider);
          .div-line-inner {
            width: 100%;
            height: 100%;
            background-color: var(--color-border-hover);
            transition: transform var(--trans-duration) var(--trans-easing);
            transform: scaleX(0);
            transform-origin: right;
          }
        }
      }
      .collection-sort-drop-item-link {
        padding-block: 0.625rem;
        padding-inline: 0;
        display: block;
        cursor: pointer;
        .collection-sort-drop-item-link-inner {
          .text-custom-content-inner {
            display: flex;
            align-items: center;
            justify-content: space-between;
            column-gap: 0.5rem;
          }
          .dot {
            color: var(--color-text-subtitle);
            background-color: currentColor;
            opacity: 0;
            transition: opacity var(--trans-duration) var(--trans-easing);
          }
        }

        &.active {
          .collection-sort-drop-item-link-inner {
            .dot {
              opacity: 1;
            }
          }
        }
      }

      &.active {
        opacity: 1;
        visibility: visible;
        transform: translateY(0);
        & > * {
          pointer-events: auto;
        }
      }

      /* ── Hover-inactive pattern (opacity fade) ── */
      .collection-sort-drop-inner {
        .collection-sort-drop-item-link {
          transition: opacity var(--trans-duration) var(--trans-easing);
        }

        @media (hover: hover) {
          &:has(.collection-sort-drop-item-link:hover) {
            .collection-sort-drop-item-link:hover {
              .div-line .div-line-inner {
                transform: scaleX(1);
                transform-origin: left;
              }
            }

            .collection-sort-drop-item-link:not(:hover) {
              opacity: 0.5;
            }
          }
        }
      }
    }
  }
/* END_SNIPPET:snip_sorting */

/* START_SNIPPET:snip_spacer_v2 (INDEX:615) */
[data-direction='row'] {
    & > .spacer {
      display: var(--spacer-display, block);
      width: var(--spacer-size);
      height: 100%;
    }
  }
  [data-direction='column'] {
    & > .spacer {
      display: var(--spacer-display, block);
      width: 100%;
      height: var(--spacer-size);
    }
  }
  @media (max-width: 991px) {
    [data-direction-mb='row'] {
      & > .spacer {
        display: var(--spacer-display-mb, block);
        width: var(--spacer-size-mb);
        height: 100%;
      }
    }
    [data-direction-mb='column'] {
      & > .spacer {
        display: var(--spacer-display-mb, block);
        width: 100%;
        height: var(--spacer-size-mb);
      }
    }
  }
  .spacer {
    .spacer-inner {
      width: 100%;
      height: 100%;
    }
  }
/* END_SNIPPET:snip_spacer_v2 */

/* START_SNIPPET:snip_sub_drawer (INDEX:618) */
.sub-drawer {
    width: 100%;
    height: fit-content;
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 5;

    opacity: 0;
    visibility: hidden;
    transform: translateY(10%);
    transition: opacity var(--trans-duration) var(--trans-ease-smooth),
      visibility var(--trans-duration) var(--trans-ease-smooth),
      transform var(--trans-duration) var(--trans-ease-smooth);

    &.open {
      opacity: 1;
      visibility: visible;
      transform: translateY(0);
    }

    .sub-drawer-inner {
      position: relative;
    }

    .sub-drawer-content {
      padding: var(--drawer-pd);

      @media screen and (max-width: 991px) {
        padding: var(--drawer-pd-mb);
      }
    }

    .sub-drawer-bg {
      position: absolute;
      inset: 0;
      z-index: -1;
      background-color: var(--color-background);
      border-radius: var(--modals_default-radius);
    }

    .sub-drawer-header {
      display: flex;
      justify-content: space-between;
      align-items: center;
      margin-block-end: 1.5rem;

      @media screen and (max-width: 991px) {
        margin-block-end: 1rem;
      }
    }
  }
/* END_SNIPPET:snip_sub_drawer */

/* START_SNIPPET:snip_sub_drawer_trigger (INDEX:619) */
sub-drawer-trigger {
    display: contents;
  }
/* END_SNIPPET:snip_sub_drawer_trigger */

/* START_SNIPPET:snip_tab_content (INDEX:620) */
.tabs-content {
    display: flex;
    align-items: stretch;
    .tabs-content-inner {
      position: relative;
      contain: layout style paint;
      width: 100%;
      display: flex;
      align-items: stretch;
    }
    .tabs-content-content {
      position: relative;
      z-index: 2;
      width: 100%;
    }
    .tabs-content-content-inner {
      position: relative;
    }
    .tabs-content-bg {
      pointer-events: none;
      position: absolute;
      z-index: 1;
      inset: 0;
    }
  }
/* END_SNIPPET:snip_tab_content */

/* START_SNIPPET:snip_tab_item (INDEX:621) */
.tab-item {
    align-items: stretch;
    .tab-item-inner {
      position: relative;
      contain: layout style paint;
      width: 100%;
      display: flex;
      align-items: stretch;
    }
    .tab-item-content {
      position: relative;
      z-index: 2;
      width: 100%;
    }
    .tab-item-content-inner {
      position: relative;
    }
  }

  /*
   * SSR-first active tab: show the first tab item before JS runs (no hidden-content flash).
   * Once tab-group.js-ready is set, ownership passes to the .active class.
   */
  tab-group:not(.js-ready) .tab-item {
    display: none;
  }
  /* Robustly selects the first .tab-item among its siblings regardless of other elements */
  tab-group:not(.js-ready) .tab-item:first-child,
  tab-group:not(.js-ready) :not(.tab-item):first-child ~ .tab-item:not(.tab-item ~ .tab-item) {
    display: flex;
  }
  tab-group.js-ready .tab-item {
    display: none;
  }
  tab-group.js-ready .tab-item.active {
    display: flex;
  }
/* END_SNIPPET:snip_tab_item */

/* START_SNIPPET:snip_tab_item_list (INDEX:622) */
.tab-item-list {
    display: flex;
    align-items: stretch;
    .tab-item-list-inner {
      position: relative;
      width: 100%;
      display: flex;
      align-items: stretch;
    }
    .tab-item-list-content {
      position: relative;
      z-index: 2;
      width: 100%;
    }
    .tab-item-list-content-inner {
      position: relative;
    }
  }
/* END_SNIPPET:snip_tab_item_list */

/* START_SNIPPET:snip_tabs_group (INDEX:623) */
.tabs-custom {
    display: flex;
    align-items: stretch;
    .tabs-custom-inner {
      position: relative;
      width: 100%;
      display: flex;
      align-items: stretch;
    }
    .tabs-custom-content {
      position: relative;
      z-index: 2;
      width: 100%;
    }
    .tabs-custom-content-inner {
      position: relative;
    }
    .tabs-custom-bg {
      pointer-events: none;
      position: absolute;
      z-index: 1;
      inset: 0;
    }
  }
/* END_SNIPPET:snip_tabs_group */

/* START_SNIPPET:snip_tag (INDEX:624) */
.tag {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    gap: 0.25rem;
    padding-block: 0.375rem;
    padding-inline-start: 0.75rem;
    padding-inline-end: 0.375rem;
    border-radius: var(--radius-button-input-theme-st);
    border: var(--1px) solid var(--color-border-default);
    overflow: hidden;
    background-color: transparent;
    transition: all var(--trans-duration) var(--trans-easing);

    &.tag--text-only {
      border: none;
      padding-inline-start: 0.5rem;
      padding-inline-end: 0.5rem;
      padding-block: 0.25rem;
    }

    @media (hover: hover) {
      svg:hover {
        color: var(--color-foreground_100);
      }
    }

    button {
      width: 1.25rem;
      height: 1.25rem;
      display: flex;
      align-items: center;
      justify-content: center;
      background-color: transparent;
      border: none;
      outline: none;
      color: var(--color-foreground_30);

      svg {
        width: 0.75rem;
        height: 0.75rem;
        transition: all var(--trans-duration) var(--trans-easing);
      }
    }

    &:not(.tag--text-only):hover {
      background-color: var(--color-foreground_04);
    }
  }
/* END_SNIPPET:snip_tag */

/* START_SNIPPET:snip_testimonial_banner (INDEX:625) */
.testimonial-banner {
    display: flex;
    align-items: stretch;
    .banner-inner {
      position: relative;
      contain: layout style paint;
    }
    .banner-content {
      position: relative;
      z-index: 2;
      height: 100%;
      width: 100%;
    }
    .banner-content-inner {
      position: relative;
      z-index: 4;
    }
    .banner-bg {
      position: absolute;
      z-index: 1;
      inset: 0;
    }
    .banner-full-link-overlay {
      position: absolute;
      z-index: 5;
      inset: 0;
      border-radius: var(--banner-radius);
    }
  }
/* END_SNIPPET:snip_testimonial_banner */

/* START_SNIPPET:snip_testimonial_content (INDEX:626) */
.text-custom {
    .text-custom-inner {
      position: relative;
      height: 100%;
      width: 100%;
    }
    strong {
      font-weight: 600;
    }
  }
/* END_SNIPPET:snip_testimonial_content */

/* START_SNIPPET:snip_testimonial_item (INDEX:627) */
.testi-custom {
    .testi-custom-inner {
      position: relative;
      height: 100%;
      width: 100%;
    }
    .testi-custom-content {
      position: relative;
      z-index: 2;
      height: 100%;
      width: 100%;
    }
    .testi-custom-content-inner {
      position: relative;
    }
  }
/* END_SNIPPET:snip_testimonial_item */

/* START_SNIPPET:snip_testimonial_review (INDEX:628) */
.review-custom {
    .review-custom-inner {
      position: relative;
      contain: layout style paint;
      height: 100%;
      width: 100%;
    }
    .review-custom-content {
      position: relative;
      z-index: 2;
      height: 100%;
      width: 100%;
    }
    .review-custom-content-inner {
      position: relative;
    }
    .review-custom-bg {
      pointer-events: none;
      position: absolute;
      z-index: 1;
      inset: 0;
    }
  }
/* END_SNIPPET:snip_testimonial_review */

/* START_SNIPPET:snip_text_w_icon (INDEX:630) */
.text-with-indicator--gray {
    --color-status: var(--color-indicator-inactive);
  }
  .text-with-indicator--green {
    --color-status: var(--color-status_success);
  }
  .text-with-indicator--red {
    --color-status: var(--color-status_error);
  }
  .text-with-icon {
    display: flex;
    gap: var(--gap);
    .icon-wrap {
      flex-shrink: 0;

      display: inline-block;
      svg {
        width: var(--icon-size);
        height: var(--icon-size);
      }
      .indicator {
        display: inline-block;
        vertical-align: middle;
        --indicator-size: 0.375rem;
        width: var(--indicator-size);
        height: var(--indicator-size);
        background-color: var(--color-status);
        border-radius: var(--radius-new-pill);
        overflow: hidden;
      }
    }
    .text-wrap {
      display: flex;
    }
  }
/* END_SNIPPET:snip_text_w_icon */

/* START_SNIPPET:snip_theme_alert (INDEX:631) */
.theme-alert {
    display: contents;
    .theme-alert-dialog {
      width: fit-content;
      max-width: calc(100vw - var(--page--outer-margin) * 2);

      position: fixed;
      z-index: 9999;

      margin-block-start: 3.75rem;
      margin-block-end: auto;
      margin-inline-start: auto;
      margin-inline-end: 3.75rem;
      padding: 0;
      border: none;
      background-color: transparent;
      @media (max-width: 767px) {
        width: 100%;
        margin-block-end: var(--page--outer-margin);
        margin-inline-start: var(--page--outer-margin);
      }
      &.opening {
        animation: slide-fade-in-right var(--trans-duration) var(--trans-easing) forwards;
      }
      &.closing {
        animation: slide-fade-out-right var(--trans-duration) var(--trans-easing) forwards;
      }
      &:focus-visible,
      &:focus {
        outline: none;
      }
    }
  }
/* END_SNIPPET:snip_theme_alert */

/* START_SNIPPET:snip_title (INDEX:632) */
.title-custom {
    .title-custom-inner {
      position: relative;
      height: 100%;
      width: 100%;
    }
    strong {
      font-weight: 600;
    }
  }
/* END_SNIPPET:snip_title */

/* START_SNIPPET:snip_toggle_overlay (INDEX:633) */
toggle-overlay {
    cursor: pointer;
    display: contents;
  }
/* END_SNIPPET:snip_toggle_overlay */

/* START_SNIPPET:snip_topbar (INDEX:634) */
.topbar {
    .topbar-custom-inner {
      position: relative;
      contain: paint;
    }
    .topbar-custom-content {
      position: relative;
      z-index: 2;
    }
    .topbar-custom-content-inner {
      position: relative;
    }
    .topbar-custom-bg {
      pointer-events: none;
      position: absolute;
      z-index: 1;
      inset: 0;
    }
  }
/* END_SNIPPET:snip_topbar */

/* START_SNIPPET:snip_variant_picker_swatch (INDEX:637) */
.variant-picker-swatch-wrap {
    --variant-picker-swatch-size: 2.75rem;

    flex: none;
    position: relative;
    width: var(--variant-picker-swatch-size);
    height: var(--variant-picker-swatch-size);

    &.unavailable {
      .variant-picker-swatch {
        .variant-picker-swatch-strikethrough {
          display: block;
        }
      }

      .variant-picker-swatch-inner {
        opacity: 0.5;
      }
    }
  }

  .variant-picker-swatch {
    width: 100%;
    height: 100%;

    display: flex;
    align-items: center;
    justify-content: center;

    overflow: hidden;
    border-radius: var(--variant-picker-swatch-border-radius);
    background-color: var(--color-surface-alt);

    outline: solid max(1px, 0.1rem) transparent;
    outline-offset: calc(max(1px, 0.1rem) * -1);

    padding-block: 0.125rem;
    padding-inline: 0.125rem;

    transition: all var(--trans-duration) var(--trans-easing);

    .variant-picker-swatch-strikethrough {
      display: none;
      width: 100%;
      height: 100%;
      position: absolute;
      z-index: 1;
      border-radius: var(--variant-picker-swatch-border-radius);
      overflow: hidden;
      color: var(--color-foreground_30);
    }

    .variant-picker-swatch-inner {
      width: 100%;
      height: 100%;
      flex: none;
      border-radius: var(--variant-picker-swatch-border-radius);

      &.variant-picker-swatch-inner--color {
        width: 50%;
        height: 50%;
        outline: solid max(1.5px, 0.09375rem) var(--color-border-default);
        outline-offset: calc(max(1.5px, 0.09375rem) * -1);
        background: var(--variant-picker-swatch-bg);
      }

      &.variant-picker-swatch-inner--image {
        background: var(--variant-picker-swatch-bg);
        background-size: cover;
        background-position: 50%;
        background-repeat: no-repeat;
      }
    }
  }
/* END_SNIPPET:snip_variant_picker_swatch */

/* START_SNIPPET:snip_variant_swatch (INDEX:638) */
.color-swatch-wrap {
    flex: none;
    position: relative;
    width: var(--color-swatch-size);
    height: var(--color-swatch-size);

    &.color-swatch-size-lg {
      --color-swatch-size: 2.75rem;
      --color-swatch-size-inner: 1.25rem;
    }
    &.color-swatch-size-md {
      --color-swatch-size: 2rem;
      --color-swatch-size-inner: 1rem;
    }
    &.color-swatch-size-sm {
      --color-swatch-size: 1.25rem;
      --color-swatch-size-inner: 1rem;
    }
    &.unavailable {
      .color-swatch {
        .color-swatch-strikethrough {
          display: block;
          svg {
            path {
              stroke-opacity: 0.6;
            }
          }
        }
      }
    }
    &.color-swatch-checkbox {
      cursor: pointer;
    }

    .color-swatch {
      width: 100%;
      height: 100%;
      border-radius: var(--variant-picker-swatch-border-radius);
      background-color: var(--color-surface-alt);
      display: flex;
      align-items: center;
      justify-content: center;
      overflow: hidden;
      outline: solid var(--1px) var(--color-border-default);
      outline-offset: calc(max(1px, 0.0625rem) * -1);
      transition: all var(--trans-duration) var(--trans-easing);
      .color-swatch-strikethrough {
        display: none;
        width: 100%;
        height: 100%;
        position: absolute;
        z-index: 1;
        border-radius: var(--variant-picker-swatch-border-radius);
        overflow: hidden;
        svg {
          color: var(--color-foreground);
        }
      }
      .color-swatch-inner {
        flex: none;
        border-radius: var(--variant-picker-swatch-border-radius);
        &.color-swatch-inner--color {
          width: var(--color-swatch-size-inner);
          height: var(--color-swatch-size-inner);
          outline: solid max(1.5px, 0.09375rem) var(--color-border-default);
          outline-offset: calc(max(1.5px, 0.09375rem) * -1);
          background-color: var(--color-swatch-color);
        }
        &.color-swatch-inner--image {
          width: calc(var(--color-swatch-size) * 0.707);
          height: calc(var(--color-swatch-size) * 0.707);
          background-image: var(--color-swatch-image-url);
          background-size: contain;
          background-position: center center;
          background-repeat: no-repeat;
        }
      }
    }
  }

  .checkbox-swatch {
    position: relative;
    cursor: pointer;
    .checkbox-swatch-input {
      position: absolute;
      inset: 0;
      opacity: 0;
      cursor: pointer;
      &:focus-visible ~ .color-swatch-wrap .color-swatch {
        outline-color: var(--color-keyboard-focus-visible);
      }
    }
    @media (hover: hover) {
      &:hover {
        .color-swatch {
          outline-color: var(--color-foreground);
        }
      }
    }
    &:has(.checkbox-swatch-input:checked) {
      .color-swatch {
        outline-color: var(--color-foreground);
      }
    }
    &:has(:disabled, .disabled) {
      cursor: not-allowed;
      .color-swatch {
        outline-color: var(--color-border-disable);
      }
      .checkbox-swatch-input {
        cursor: not-allowed;
      }
    }
  }
/* END_SNIPPET:snip_variant_swatch */