/** Shopify CDN: Minification failed

Line 17607:0 All "@import" rules must come first

**/
/* SHOPIFY_STYLESHEETS_VERSION: 1.0 */


/* CSS from section stylesheet tags */
/* START_SECTION:button-effects-comparison (INDEX:7) */
@layer components {
    .ns-button-effects-comparison__inner {
      inline-size: min(100%, var(--ns-layout-section-width-wide, 113.125rem));
      margin-inline: auto;
      padding-inline: var(--ns-page-gutter);
    }

    .ns-button-effects-comparison__header {
      max-inline-size: 48rem;
      margin-block-end: var(--ns-space-40);
    }

    .ns-button-effects-comparison__header p {
      margin-block-start: var(--ns-space-12);
      color: var(--ns-color-muted);
    }

    .ns-button-effects-comparison__grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(min(100%, 18rem), 1fr));
      gap: var(--ns-space-24);
    }

    .ns-button-effects-comparison__sample {
      display: grid;
      place-items: center;
      gap: var(--ns-space-24);
      min-block-size: 12rem;
      padding: var(--ns-space-32);
      border: 1px solid var(--ns-color-border);
      border-radius: var(--ns-radius-lg);
      background: var(--ns-color-surface-alt);
      text-align: center;
    }

    .ns-button-effects-comparison__sample h3 {
      font-size: var(--ns-type-xs-size);
      line-height: var(--ns-type-xs-line-height);
    }

    .ns-button-effects-comparison__sample .ns-button {
      min-inline-size: min(100%, 13rem);
    }
  }
/* END_SECTION:button-effects-comparison */

/* START_SECTION:custom-html (INDEX:19) */
@layer components {
    .ns-custom-html__inner {
      width: var(--ns-content-width);
      margin-inline: auto;
    }

    .ns-popup-demo-triggers {
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
      gap: var(--ns-space-12);
    }
  }
/* END_SECTION:custom-html */

/* START_SECTION:custom-section (INDEX:20) */
@layer components {
    .ns-custom-section {
      position: relative;
      overflow: hidden;
      width: 100%;
      color: var(--ns-color-foreground);
      background: var(--ns-custom-section-background, var(--ns-color-background));
    }

    .ns-custom-section__background {
      position: absolute;
      z-index: 0;
      overflow: hidden;
      width: 100%;
      height: 100%;
    }

    .ns-custom-section__foreground {
      position: relative;
      min-width: 0;
    }

    .ns-custom-section__background img {
      position: absolute;
      inset-block-start: 50%;
      inset-inline-start: 50%;
      width: 100%;
      height: auto;
      transform: translate(-50%, -50%);
    }

    .ns-custom-section__content {
      position: relative;
      z-index: 1;
      display: grid;
      grid-template-columns: var(--ns-content-grid);
    }

    .ns-custom-section__content > * {
      grid-column: 2;
    }
  }
/* END_SECTION:custom-section */

/* START_SECTION:footer-1 (INDEX:29) */
@layer components {
    .ns-footer-layout--type_1 .ns-footer-layout__primary,
    .ns-footer-layout--type_1 .ns-footer-layout__commerce {
      display: grid;
      min-width: 0;
    }

    @media (max-width: 1024px) {
      .ns-footer-layout--type_1 .ns-footer-layout__navigation,
      .ns-footer-layout--type_1 .ns-footer-layout__support,
      .ns-footer-layout--type_1 .ns-footer-layout__commerce,
      .ns-footer-layout--type_1 .ns-footer-layout__utility {
        width: calc(100% + var(--ns-page-gutter) * 2);
        margin-inline: calc(var(--ns-page-gutter) * -1);
      }

      .ns-footer-layout--type_1 .ns-footer-layout__commerce {
        justify-items: center;
        gap: var(--ns-space-24);
      }

      .ns-footer-layout--type_1 .ns-footer-layout__payments {
        width: 100%;
        padding-block: var(--ns-space-32);
        border-block-start: 1px solid var(--ns-color-border);
      }

      .ns-footer-layout--type_1 .ns-footer-menu__list {
        gap: var(--ns-space-16);
        padding-block: var(--ns-space-10) var(--ns-space-12);
      }

      .ns-footer-layout--type_1 .ns-footer-support__content {
        padding-block: var(--ns-space-8) var(--ns-space-30);
      }

      .ns-footer-layout--type_1 .ns-footer-social__list {
        gap: var(--ns-space-30);
      }
    }

    @media (min-width: 1025px) {
      .ns-footer-layout.ns-footer-layout--type_1 {
        display: grid;
        gap: 0;
      }

      .ns-footer-layout--type_1 .ns-footer-layout__main {
        display: grid;
        gap: 0;
        padding-block: 0;
      }

      .ns-footer-layout--type_1 .ns-footer-layout__newsletter {
        padding-block: var(--ns-space-40) var(--ns-space-48);
      }

      .ns-footer-layout--type_1 .ns-footer-layout__primary {
        grid-template-columns: repeat(var(--ns-footer-primary-columns), minmax(0, 1fr));
        column-gap: var(--ns-space-40);
        padding-block: var(--ns-space-48) var(--ns-space-60);
        border-block-start: 1px solid var(--ns-color-border);
      }

      .ns-footer-layout--type_1 .ns-footer-layout__primary--support-only {
        grid-template-columns: minmax(0, 1fr);
      }

      .ns-footer-layout--type_1 .ns-footer-layout__navigation {
        display: grid;
        grid-column: 1 / span var(--ns-footer-menu-columns);
        grid-template-columns: repeat(var(--ns-footer-menu-columns), minmax(0, 1fr));
        gap: var(--ns-space-40);
      }

      .ns-footer-layout--type_1 .ns-footer-layout__support {
        grid-column: -2 / -1;
      }

      .ns-footer-layout--type_1 .ns-footer-layout__primary--support-only .ns-footer-layout__support {
        grid-column: 1;
      }

      .ns-footer-layout--type_1 .ns-footer-layout__commerce {
        grid-template-columns: max-content max-content;
        align-items: center;
        justify-content: start;
        gap: var(--ns-space-48);
      }

      .ns-footer-layout--type_1 .ns-footer-layout__social,
      .ns-footer-layout--type_1 .ns-footer-layout__payments {
        width: auto;
        padding-block: var(--ns-space-24) var(--ns-space-48);
        border: 0;
      }

      .ns-footer-layout--type_1 .ns-footer-layout__utility {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
        justify-items: start;
        gap: var(--ns-space-40);
        padding-block: var(--ns-space-32) var(--ns-space-48);
      }

      .ns-footer-layout--type_1 .ns-footer-layout__brand {
        justify-self: center;
        width: auto;
      }
    }
  }
/* END_SECTION:footer-1 */

/* START_SECTION:footer-2 (INDEX:30) */
@layer components {
    .ns-footer-layout--type_2 .ns-footer-social__heading {
      display: none;
    }

    .ns-footer-layout--type_2 .ns-footer-layout__back-to-top {
      width: 100%;
      margin-inline: 0;
    }

    @media (max-width: 1024px) {
      .ns-footer-layout--type_2 .ns-footer-layout__navigation,
      .ns-footer-layout--type_2 .ns-footer-layout__support,
      .ns-footer-layout--type_2 .ns-footer-layout__utility {
        width: calc(100% + var(--ns-page-gutter) * 2);
        margin-inline: calc(var(--ns-page-gutter) * -1);
      }

      .ns-footer-layout--type_2 .ns-footer-menu__list {
        gap: var(--ns-space-16);
        padding-block: var(--ns-space-10) var(--ns-space-12);
      }

      .ns-footer-layout--type_2 .ns-footer-support__content {
        padding-block: var(--ns-space-8) var(--ns-space-30);
      }

      .ns-footer-layout--type_2 .ns-footer-social__list {
        gap: var(--ns-space-30);
      }
    }

    @media (min-width: 1025px) {
      .ns-footer-layout--type_2::after {
        position: absolute;
        inset: auto auto 3.875rem 0;
        width: 100%;
        border-block-start: 1px solid var(--ns-color-border);
        content: '';
        pointer-events: none;
      }

      .ns-footer-layout.ns-footer-layout--type_2 {
        position: relative;
        display: grid;
        grid-template-columns: repeat(6, minmax(0, 1fr));
        column-gap: var(--ns-space-30);
        row-gap: var(--ns-space-30);
        padding-block-start: var(--ns-space-48);
      }

      .ns-footer-layout--type_2 .ns-footer-layout__main,
      .ns-footer-layout--type_2 .ns-footer-layout__utility {
        display: contents;
      }

      .ns-footer-layout--type_2 .ns-footer-layout__back-to-top {
        grid-row: 1;
        grid-column: 1 / -1;
      }

      .ns-footer-layout--type_2 .ns-footer-layout__newsletter {
        grid-row: 2;
      }

      .ns-footer-layout--type_2 .ns-footer-layout__navigation,
      .ns-footer-layout--type_2 .ns-footer-layout__support,
      .ns-footer-layout--type_2 .ns-footer-layout__social {
        grid-row: 3;
      }

      .ns-footer-layout--type_2 .ns-footer-social__heading {
        display: block;
      }

      .ns-footer-layout--type_2 .ns-footer-layout__brand,
      .ns-footer-layout--type_2 .ns-footer-layout__legal,
      .ns-footer-layout--type_2 .ns-footer-layout__payments {
        grid-row: 4;
        align-self: stretch;
        min-height: 3.875rem;
        margin-block-start: var(--ns-space-30);
      }

      .ns-footer-layout--type_2 .ns-footer-layout__brand,
      .ns-footer-layout--type_2 .ns-footer-layout__legal {
        display: flex;
        align-items: center;
      }

      .ns-footer-layout--type_2 .ns-footer-layout__brand {
        grid-column: 1;
      }

      .ns-footer-layout--type_2 .ns-footer-layout__legal {
        --ns-footer-type-2-legal-inline-offset: 5.25rem;

        grid-column: 1 / 4;
        margin-inline-start: var(--ns-footer-type-2-legal-inline-offset);
      }

      .ns-footer-layout--type_2 .ns-footer-layout__payments {
        display: flex;
        grid-column: 4 / 7;
        align-items: center;
        justify-self: end;
      }

    }
  }
/* END_SECTION:footer-2 */

/* START_SECTION:header-promo (INDEX:39) */
@layer components {
    .ns-header-promo__slot {
      --ns-header-promo-row-block-size: 2.1875rem;

      position: relative;
    }

    .ns-header-promo__slot--delayed {
      min-height: var(--ns-header-promo-row-block-size);
    }

    .ns-header-promo__slot--delayed > .ns-header-promo {
      position: absolute;
      inset: 0;
    }

    .ns-header-promo__slot[hidden] {
      display: none;
    }

    .ns-header-promo {
      display: block;
      position: relative;
      z-index: 21;
      min-height: var(--ns-header-promo-row-block-size);
      background: var(--ns-color-background);
      box-shadow: inset 0 -1px var(--ns-color-border);
      color: var(--ns-color-foreground);
    }

    .ns-header-promo[hidden] {
      display: none;
    }

    .ns-header-promo__inner {
      display: flex;
      align-items: center;
      justify-content: center;
      min-height: var(--ns-header-promo-row-block-size);
      padding-inline: var(--ns-page-gutter);
    }

    .ns-header-promo__message {
      display: flex;
      align-items: baseline;
      justify-content: center;
      gap: 0.3em;
      margin: 0;
      color: inherit;
      font-size: var(--ns-type-body-size);
      font-weight: var(--ns-type-weight-interface);
      line-height: var(--ns-type-body-line-height);
      text-align: center;
      text-decoration: none;
    }

    .ns-header-promo__message strong {
      font-weight: var(--ns-type-weight-emphasis);
      text-transform: uppercase;
    }

    .ns-header-promo__close {
      display: grid;
      place-items: center;
      width: var(--ns-touch-target-min);
      height: var(--ns-touch-target-min);
      margin-block: calc((var(--ns-header-promo-row-block-size) - var(--ns-touch-target-min)) / 2);
      margin-inline-end: calc(var(--ns-touch-target-min) * -1);
      padding: var(--ns-space-12);
      border: 0;
      background: transparent;
      color: inherit;
      cursor: pointer;
      opacity: 1;
      transition: opacity 80ms ease;
    }

    .ns-header-promo__close svg {
      width: 1rem;
      height: 1rem;
    }

    @media (hover: hover) and (pointer: fine) {
      .ns-header-promo__close {
        opacity: 0;
        pointer-events: none;
      }

      .ns-header-promo:is(:hover, :focus-within) .ns-header-promo__close {
        opacity: 1;
        pointer-events: auto;
      }
    }

    @media (max-width: 1024px) {
      .ns-header-promo__slot--delayed {
        min-height: 3.4375rem;
      }

      .ns-header-promo,
      .ns-header-promo__inner {
        min-height: 3.4375rem;
      }

      .ns-header-promo__inner {
        position: relative;
        padding-inline: 9.333% 12%;
      }

      .ns-header-promo__message {
        display: block;
        font-size: var(--ns-type-body-size);
      }

      .ns-header-promo__message strong,
      .ns-header-promo__message span {
        display: inline;
      }

      .ns-header-promo__close {
        position: absolute;
        inset-inline-end: max(var(--ns-space-4), var(--ns-safe-area-inset-inline-end));
        inset-block-start: 50%;
        margin: 0;
        transform: translateY(-50%);
      }

      .ns-header-promo__close svg {
        width: 1.25rem;
        height: 1.25rem;
      }
    }

    .ns-header-promo:is(
        [data-ns-visual-content-motion-state='prepared'],
        [data-ns-visual-content-motion-state='entering']
      )
      .ns-header-promo__close {
      visibility: hidden;
      opacity: 0;
      pointer-events: none;
    }

    @media (prefers-reduced-motion: reduce) {
      .ns-header-promo__close {
        transition: none;
      }
    }
  }
/* END_SECTION:header-promo */

/* START_SECTION:media-composition (INDEX:43) */
@layer components {
    .ns-media-composition {
      --ns-media-composition-window-height-desktop: auto;
      --ns-media-composition-window-height-tablet: auto;
      --ns-media-composition-window-height-mobile: auto;
      --ns-media-composition-active-height: var(--ns-media-composition-window-height-desktop);
    }

    .ns-media-composition__inner {
      width: 100%;
      min-width: 0;
    }

    .ns-media-composition--padded > .ns-media-composition__inner {
      box-sizing: border-box;
      padding-inline: var(--ns-page-padding);
    }

    .ns-media-composition__items {
      display: grid;
      grid-template-columns: minmax(0, 1fr);
      gap: var(--ns-media-composition-row-gap-desktop, 0px);
      width: 100%;
      min-width: 0;
    }

    .ns-media-composition-row {
      position: relative;
      width: 100%;
      min-width: 0;
      min-height: var(--ns-media-composition-active-height);
    }

    .ns-media-composition-row__composition {
      height: 100%;
      min-height: inherit;
    }

    .ns-media-composition[data-ns-window-height-desktop='full'] {
      --ns-media-composition-window-height-desktop: 100vh;
    }

    .ns-media-composition[data-ns-window-height-desktop='below'] {
      --ns-media-composition-window-height-desktop: calc(100vh - var(--ns-header-flow-height, 0px));
    }

    @supports (height: 100dvh) {
      .ns-media-composition[data-ns-window-height-desktop='full'] {
        --ns-media-composition-window-height-desktop: 100dvh;
      }

      .ns-media-composition[data-ns-window-height-desktop='below'] {
        --ns-media-composition-window-height-desktop: calc(100dvh - var(--ns-header-flow-height, 0px));
      }
    }

    @media (min-width: 1025px) {
      .ns-media-composition[data-ns-window-height-desktop]:not([data-ns-window-height-desktop='off']) {
        --ns-section-surface-min-height: 0px;
        --ns-section-padding-top: 0px;
        --ns-section-padding-bottom: 0px;
      }

      .ns-media-composition[data-ns-window-height-desktop]:not([data-ns-window-height-desktop='off'])
        :is(.ns-visual-stage, .ns-visual-slider, .ns-media-comparison) {
        --ns-visual-stage-min-height-desktop: var(--ns-media-composition-window-height-desktop);
        --ns-visual-slider-height-desktop: var(--ns-media-composition-window-height-desktop);
        --ns-media-comparison-height-desktop: var(--ns-media-composition-window-height-desktop);
      }

      .ns-media-composition-row__composition[data-ns-responsive-layout-desktop='grid'] > .ns-visual-content,
      .ns-media-composition-row__composition[data-ns-responsive-layout-desktop='grid']
        > .ns-u-theme-block-root
        > .ns-visual-content {
        position: relative;
        inset: auto;
        min-height: 100%;
      }
    }

    @media (min-width: 768px) and (max-width: 1024px) {
      .ns-media-composition {
        --ns-media-composition-active-height: var(--ns-media-composition-window-height-tablet);
      }

      .ns-media-composition__items {
        gap: var(--ns-media-composition-row-gap-tablet, var(--ns-media-composition-row-gap-desktop, 0px));
      }

      .ns-media-composition[data-ns-window-height-tablet='full'] {
        --ns-media-composition-window-height-tablet: 100vh;
      }

      .ns-media-composition[data-ns-window-height-tablet='below'] {
        --ns-media-composition-window-height-tablet: calc(100vh - var(--ns-header-flow-height, 0px));
      }

      @supports (height: 100dvh) {
        .ns-media-composition[data-ns-window-height-tablet='full'] {
          --ns-media-composition-window-height-tablet: 100dvh;
        }

        .ns-media-composition[data-ns-window-height-tablet='below'] {
          --ns-media-composition-window-height-tablet: calc(100dvh - var(--ns-header-flow-height, 0px));
        }
      }

      .ns-media-composition[data-ns-window-height-tablet]:not([data-ns-window-height-tablet='off'])
        :is(.ns-visual-stage, .ns-visual-slider, .ns-media-comparison) {
        --ns-visual-stage-min-height-tablet: var(--ns-media-composition-window-height-tablet);
        --ns-visual-slider-height-tablet: var(--ns-media-composition-window-height-tablet);
        --ns-media-comparison-height-tablet: var(--ns-media-composition-window-height-tablet);
      }

      .ns-media-composition[data-ns-window-height-tablet]:not([data-ns-window-height-tablet='off']) {
        --ns-section-surface-min-height: 0px;
        --ns-section-padding-top: 0px;
        --ns-section-padding-bottom: 0px;
      }

      .ns-media-composition-row__composition[data-ns-responsive-layout-tablet='grid'] > .ns-visual-content,
      .ns-media-composition-row__composition[data-ns-responsive-layout-tablet='grid']
        > .ns-u-theme-block-root
        > .ns-visual-content {
        position: relative;
        inset: auto;
        min-height: 100%;
      }
    }

    @media (max-width: 767px) {
      .ns-media-composition {
        --ns-media-composition-active-height: var(--ns-media-composition-window-height-mobile);
      }

      .ns-media-composition__items {
        gap: var(--ns-media-composition-row-gap-mobile, var(--ns-media-composition-row-gap-desktop, 0px));
      }

      .ns-media-composition[data-ns-window-height-mobile='full'] {
        --ns-media-composition-window-height-mobile: 100vh;
      }

      .ns-media-composition[data-ns-window-height-mobile='below'] {
        --ns-media-composition-window-height-mobile: calc(100vh - var(--ns-header-flow-height, 0px));
      }

      @supports (height: 100svh) {
        .ns-media-composition[data-ns-window-height-mobile='full'] {
          --ns-media-composition-window-height-mobile: 100svh;
        }

        .ns-media-composition[data-ns-window-height-mobile='below'] {
          --ns-media-composition-window-height-mobile: calc(100svh - var(--ns-header-flow-height, 0px));
        }
      }

      .ns-media-composition[data-ns-window-height-mobile]:not([data-ns-window-height-mobile='off'])
        :is(.ns-visual-stage, .ns-visual-slider, .ns-media-comparison) {
        --ns-visual-stage-min-height-mobile: var(--ns-media-composition-window-height-mobile);
        --ns-visual-slider-height-mobile: var(--ns-media-composition-window-height-mobile);
        --ns-media-comparison-height-mobile: var(--ns-media-composition-window-height-mobile);
      }

      .ns-media-composition[data-ns-window-height-mobile]:not([data-ns-window-height-mobile='off']) {
        --ns-section-surface-min-height: 0px;
        --ns-section-padding-top: 0px;
        --ns-section-padding-bottom: 0px;
      }

      .ns-media-composition-row__composition[data-ns-responsive-layout-mobile='grid'] > .ns-visual-content,
      .ns-media-composition-row__composition[data-ns-responsive-layout-mobile='grid']
        > .ns-u-theme-block-root
        > .ns-visual-content {
        position: relative;
        inset: auto;
        min-height: 100%;
      }
    }
  }
/* END_SECTION:media-composition */

/* START_SECTION:mega-menu (INDEX:44) */
@layer components {
    .ns-mega-menu {
      position: absolute;
      z-index: 30;
      inset: var(--ns-mega-menu-top, 0) 0 auto;
      inline-size: 100%;
      max-block-size: var(--ns-submenu-available-block-size, none);
      padding: 0;
      overflow-y: hidden;
      overscroll-behavior-block: contain;
      background: var(--ns-color-background);
      color: var(--ns-color-foreground);
      box-shadow: 0 0.375rem 1.5rem color-mix(in srgb, var(--ns-navigation-shadow-color) 12%, transparent);
    }

    .ns-mega-menu[data-ns-submenu-scroll] {
      overflow-y: auto;
    }

    .ns-header-stack .ns-mega-menu {
      inset-block-start: 100%;
    }

    .ns-mega-menu[hidden] {
      display: none;
    }

    .ns-mega-menu[data-ns-surface-motion] {
      transform-origin: center top;
      will-change: transform, opacity;
    }

    .ns-mega-menu[data-ns-surface-motion='opening'] {
      animation: ns-mega-menu-surface-in 150ms cubic-bezier(0.25, 0.1, 0.25, 1) both;
    }

    .ns-mega-menu[data-ns-surface-motion='closing'] {
      pointer-events: none;
      animation: ns-mega-menu-surface-out 150ms cubic-bezier(0.25, 0.1, 0.25, 1) both;
    }

    .ns-mega-menu[data-ns-height-motion] {
      overflow: clip;
      animation: ns-mega-menu-resize 250ms cubic-bezier(0, 0, 0.2, 1) both;
    }

    .ns-mega-menu[data-ns-motion='from-start'],
    .ns-mega-menu[data-ns-motion='from-end'] {
      z-index: 31;
      background: transparent;
      box-shadow: none;
    }

    .ns-mega-menu__inner {
      inline-size: var(--ns-content-width);
      max-inline-size: 100%;
      min-block-size: var(--ns-mega-menu-panel-min-height, 0);
      margin-inline: auto;
      padding-block: var(--ns-mega-menu-padding-block-start, var(--ns-space-40))
        max(
          var(--ns-mega-menu-padding-block-start, var(--ns-space-40)),
          var(--ns-mega-menu-padding-block-end, var(--ns-space-40))
        );
      padding-inline: 0;
      background: var(--ns-color-background);
    }

    .ns-mega-menu[data-ns-motion='from-start'] .ns-mega-menu__inner,
    .ns-mega-menu[data-ns-motion='from-end'] .ns-mega-menu__inner,
    .ns-mega-menu[data-ns-motion='to-start'] .ns-mega-menu__inner,
    .ns-mega-menu[data-ns-motion='to-end'] .ns-mega-menu__inner {
      will-change: transform, opacity;
    }

    .ns-mega-menu[data-ns-motion='from-start'] .ns-mega-menu__inner,
    .ns-mega-menu[data-ns-motion='from-end'] .ns-mega-menu__inner {
      background: transparent;
    }

    .ns-mega-menu[data-ns-motion='to-start'],
    .ns-mega-menu[data-ns-motion='to-end'] {
      pointer-events: none;
    }

    .ns-mega-menu[data-ns-motion='from-start'] .ns-mega-menu__inner {
      animation: ns-mega-menu-content-from-start 250ms cubic-bezier(0, 0, 0.2, 1) both;
    }

    .ns-mega-menu[data-ns-motion='from-end'] .ns-mega-menu__inner {
      animation: ns-mega-menu-content-from-end 250ms cubic-bezier(0, 0, 0.2, 1) both;
    }

    .ns-mega-menu[data-ns-motion='to-start'] .ns-mega-menu__inner {
      animation: ns-mega-menu-content-to-start 250ms cubic-bezier(0, 0, 0.2, 1) both;
    }

    .ns-mega-menu[data-ns-motion='to-end'] .ns-mega-menu__inner {
      animation: ns-mega-menu-content-to-end 250ms cubic-bezier(0, 0, 0.2, 1) both;
    }

    .ns-mega-menu[data-ns-content-motion='entering'] [data-ns-mega-menu-motion-item] {
      animation: ns-mega-menu-item-in 400ms cubic-bezier(0.25, 0.1, 0.25, 1) both;
      animation-delay: calc(var(--ns-mega-menu-group-index, 0) * 35ms + var(--ns-mega-menu-item-index, 0) * 25ms);
    }

    .ns-mega-menu__grid {
      display: grid;
      grid-template-columns: repeat(12, minmax(0, 1fr));
      gap: var(--ns-space-30);
      align-items: start;
    }

    .ns-mega-menu__grid > [id^='shopify-block-'] {
      display: contents;
    }

    .ns-mega-menu-navigation,
    .ns-header-dropdown__item {
      min-width: 0;
    }

    .ns-mega-menu-navigation--inherited {
      grid-column: 1 / -1;
    }

    .ns-mega-menu-navigation--inherited > .ns-header-dropdown__list {
      display: grid;
      grid-template-columns: repeat(var(--ns-mega-menu-inherited-columns), minmax(0, 1fr));
      gap: var(--ns-space-30);
    }

    .ns-mega-menu__grid > .ns-mega-menu-promo,
    .ns-mega-menu__grid > [id^='shopify-block-'] > .ns-mega-menu-promo {
      grid-column: 1 / -1;
    }

    .ns-mega-menu__notice {
      margin-block-end: var(--ns-space-16);
      padding: var(--ns-space-12);
      border: 1px solid var(--ns-color-warning);
      color: var(--ns-color-foreground);
    }

    @keyframes ns-mega-menu-surface-in {
      from {
        opacity: 0;
        transform: perspective(2000px) rotateX(-25deg) scale(0.85);
      }

      to {
        opacity: 1;
        transform: perspective(2000px) rotateX(0deg) scale(1);
      }
    }

    @keyframes ns-mega-menu-surface-out {
      from {
        opacity: 1;
        transform: perspective(2000px) rotateX(0deg) scale(1);
      }

      to {
        opacity: 0;
        transform: perspective(2000px) rotateX(-25deg) scale(0.95);
      }
    }

    @keyframes ns-mega-menu-resize {
      from {
        block-size: var(--ns-mega-menu-from-height);
      }

      to {
        block-size: var(--ns-mega-menu-to-height);
      }
    }

    @keyframes ns-mega-menu-content-from-start {
      from {
        opacity: 0;
        transform: translateX(-150px);
      }

      to {
        opacity: 1;
        transform: translateX(0);
      }
    }

    @keyframes ns-mega-menu-content-from-end {
      from {
        opacity: 0;
        transform: translateX(150px);
      }

      to {
        opacity: 1;
        transform: translateX(0);
      }
    }

    @keyframes ns-mega-menu-content-to-start {
      from {
        opacity: 1;
        transform: translateX(0);
      }

      to {
        opacity: 0;
        transform: translateX(-150px);
      }
    }

    @keyframes ns-mega-menu-content-to-end {
      from {
        opacity: 1;
        transform: translateX(0);
      }

      to {
        opacity: 0;
        transform: translateX(150px);
      }
    }

    @keyframes ns-mega-menu-item-in {
      from {
        opacity: 0;
        filter: blur(2px);
        transform: translateY(4px);
      }

      to {
        opacity: 1;
        filter: blur(0);
        transform: translateY(0);
      }
    }

    @media (prefers-reduced-motion: reduce) {
      .ns-mega-menu[data-ns-surface-motion],
      .ns-mega-menu[data-ns-height-motion],
      .ns-mega-menu[data-ns-motion] .ns-mega-menu__inner,
      .ns-mega-menu[data-ns-content-motion='entering'] [data-ns-mega-menu-motion-item] {
        opacity: 1;
        filter: none;
        transform: none;
        animation: none;
      }
    }

    @media (max-width: 1024px) {
      .ns-mega-menu {
        display: none;
      }
    }
  }
/* END_SECTION:mega-menu */

/* START_SECTION:mobile-bottom-navigation (INDEX:45) */
@layer components {
    .ns-bottom-surface.ns-mobile-bottom-navigation {
      display: none;
    }

    @media (max-width: 1024px) {
      .ns-bottom-surface.ns-mobile-bottom-navigation:not([hidden]) {
        display: block;
      }

      .ns-mobile-bottom-navigation__inner {
        display: grid;
        grid-template-columns: repeat(var(--ns-mobile-bottom-navigation-count), minmax(0, 1fr));
        align-items: stretch;
        padding-block-start: var(--ns-space-8);
      }

      .ns-mobile-bottom-navigation__item {
        position: relative;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: var(--ns-space-4);
        min-inline-size: 0;
        min-block-size: 3.5rem;
        padding: var(--ns-space-6);
        color: var(--ns-color-foreground);
        background: transparent;
        border: 0;
        border-radius: var(--ns-radius-compact, var(--ns-radius-lg));
        cursor: pointer;
        font-size: var(--ns-type-label-size);
        line-height: 1.1;
        text-align: center;
        text-decoration: none;
      }

      .ns-mobile-bottom-navigation__item:is(:hover, :focus-visible, [aria-current='page']) {
        color: var(--ns-color-primary);
        background: var(--ns-color-surface-alt);
      }

      .ns-mobile-bottom-navigation__item:disabled {
        cursor: not-allowed;
        opacity: 0.45;
      }

      .ns-mobile-bottom-navigation__item > svg,
      .ns-mobile-bottom-navigation__icon,
      .ns-mobile-bottom-navigation__icon > svg {
        inline-size: 1.5rem;
        block-size: 1.5rem;
      }

      .ns-mobile-bottom-navigation__icon {
        position: relative;
        display: block;
      }

      .ns-mobile-bottom-navigation__badge:not([hidden]) {
        position: absolute;
        inset-block-start: -0.5rem;
        inset-inline-end: -0.75rem;
        display: grid;
        place-items: center;
        min-inline-size: 1.25rem;
        min-block-size: 1.25rem;
        padding-inline: var(--ns-space-4);
        color: var(--ns-color-on-primary);
        background: var(--ns-color-primary);
        border-radius: var(--ns-radius-pill, 999px);
        font-size: var(--ns-type-label-size);
        line-height: 1;
      }
    }
  }
/* END_SECTION:mobile-bottom-navigation */

/* START_SECTION:popup (INDEX:50) */
@layer components {
    .ns-popup-overlay[data-ns-auto-height='true'] .ns-overlay__dialog[open] {
      display: grid;
      overflow-x: hidden;
      overflow-y: auto;
      overscroll-behavior: contain;
    }

    .ns-popup-overlay[data-ns-auto-height='true'] .ns-overlay__panel {
      position: relative;
      inset: auto;
      width: min(var(--ns-overlay-inline-size), 100%);
      height: auto;
      max-width: 100%;
      max-height: none;
      translate: none;
    }

    .ns-popup-overlay[data-ns-auto-height='true'] .ns-overlay__body {
      overflow: visible;
      overscroll-behavior: auto;
      touch-action: auto;
    }

    .ns-popup-overlay[data-ns-auto-height='true'][data-ns-placement='center'] .ns-overlay__panel {
      place-self: safe center;
    }

    .ns-popup-overlay[data-ns-auto-height='true'][data-ns-placement='top'] .ns-overlay__panel {
      align-self: start;
      justify-self: stretch;
    }

    .ns-popup-overlay[data-ns-auto-height='true'][data-ns-placement='bottom'] .ns-overlay__panel {
      align-self: safe end;
      justify-self: stretch;
    }

    .ns-popup-overlay[data-ns-auto-height='true'][data-ns-placement='left'] .ns-overlay__panel {
      align-self: stretch;
      justify-self: start;
    }

    .ns-popup-overlay[data-ns-auto-height='true'][data-ns-placement='right'] .ns-overlay__panel {
      align-self: stretch;
      justify-self: end;
    }
  }
/* END_SECTION:popup */

/* START_SECTION:predictive-search (INDEX:51) */
@layer components {
    .ns-predictive-results {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(13.75rem, 1fr));
      gap: var(--ns-space-40) clamp(var(--ns-space-32), 5vw, var(--ns-space-64));
      align-items: start;
    }

    .ns-predictive-results__group h3 {
      margin: 0 0 var(--ns-space-20);
      color: var(--ns-color-foreground);
      font-size: var(--ns-type-body-small-size);
      font-weight: var(--ns-type-weight-emphasis);
      line-height: var(--ns-type-body-line-height);
      text-transform: uppercase;
    }

    .ns-predictive-results__group ul {
      display: grid;
      margin: 0;
      padding: 0;
      list-style: none;
    }

    .ns-predictive-results__text-list {
      gap: 0;
    }

    .ns-predictive-results__product-list {
      gap: var(--ns-space-16);
    }

    .ns-predictive-results__group a {
      display: flex;
      color: var(--ns-color-foreground);
      text-decoration: none;
    }

    .ns-predictive-results__text-list a {
      --ns-predictive-result-line-height: 1.5rem;

      min-height: var(--ns-control-block-size-24);
      align-items: center;
      padding-inline: var(--ns-space-4);
      color: var(--ns-color-muted);
      font-size: var(--ns-type-label-size);
      line-height: var(--ns-predictive-result-line-height);
    }

    .ns-predictive-results__text-list mark {
      background: transparent;
      color: inherit;
      font: inherit;
    }

    .ns-predictive-results__group a:hover,
    .ns-predictive-results__group a:focus-visible {
      background: var(--ns-color-surface);
      color: var(--ns-color-foreground);
    }

    .ns-predictive-results__group a[data-selected] {
      background: var(--ns-color-surface);
      color: var(--ns-color-foreground);
      outline: 2px solid currentColor;
      outline-offset: 2px;
    }

    .ns-predictive-results__product {
      align-items: center;
      gap: var(--ns-space-16);
      min-width: 0;
    }

    .ns-predictive-results__product-image {
      flex: 0 0 3.75rem;
      width: 3.75rem;
      aspect-ratio: 15 / 19;
      object-fit: cover;
      border-radius: var(--ns-radius-lg);
      background: var(--ns-color-surface);
    }

    .ns-predictive-results__product-content {
      display: grid;
      width: 100%;
      min-width: 0;
      gap: 0;
      overflow: hidden;
    }

    .ns-predictive-results__product-title,
    .ns-predictive-results__product-content .ns-product-card__eyebrow,
    .ns-predictive-results__product-price .ns-product-price__current {
      overflow: hidden;
      font: inherit;
      text-overflow: ellipsis;
      white-space: nowrap;
    }

    .ns-predictive-results__product-content .ns-product-card__eyebrow {
      margin: 0;
      color: var(--ns-color-muted);
      font-size: var(--ns-type-label-size);
      line-height: 1.35;
    }

    .ns-predictive-results__product-title {
      font-size: var(--ns-type-card-title-size);
      font-weight: var(--ns-type-weight-interface);
      line-height: var(--ns-type-body-line-height);
    }

    .ns-predictive-results__product-price {
      display: flex;
      flex-wrap: wrap;
      gap: var(--ns-space-4);
      min-width: 0;
      margin-block-start: var(--ns-space-4);
      font-size: var(--ns-type-price-size);
      line-height: var(--ns-type-body-line-height);
    }

    @media (max-width: 767px) {
      .ns-predictive-results {
        grid-template-columns: 1fr;
        gap: var(--ns-space-24);
        padding: var(--ns-space-24) var(--ns-space-16);
        background: var(--ns-color-background);
        box-shadow: 0 var(--ns-space-4) var(--ns-space-16)
          color-mix(in srgb, var(--ns-color-foreground) 10%, transparent);
      }

      .ns-predictive-results__group h3 {
        margin-block-end: var(--ns-space-12);
        font-size: var(--ns-type-body-size);
      }

      .ns-predictive-results__product-list {
        gap: var(--ns-space-16);
      }
    }
  }
/* END_SECTION:predictive-search */

/* START_SECTION:search (INDEX:57) */
@layer components {
    .ns-search-listing {
      display: block;
    }

    .ns-search-listing--filters-disabled .ns-listing-topbar__filter-trigger {
      display: none;
    }

    .ns-search-listing--sorting-disabled .ns-listing-topbar__select:first-of-type {
      display: none;
    }

    .ns-search-listing__header {
      display: grid;
      gap: var(--ns-space-20);
      margin-block-end: var(--ns-space-30);
    }

    .ns-search-listing__form {
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      gap: var(--ns-space-10);
      max-inline-size: 42rem;
    }

    .ns-search-listing__input,
    .ns-search-listing__submit {
      block-size: var(--ns-text-control-block-size);
      min-block-size: var(--ns-text-control-block-size);
      border: 1px solid var(--ns-color-border);
    }

    .ns-search-listing__input {
      min-inline-size: 0;
      padding-inline: var(--ns-space-16);
      border-radius: var(--ns-radius-input, 0px);
      background: var(--ns-color-surface-alt);
      color: var(--ns-color-foreground);
    }

    .ns-search-listing__submit {
      padding-inline: var(--ns-button-padding-inline);
      border-radius: var(--ns-radius-button, 0px);
      background: var(--ns-color-primary);
      color: var(--ns-color-on-primary);
      cursor: pointer;
    }

    .ns-search-listing__empty,
    .ns-search-listing__noscript-filters {
      margin-block: var(--ns-space-30);
    }

    .ns-search-card {
      --ns-search-card-edge-radius-limit: 999px;

      display: grid;
      gap: var(--ns-space-15);
      min-inline-size: 0;
    }

    .ns-search-card__media {
      display: block;
      overflow: hidden;
      aspect-ratio: 25 / 32;
      border-radius: min(
        var(--ns-radius-media, 0px),
        var(--ns-radius-density-active, var(--ns-radius-4xl)),
        var(--ns-search-card-edge-radius-limit)
      );
      background: var(--ns-color-surface-alt);
    }

    .ns-search-card__image {
      inline-size: 100%;
      block-size: 100%;
      object-fit: cover;
    }

    .ns-search-card__type,
    .ns-search-card__title,
    .ns-search-card__excerpt {
      margin: 0;
    }

    .ns-search-card__type {
      margin-block-end: var(--ns-space-4);
      color: var(--ns-color-muted);
      font-size: var(--ns-type-label-size);
    }

    .ns-search-card__title {
      margin-block-end: var(--ns-space-8);
      font: inherit;
    }

    .ns-search-card__title a,
    .ns-search-card__link {
      color: inherit;
      text-underline-offset: 0.2em;
    }

    .ns-search-card__excerpt {
      margin-block-end: var(--ns-space-12);
      color: var(--ns-color-muted);
    }

    @media (max-width: 46.99rem) {
      .ns-search-listing__form {
        grid-template-columns: minmax(0, 1fr);
      }
    }

    @media (max-width: 767px) {
      .ns-search-listing[data-ns-layout-mobile='1'] .ns-search-card {
        --ns-search-card-edge-radius-limit: var(--ns-section-edge-media-radius-limit-mobile, 999px);
      }
    }

    @media (min-width: 48rem) and (max-width: 64rem) {
      .ns-search-listing[data-ns-layout-tablet='list'] .ns-search-card {
        grid-template-columns: minmax(9rem, 14rem) minmax(0, 1fr);
        align-items: center;
      }
    }

    @media (min-width: 64.0625rem) {
      .ns-search-listing[data-ns-layout-desktop='list'] .ns-search-card {
        grid-template-columns: minmax(9rem, 16rem) minmax(0, 1fr);
        align-items: center;
      }
    }
  }
/* END_SECTION:search */

/* START_SECTION:type-showcase (INDEX:63) */
@layer components {
    .ns-type-showcase {
      display: grid;
      gap: var(--ns-space-60);
      padding-block: var(--ns-section-space-block);
    }

    .ns-type-showcase__header,
    .ns-type-showcase__section,
    .ns-type-showcase__headings,
    .ns-type-showcase__copy,
    .ns-type-showcase__forms {
      display: grid;
    }

    .ns-type-showcase__header {
      gap: var(--ns-space-16);
      max-inline-size: 50rem;
    }

    .ns-type-showcase__header p {
      color: var(--ns-color-muted);
      font-size: var(--ns-type-body-large-size);
      line-height: var(--ns-type-body-large-line-height);
    }

    .ns-type-showcase__section {
      gap: var(--ns-space-40);
      padding-block-start: var(--ns-space-40);
      border-block-start: 1px solid var(--ns-color-border);
    }

    .ns-type-showcase__headings {
      gap: var(--ns-space-32);
    }

    .ns-type-showcase__copy {
      gap: var(--ns-space-30);
      max-inline-size: 50rem;
      color: var(--ns-color-muted);
    }

    .ns-type-showcase__body-large {
      font-size: var(--ns-type-body-large-size);
      line-height: 1.4;
    }

    .ns-type-showcase__lists {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: var(--ns-space-40);
      color: var(--ns-color-muted);
      font-size: var(--ns-type-body-large-size);
      line-height: 1.4;
    }

    .ns-type-showcase__lists :is(ul, ol) {
      padding-inline-start: var(--ns-space-20);
    }

    .ns-type-showcase__lists li::marker {
      color: var(--ns-color-foreground);
    }

    .ns-type-showcase__navigation-list {
      padding-inline-start: 0;
      font-size: var(--ns-type-label-size);
      line-height: 1.6;
      list-style: none;
    }

    .ns-type-showcase__buttons {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: var(--ns-space-20) var(--ns-space-24);
    }

    .ns-type-showcase__forms {
      gap: var(--ns-space-48);
      max-inline-size: 32.5rem;
    }

    .ns-type-showcase__checkbox {
      display: inline-flex;
      align-items: center;
      justify-self: start;
      gap: var(--ns-space-8);
      color: var(--ns-color-foreground);
      font-size: var(--ns-type-body-size);
      line-height: 1.4;
      cursor: pointer;
    }

    @media (width < 48rem) {
      .ns-type-showcase {
        gap: var(--ns-space-48);
        padding-block: var(--ns-space-40);
      }

      .ns-type-showcase__lists {
        grid-template-columns: 1fr;
      }
    }
  }
/* END_SECTION:type-showcase */

/* CSS from block stylesheet tags */
/* START_BLOCK:_add-to-cart (INDEX:69) */
@layer components {
    .ns-product-add__label {
      min-inline-size: 0;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }
  }
/* END_BLOCK:_add-to-cart */

/* START_BLOCK:_footer-back-to-top (INDEX:87) */
@layer components {
    .ns-footer-back-to-top {
      display: inline-flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      gap: var(--ns-space-8);
      min-height: var(--ns-touch-target-min);
      padding: var(--ns-space-8) var(--ns-space-12);
      color: var(--ns-color-foreground);
      font-size: var(--ns-type-navigation-size);
      font-weight: var(--ns-type-weight-interface);
      text-decoration: none;
      border-radius: var(--ns-radius-compact, var(--ns-radius-lg));
      background: transparent;
      transition:
        color 160ms ease,
        background-color 160ms ease;
    }

    .ns-footer-back-to-top__icon,
    .ns-footer-back-to-top__icon svg {
      width: 1rem;
      height: 1rem;
    }

    .ns-footer-back-to-top__icon svg {
      fill: currentColor;
    }

    .ns-footer-back-to-top:active {
      background: color-mix(in srgb, var(--ns-color-foreground) 14%, transparent);
    }

    .ns-footer-back-to-top:focus-visible {
      background: color-mix(in srgb, var(--ns-color-foreground) 14%, transparent);
      outline: 2px solid var(--ns-color-primary);
      outline-offset: 2px;
    }

    @media (hover: hover) and (pointer: fine) {
      .ns-footer-back-to-top:hover {
        background: color-mix(in srgb, var(--ns-color-foreground) 14%, transparent);
      }
    }
  }
/* END_BLOCK:_footer-back-to-top */

/* START_BLOCK:_footer-brand (INDEX:88) */
@layer components {
    .ns-footer-brand {
      display: block;
      width: 100%;
      color: var(--ns-color-foreground);
    }

    .ns-footer-brand__image {
      display: block;
      width: 100%;
      height: auto;
    }

    .ns-footer-brand__shop-name {
      display: block;
      color: currentcolor;
      font-size: var(--ns-type-large-size);
      font-weight: var(--ns-type-weight-heading);
      line-height: var(--ns-type-large-line-height);
      overflow-wrap: anywhere;
    }
  }
/* END_BLOCK:_footer-brand */

/* START_BLOCK:_footer-legal (INDEX:89) */
@layer components {
    .ns-footer-legal {
      color: var(--ns-color-muted);
      font-size: var(--ns-type-caption-size);
      line-height: var(--ns-type-caption-line-height);
      text-align: center;
    }

    .ns-footer-legal a {
      color: inherit;
      text-underline-offset: 0.08em;
    }

    @media (min-width: 1025px) {
      .ns-footer-legal {
        text-align: start;
      }
    }
  }
/* END_BLOCK:_footer-legal */

/* START_BLOCK:_footer-newsletter (INDEX:90) */
@layer components {
    .ns-footer-newsletter {
      text-align: center;
    }

    .ns-footer-newsletter .ns-newsletter-signup__description {
      line-height: 1.2;
    }

    @media (min-width: 1025px) {
      .ns-footer-layout--type_2 .ns-footer-newsletter {
        grid-template-columns: minmax(18rem, 1fr) minmax(28rem, 1fr);
        align-items: center;
        text-align: start;
      }

      .ns-footer-layout--type_3 .ns-footer-newsletter,
      .ns-footer-layout--type_5 .ns-footer-newsletter {
        text-align: start;
      }

      .ns-footer-layout--type_4 .ns-footer-newsletter {
        text-align: center;
      }

      .ns-footer-layout--type_4 .ns-footer-newsletter .ns-newsletter-signup__form {
        grid-template-columns: 1fr;
      }

      .ns-footer-layout--type_4 .ns-footer-newsletter .ns-newsletter-signup__submit {
        justify-self: center;
      }

      .ns-footer-layout--type_5 .ns-footer-newsletter {
        text-align: center;
      }
    }
  }
/* END_BLOCK:_footer-newsletter */

/* START_BLOCK:_footer-payments (INDEX:91) */
@layer components {
    .ns-footer-payments {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      justify-content: center;
      gap: var(--ns-space-8);
      padding: 0;
      list-style: none;
    }

    .ns-footer-payments svg {
      display: block;
      width: 2.375rem;
      height: 1.5rem;
    }

    @media (min-width: 1025px) {
      .ns-footer-payments {
        justify-content: flex-end;
      }
    }
  }
/* END_BLOCK:_footer-payments */

/* START_BLOCK:_footer-social (INDEX:92) */
@layer components {
    .ns-footer-social {
      display: grid;
      justify-items: center;
      gap: var(--ns-space-16);
    }

    .ns-footer-social--empty {
      display: none;
    }

    .ns-footer-social__heading {
      font-size: var(--ns-type-navigation-size);
      font-weight: var(--ns-type-weight-emphasis);
      line-height: var(--ns-type-body-line-height);
      letter-spacing: 0.05em;
      text-transform: uppercase;
    }

    .ns-footer-social__list {
      --ns-social-icon-size: 1.25rem;

      display: flex;
      flex-wrap: wrap;
      align-items: center;
      justify-content: center;
      gap: var(--ns-space-24);
      padding: 0;
      list-style: none;
    }

    .ns-footer-social__list a {
      display: grid;
      grid-template-columns: 1.25rem minmax(0, 1fr);
      align-items: center;
      gap: var(--ns-space-10);
      place-items: center;
      width: 1.25rem;
      height: 1.25rem;
      color: var(--ns-color-foreground);
      text-decoration: none;
    }

    .ns-social-links__name {
      display: none;
      color: var(--ns-color-muted);
      line-height: 1.6;
      text-transform: capitalize;
    }

    @media (min-width: 1025px) {
      .ns-footer-social {
        justify-items: start;
      }

      .ns-footer-social__heading {
        color: var(--ns-color-muted);
        font-size: var(--ns-type-interface-meta-size);
        font-weight: var(--ns-type-weight-body);
        line-height: var(--ns-type-body-small-line-height);
        letter-spacing: normal;
        text-transform: none;
      }

      .ns-footer-social__list {
        --ns-social-icon-size: 0.875rem;
      }

      .ns-footer-social__list a {
        grid-template-columns: 0.875rem minmax(0, 1fr);
        width: 0.875rem;
        height: 0.875rem;
      }

      .ns-footer-social__list {
        gap: var(--ns-space-16);
      }
    }
  }
/* END_BLOCK:_footer-social */

/* START_BLOCK:_footer-support (INDEX:93) */
@layer components {
    .ns-footer-support {
      border-block-end: 1px solid var(--ns-color-border);
    }

    .ns-footer-support__summary {
      position: relative;
      display: flex;
      align-items: center;
      justify-content: center;
      min-height: var(--ns-touch-target-min);
      padding-inline: var(--ns-space-40);
      color: var(--ns-color-heading);
      font-size: var(--ns-type-navigation-size);
      font-weight: var(--ns-type-weight-emphasis);
      line-height: var(--ns-type-body-line-height);
      letter-spacing: 0.05em;
      text-align: center;
      text-transform: uppercase;
      cursor: pointer;
      list-style: none;
    }

    .ns-footer-support__summary::-webkit-details-marker {
      display: none;
    }

    .ns-footer-support__indicator {
      position: absolute;
      inset-inline-end: var(--ns-space-10);
      width: 0.75rem;
      height: 0.75rem;
    }

    .ns-footer-support__indicator::before,
    .ns-footer-support__indicator::after {
      position: absolute;
      inset: 50% auto auto 50%;
      width: 0.625rem;
      height: 1px;
      background: currentColor;
      content: '';
      transform: translate(-50%, -50%);
    }

    .ns-footer-support__indicator::after {
      transform: translate(-50%, -50%) rotate(90deg);
    }

    .ns-footer-support[open] .ns-footer-support__indicator::after {
      display: none;
    }

    .ns-footer-support__content {
      display: grid;
      justify-items: center;
      gap: var(--ns-space-12);
      padding: var(--ns-space-20) var(--ns-space-10) var(--ns-space-40);
      color: var(--ns-color-muted);
      text-align: center;
    }

    .ns-footer-support__content > .ns-group,
    .ns-footer-support__content > .ns-u-theme-block-root > .ns-group {
      color: var(--ns-color-muted);
    }

    .ns-footer-support__content .ns-icon-content {
      color: var(--ns-color-muted);
    }

    .ns-footer-support__content .ns-visual-group {
      align-items: flex-start;
      justify-content: flex-start;
      text-align: start;
    }

    .ns-footer-support__service {
      color: var(--ns-color-foreground);
    }

    .ns-footer-support__item {
      display: grid;
      grid-template-columns: 1.25rem minmax(0, 1fr);
      align-items: start;
      gap: var(--ns-space-10);
      color: var(--ns-color-muted);
      text-align: start;
      text-decoration: none;
    }

    .ns-footer-support__icon,
    .ns-footer-support__icon svg {
      width: 1.25rem;
      height: 1.25rem;
    }

    .ns-footer-support__icon svg {
      fill: currentColor;
    }

    .ns-footer-support__email span:last-child {
      text-decoration: underline;
      text-underline-offset: 0.08em;
    }

    @media (min-width: 1025px) {
      .ns-footer-support {
        border: 0;
      }

      .ns-footer-support__summary {
        justify-content: flex-start;
        min-height: auto;
        padding: 0;
        color: var(--ns-color-muted);
        font-size: var(--ns-type-interface-meta-size);
        font-weight: var(--ns-type-weight-body);
        line-height: var(--ns-type-body-small-line-height);
        letter-spacing: normal;
        text-align: start;
        text-transform: none;
        cursor: default;
      }

      .ns-footer-support__indicator {
        display: none;
      }

      .ns-footer-support__content,
      .ns-footer-support:not([open]) .ns-footer-support__content {
        display: grid;
        justify-items: start;
        padding: var(--ns-space-16) 0 0;
        text-align: start;
      }

    }
  }
/* END_BLOCK:_footer-support */

/* START_BLOCK:_mobile-menu-icons (INDEX:105) */
@layer components {
    .ns-menu-item-icons,
    .ns-menu-item-icon,
    .ns-menu-item-icon > [data-ns-icon-render] {
      display: grid;
      place-items: center;
      width: var(--ns-icon-size-20);
      height: var(--ns-icon-size-20);
    }

    .ns-menu-item-icons {
      flex: 0 0 var(--ns-icon-size-20);
    }

    .ns-menu-item-icon,
    .ns-menu-item-icon > [data-ns-icon-render] {
      grid-area: 1 / 1;
    }

    .ns-menu-item-icon svg {
      display: block;
      width: 100%;
      height: 100%;
      color: currentColor;
    }
  }
/* END_BLOCK:_mobile-menu-icons */

/* START_BLOCK:_visual-evidence-item (INDEX:132) */
@layer components {
    .ns-visual-evidence-item {
      display: grid;
      gap: var(--ns-space-10);
      min-width: 0;
      padding: var(--ns-space-16);
      color: var(--ns-color-foreground);
      text-align: start;
      border: 1px solid var(--ns-color-border);
      border-radius: var(--ns-radius-content-panel, var(--ns-radius-xs));
    }

    .ns-visual-evidence-item__claim,
    .ns-visual-evidence-item__status,
    .ns-visual-evidence-item__facts,
    .ns-visual-evidence-item__disclaimer {
      margin: 0;
    }

    .ns-visual-evidence-item__claim {
      color: var(--ns-color-heading, currentColor);
      font-family: var(--ns-font-heading-family);
      font-size: var(--ns-type-card-title-size);
      font-weight: var(--ns-font-heading-weight);
      line-height: var(--ns-type-heading-line-height);
    }

    .ns-visual-evidence-item__status {
      width: fit-content;
      padding: var(--ns-space-4) var(--ns-space-8);
      font-size: var(--ns-type-caption-size);
      line-height: 1.2;
      border: 1px solid currentcolor;
      border-radius: var(--ns-product-badge-radius, var(--ns-radius-md));
    }

    .ns-visual-evidence-item__facts {
      display: grid;
      gap: var(--ns-space-8);
    }

    .ns-visual-evidence-item__facts > div {
      display: grid;
      grid-template-columns: minmax(6rem, 0.35fr) minmax(0, 1fr);
      gap: var(--ns-space-12);
    }

    .ns-visual-evidence-item__facts :is(dt, dd),
    .ns-visual-evidence-item__facts dd > :first-child,
    .ns-visual-evidence-item__facts dd > :last-child {
      margin: 0;
    }

    .ns-visual-evidence-item__facts dt {
      color: var(--ns-color-muted, currentColor);
      font-size: var(--ns-type-caption-size);
      font-weight: var(--ns-type-weight-emphasis);
      letter-spacing: 0.04em;
      text-transform: uppercase;
    }

    .ns-visual-evidence-item__facts dd,
    .ns-visual-evidence-item__disclaimer,
    .ns-visual-evidence-item__document {
      font-size: var(--ns-type-body-small-size);
      line-height: var(--ns-type-body-line-height);
    }

    .ns-visual-evidence-item__rich-text > :first-child,
    .ns-visual-evidence-item__disclaimer > :first-child {
      margin-block-start: 0;
    }

    .ns-visual-evidence-item__rich-text > :last-child,
    .ns-visual-evidence-item__disclaimer > :last-child {
      margin-block-end: 0;
    }

    .ns-visual-evidence-item__disclaimer {
      color: var(--ns-color-muted, currentColor);
    }

    .ns-visual-evidence-item__document {
      width: fit-content;
      color: var(--ns-color-link, currentColor);
      text-underline-offset: 0.18em;
    }

    @media (max-width: 479px) {
      .ns-visual-evidence-item__facts > div {
        grid-template-columns: 1fr;
        gap: var(--ns-space-4);
      }
    }
  }
/* END_BLOCK:_visual-evidence-item */

/* START_BLOCK:accordion (INDEX:137) */
@layer components {
    .ns-accordion {
      width: min(100%, var(--ns-accordion-max-width, 48.125rem));
      margin-inline: auto;
      border-block-start: 1px solid var(--ns-color-border);
    }

    .ns-accordion__item {
      border-block-end: 1px solid var(--ns-color-border);
    }

    .ns-accordion__summary {
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      align-items: center;
      gap: var(--ns-space-16);
      min-height: 2.125rem;
      padding-block: var(--ns-space-8);
      color: var(--ns-color-heading, currentColor);
      font-size: var(--ns-type-body-size);
      font-weight: var(--ns-type-weight-interface);
      line-height: 1.3;
      letter-spacing: 0.025em;
      text-transform: uppercase;
      cursor: pointer;
      list-style: none;
    }

    .ns-accordion__summary::-webkit-details-marker {
      display: none;
    }

    .ns-accordion__indicator::before {
      display: block;
      inline-size: 1em;
      text-align: center;
      content: '+';
    }

    .ns-accordion__item[open] > .ns-accordion__summary .ns-accordion__indicator::before {
      content: '\00d7';
    }

    .ns-accordion__content {
      padding-block: var(--ns-space-16) var(--ns-space-20);
      color: var(--ns-color-muted, currentColor);
    }

    .ns-accordion__content > * + * {
      margin-block-start: var(--ns-space-16);
    }
  }
/* END_BLOCK:accordion */

/* START_BLOCK:buy-buttons (INDEX:140) */
@layer components {
    .ns-product-form__variant-fallback {
      display: grid;
      gap: var(--ns-space-8);
      margin-block-end: var(--ns-space-12);
    }
    ns-product-information:defined .ns-product-form__variant-fallback {
      position: absolute;
      inline-size: 1px;
      block-size: 1px;
      overflow: hidden;
      clip-path: inset(50%);
    }
    .ns-consent-gate {
      display: grid;
      grid-column: 1 / -1;
      gap: var(--ns-space-10);
    }
    .ns-consent-gate [data-ns-consent-action][aria-disabled='true'] {
      opacity: 0.5;
    }
    .ns-product-terms {
      display: flex;
      align-items: center;
      gap: var(--ns-space-8);
      cursor: pointer;
    }
    .ns-product-terms:has(input:not(:checked)) + .ns-product-accelerated {
      opacity: 0.5;
    }
    .ns-product-accelerated {
      --shopify-accelerated-checkout-button-block-size: var(--ns-button-block-size);
      --shopify-accelerated-checkout-button-border-radius: var(--ns-radius-button, 0px);
      --shopify-accelerated-checkout-button-box-shadow: none;
    }
  }

  .ns-product-accelerated.ns-product-accelerated[data-ns-consent-action] button {
    background-color: var(--ns-color-success);
    color: var(--ns-color-on-primary);
    text-transform: uppercase;
  }
/* END_BLOCK:buy-buttons */

/* START_BLOCK:contact-form (INDEX:148) */
@layer components {
    .ns-contact-form,
    .ns-contact-form__form {
      inline-size: 100%;
      min-inline-size: 0;
    }

    .ns-contact-form__form {
      display: grid;
      grid-template-columns: minmax(0, 1fr);
      gap: var(--ns-contact-form-gap, var(--ns-space-32));
      margin: 0;
    }

    .ns-contact-form__field {
      min-inline-size: 0;
    }

    .ns-contact-form__errors {
      padding: var(--ns-space-12);
      color: var(--ns-color-critical);
      background: color-mix(in srgb, var(--ns-color-critical) 7%, var(--ns-color-background));
      border: 1px solid color-mix(in srgb, var(--ns-color-critical) 30%, transparent);
    }

    .ns-contact-form__errors-heading {
      margin: 0;
      font-size: var(--ns-type-label-size);
      line-height: var(--ns-type-label-line-height);
      text-transform: uppercase;
    }

    .ns-contact-form__errors ul {
      margin-block: var(--ns-space-8) 0;
      padding-inline-start: var(--ns-space-20);
    }

    .ns-contact-form__submit {
      justify-self: start;
      min-inline-size: 7.1875rem;
    }

    .ns-contact-form__success {
      display: inline-flex;
      align-items: center;
      justify-self: start;
      gap: var(--ns-space-8);
      min-block-size: var(--ns-button-block-size);
      margin: 0;
      padding-inline: var(--ns-button-padding-inline);
      color: var(--ns-color-success);
      font-size: var(--ns-type-label-size);
      line-height: var(--ns-type-label-line-height);
      letter-spacing: var(--ns-type-label-letter-spacing);
      text-transform: uppercase;
      border: 1px solid var(--ns-color-success);
    }

    .ns-contact-form__success-icon {
      inline-size: 0.75rem;
      block-size: 0.375rem;
      border-block-end: 1px solid currentcolor;
      border-inline-start: 1px solid currentcolor;
      transform: rotate(-45deg) translateY(-0.125rem);
    }
  }
/* END_BLOCK:contact-form */

/* START_BLOCK:footer-menu (INDEX:150) */
@layer components {
    .ns-footer-menu {
      color: var(--ns-color-foreground);
      border-block-end: 1px solid var(--ns-color-border);
    }

    .ns-footer-menu__summary {
      position: relative;
      display: flex;
      align-items: center;
      justify-content: center;
      min-height: var(--ns-touch-target-min);
      padding-inline: var(--ns-space-40);
      color: var(--ns-color-heading);
      font-size: var(--ns-type-navigation-size);
      font-weight: var(--ns-type-weight-emphasis);
      line-height: var(--ns-type-body-line-height);
      letter-spacing: 0.05em;
      text-align: center;
      text-transform: uppercase;
      cursor: pointer;
      list-style: none;
    }

    .ns-footer-menu__summary::-webkit-details-marker {
      display: none;
    }

    .ns-footer-menu__indicator {
      position: absolute;
      inset-inline-end: var(--ns-space-10);
      width: 0.75rem;
      height: 0.75rem;
    }

    .ns-footer-menu__indicator::before,
    .ns-footer-menu__indicator::after {
      position: absolute;
      inset: 50% auto auto 50%;
      width: 0.625rem;
      height: 1px;
      background: currentColor;
      content: '';
      transform: translate(-50%, -50%);
    }

    .ns-footer-menu__indicator::after {
      transform: translate(-50%, -50%) rotate(90deg);
    }

    .ns-footer-menu[open] .ns-footer-menu__indicator::after {
      display: none;
    }

    .ns-footer-menu__list {
      padding: var(--ns-space-16) var(--ns-space-10) var(--ns-space-40);
      color: var(--ns-color-foreground);
      text-align: center;
    }

    @media (min-width: 1025px) {
      .ns-footer-menu {
        border: 0;
      }

      .ns-footer-menu__summary {
        justify-content: flex-start;
        min-height: auto;
        padding: 0;
        text-align: start;
        cursor: default;
      }

      .ns-footer-menu__indicator {
        display: none;
      }

      .ns-footer-menu__list,
      .ns-footer-menu:not([open]) .ns-footer-menu__list {
        display: grid;
        padding: 0;
        text-align: start;
      }
    }
  }
/* END_BLOCK:footer-menu */

/* START_BLOCK:group (INDEX:151) */
@layer components {
    .ns-group {
      display: flex;
      flex-wrap: var(--ns-group-wrap, nowrap);
      gap: var(--ns-group-gap, 0);
      inline-size: 100%;
      min-inline-size: 0;
    }

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

    .ns-group--vertical {
      flex-direction: column;
      align-items: var(--ns-group-alignment);
      padding-block: var(--ns-group-padding);
    }

    .ns-group > .ns-visual-content,
    .ns-group > .ns-u-theme-block-root:has(> .ns-visual-content),
    .ns-group > .ns-u-theme-block-root > .ns-visual-content {
      position: static;
      inset: auto;
      inline-size: 100%;
      min-inline-size: 0;
      max-inline-size: 100%;
    }

    .ns-group--horizontal > .ns-visual-content,
    .ns-group--horizontal > .ns-u-theme-block-root:has(> .ns-visual-content) {
      flex: 1 1 0;
    }
  }
/* END_BLOCK:group */

/* START_BLOCK:icon-content (INDEX:152) */
@layer components {
    .ns-icon-content {
      display: flex;
      justify-content: var(--ns-icon-content-alignment, center);
      color: inherit;
      text-decoration: none;
    }

    .ns-icon-content--left { --ns-icon-content-alignment: flex-start; }
    .ns-icon-content--center { --ns-icon-content-alignment: center; }
    .ns-icon-content--right { --ns-icon-content-alignment: flex-end; }

    .ns-icon-content__icon,
    .ns-icon-content__icon > [data-ns-icon-render] {
      display: block;
      width: var(--ns-icon-content-size);
      height: var(--ns-icon-content-size);
      color: inherit;
    }

    .ns-icon-content__icon svg {
      display: block;
      width: 100%;
      height: 100%;
    }
  }
/* END_BLOCK:icon-content */

/* START_BLOCK:mega-menu-brand (INDEX:154) */
@layer components {
    .ns-mega-menu-brand {
      --ns-mega-menu-brand-radius: min(
        var(--ns-radius-content-panel, var(--ns-radius-2xl)),
        var(--ns-mega-menu-group-density-radius, var(--ns-radius-density-active, var(--ns-radius-4xl))),
        max(var(--ns-radius-sm), 8cqi)
      );

      display: grid;
      grid-column: span var(--ns-mega-menu-span, 1);
      place-items: center;
      min-inline-size: 0;
      block-size: 80px;
      padding: var(--ns-space-10);
      border: 1px solid var(--ns-color-border);
      border-radius: var(--ns-mega-menu-brand-radius);
      color: var(--ns-color-heading);
      container-type: inline-size;
      text-align: center;
      text-decoration: none;
    }

    .ns-mega-menu-brand:hover,
    .ns-mega-menu-brand:focus-visible {
      border-color: var(--ns-color-heading);
    }

    .ns-mega-menu-brand img {
      max-inline-size: 100%;
      max-block-size: 58px;
      object-fit: contain;
    }

    .ns-mega-menu-brand span {
      font-size: var(--ns-type-caption-size);
      font-weight: var(--ns-type-weight-emphasis);
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }
  }
/* END_BLOCK:mega-menu-brand */

/* START_BLOCK:mega-menu-group (INDEX:155) */
@layer components {
    .ns-mega-menu-group {
      grid-column: span var(--ns-mega-menu-span, 12);
      min-inline-size: 0;
    }

    .ns-mega-menu-group__grid {
      display: grid;
      grid-template-columns: repeat(var(--ns-mega-menu-group-columns, 1), minmax(0, 1fr));
      column-gap: var(--ns-mega-menu-group-column-gap, var(--ns-space-30));
      row-gap: var(--ns-mega-menu-group-row-gap, var(--ns-space-30));
      align-items: start;
      min-inline-size: 0;
    }

    .ns-mega-menu-group__grid > [id^='shopify-block-'] {
      display: contents;
    }

    .ns-mega-menu-group__grid > [id^='shopify-block-'] > * {
      grid-column: auto;
      min-inline-size: 0;
    }

    .ns-mega-menu-group .ns-mega-menu-product__content {
      min-inline-size: 0;
      padding-block-start: 0;
    }

    .ns-mega-menu-group .ns-mega-menu-product {
      grid-template-columns: minmax(0, 1fr);
      overflow: hidden;
    }

    .ns-mega-menu-group .ns-mega-menu-product__media {
      inline-size: 100%;
      max-inline-size: 100%;
      min-inline-size: 0;
      aspect-ratio: 170 / 218;
    }

    .ns-mega-menu-group .ns-mega-menu-product__media > img {
      inline-size: 100%;
      block-size: 100%;
      aspect-ratio: auto;
      object-fit: cover;
    }

    .ns-mega-menu-group .ns-mega-menu-product .ns-product-card__title a {
      display: block;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }

    .ns-mega-menu-group .ns-mega-menu-product .ns-product-price__current {
      font-size: var(--ns-type-price-size);
      line-height: var(--ns-type-body-line-height);
    }
  }
/* END_BLOCK:mega-menu-group */

/* START_BLOCK:mega-menu-image (INDEX:156) */
@layer components {
    .ns-mega-menu-image {
      --ns-mega-menu-image-radius: min(
        var(--ns-radius-media, 0px),
        var(--ns-radius-density-active, var(--ns-radius-4xl))
      );

      position: relative;
      grid-column: span var(--ns-mega-menu-span, 4);
      align-self: start;
      min-inline-size: 0;
    }

    .ns-mega-menu-image .ns-mega-menu-image__media,
    .ns-mega-menu-image .ns-mega-menu-image__media > img {
      display: block;
      inline-size: 100%;
      block-size: var(--ns-mega-menu-media-height, 270px);
    }

    .ns-mega-menu-image .ns-mega-menu-image__media {
      overflow: hidden;
      border-radius: var(--ns-mega-menu-image-radius);
    }

    .ns-mega-menu-image .ns-mega-menu-image__media > img {
      object-fit: cover;
    }

    .ns-mega-menu-image__content {
      color: var(--ns-color-foreground);
      text-align: center;
    }

    .ns-mega-menu-image--caption_below .ns-mega-menu-image__content {
      min-block-size: 33px;
      padding-block-start: var(--ns-space-12);
    }

    .ns-mega-menu-image--overlay .ns-mega-menu-image__content {
      position: absolute;
      inset: auto 20px 20px;
      min-block-size: 50px;
      padding: var(--ns-space-8) var(--ns-space-12);
      border-radius: min(
        var(--ns-radius-content-panel, var(--ns-radius-2xl)),
        max(var(--ns-radius-sm), calc(var(--ns-mega-menu-image-radius) - 20px))
      );
      background: color-mix(in srgb, var(--ns-color-background) 90%, transparent);
    }

    .ns-mega-menu-image__heading {
      color: var(--ns-color-heading);
      font-size: var(--ns-type-navigation-size);
      font-weight: var(--ns-type-weight-emphasis);
      line-height: var(--ns-type-body-line-height);
      letter-spacing: 0.05em;
      text-transform: uppercase;
    }

    .ns-mega-menu-image--portrait_caption .ns-mega-menu-image__heading {
      font-size: var(--ns-type-body-small-size);
      line-height: var(--ns-type-body-line-height);
      letter-spacing: 0.05em;
      text-transform: none;
    }

    .ns-mega-menu-image--portrait_caption .ns-mega-menu-image__content {
      min-block-size: 116px;
      padding: var(--ns-space-12) var(--ns-space-16) 0;
    }

    .ns-mega-menu-image__text {
      color: var(--ns-color-muted);
      font-size: var(--ns-type-body-small-size);
      line-height: var(--ns-type-body-line-height);
    }

    .ns-mega-menu-image__text > :first-child {
      margin-block-start: 0;
    }

    .ns-mega-menu-image__text > :last-child {
      margin-block-end: 0;
    }
  }
/* END_BLOCK:mega-menu-image */

/* START_BLOCK:mega-menu-label (INDEX:157) */
@layer components {
    .ns-mega-menu-label[hidden] {
      display: none;
    }
  }
/* END_BLOCK:mega-menu-label */

/* START_BLOCK:mega-menu-link (INDEX:158) */
@layer components {
    .ns-mega-menu-link > .ns-navigation-list__link {
      gap: var(--ns-space-6);
      min-inline-size: 0;
    }

    .ns-mega-menu-link__badge--highlight,
    .ns-mega-menu-link__badge--accent {
      color: var(--ns-color-on-highlight);
      background: var(--ns-color-highlight);
    }

    .ns-mega-menu-link__badge--info {
      color: var(--ns-color-on-info);
      background: var(--ns-color-info);
    }
  }
/* END_BLOCK:mega-menu-link */

/* START_BLOCK:mega-menu-navigation (INDEX:159) */
@layer components {
    .ns-mega-menu-navigation {
      grid-column: span var(--ns-mega-menu-span, 2);
      min-inline-size: 0;
    }

    .ns-mega-menu-navigation__media {
      display: block;
      overflow: hidden;
      border-radius: min(
        var(--ns-radius-media, 0px),
        var(--ns-radius-density-active, var(--ns-radius-4xl))
      );
    }

    .ns-mega-menu-navigation__media img {
      display: block;
      inline-size: 100%;
      aspect-ratio: 170 / 124;
      object-fit: cover;
    }

    .ns-mega-menu-navigation__list > [id^='shopify-block-'] {
      display: contents;
    }

  }
/* END_BLOCK:mega-menu-navigation */

/* START_BLOCK:mega-menu-product (INDEX:160) */
@layer components {
    .ns-mega-menu-product {
      --ns-mega-menu-product-media-radius: min(
        var(--ns-radius-product-card-media, var(--ns-radius-media, 0px)),
        var(--ns-radius-density-active, var(--ns-radius-4xl)),
        max(var(--ns-radius-sm), 8cqi)
      );

      display: grid;
      grid-column: span var(--ns-mega-menu-span, 2);
      align-content: start;
      gap: var(--ns-space-14);
      min-inline-size: 0;
      container-type: inline-size;
    }

    .ns-mega-menu-product__media,
    .ns-mega-menu-product__media img {
      display: block;
      inline-size: 100%;
      aspect-ratio: 170 / 218;
    }

    .ns-mega-menu-product.ns-product-card .ns-mega-menu-product__media {
      overflow: hidden;
      border-radius: var(--ns-mega-menu-product-media-radius);
    }

    .ns-mega-menu-product__media img {
      object-fit: cover;
    }

    .ns-mega-menu-product__content {
      display: grid;
      gap: var(--ns-space-2);
    }

    .ns-mega-menu-product .ns-product-card__title {
      margin: 0;
      color: var(--ns-color-heading);
      font-size: var(--ns-type-card-title-size);
      font-weight: var(--ns-type-weight-interface);
      line-height: var(--ns-type-body-line-height);
    }

    .ns-mega-menu-product .ns-product-card__title a {
      color: inherit;
      text-decoration: none;
    }

    .ns-mega-menu-product .ns-product-card__title a:hover,
    .ns-mega-menu-product .ns-product-card__title a:focus-visible {
      text-decoration: underline;
      text-underline-offset: 0.2em;
    }

    .ns-mega-menu-product .ns-product-price {
      display: flex;
      flex-wrap: wrap;
      gap: var(--ns-space-4);
      color: var(--ns-color-heading);
      font-size: var(--ns-type-price-size);
      line-height: var(--ns-type-body-line-height);
    }

    .ns-mega-menu-product .ns-product-price s {
      color: var(--ns-color-muted);
      font-size: var(--ns-type-interface-meta-size);
    }
  }
/* END_BLOCK:mega-menu-product */

/* START_BLOCK:mega-menu-promo (INDEX:161) */
@layer components {
    .ns-mega-menu-promo {
      display: grid;
      align-content: center;
      gap: var(--ns-space-8);
      min-height: 15rem;
      padding: var(--ns-space-30);
      background: var(--ns-color-surface);
      color: var(--ns-color-foreground);
      text-align: center;
    }

    .ns-mega-menu-promo__eyebrow {
      color: var(--ns-color-accent);
      font-size: var(--ns-type-label-size);
      letter-spacing: var(--ns-type-label-letter-spacing);
      text-transform: uppercase;
    }

    .ns-mega-menu-promo__heading {
      color: var(--ns-color-heading);
      font-size: var(--ns-type-medium-size);
      line-height: var(--ns-type-medium-line-height);
      text-transform: uppercase;
    }

    .ns-mega-menu-promo__text {
      color: var(--ns-color-muted);
    }

    .ns-mega-menu-promo__link {
      justify-self: center;
      margin-block-start: var(--ns-space-8);
      color: var(--ns-color-link);
      text-underline-offset: 0.25em;
    }
  }
/* END_BLOCK:mega-menu-promo */

/* START_BLOCK:payment-trust (INDEX:163) */
@layer components {
    .ns-product-payment-trust.ns-product-payment-trust--colored { justify-items: start; row-gap: var(--ns-space-8); column-gap: 0; min-block-size: 0; padding: 0; border: 0; }
    .ns-product-payment-trust--colored .ns-product-payment-trust__heading { margin: 0; font-size: var(--ns-type-body-size); font-weight: var(--ns-type-weight-emphasis); line-height: var(--ns-type-body-line-height); text-transform: uppercase; }
    .ns-product-payment-trust--colored .ns-product-payment-trust__icons { display: grid; grid-template-columns: repeat(8, minmax(0, 1fr)); inline-size: 100%; gap: var(--ns-space-10); margin: 0; }
    .ns-product-payment-trust--colored .ns-product-payment-trust__icons li { display: grid; place-items: center; min-block-size: 2.5rem; padding: 0; background: transparent; }
    .ns-product-payment-trust--colored .ns-product-payment-trust__icons svg { inline-size: min(100%, 3.875rem); max-block-size: 2.5rem; }
    .ns-product-payment-trust.ns-product-payment-trust--monochrome { position: relative; min-block-size: 7rem; margin-block-start: var(--ns-space-8); padding: var(--ns-space-14) var(--ns-space-10) var(--ns-space-8); border: 1px solid var(--ns-color-border); border-radius: var(--ns-radius-content-panel, var(--ns-radius-2xl)); }
    .ns-product-payment-trust--monochrome .ns-product-payment-trust__heading { position: absolute; inset: 0 auto auto 50%; z-index: 1; width: max-content; max-width: calc(100% - 2rem); margin: 0; padding-inline: var(--ns-space-16); background: var(--ns-color-surface); color: var(--ns-color-foreground); font-size: var(--ns-type-body-size); font-weight: var(--ns-type-weight-emphasis); line-height: var(--ns-type-body-line-height); translate: -50% -50%; }
    .ns-product-payment-trust--monochrome .ns-product-payment-trust__icons { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); inline-size: 100%; gap: var(--ns-space-6) var(--ns-space-8); margin: 0; }
    .ns-product-payment-trust--monochrome .ns-product-payment-trust__icons li { display: grid; place-items: center; min-block-size: 2.5rem; }
    .ns-product-payment-trust--monochrome .ns-product-payment-trust__icons svg { inline-size: min(100%, 5.375rem); max-block-size: 2.5rem; }
  }
/* END_BLOCK:payment-trust */

/* START_BLOCK:product-card-technical (INDEX:167) */
@layer components {
    .ns-product-card__technical {
      display: grid;
      gap: var(--ns-space-4);
      margin: 0 0 var(--ns-space-12);
      font-size: var(--ns-type-label-size);
    }

    .ns-product-card__technical > div {
      display: flex;
      justify-content: space-between;
      gap: var(--ns-space-12);
    }

    .ns-product-card__technical :is(dt, dd) {
      margin: 0;
    }

    .ns-product-card__technical dt {
      color: var(--ns-color-muted);
    }

    .ns-product-card__technical dd {
      overflow-wrap: anywhere;
      text-align: end;
    }
  }
/* END_BLOCK:product-card-technical */

/* START_BLOCK:product-comparison (INDEX:168) */
@layer components {
    .ns-product-comparison {
      display: grid;
      gap: var(--ns-space-20);
    }

    .ns-product-comparison__toolbar {
      display: flex;
      justify-content: flex-end;
    }

    .ns-product-comparison__difference-toggle {
      display: flex;
      align-items: center;
      gap: var(--ns-space-8);
      min-block-size: 2.75rem;
      white-space: nowrap;
    }

    .ns-product-comparison__viewport {
      overflow-x: auto;
      overscroll-behavior-inline: contain;
      scrollbar-gutter: stable;
    }

    .ns-product-comparison table {
      inline-size: 100%;
      min-inline-size: 58rem;
      border-collapse: collapse;
      table-layout: fixed;
    }

    .ns-product-comparison :is(th, td) {
      min-inline-size: 12rem;
      padding: var(--ns-space-12) var(--ns-space-20);
      border-block-end: 1px solid var(--ns-color-border);
      text-align: start;
      vertical-align: top;
    }

    .ns-product-comparison :is(th, td):first-child {
      position: sticky;
      z-index: 1;
      inset-inline-start: 0;
      inline-size: 10.625rem;
      min-inline-size: 10.625rem;
      border-inline-end: 1px solid var(--ns-color-border);
      background: var(--ns-color-background);
      color: var(--ns-color-muted);
      font-size: var(--ns-type-label-size);
      font-weight: var(--ns-type-weight-interface);
      text-transform: uppercase;
    }

    .ns-product-comparison thead th {
      padding-block: 0 var(--ns-space-24);
    }

    .ns-product-comparison thead th:first-child {
      padding-block-start: var(--ns-space-12);
    }

    .ns-product-comparison__model-picker,
    .ns-product-comparison__model-picker .ns-select {
      display: grid;
      inline-size: 100%;
      margin-block-end: var(--ns-space-12);
    }

    .ns-product-comparison .ns-select {
      border-radius: var(--ns-radius-input, 0px);
      background: var(--ns-color-surface-alt);
    }

    .ns-product-comparison .ns-select__control {
      border-radius: inherit;
      background: var(--ns-color-surface-alt);
    }

    .ns-product-comparison__model-picker .ns-select__control {
      min-block-size: 3rem;
      padding-inline-start: var(--ns-space-12);
    }

    .ns-product-comparison .ns-product-card--comparison .ns-product-card__media {
      aspect-ratio: 1;
    }

    .ns-product-comparison .ns-product-card--comparison .ns-product-card__content {
      padding-block-start: var(--ns-space-16);
    }

    .ns-product-comparison__discover {
      inline-size: fit-content;
      margin-block-start: var(--ns-space-12);
    }

    .ns-product-comparison[data-ns-show-images='false'] .ns-product-card--comparison .ns-product-card__media {
      display: none;
    }

    .ns-product-comparison[data-ns-show-add='false'] .ns-product-card--comparison .ns-product-card__form {
      display: none;
    }

    .ns-product-comparison .ns-product-card--comparison .ns-product-card__buy-row {
      grid-template-columns: minmax(0, 1fr);
    }

    .ns-product-comparison .ns-product-card--comparison .ns-product-card__quantity,
    .ns-product-comparison .ns-product-card--comparison .ns-product-card__add {
      inline-size: 100%;
    }

    .ns-product-comparison [aria-busy='true'] {
      opacity: 0.65;
    }

    .ns-product-comparison__group th {
      position: static;
      background: var(--ns-color-surface-alt);
      color: var(--ns-color-foreground);
      font-weight: var(--ns-type-weight-medium);
    }

    .ns-product-comparison:has([data-ns-comparison-hide-same]:checked) [data-ns-comparison-same='true'] {
      display: none;
    }

    .ns-product-comparison--placeholder {
      padding: var(--ns-space-20);
      border: 1px dashed var(--ns-color-border);
      border-radius: var(--ns-radius-content-panel, var(--ns-radius-2xl));
    }

    @media (max-width: 767px) {
      .ns-product-comparison table {
        min-inline-size: 46rem;
      }
    }
  }
/* END_BLOCK:product-comparison */

/* START_BLOCK:product-countdown (INDEX:169) */
@layer components {
    .ns-product-countdown { display: block; padding: 0; background: transparent; }
    .ns-product-countdown__heading { margin-block-end: var(--ns-space-4); font-size: var(--ns-type-body-size); font-weight: var(--ns-type-weight-emphasis); line-height: var(--ns-type-body-line-height); text-transform: none; }
    .ns-product-countdown__values { display: flex; gap: var(--ns-space-18); font-variant-numeric: tabular-nums; }
    .ns-product-countdown__values > span { position: relative; display: grid; justify-items: center; gap: var(--ns-space-8); min-inline-size: 4rem; }
    .ns-product-countdown__values strong { display: flex; gap: var(--ns-space-4); font-size: var(--ns-type-lead-size); }
    .ns-product-countdown__values strong i { display: grid; place-items: center; min-inline-size: 1.875rem; min-block-size: 2.8125rem; border: 1px solid var(--ns-color-border); border-radius: var(--ns-radius-sm); font-style: normal; }
    .ns-product-countdown__values > span:not(:last-child)::after { position: absolute; inset: 0 -0.75rem auto auto; content: ':'; font-size: var(--ns-type-lead-size); }
    .ns-product-countdown__values small { color: var(--ns-color-muted); font-size: var(--ns-type-label-size); line-height: 1; }
  }
/* END_BLOCK:product-countdown */

/* START_BLOCK:product-delivery-message (INDEX:170) */
@layer components {
    .ns-product-delivery {
      min-block-size: 1.625rem;
      padding: var(--ns-space-4) var(--ns-space-10);
      border-radius: var(--ns-radius-compact, var(--ns-radius-lg));
      background: var(--ns-product-delivery-background);
      color: var(--ns-color-foreground);
      font-size: var(--ns-type-label-size);
      line-height: 1.4;
    }

    .ns-product-delivery strong {
      color: var(--ns-product-delivery-accent);
      font-weight: var(--ns-type-weight-interface);
    }

    .ns-product-delivery__icon,
    .ns-product-delivery__icon svg {
      inline-size: 1.125rem;
      block-size: 1.125rem;
    }
  }
/* END_BLOCK:product-delivery-message */

/* START_BLOCK:product-intelligence (INDEX:173) */
@layer components {
  .ns-product-intelligence {
    display: grid;
    gap: var(--ns-space-20);
  }

  .ns-product-intelligence > :is(h2, p),
  .ns-product-intelligence__groups {
    margin: 0;
  }

  .ns-product-intelligence__groups {
    display: grid;
    gap: var(--ns-space-24);
  }

  .ns-product-intelligence--placeholder {
    padding: var(--ns-space-20);
    border: 1px dashed var(--ns-color-border);
    border-radius: var(--ns-radius-content-panel, var(--ns-radius-2xl));
  }
}
/* END_BLOCK:product-intelligence */

/* START_BLOCK:product-inventory (INDEX:174) */
@layer components {
    .ns-product-inventory {
      color: var(--ns-color-foreground);
      font-size: var(--ns-type-label-size);
      line-height: 1.4;
    }

    .ns-product-inventory p {
      margin: 0;
    }

    .ns-product-inventory__pickup {
      display: grid;
      gap: var(--ns-space-8);
      margin-block-start: var(--ns-space-12);
    }

    ns-product-information[aria-busy='true'] .ns-product-inventory__pickup details {
      visibility: hidden;
    }

    .ns-product-inventory__pickup summary {
      display: inline-flex;
      min-height: var(--ns-touch-target-min, 2.75rem);
      align-items: center;
      cursor: pointer;
      text-decoration: underline;
      text-underline-offset: 0.2em;
    }

    .ns-product-inventory__pickup summary:focus-visible,
    .ns-product-inventory__pickup a:focus-visible {
      outline: 2px solid currentColor;
      outline-offset: 2px;
    }

    .ns-product-inventory__pickup ul {
      display: grid;
      gap: var(--ns-space-16);
      margin: 0;
      padding: 0;
    }

    .ns-product-inventory__pickup li {
      display: grid;
      gap: var(--ns-space-6);
      overflow-wrap: anywhere;
    }

    .ns-product-inventory__pickup h3 {
      margin: 0;
      font: inherit;
      font-weight: var(--ns-type-weight-emphasis);
    }

    .ns-product-inventory__pickup address {
      font-style: normal;
    }

    .ns-product-inventory__track {
      display: block;
      overflow: hidden;
      block-size: 0.375rem;
      margin-block-start: var(--ns-space-8);
      border-radius: var(--ns-radius-pill);
      background: var(--ns-color-border);
    }

    .ns-product-inventory__track > span {
      display: block;
      inline-size: var(--ns-inventory-progress);
      block-size: 100%;
      background: var(--ns-color-foreground);
    }
  }
/* END_BLOCK:product-inventory */

/* START_BLOCK:product-lineup (INDEX:175) */
@layer components {
    .ns-product-lineup {
      display: grid;
      gap: var(--ns-space-20);
    }

    .ns-product-lineup__grid {
      margin: 0;
    }

    .ns-product-lineup__grid {
      display: grid;
      grid-template-columns: repeat(var(--ns-product-lineup-columns), minmax(0, 1fr));
      gap: var(--ns-primary-grid-row-gap-desktop, var(--ns-space-30))
        var(--ns-primary-grid-column-gap-desktop, var(--ns-space-20));
    }

    .ns-product-lineup__item {
      min-inline-size: 0;
    }

    @media (max-width: 767px) {
      .ns-product-lineup__grid {
        grid-template-columns: repeat(var(--ns-product-lineup-columns-mobile), minmax(0, 1fr));
      }
    }
  }
/* END_BLOCK:product-lineup */

/* START_BLOCK:product-material-details (INDEX:177) */
@layer components {
  .ns-product-material-details {
    display: grid;
    gap: var(--ns-space-12);
    padding: var(--ns-space-16);
    border-radius: var(--ns-radius-content-panel, var(--ns-radius-2xl));
    background: var(--ns-color-surface-alt);
  }

  .ns-product-material-details > h3,
  .ns-product-material-details dl,
  .ns-product-material-details :is(dt, dd) {
    margin: 0;
  }

  .ns-product-material-details dl {
    display: grid;
    gap: var(--ns-space-8);
  }

  .ns-product-material-details dl > div {
    display: flex;
    justify-content: space-between;
    gap: var(--ns-space-16);
  }

  .ns-product-material-details dt {
    color: var(--ns-color-muted);
  }

  .ns-product-material-details dd {
    text-align: end;
  }
}
/* END_BLOCK:product-material-details */

/* START_BLOCK:product-resources (INDEX:182) */
@layer components {
  .ns-product-resources {
    display: grid;
    gap: var(--ns-space-12);
  }

  .ns-product-resources > h3,
  .ns-product-resources > p,
  .ns-product-resources ul {
    margin: 0;
  }

  .ns-product-resources ul {
    display: grid;
    gap: var(--ns-space-8);
    padding: 0;
    list-style: none;
  }

  .ns-product-resource-item a {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    gap: var(--ns-space-16);
    min-block-size: 2.75rem;
    padding-block: var(--ns-space-10);
    border-block-end: 1px solid var(--ns-color-border);
    color: inherit;
    text-decoration: none;
  }

  .ns-product-resource-item a:is(:hover, :focus-visible) span {
    text-decoration: underline;
    text-underline-offset: 0.2em;
  }

  .ns-product-resource-item small {
    color: var(--ns-color-muted);
  }
}
/* END_BLOCK:product-resources */

/* START_BLOCK:product-service-promises (INDEX:184) */
@layer components {
    .ns-product-services { display: grid; padding-block: var(--ns-space-30); border-block: 1px dashed var(--ns-color-border); }
    .ns-product-services > .ns-group,
    .ns-product-services > * > .ns-group { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--ns-space-10); }
    .ns-product-services--grid > .ns-group,
    .ns-product-services--grid > * > .ns-group { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--ns-space-20) var(--ns-space-30); }
    .ns-product-services--list .ns-visual-content__panel { flex-wrap: nowrap; align-items: center; justify-content: flex-start; gap: var(--ns-space-10); }
    .ns-product-services--list .ns-rich-text { flex: 1 1 auto; width: auto; max-width: none; color: var(--ns-color-foreground); font-size: var(--ns-type-body-size); line-height: var(--ns-type-body-line-height); }
    .ns-product-services--list .ns-icon-content,
    .ns-product-services--list .ns-icon-content svg { flex: 0 0 1.5rem; inline-size: 1.5rem; block-size: 1.5rem; }
    .ns-product-services--grid .ns-visual-content { min-inline-size: 0; min-block-size: 7.125rem; }
    .ns-product-services--grid .ns-visual-content__panel { block-size: 100%; gap: var(--ns-space-6); }
    .ns-product-services--grid .ns-rich-text { color: var(--ns-color-foreground); font-size: var(--ns-type-body-size); line-height: var(--ns-type-body-line-height); }
    .ns-product-services--grid .ns-icon-content,
    .ns-product-services--grid .ns-icon-content svg { inline-size: 2.5rem; block-size: 2.5rem; }
    .ns-product-service { display: flex; align-items: flex-start; gap: var(--ns-space-10); }
    .ns-product-service__icon { flex: 0 0 auto; inline-size: var(--ns-icon-size-md); color: var(--ns-color-foreground); }
  }
/* END_BLOCK:product-service-promises */

/* START_BLOCK:product-shipping-progress (INDEX:185) */
@layer components {
    .ns-product-shipping-progress {
      position: relative;
      display: grid;
      min-block-size: 1.625rem;
      overflow: hidden;
      padding: 0;
      border-radius: var(--ns-radius-compact, var(--ns-radius-lg));
      background: var(--ns-shipping-track-color);
      color: var(--ns-shipping-text-color);
    }

    .ns-product-shipping-progress p {
      position: relative;
      z-index: 1;
      align-self: center;
      margin: 0;
      padding-inline: var(--ns-space-10);
      font-size: var(--ns-type-label-size);
      line-height: 1.4;
    }

    .ns-product-shipping-progress > span {
      position: absolute;
      inset: 0;
      block-size: auto;
      margin: 0;
      border-radius: 0;
      background: transparent;
    }

    .ns-product-shipping-progress > span > span {
      display: block;
      inline-size: var(--ns-shipping-progress);
      block-size: 100%;
      background: var(--ns-shipping-progress-color);
    }
  }
/* END_BLOCK:product-shipping-progress */

/* START_BLOCK:product-showcase (INDEX:186) */
@layer components {
    .ns-product-showcase {
      --ns-content-width: 100%;

      width: 100%;
      min-width: 0;
      color: var(--ns-color-foreground);
      background: var(--ns-color-background);
    }

    .ns-product-showcase .ns-product-page-shell {
      inline-size: 100%;
    }

    .ns-product-showcase .ns-product-page__layout {
      grid-template-columns: minmax(0, 1fr);
      gap: var(--ns-space-24);
      box-sizing: border-box;
      padding: clamp(var(--ns-space-20), 4vw, var(--ns-space-48));
    }

    .ns-product-showcase .ns-product-page__info {
      width: 100%;
      margin-inline: 0;
      padding: 0;
    }

    .ns-product-showcase .ns-product-page__media {
      min-width: 0;
    }
  }
/* END_BLOCK:product-showcase */

/* START_BLOCK:product-specification-group (INDEX:187) */
@layer components {
  .ns-product-specification-group {
    display: grid;
    gap: var(--ns-space-12);
  }

  .ns-product-specification-group > :is(h2, h3, h4),
  .ns-product-specification-group dl,
  .ns-product-specification-row :is(dt, dd) {
    margin: 0;
  }

  .ns-product-specification-group dl {
    display: grid;
  }

  .ns-product-specification-row {
    display: grid;
    grid-template-columns: minmax(8rem, 0.8fr) minmax(0, 1.2fr);
    gap: var(--ns-space-12);
    padding-block: var(--ns-space-10);
    border-block-end: 1px solid var(--ns-color-border);
  }

  .ns-product-specification-row dt {
    color: var(--ns-color-muted);
  }

  @media (max-width: 479px) {
    .ns-product-specification-row {
      grid-template-columns: minmax(0, 1fr);
      gap: var(--ns-space-4);
    }
  }
}
/* END_BLOCK:product-specification-group */

/* START_BLOCK:product-system-builder (INDEX:189) */
@layer components {
    .ns-product-system-builder {
      display: grid;
      gap: var(--ns-space-20);
    }

    .ns-product-system-builder__steps,
    .ns-product-system-step {
      display: grid;
      gap: var(--ns-space-12);
    }

    .ns-product-system-builder__warnings {
      margin: 0;
    }

    .ns-product-system-builder__steps {
      gap: var(--ns-space-16);
    }

    .ns-product-system-step {
      min-inline-size: 0;
      margin: 0;
      padding: var(--ns-space-16);
      border: 1px solid var(--ns-color-border);
      border-radius: var(--ns-radius-content-panel, var(--ns-radius-2xl));
    }

    .ns-product-system-step legend {
      display: flex;
      align-items: baseline;
      gap: var(--ns-space-8);
      padding-inline: var(--ns-space-4);
      font-weight: var(--ns-type-weight-strong);
    }

    .ns-product-system-step legend small {
      color: var(--ns-color-muted);
      font-weight: var(--ns-type-weight-interface);
    }

    .ns-product-system-step__selector,
    .ns-product-system-step__quantity {
      display: grid;
      gap: var(--ns-space-8);
    }

    .ns-product-system-step :is(select, input, button) {
      min-block-size: 2.75rem;
    }

    .ns-product-system-step select,
    .ns-product-system-step .ns-select {
      inline-size: 100%;
      border-radius: var(--ns-radius-input, 0px);
      background: var(--ns-color-background);
      color: inherit;
    }

    .ns-product-system-step .ns-select__control {
      border-radius: inherit;
    }

    .ns-product-system-step__quantity .ns-quantity-selector {
      max-inline-size: 12rem;
    }

    .ns-product-system-step__fallback {
      border-block-start: 1px solid var(--ns-color-border);
    }

    html:not([data-ns-js]) .ns-product-system-step__selector,
    html:not([data-ns-js]) .ns-product-system-step__quantity,
    html:not([data-ns-js]) .ns-product-system-step [data-ns-system-variant-panels],
    html:not([data-ns-js]) .ns-product-system-step__fallback summary {
      display: none;
    }

    .ns-product-system-step__fallback ul {
      display: grid;
      gap: var(--ns-space-10);
      margin: 0;
      padding: 0;
      list-style: none;
    }

    .ns-product-system-step__fallback li {
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      align-items: center;
      gap: var(--ns-space-12);
    }

    .ns-product-system-builder__submit {
      inline-size: fit-content;
    }

    .ns-product-system-builder__submit[aria-busy='true'] {
      cursor: progress;
      opacity: 0.65;
    }

    .ns-product-system-builder__status:not(:empty),
    .ns-product-system-builder__warnings:not([hidden]) {
      padding: var(--ns-space-12);
      border-radius: var(--ns-radius-notification, var(--ns-radius-xl));
      background: var(--ns-color-surface-alt);
    }

    @media (max-width: 479px) {
      .ns-product-system-step {
        padding: var(--ns-space-12);
      }

      .ns-product-system-builder__submit {
        inline-size: 100%;
      }

      .ns-product-system-step__fallback li {
        grid-template-columns: minmax(0, 1fr);
      }
    }
  }
/* END_BLOCK:product-system-builder */

/* START_BLOCK:product-visitor-count (INDEX:192) */
@layer components {
    .ns-product-visitors {
      min-block-size: 1.875rem;
      padding: 0;
      background: transparent;
      color: var(--ns-color-muted);
      font-size: var(--ns-type-label-size);
      line-height: 1.3;
    }

    .ns-product-visitors strong {
      display: inline-grid;
      place-items: center;
      min-inline-size: 1.625rem;
      min-block-size: 1.625rem;
      padding-inline: var(--ns-space-4);
      border-radius: var(--ns-product-badge-radius, var(--ns-radius-md));
      background: var(--ns-color-foreground);
      color: var(--ns-color-surface);
      font-weight: var(--ns-type-weight-interface);
    }
  }
/* END_BLOCK:product-visitor-count */

/* START_BLOCK:rich-text (INDEX:193) */
@layer components {
    .ns-rich-text {
      width: 100%;
      max-width: min(100%, var(--ns-rich-text-max-width, 100%));
      margin-block-start: var(--ns-rich-text-margin-start, 0);
      margin-block-end: var(--ns-rich-text-margin-end, 0);
      color: var(--ns-rich-text-color, var(--ns-color-muted, currentColor));
      font-size: var(--ns-type-body-size);
      line-height: var(--ns-type-body-line-height);
      text-align: inherit;
    }

    .ns-rich-text > :first-child {
      margin-block-start: 0;
    }

    .ns-rich-text > :last-child {
      margin-block-end: 0;
    }

    .ns-rich-text :is(ul, ol) {
      padding-inline-start: 1.4em;
    }
  }
/* END_BLOCK:rich-text */

/* START_BLOCK:search-form (INDEX:194) */
@layer components {
    .ns-search-form {
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      align-items: center;
      justify-self: var(--ns-search-form-align, center);
      width: min(100%, var(--ns-search-form-width, 23.125rem));
      min-width: 0;
      height: var(--ns-search-form-height, var(--ns-text-control-block-size));
      margin-block-start: var(--ns-search-form-margin-start, 0);
      margin-block-end: var(--ns-search-form-margin-end, 0);
      overflow: hidden;
      color: var(--ns-color-foreground);
      background: var(--ns-color-surface);
      border: var(--ns-search-form-border-width, 1px) solid var(--ns-color-border);
      border-radius: var(--ns-radius-input, 0);
    }

    .ns-search-form:focus-within {
      outline: 2px solid currentColor;
      outline-offset: 2px;
    }

    .ns-search-form__input {
      width: 100%;
      min-width: 0;
      height: 100%;
      padding-block: 0;
      padding-inline-start: var(--ns-search-form-padding, var(--ns-space-16));
      padding-inline-end: 0;
      color: inherit;
      font: inherit;
      font-size: var(--ns-type-input-size);
      line-height: var(--ns-type-body-line-height);
      background: transparent;
      border: 0;
      border-radius: 0;
      outline: 0;
    }

    .ns-search-form__input::placeholder {
      color: var(--ns-color-muted);
      opacity: 1;
    }

    .ns-search-form__submit {
      --ns-radius-icon-button: 0px;

      display: grid;
      place-items: center;
      width: calc(var(--ns-search-form-icon-size, 1.25rem) + var(--ns-search-form-padding, 1rem) * 2);
      height: 100%;
      padding: 0;
      color: inherit;
      background: transparent;
      border: 0;
      cursor: pointer;
    }

    .ns-search-form__icon {
      width: var(--ns-search-form-icon-size, 1.25rem);
      height: var(--ns-search-form-icon-size, 1.25rem);
    }

    @media (min-width: 768px) and (max-width: 1024px) {
      .ns-search-form {
        justify-self: var(--ns-search-form-align-tablet, var(--ns-search-form-align));
        width: min(100%, var(--ns-search-form-width-tablet, var(--ns-search-form-width)));
        height: var(--ns-search-form-height-tablet, var(--ns-search-form-height));
      }

      .ns-search-form__input {
        padding-inline-start: var(--ns-search-form-padding-tablet, var(--ns-search-form-padding));
      }

      .ns-search-form__submit {
        width: calc(var(--ns-search-form-icon-size, 1.25rem) + var(--ns-search-form-padding-tablet, var(--ns-search-form-padding)) * 2);
      }
    }

    @media (max-width: 767px) {
      .ns-search-form {
        justify-self: var(--ns-search-form-align-mobile, var(--ns-search-form-align-tablet));
        width: min(100%, var(--ns-search-form-width-mobile, var(--ns-search-form-width-tablet)));
        height: var(--ns-search-form-height-mobile, var(--ns-search-form-height-tablet));
      }

      .ns-search-form__input {
        padding-inline-start: var(--ns-search-form-padding-mobile, var(--ns-search-form-padding-tablet));
      }

      .ns-search-form__submit {
        width: calc(var(--ns-search-form-icon-size, 1.25rem) + var(--ns-search-form-padding-mobile, var(--ns-search-form-padding-tablet)) * 2);
      }
    }
  }
/* END_BLOCK:search-form */

/* START_BLOCK:section-header (INDEX:195) */
@layer components {
    .ns-section-header {
      display: flex;
      grid-column: 1 / -1;
      justify-content: var(--ns-section-header-outer-alignment, center);
      inline-size: 100%;
      min-inline-size: 0;
      margin-block-start: var(--ns-section-header-margin-start, 0);
      margin-block-end: var(--ns-section-header-margin-end, var(--ns-space-40));
      color: inherit;
      text-align: var(--ns-section-header-text-alignment, center);
    }

    .ns-section-header__inner {
      display: flex;
      flex-direction: var(--ns-section-header-direction, column);
      align-items: var(--ns-section-header-cross-alignment, center);
      justify-content: var(--ns-section-header-main-alignment, center);
      gap: var(--ns-section-header-gap, var(--ns-space-12));
      inline-size: var(--ns-section-header-width, 100%);
      max-inline-size: min(100%, var(--ns-section-header-max-width, 1200px));
    }

    .ns-section-header__inner > * {
      flex: 0 1 auto;
      max-inline-size: 100%;
    }
  }
/* END_BLOCK:section-header */

/* START_BLOCK:social-share (INDEX:197) */
@layer components {
    .ns-product-share { display: flex; flex-wrap: wrap; align-items: center; }
    .ns-product-share__label { flex: 0 0 100%; color: var(--ns-color-foreground); font-size: var(--ns-type-body-size); font-weight: var(--ns-type-weight-emphasis); line-height: var(--ns-type-body-line-height); text-transform: uppercase; }
    .ns-product-share__link { display: inline-flex; align-items: center; justify-content: center; gap: var(--ns-space-6); background: color-mix(in srgb, var(--ns-share-color) 10%, var(--ns-color-surface)); color: var(--ns-share-color); }
    .ns-product-share__link > span,
    .ns-product-share__link svg { inline-size: 1rem; block-size: 1rem; }
    .ns-product-share__link b { font: inherit; }
    .ns-product-share--icons .ns-product-share__link b { position: absolute; inline-size: 1px; block-size: 1px; overflow: hidden; clip-path: inset(50%); }
    .ns-product-share.ns-product-share--icons { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: var(--ns-space-8) var(--ns-space-10); }
    .ns-product-share--icons .ns-product-share__label { grid-column: 1 / -1; }
    .ns-product-share--icons .ns-product-share__link { inline-size: 100%; min-inline-size: 0; min-block-size: 2.1875rem; border-radius: var(--ns-radius-compact, var(--ns-radius-lg)); }
    .ns-product-share.ns-product-share--buttons { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--ns-space-10); }
    .ns-product-share--buttons .ns-product-share__label { grid-column: 1 / -1; }
    .ns-product-share--buttons .ns-product-share__link { min-inline-size: 0; min-block-size: 2.1875rem; padding-inline: var(--ns-space-10); border: 0; border-radius: var(--ns-radius-compact, var(--ns-radius-lg)); text-decoration: none; }
  }
/* END_BLOCK:social-share */

/* START_BLOCK:text (INDEX:199) */
@layer components {
    .ns-text {
      text-align: var(--ns-text-align);
    }

    .ns-text--title {
      font-family: var(--ns-font-heading-family);
      font-size: var(--ns-type-large-size);
      font-weight: var(--ns-type-weight-heading);
      line-height: var(--ns-type-large-line-height);
    }

    .ns-text--subtitle {
      font-size: var(--ns-type-lead-size);
      line-height: var(--ns-type-lead-line-height);
    }

    .ns-text--custom-color {
      color: var(--ns-text-color);
      background: var(--ns-text-background);
    }
  }
/* END_BLOCK:text */

/* START_BLOCK:variant-picker (INDEX:200) */
@layer components {
    .ns-variant-picker-block[data-ns-variant-option-scroll='true'] .ns-variant-option__values--swatches {
      --ns-variant-ring-buffer: 0.25rem;
      margin: calc(0px - var(--ns-variant-ring-buffer));
      padding: var(--ns-variant-ring-buffer);
      scroll-padding-inline: var(--ns-variant-ring-buffer);
    }

    @media (hover: hover) and (pointer: fine) {
      .ns-variant-picker-block[data-ns-variant-option-scroll='true'] .ns-variant-option__values--swatches {
        padding-block-end: calc(var(--ns-variant-ring-buffer) + var(--ns-space-4));
      }
    }
  }
/* END_BLOCK:variant-picker */

/* START_BLOCK:visual-annotation-hotspot (INDEX:201) */
@layer components {
    .ns-visual-annotation__marker[data-ns-annotation-numbered] > span::before {
      display: none;
    }

    .ns-visual-annotation__marker-label {
      overflow: hidden;
      max-width: calc(var(--ns-product-hotspot-marker-size, 28px) - 8px);
      color: inherit;
      font-size: var(--ns-type-caption-size);
      font-weight: var(--ns-type-weight-emphasis);
      line-height: 1;
      text-overflow: ellipsis;
      white-space: nowrap;
    }

    .ns-visual-annotation__content {
      display: grid;
      gap: var(--ns-space-8);
      min-width: 0;
      padding: var(--ns-space-18) var(--ns-space-20);
      padding-inline-end: var(--ns-product-hotspot-details-inline-end);
      color: var(--ns-color-foreground);
      text-align: start;
    }

    .ns-visual-annotation__title,
    .ns-visual-annotation__body,
    .ns-visual-annotation__fact {
      margin: 0;
    }

    .ns-visual-annotation__title {
      color: var(--ns-color-heading, currentColor);
      font-family: var(--ns-font-heading-family);
      font-size: var(--ns-type-card-title-size);
      font-weight: var(--ns-font-heading-weight);
      line-height: 1.25;
    }

    .ns-visual-annotation__body,
    .ns-visual-annotation__fact,
    .ns-visual-annotation__link {
      font-size: var(--ns-type-body-small-size);
      line-height: var(--ns-type-body-line-height);
    }

    .ns-visual-annotation__body,
    .ns-visual-annotation__fact {
      color: var(--ns-color-muted, currentColor);
    }

    .ns-visual-annotation__body > :first-child {
      margin-block-start: 0;
    }

    .ns-visual-annotation__body > :last-child {
      margin-block-end: 0;
    }

    .ns-visual-annotation__fact--material {
      color: var(--ns-color-foreground);
      font-weight: var(--ns-type-weight-emphasis);
    }

    .ns-visual-annotation__link {
      width: fit-content;
      color: var(--ns-color-link, currentColor);
      text-underline-offset: 0.18em;
    }

    .ns-visual-annotation__flow-content {
      width: 100%;
      border-inline-start: 2px solid var(--ns-color-border);
    }
  }
/* END_BLOCK:visual-annotation-hotspot */

/* START_BLOCK:visual-evidence-list (INDEX:204) */
@layer components {
    .ns-visual-evidence {
      display: grid;
      gap: var(--ns-space-18);
      width: 100%;
      min-width: 0;
      color: var(--ns-color-foreground);
      text-align: start;
    }

    .ns-visual-evidence__heading,
    .ns-visual-evidence__introduction {
      margin: 0;
    }

    .ns-visual-evidence__heading {
      color: var(--ns-color-heading, currentColor);
      font-family: var(--ns-font-heading-family);
      font-size: var(--ns-type-medium-size);
      font-weight: var(--ns-font-heading-weight);
      line-height: var(--ns-type-medium-line-height);
    }

    .ns-visual-evidence__introduction {
      color: var(--ns-color-muted, currentColor);
      font-size: var(--ns-type-body-size);
      line-height: var(--ns-type-body-line-height);
    }

    .ns-visual-evidence__introduction > :first-child {
      margin-block-start: 0;
    }

    .ns-visual-evidence__introduction > :last-child {
      margin-block-end: 0;
    }

    .ns-visual-evidence__items {
      display: grid;
      gap: var(--ns-space-14);
      min-width: 0;
    }
  }
/* END_BLOCK:visual-evidence-list */

/* CSS from snippet stylesheet tags */
/* START_SNIPPET:_styles-age-verification-styles (INDEX:209) */
@layer components {
  .ns-age-verification__content {
    position: relative;
    display: grid;
    align-content: center;
    min-block-size: min(38rem, 90dvh);
    padding: clamp(var(--ns-space-32), 6vw, var(--ns-space-80));
    overflow: hidden;
    text-align: center;
  }

  .ns-age-verification__media {
    position: absolute;
    z-index: 0;
    inset: 0;
    inline-size: 100%;
    block-size: 100%;
    object-fit: cover;
  }

  .ns-age-verification__body {
    position: relative;
    z-index: 1;
    display: grid;
    gap: var(--ns-space-20);
    inline-size: min(30rem, 100%);
    margin-inline: auto;
    padding: clamp(var(--ns-space-24), 4vw, var(--ns-space-48));
    background: color-mix(in srgb, var(--ns-color-background) 92%, transparent);
    color: var(--ns-color-foreground);
  }

  .ns-age-verification__body :is(h2, p) {
    margin: 0;
  }

  .ns-age-verification__consent {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    gap: var(--ns-space-10);
    text-align: start;
  }

  .ns-age-verification__actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--ns-space-10);
  }

  .ns-age-verification__actions button {
    min-block-size: var(--ns-touch-target-min);
    border: 1px solid var(--ns-color-foreground);
    border-radius: var(--ns-radius-button, 0px);
    padding-inline: var(--ns-space-16);
    background: var(--ns-color-foreground);
    color: var(--ns-color-background);
    font: inherit;
    cursor: pointer;
  }

  .ns-age-verification__actions button:last-child {
    background: transparent;
    color: var(--ns-color-foreground);
  }

  .ns-age-verification__actions button:disabled {
    cursor: not-allowed;
    opacity: 0.5;
  }

  @media (max-width: 47.99rem) {
    .ns-age-verification__content {
      min-block-size: 100dvh;
      padding: var(--ns-space-16);
    }

    .ns-age-verification__actions {
      grid-template-columns: 1fr;
    }
  }
}
/* END_SNIPPET:_styles-age-verification-styles */

/* START_SNIPPET:_styles-article-styles (INDEX:210) */
@layer components {
  .ns-article {
    --ns-article-edge-radius-limit: 999px;

    width: 100%;
    padding-block: var(--ns-space-15) var(--ns-space-80);
  }

  .ns-article__layout {
    display: grid;
    grid-template-columns: minmax(0, 48.125rem);
    justify-content: center;
    gap: var(--ns-space-30);
  }

  .ns-article--with-sidebar .ns-article__layout {
    grid-template-columns: minmax(0, 48.125rem) minmax(20rem, 23.125rem);
  }

  .ns-article--with-sidebar .ns-article__main {
    grid-column: 1;
    grid-row: 1;
  }

  .ns-article--with-sidebar .ns-article__sidebar-slot,
  .ns-article--with-sidebar .ns-blog-sidebar {
    grid-column: 2;
    grid-row: 1;
  }

  .ns-article__main,
  .ns-article__sidebar-slot,
  .ns-article .ns-blog-sidebar {
    min-width: 0;
  }

  .ns-article__header {
    display: grid;
    gap: var(--ns-space-10);
    margin-block-end: var(--ns-space-16);
    text-align: center;
  }

  .ns-article__title {
    font-size: var(--ns-type-large-size);
    font-weight: var(--ns-font-heading-weight);
    line-height: 1.2;
    letter-spacing: 0;
    text-transform: none;
  }

  .ns-article__metadata {
    color: var(--ns-color-muted);
    font-size: var(--ns-type-body-size);
    font-style: italic;
    line-height: 1.5;
  }

  .ns-article__metadata span {
    color: var(--ns-color-foreground);
  }

  .ns-article__hero {
    aspect-ratio: 770 / 562;
    margin-block-end: var(--ns-space-30);
    overflow: hidden;
    border-radius: min(var(--ns-radius-media, 0px), var(--ns-article-edge-radius-limit));
    background: var(--ns-color-surface-alt);
  }

  .ns-article__hero-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .ns-article__content {
    color: var(--ns-color-muted);
    font-size: var(--ns-type-body-size);
    line-height: 1.6;
  }

  .ns-article__content :is(h2, h3, h4, h5, h6) {
    margin-block: var(--ns-space-24) var(--ns-space-12);
    color: var(--ns-color-foreground);
  }

  .ns-article__content :is(p, ul, ol, blockquote, table, figure) {
    margin-block: var(--ns-space-12);
  }

  .ns-article__content :is(ul, ol) {
    padding-inline-start: var(--ns-space-24);
  }

  .ns-article__content img {
    width: auto;
    max-width: 100%;
    margin-inline: auto;
  }

  .ns-article__content blockquote {
    padding: var(--ns-space-20) var(--ns-space-32);
    color: var(--ns-color-foreground);
    font-weight: var(--ns-type-weight-strong);
    text-align: center;
  }

  .ns-article__tags,
  .ns-article-share {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--ns-space-10);
    margin-block-start: var(--ns-space-20);
    color: var(--ns-color-muted);
    font-size: var(--ns-type-body-size);
  }

  .ns-article__tag-list {
    display: flex;
    flex-wrap: wrap;
    gap: var(--ns-space-10);
    padding: 0;
    list-style: none;
  }

  .ns-article__tag {
    display: inline-flex;
    padding: var(--ns-space-2) var(--ns-space-10);
    color: var(--ns-color-muted);
    line-height: 1.6;
    text-decoration: none;
    border: 1px solid var(--ns-color-border);
  }

  .ns-article__tag:is(:hover, :focus-visible) {
    color: var(--ns-color-foreground);
    border-color: var(--ns-color-foreground);
  }

  .ns-article-share__link {
    display: inline-grid;
    width: 1.5625rem;
    height: 1.5625rem;
    place-items: center;
    color: var(--ns-color-muted);
    border: 1px solid var(--ns-color-border);
  }

  .ns-article-share__link:is(:hover, :focus-visible) {
    color: var(--ns-color-foreground);
    border-color: var(--ns-color-foreground);
  }

  .ns-article-share__link svg {
    width: 0.875rem;
    height: 0.875rem;
  }

  .ns-article-navigation {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--ns-space-30);
    margin-block-start: var(--ns-space-60);
    padding-block: var(--ns-space-60);
    border-block: 1px solid var(--ns-color-border);
  }

  .ns-article-navigation__item {
    display: grid;
    gap: var(--ns-space-8);
    color: var(--ns-color-foreground);
    text-decoration: none;
  }

  .ns-article-navigation__item--next {
    grid-column: 2;
    text-align: end;
  }

  .ns-article-navigation__title {
    font-size: var(--ns-type-small-size);
    line-height: 1.2;
  }

  .ns-article-navigation__label {
    color: var(--ns-color-muted);
    font-size: var(--ns-type-body-size);
    text-decoration: underline;
    text-underline-offset: 0.15em;
  }

  .ns-article-comments {
    margin-block-start: var(--ns-space-60);
  }

  .ns-article-comments__title,
  .ns-article-comment-form__title {
    font-size: var(--ns-type-medium-size);
    font-weight: var(--ns-font-heading-weight);
    letter-spacing: 0;
  }

  .ns-article-comments__list {
    padding: 0;
    list-style: none;
  }

  .ns-article-comments__item {
    padding-block: var(--ns-space-24);
    color: var(--ns-color-muted);
    border-block-end: 1px solid var(--ns-color-border);
  }

  .ns-article-comments__meta {
    margin-block-end: var(--ns-space-12);
    font-size: var(--ns-type-body-size);
    font-style: italic;
  }

  .ns-article-comments__body {
    line-height: 1.6;
  }

  .ns-article-comments__pagination {
    margin-block-start: var(--ns-space-20);
  }

  .ns-article-comment-form {
    display: grid;
    gap: var(--ns-space-24);
    margin-block-start: var(--ns-space-60);
  }

  .ns-article-comment-form__content {
    display: grid;
    gap: var(--ns-space-15);
  }

  .ns-article-comment-form__body-field {
    display: grid;
  }

  .ns-article-comment-form__label {
    margin-block-end: var(--ns-space-4);
    color: var(--ns-color-foreground);
    font-size: var(--ns-type-label-size);
    line-height: 1.5;
    text-transform: uppercase;
  }

  .ns-article-comment-form__required {
    color: var(--ns-color-muted);
    text-transform: lowercase;
  }

  .ns-article-comment-form__textarea {
    height: auto;
    min-height: 8.75rem;
    padding: var(--ns-space-10) var(--ns-space-14);
    color: var(--ns-color-muted);
    font-size: var(--ns-type-label-size);
    line-height: 1.5;
    background: var(--ns-color-surface-alt);
    border: 1px solid var(--ns-color-border);
    border-radius: var(--ns-radius-input, 0px);
    outline: 0;
    resize: vertical;
  }

  .ns-article-comment-form__textarea:is(:hover, :focus-visible) {
    color: var(--ns-color-foreground);
    background: var(--ns-color-background);
  }

  .ns-article-comment-form__textarea:focus-visible {
    outline: 1px solid var(--ns-color-foreground);
    outline-offset: -1px;
  }

  .ns-article-comment-form__status {
    color: var(--ns-color-success);
  }

  .ns-article-comment-form__errors {
    color: var(--ns-color-critical);
  }

  @media (max-width: 1024px) {
    .ns-article--with-sidebar .ns-article__layout {
      grid-template-columns: minmax(0, 1fr);
    }

    .ns-article--with-sidebar .ns-article__main,
    .ns-article--with-sidebar .ns-article__sidebar-slot,
    .ns-article--with-sidebar .ns-blog-sidebar {
      grid-column: 1;
      grid-row: auto;
    }

    .ns-article .ns-article__sidebar-slot,
    .ns-article .ns-blog-sidebar {
      order: 2;
      margin-block-start: var(--ns-space-40);
    }
  }

  @media (min-width: 768px) and (max-width: 770px) {
    .ns-article {
      --ns-article-edge-radius-limit: var(--ns-section-edge-media-radius-limit-tablet, 999px);
    }
  }

  @media (max-width: 767px) {
    .ns-article {
      --ns-article-edge-radius-limit: var(--ns-section-edge-media-radius-limit-mobile, 999px);

      padding-block-end: var(--ns-space-48);
    }

    .ns-article__header {
      margin-block-end: var(--ns-space-20);
    }

    .ns-article__hero {
      aspect-ratio: 4 / 3;
      margin-block-end: var(--ns-space-24);
    }

    .ns-article-navigation {
      gap: var(--ns-space-20);
      margin-block-start: var(--ns-space-40);
      padding-block: var(--ns-space-40);
    }

    .ns-article-comments,
    .ns-article-comment-form {
      margin-block-start: var(--ns-space-40);
    }
  }
}
/* END_SNIPPET:_styles-article-styles */

/* START_SNIPPET:_styles-blog-listing-styles (INDEX:211) */
@layer components {
  .ns-blog {
    --ns-radius-density-active: var(--ns-radius-3xl);
    --ns-blog-edge-radius-limit: 999px;

    width: 100%;
    margin-inline: auto;
    padding-block: var(--ns-blog-padding-top) var(--ns-blog-padding-bottom);
  }

  .ns-blog__layout {
    display: grid;
    min-width: 0;
    gap: var(--ns-space-40);
  }

  .ns-blog__layout--with-sidebar {
    grid-template-columns: minmax(0, 1fr) minmax(20rem, 23.125rem);
    align-items: start;
  }

  .ns-blog__main,
  .ns-blog__sidebar-slot {
    min-width: 0;
    align-self: stretch;
  }

  .ns-blog__sidebar-slot:not(:has(.ns-blog-sidebar)) {
    display: none;
  }

  .ns-blog__articles {
    display: grid;
    min-width: 0;
  }

  .ns-blog--classic .ns-blog__articles {
    --ns-radius-density-active: var(--ns-radius-4xl);

    max-width: 53.125rem;
    margin-inline: auto;
  }

  .ns-blog--classic .ns-blog-card {
    padding-block: var(--ns-space-40);
    border-block-end: 1px solid var(--ns-color-border);
  }

  .ns-blog--classic .ns-blog-card:first-child {
    padding-block-start: 0;
  }

  .ns-blog--grid .ns-blog__articles {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--ns-space-48) var(--ns-space-30);
  }

  .ns-blog--masonry .ns-blog__articles {
    display: block;
    columns: 3;
    column-gap: var(--ns-space-30);
  }

  .ns-blog--masonry .ns-blog-card {
    display: inline-grid;
    width: 100%;
    margin-block-end: var(--ns-space-48);
    break-inside: avoid;
  }

  .ns-blog-card {
    display: grid;
    min-width: 0;
    gap: var(--ns-space-16);
    color: var(--ns-color-foreground);
    text-align: center;
  }

  .ns-blog-card__header {
    display: grid;
    gap: var(--ns-space-8);
    order: 0;
  }

  .ns-blog-card__category {
    margin: 0;
    color: var(--ns-color-muted);
    font-size: var(--ns-type-caption-size);
    line-height: 1.3;
    text-transform: uppercase;
  }

  .ns-blog-card__title {
    margin: 0;
    font-size: var(--ns-type-small-size);
    font-weight: var(--ns-font-heading-weight);
    line-height: 1.3;
  }

  .ns-blog-card__title a {
    color: inherit;
    text-decoration: none;
  }

  .ns-blog-card__title a:is(:hover, :focus-visible) {
    color: var(--ns-color-link);
  }

  .ns-blog-card__metadata {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: var(--ns-space-4);
    color: var(--ns-color-muted);
    font-size: var(--ns-type-caption-size);
    font-style: italic;
    line-height: 1.4;
  }

  .ns-blog-card__metadata time::after {
    content: '/';
    margin-inline-start: var(--ns-space-4);
  }

  .ns-blog-card__metadata span {
    text-transform: uppercase;
  }

  .ns-blog-card__media {
    display: block;
    order: 1;
    min-width: 0;
    overflow: hidden;
    border-radius: min(
      var(--ns-radius-media, 0px),
      var(--ns-radius-density-active, var(--ns-radius-4xl)),
      var(--ns-blog-edge-radius-limit)
    );
    color: inherit;
    background: color-mix(in srgb, var(--ns-color-foreground) 4%, var(--ns-color-background));
  }

  .ns-blog-card--grid .ns-blog-card__media {
    order: 0;
  }

  .ns-blog-card--grid .ns-blog-card__header {
    order: 1;
  }

  .ns-blog-card__image,
  .ns-blog-card__placeholder {
    display: block;
    width: 100%;
    height: auto;
  }

  .ns-blog-card--classic .ns-blog-card__media {
    aspect-ratio: 37 / 27;
  }

  .ns-blog-card--classic .ns-blog-card__image,
  .ns-blog-card--classic .ns-blog-card__placeholder,
  .ns-blog-card--grid:not(.ns-blog-card--masonry) .ns-blog-card__image,
  .ns-blog-card--grid:not(.ns-blog-card--masonry) .ns-blog-card__placeholder {
    height: 100%;
    object-fit: cover;
  }

  .ns-blog-card--grid:not(.ns-blog-card--masonry) .ns-blog-card__media {
    aspect-ratio: 37 / 27;
  }

  .ns-blog-card__footer {
    display: grid;
    order: 2;
    gap: var(--ns-space-16);
  }

  .ns-blog-card__excerpt {
    max-width: 47rem;
    margin: 0 auto;
    color: var(--ns-color-muted);
    font-size: var(--ns-type-body-small-size);
    line-height: 1.5;
  }

  .ns-blog-card__actions {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: var(--ns-space-12);
  }

  .ns-blog-card__actions > .ns-button {
    grid-column: 2;
  }

  .ns-blog-card__comments {
    display: inline-flex;
    grid-column: 3;
    justify-self: end;
    align-items: center;
    gap: var(--ns-space-4);
    color: var(--ns-color-muted);
    font-size: var(--ns-type-body-small-size);
    text-decoration: none;
  }

  .ns-blog-card__comments svg {
    width: 0.875rem;
    height: 0.875rem;
  }

  .ns-blog__load-more,
  .ns-blog__pagination {
    display: flex;
    justify-content: center;
    margin-block-start: var(--ns-space-40);
  }

  .ns-blog__empty {
    padding-block: var(--ns-space-64);
    color: var(--ns-color-muted);
    text-align: center;
  }

  .ns-blog-sidebar {
    display: grid;
    gap: var(--ns-space-24);
  }

  .ns-blog-sidebar__block {
    display: grid;
    gap: var(--ns-space-12);
    padding-block-end: var(--ns-space-24);
    border-block-end: 1px solid var(--ns-color-border);
  }

  .ns-blog-sidebar > .ns-visual-group {
    padding-block-end: var(--ns-space-24);
    border-block-end: 1px solid var(--ns-color-border);
  }

  .ns-blog-sidebar > .ns-visual-group .ns-visual-text {
    max-width: 23.125rem;
  }

  .ns-blog-sidebar > .ns-visual-group .ns-visual-text--heading:first-child {
    font-size: var(--ns-type-body-size);
    letter-spacing: 0.04em;
    line-height: 1.3;
  }

  .ns-blog-sidebar > .ns-visual-group .ns-visual-text--paragraph {
    color: var(--ns-color-muted);
    font-size: var(--ns-type-body-size);
    line-height: 1.4;
  }

  .ns-blog-sidebar > .ns-visual-group .ns-visual-text--paragraph > * {
    margin: 0;
  }

  .ns-blog-sidebar > .ns-blog-sidebar__block:last-child,
  .ns-blog-sidebar > .ns-u-theme-block-root:last-child > .ns-blog-sidebar__block {
    border-block-end: 0;
  }

  .ns-blog-sidebar__heading {
    margin: 0;
    font-size: var(--ns-type-body-size);
    font-weight: var(--ns-font-heading-weight);
    letter-spacing: 0.04em;
    line-height: 1.3;
    text-transform: uppercase;
  }

  .ns-blog-sidebar__text {
    color: var(--ns-color-muted);
    font-size: var(--ns-type-body-small-size);
    line-height: 1.5;
  }

  .ns-blog-sidebar__text > * {
    margin-block: 0;
  }

  .ns-blog-sidebar__post-list,
  .ns-blog-sidebar__tag-list {
    display: grid;
    gap: var(--ns-space-10);
    margin: 0;
    padding: 0;
    list-style: none;
  }

  .ns-blog-sidebar__post-list li {
    display: grid;
    gap: var(--ns-space-4);
    padding-block-end: var(--ns-space-10);
    border-block-end: 1px dashed var(--ns-color-border);
  }

  .ns-blog-sidebar__post-list a,
  .ns-blog-sidebar__tag-list a {
    color: inherit;
    font-size: var(--ns-type-body-small-size);
    text-decoration: none;
  }

  .ns-blog-sidebar__post-list a:is(:hover, :focus-visible),
  .ns-blog-sidebar__tag-list a:is(:hover, :focus-visible) {
    color: var(--ns-color-link);
  }

  .ns-blog-sidebar__post-list time {
    color: var(--ns-color-muted);
    font-size: var(--ns-type-caption-size);
    font-style: italic;
  }

  .ns-blog-sidebar__tag-list--chips {
    display: flex;
    flex-wrap: wrap;
    gap: var(--ns-space-6);
  }

  .ns-blog-sidebar__tag-list--chips a {
    display: inline-flex;
    padding: var(--ns-space-4) var(--ns-space-8);
    border: 1px solid var(--ns-color-border);
    border-radius: var(--ns-radius-compact, var(--ns-radius-lg));
  }

  @media (max-width: 64rem) {
    .ns-blog {
      --ns-radius-density-active: var(--ns-radius-4xl);
    }

    .ns-blog__layout--with-sidebar {
      grid-template-columns: minmax(0, 1fr);
    }

    .ns-blog--grid .ns-blog__articles {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .ns-blog--masonry .ns-blog__articles {
      columns: 2;
    }

    .ns-blog-sidebar {
      grid-template-columns: repeat(2, minmax(0, 1fr));
      align-items: start;
    }
  }

  @media (max-width: 47.99rem) {
    .ns-blog {
      --ns-blog-edge-radius-limit: var(--ns-section-edge-media-radius-limit-mobile, 999px);
    }

    .ns-blog--grid .ns-blog__articles {
      grid-template-columns: minmax(0, 1fr);
    }

    .ns-blog--masonry .ns-blog__articles {
      columns: 1;
    }

    .ns-blog-sidebar {
      grid-template-columns: minmax(0, 1fr);
    }

    .ns-blog-card__title {
      font-size: var(--ns-type-medium-size);
    }
  }
}
/* END_SNIPPET:_styles-blog-listing-styles */

/* START_SNIPPET:_styles-blog-post-card-editorial-styles (INDEX:212) */
@layer components {
  .ns-blog-post-card--editorial {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    align-content: start;
    gap: var(--ns-space-20);
  }

  .ns-blog-post-card--editorial .ns-blog-post-card__media {
    width: 100%;
    aspect-ratio: 270 / 197;
  }

  .ns-blog-post-card--editorial .ns-blog-post-card__content {
    align-content: start;
    gap: var(--ns-space-12);
  }

  .ns-blog-post-card--editorial .ns-blog-post-card__title {
    margin: 0;
    font-size: var(--ns-type-medium-size);
    line-height: var(--ns-type-medium-line-height);
  }

  .ns-blog-post-card--editorial .ns-blog-post-card__excerpt {
    margin: 0;
    font-size: var(--ns-type-body-size);
    line-height: 1.5;
  }

  .ns-blog-post-card--editorial .ns-blog-post-card__action {
    display: flex;
    align-items: flex-start;
    margin-block-start: auto;
    padding-block-start: var(--ns-space-4);
  }
}
/* END_SNIPPET:_styles-blog-post-card-editorial-styles */

/* START_SNIPPET:_styles-blog-posts-styles (INDEX:213) */
@layer components {
  .ns-blog-posts-section {
    overflow-x: clip;
  }

  .ns-blog-posts {
    --ns-blog-gap: var(--ns-primary-grid-column-gap);
    --ns-blog-posts-preview-columns: var(--ns-blog-columns-mobile);
    --ns-blog-posts-preview-extension: 0px;
    --ns-blog-posts-preview-offset: 0px;
    --ns-radius-density-active: var(--ns-radius-density-mobile, var(--ns-radius-4xl));
    --ns-blog-posts-edge-radius-limit-active: var(--ns-blog-posts-edge-radius-limit-mobile, 999px);

    display: block;
    width: 100%;
    min-width: 0;
    max-width: 100%;
    margin-inline: auto;
    overflow-x: clip;
    contain: inline-size;
  }

  .ns-blog-posts[data-ns-next-item-preview] {
    --ns-slider-next-item-preview-size: min(
      clamp(3rem, 8vi, 7rem),
      calc(
        (100% - (var(--ns-blog-posts-preview-columns) - 1) * var(--ns-primary-grid-column-gap)) /
          var(--ns-blog-posts-preview-columns) * 0.6
      )
    );
    --ns-blog-posts-preview-extension: min(
      max(0px, calc((100vi - var(--ns-content-width)) / 2)),
      calc(var(--ns-slider-next-item-preview-size) + var(--ns-primary-grid-column-gap))
    );
  }

  .ns-blog-posts[data-ns-next-item-preview][data-ns-slider-preview-active] {
    --ns-blog-posts-preview-offset: max(
      var(--ns-blog-posts-preview-extension),
      calc(var(--ns-slider-next-item-preview-size) + var(--ns-blog-gap))
    );
  }

  .ns-blog-posts__block-source {
    display: contents;
  }

  .ns-blog-posts__carousel {
    --ns-slider-navigation-block-offset: 0;

    position: relative;
    min-width: 0;
  }

  .ns-blog-posts__list {
    --ns-blog-columns: var(--ns-blog-columns-mobile);
    --ns-blog-gap: var(--ns-primary-grid-column-gap);
    display: grid;
    min-width: 0;
    max-width: 100%;
    grid-template-columns: repeat(var(--ns-blog-columns), minmax(0, 1fr));
    gap: var(--ns-primary-grid-row-gap) var(--ns-blog-gap);
  }

  .ns-blog-post-card {
    display: grid;
    min-width: 0;
    grid-template-columns: minmax(0, 1fr);
    align-items: center;
    align-content: start;
    gap: var(--ns-space-20);
  }

  .ns-blog-post-card__media {
    display: block;
    min-width: 0;
    overflow: hidden;
    border-radius: min(
      var(--ns-radius-media, 0px),
      var(--ns-radius-density-active, var(--ns-radius-4xl)),
      var(--ns-blog-posts-edge-radius-limit-active)
    );
    color: inherit;
    background: color-mix(in srgb, var(--ns-color-foreground) 5%, var(--ns-color-background));
    aspect-ratio: 270 / 197;
  }

  .ns-blog-post-card__image,
  .ns-blog-post-card__placeholder {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 220ms ease;
  }

  .ns-blog-post-card__media:hover .ns-blog-post-card__image {
    transform: scale(1.015);
  }

  .ns-blog-post-card__content {
    display: grid;
    min-width: 0;
    align-content: center;
    gap: var(--ns-space-12);
  }

  .ns-blog-post-card__title {
    font-size: var(--ns-type-large-size);
    font-weight: var(--ns-font-heading-weight);
    line-height: 1.2;
  }

  .ns-blog-post-card__title a {
    color: inherit;
    text-decoration: none;
  }

  .ns-blog-post-card__title a:is(:hover, :focus-visible) {
    color: var(--ns-color-link);
  }

  .ns-blog-post-card__metadata {
    color: var(--ns-color-muted);
    font-size: var(--ns-type-body-size);
    font-style: italic;
    line-height: 1.5;
  }

  .ns-blog-post-card__metadata p {
    margin: 0;
  }

  .ns-blog-post-card__metadata p span {
    text-transform: uppercase;
  }

  .ns-blog-post-card__excerpt {
    color: var(--ns-color-muted);
    line-height: var(--ns-type-body-line-height);
  }

  .ns-blog-posts__empty {
    padding-block: var(--ns-space-40);
    color: var(--ns-color-muted);
    text-align: center;
  }

  .ns-blog-posts[data-ns-slider-mode='all'] .ns-blog-posts__list {
    --ns-slider-page-size: var(--ns-blog-columns);

    grid-template-columns: none;
    grid-auto-flow: column;
    grid-auto-columns: calc(
      (100% - (var(--ns-blog-columns) - 1) * var(--ns-blog-gap) - var(--ns-blog-posts-preview-offset)) /
        var(--ns-blog-columns)
    );
    row-gap: 0;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-behavior: smooth;
    scroll-snap-type: inline mandatory;
    touch-action: pan-x pan-y;
    scrollbar-width: none;
  }

  .ns-blog-posts[data-ns-slider-mode='all'][data-ns-next-item-preview][data-ns-slider-preview-active] {
    overflow-x: visible;
  }

  .ns-blog-posts[data-ns-slider-mode='all'][data-ns-next-item-preview][data-ns-slider-preview-active]
    .ns-blog-posts__carousel {
    --ns-slider-navigation-inline-end-offset: calc(
      var(--ns-slider-navigation-inline-offset, var(--ns-space-16)) +
        var(--ns-slider-navigation-preview-inline-end-compensation, var(--ns-blog-posts-preview-extension))
    );

    inline-size: calc(100% + var(--ns-blog-posts-preview-extension));
    max-inline-size: none;
  }

  .ns-blog-posts[data-ns-slider-mode='all'][data-ns-next-item-preview][data-ns-slider-preview-active]
    .ns-blog-post-card:last-child {
    margin-inline-end: var(--ns-blog-posts-preview-offset);
  }

  .ns-blog-posts[data-ns-slider-mode='all'] .ns-blog-post-card,
  .ns-blog-posts[data-ns-slider-mode='mobile'] .ns-blog-post-card {
    scroll-snap-align: start;
    scroll-snap-stop: always;
  }

  .ns-blog-posts[data-ns-slider-mode='all'] .ns-blog-posts__list::-webkit-scrollbar,
  .ns-blog-posts[data-ns-slider-mode='mobile'] .ns-blog-posts__list::-webkit-scrollbar {
    display: none;
  }

  .ns-blog-posts[data-ns-slider-mode='mobile'] .ns-slider-navigation {
    display: none;
  }

  @media (min-width: 768px) {
    .ns-blog-posts {
      --ns-blog-posts-preview-columns: var(--ns-blog-columns-tablet);
      --ns-radius-density-active: var(--ns-radius-density-tablet, var(--ns-radius-4xl));
      --ns-blog-posts-edge-radius-limit-active: var(--ns-blog-posts-edge-radius-limit-tablet, 999px);
    }

    .ns-blog-posts__list {
      --ns-blog-columns: var(--ns-blog-columns-tablet);
    }
  }

  @media (min-width: 1025px) {
    .ns-blog-posts {
      --ns-blog-posts-preview-columns: var(--ns-blog-columns-desktop);
      --ns-radius-density-active: var(--ns-radius-density-desktop, var(--ns-radius-4xl));
      --ns-blog-posts-edge-radius-limit-active: var(--ns-blog-posts-edge-radius-limit-desktop, 999px);
    }

    .ns-blog-posts__list {
      --ns-blog-columns: var(--ns-blog-columns-desktop);
    }

    .ns-blog-post-card:not(.ns-blog-post-card--editorial) {
      grid-template-columns: minmax(0, 27fr) minmax(0, 28fr);
      gap: var(--ns-space-20);
    }
  }

  @media (min-width: 1260px) {
    .ns-blog-posts {
      --ns-blog-posts-edge-radius-limit-active: var(--ns-blog-posts-edge-radius-limit-wide-desktop, 999px);
    }
  }

  @media (max-width: 767px) {
    .ns-blog-posts .ns-section-header {
      margin-block-end: var(--ns-blog-header-gap-mobile, var(--ns-space-32));
    }

    .ns-blog-post-card:not(.ns-blog-post-card--editorial) .ns-blog-post-card__media {
      width: 100%;
      max-width: 16.875rem;
      margin-inline: auto;
    }

    .ns-blog-post-card:not(.ns-blog-post-card--editorial) .ns-blog-post-card__content {
      text-align: center;
    }

    .ns-blog-posts[data-ns-slider-mode='mobile'] .ns-blog-posts__list {
      --ns-slider-page-size: var(--ns-blog-columns);

      grid-template-columns: none;
      grid-auto-flow: column;
      grid-auto-columns: calc(
        (100% - (var(--ns-blog-columns) - 1) * var(--ns-blog-gap) - var(--ns-blog-posts-preview-offset)) /
          var(--ns-blog-columns)
      );
      row-gap: 0;
      overflow-x: auto;
      overscroll-behavior-inline: contain;
      scroll-behavior: smooth;
      scroll-snap-type: inline mandatory;
      touch-action: pan-x pan-y;
      scrollbar-width: none;
    }

    .ns-blog-posts[data-ns-slider-mode='mobile'][data-ns-next-item-preview][data-ns-slider-preview-active] {
      overflow-x: visible;
    }

    .ns-blog-posts[data-ns-slider-mode='mobile'][data-ns-next-item-preview][data-ns-slider-preview-active]
      .ns-blog-posts__carousel {
      --ns-slider-navigation-inline-end-offset: calc(
        var(--ns-slider-navigation-inline-offset, var(--ns-space-16)) +
          var(--ns-slider-navigation-preview-inline-end-compensation, var(--ns-blog-posts-preview-extension))
      );

      inline-size: calc(100% + var(--ns-blog-posts-preview-extension));
      max-inline-size: none;
    }

    .ns-blog-posts[data-ns-slider-mode='mobile'][data-ns-next-item-preview][data-ns-slider-preview-active]
      .ns-blog-post-card:last-child {
      margin-inline-end: var(--ns-blog-posts-preview-offset);
    }

    .ns-blog-posts[data-ns-slider-mode='mobile'] .ns-slider-navigation {
      display: contents;
    }
  }

  @media (prefers-reduced-motion: reduce) {
    .ns-blog-posts__list {
      scroll-behavior: auto;
    }

    .ns-blog-post-card__image {
      transition: none;
    }
  }
}
/* END_SNIPPET:_styles-blog-posts-styles */

/* START_SNIPPET:_styles-bottom-surface-styles (INDEX:214) */
@layer components {
  [data-ns-main] {
    padding-block-end: var(--ns-bottom-surface-reserve, 0px);
  }

  [data-ns-bottom-surface-host='dock'] {
    z-index: 880;
  }

  [data-ns-bottom-surface-host='stack'] {
    z-index: 900;
  }

  [data-ns-bottom-surface-host='cover'] {
    z-index: 920;
  }

  .ns-bottom-surface {
    --ns-bottom-surface-edge-inset: 0px;
    position: fixed;
    inset-inline: 0;
    inset-block-end: var(--ns-bottom-surface-offset, 0px);
    display: block;
    color: var(--ns-color-foreground);
    background: var(--ns-color-background);
    border-block-start: 1px solid var(--ns-color-border);
    box-shadow: 0 -1rem 3rem color-mix(in srgb, var(--ns-color-foreground) 10%, transparent);
    animation: ns-bottom-surface-enter 300ms cubic-bezier(0, 0, 0.2, 1);
  }

  .ns-bottom-surface[data-ns-bottom-at-edge='true'] {
    --ns-bottom-surface-edge-inset: env(safe-area-inset-bottom);
  }

  .ns-bottom-surface[data-ns-bottom-role='dock'] {
    z-index: 880;
  }

  .ns-bottom-surface[data-ns-bottom-role='stack'] {
    z-index: 900;
  }

  .ns-bottom-surface[data-ns-bottom-role='cover'] {
    z-index: 920;
  }

  .ns-bottom-surface[hidden] {
    display: none;
  }

  .ns-bottom-surface__inner {
    inline-size: var(--ns-content-width, min(100%, var(--ns-layout-wide-width, 92rem)));
    margin-inline: auto;
    padding: var(--ns-space-12) max(var(--ns-space-20), env(safe-area-inset-right))
      calc(var(--ns-space-12) + var(--ns-bottom-surface-edge-inset)) max(var(--ns-space-20), env(safe-area-inset-left));
  }

  @keyframes ns-bottom-surface-enter {
    from {
      opacity: 0;
      transform: translateY(100%);
    }
  }

  @media (prefers-reduced-motion: reduce) {
    .ns-bottom-surface {
      animation: none;
    }
  }
}
/* END_SNIPPET:_styles-bottom-surface-styles */

/* START_SNIPPET:_styles-brand-catalog-styles (INDEX:215) */
@layer components {
  .ns-brand-catalog {
    display: block;
    width: 100%;
    overflow-x: clip;
    contain: inline-size;
  }

  .ns-brand-catalog__inner {
    width: var(--ns-content-width);
    margin-inline: auto;
  }

  .ns-brand-catalog__header:not(:empty) {
    margin-block-end: var(--ns-space-32);
  }

  .ns-brand-catalog__filters {
    display: flex;
    width: max-content;
    max-width: 100%;
    min-height: 2.125rem;
    margin-inline: auto;
    margin-block-end: var(--ns-space-32);
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scrollbar-width: none;
    touch-action: pan-x pan-y;
    visibility: hidden;
  }

  .ns-brand-catalog__filters[data-ns-brand-catalog-filters-ready] {
    visibility: visible;
  }

  .ns-brand-catalog__filters::-webkit-scrollbar {
    display: none;
  }

  .ns-brand-catalog__filter {
    min-width: 2.125rem;
    min-height: 2.125rem;
    padding: var(--ns-space-8) var(--ns-space-10);
    border: 1px solid var(--ns-color-border);
    border-inline-end: 0;
    border-radius: 0;
    background: transparent;
    color: var(--ns-color-heading);
    font: inherit;
    font-size: var(--ns-type-label-size);
    line-height: 1;
    text-transform: uppercase;
    white-space: nowrap;
    cursor: pointer;
  }

  .ns-brand-catalog__filter:last-child {
    border-inline-end: 1px solid var(--ns-color-border);
  }

  .ns-brand-catalog__filter:is(:hover, :focus-visible),
  .ns-brand-catalog__filter[aria-pressed='true'] {
    border-color: var(--ns-color-heading);
    background: var(--ns-color-heading);
    color: var(--ns-color-background);
  }

  .ns-brand-catalog__filter:focus-visible {
    position: relative;
    z-index: 1;
    outline: 2px solid var(--ns-color-accent);
    outline-offset: 2px;
  }

  .ns-brand-catalog__item[hidden],
  .ns-brand-catalog__group[hidden] {
    display: none;
  }

  .ns-brand-catalog--visual .ns-brand-catalog__source {
    --ns-brand-catalog-columns: var(--ns-brand-catalog-columns-mobile);
    display: grid;
    grid-template-columns: repeat(var(--ns-brand-catalog-columns), minmax(0, 1fr));
  }

  .ns-brand-catalog--visual .ns-brand-catalog__item {
    display: flex;
    min-width: 0;
    padding: var(--ns-space-24) var(--ns-space-8) var(--ns-space-32);
    border-block-end: 1px solid var(--ns-color-border);
    align-items: center;
    flex-direction: column;
    text-align: center;
  }

  .ns-brand-catalog--visual .ns-brand-catalog__item[hidden] {
    display: none;
  }

  .ns-brand-catalog__media {
    display: grid;
    width: min(100%, 10.625rem);
    aspect-ratio: 1;
    margin-block-end: var(--ns-space-20);
    overflow: hidden;
    border-radius: var(--ns-radius-lg);
    place-items: center;
  }

  .ns-brand-catalog__image,
  .ns-brand-catalog__placeholder {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
  }

  .ns-brand-catalog__placeholder {
    background: var(--ns-color-surface);
    color: var(--ns-color-border);
  }

  .ns-brand-catalog__title,
  .ns-brand-catalog__text {
    margin: 0;
  }

  .ns-brand-catalog__title {
    color: var(--ns-color-heading);
    font-size: var(--ns-type-small-size);
    letter-spacing: 0.05em;
    line-height: 1.4;
    text-transform: uppercase;
  }

  .ns-brand-catalog--visual .ns-brand-catalog__item:is(:hover, :focus-within) .ns-brand-catalog__title {
    text-decoration: underline;
    text-underline-offset: 0.12em;
  }

  .ns-brand-catalog__text {
    margin-block-start: var(--ns-space-4);
    color: var(--ns-color-muted);
    font-size: var(--ns-type-label-size);
    line-height: 1.2;
  }

  .ns-brand-catalog--alphabetical[data-ns-brand-catalog-enhanced] .ns-brand-catalog__source {
    display: none;
  }

  .ns-brand-catalog--alphabetical:not([data-ns-brand-catalog-enhanced]) .ns-brand-catalog__source {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--ns-space-16) var(--ns-space-24);
    padding: var(--ns-space-24) var(--ns-space-20);
    border-block: 1px solid var(--ns-color-border);
  }

  .ns-brand-catalog--alphabetical .ns-brand-catalog__groups {
    border-block-end: 1px solid var(--ns-color-border);
  }

  .ns-brand-catalog__group {
    display: grid;
    grid-template-columns: 5rem minmax(0, 1fr);
    gap: var(--ns-space-24);
    padding: var(--ns-space-32) var(--ns-space-20);
    border-block-start: 1px solid var(--ns-color-border);
  }

  .ns-brand-catalog__initial {
    margin: 0;
    color: var(--ns-color-heading);
    font-size: var(--ns-type-large-size);
    font-weight: var(--ns-font-body-weight);
    line-height: 1;
  }

  .ns-brand-catalog__group-items {
    display: grid;
    min-width: 0;
    grid-template-columns: 1fr;
    gap: var(--ns-space-16) var(--ns-space-32);
  }

  .ns-brand-catalog--alphabetical .ns-brand-catalog__item {
    min-width: 0;
  }

  .ns-brand-catalog--alphabetical .ns-brand-catalog__title {
    overflow-wrap: anywhere;
  }

  .ns-brand-catalog--alphabetical .ns-brand-catalog__item:is(:hover, :focus-within) .ns-brand-catalog__title {
    text-decoration: underline;
    text-underline-offset: 0.12em;
  }

  @media (min-width: 48rem) {
    .ns-brand-catalog--visual .ns-brand-catalog__source {
      --ns-brand-catalog-columns: var(--ns-brand-catalog-columns-tablet);
    }

    .ns-brand-catalog__group {
      grid-template-columns: 7.5rem minmax(0, 1fr);
      padding-inline: var(--ns-space-32);
    }

    .ns-brand-catalog__group-items {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .ns-brand-catalog--alphabetical:not([data-ns-brand-catalog-enhanced]) .ns-brand-catalog__source {
      grid-template-columns: repeat(4, minmax(0, 1fr));
      padding-inline: var(--ns-space-32);
    }
  }

  @media (min-width: 64.0625rem) {
    .ns-brand-catalog--visual .ns-brand-catalog__source {
      --ns-brand-catalog-columns: var(--ns-brand-catalog-columns-desktop);
    }

    .ns-brand-catalog__group {
      grid-template-columns: 8rem minmax(0, 1fr);
      padding: var(--ns-space-32) var(--ns-space-64);
    }

    .ns-brand-catalog__group-items {
      grid-template-columns: repeat(5, minmax(0, 1fr));
    }

    .ns-brand-catalog--alphabetical:not([data-ns-brand-catalog-enhanced]) .ns-brand-catalog__source {
      grid-template-columns: repeat(5, minmax(0, 1fr));
      padding-inline: var(--ns-space-64);
    }
  }

  @media (max-width: 47.9375rem) {
    .ns-brand-catalog__inner {
      width: 100%;
    }

    .ns-brand-catalog__header {
      padding-inline: var(--ns-page-gutter);
    }

    .ns-brand-catalog__filters {
      width: 100%;
      padding-inline: var(--ns-page-gutter);
      margin-inline: 0;
    }

    .ns-brand-catalog--visual .ns-brand-catalog__source,
    .ns-brand-catalog__groups {
      margin-inline: var(--ns-page-gutter);
    }

    .ns-brand-catalog__media {
      width: 100%;
      max-width: 6.5625rem;
    }

    .ns-brand-catalog--visual .ns-brand-catalog__item {
      padding-block-start: var(--ns-space-24);
    }
  }
}
/* END_SNIPPET:_styles-brand-catalog-styles */

/* START_SNIPPET:_styles-brand-logos-styles (INDEX:216) */
@layer components {
  .ns-brand-logos {
    --ns-brand-cell-height-active: var(--ns-brand-cell-height-mobile);
    display: block;
    width: 100%;
    overflow-x: clip;
    contain: inline-size;
  }

  .ns-brand-logos__inner {
    width: var(--ns-content-width);
    margin-inline: auto;
  }

  .ns-brand-logos__header:not(:empty) {
    margin-block-end: var(--ns-space-40);
  }

  .ns-brand-logos__stage {
    position: relative;
    min-width: 0;
  }

  .ns-brand-logos__grid {
    --ns-brand-columns: var(--ns-brand-columns-mobile);
    display: grid;
    width: 100%;
    min-width: 0;
    grid-template-columns: repeat(var(--ns-brand-columns), minmax(0, 1fr));
    box-shadow: inset 0 1px 0 var(--ns-color-border);
    border-inline-start: 1px solid var(--ns-color-border);
  }

  .ns-brand-logos__grid > [data-ns-section-header] {
    grid-column: 1 / -1;
  }

  .ns-brand-logos__item {
    position: relative;
    min-width: 0;
    height: var(--ns-brand-cell-height-active);
    border-inline-end: 1px solid var(--ns-color-border);
    border-block-end: 1px solid var(--ns-color-border);
  }

  .ns-brand-logos__link {
    display: grid;
    width: 100%;
    height: 100%;
    padding: var(--ns-space-12) var(--ns-space-16);
    place-items: center;
    color: var(--ns-color-heading);
    text-decoration: none;
  }

  .ns-brand-logos__image {
    display: block;
    width: auto;
    max-width: min(100%, var(--ns-brand-logo-max-width));
    height: auto;
    max-height: calc(var(--ns-brand-cell-height-active) * 0.55);
    object-fit: contain;
    transition: none;
  }

  .ns-brand-logos__fallback {
    overflow: hidden;
    max-width: 100%;
    font-family: var(--ns-font-heading-family);
    font-size: var(--ns-type-medium-size);
    font-weight: var(--ns-font-heading-weight);
    letter-spacing: 0.08em;
    line-height: 1;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
    transition: none;
  }

  .ns-brand-logos__link:focus-visible {
    outline: 2px solid var(--ns-color-accent);
    outline-offset: -3px;
  }

  @media (hover: hover) {
    .ns-brand-logos__item:hover {
      z-index: 1;
      outline: 1px solid var(--ns-color-heading);
      outline-offset: -1px;
    }
  }

  .ns-brand-logos__item:has(.ns-brand-logos__link:focus-visible) {
    z-index: 1;
    outline: 1px solid var(--ns-color-heading);
    outline-offset: -1px;
  }

  .ns-brand-logos[data-ns-slider-mode='all'] .ns-brand-logos__grid {
    grid-template-columns: none;
    grid-auto-flow: column;
    grid-auto-columns: calc(100% / var(--ns-brand-columns));
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-behavior: smooth;
    scroll-snap-type: inline mandatory;
    touch-action: pan-x pan-y;
    scrollbar-width: none;
  }

  .ns-brand-logos[data-ns-slider-mode='all'] .ns-brand-logos__item,
  .ns-brand-logos[data-ns-slider-mode='mobile'] .ns-brand-logos__item {
    scroll-snap-align: start;
    scroll-snap-stop: always;
  }

  .ns-brand-logos[data-ns-slider-mode='all'] .ns-brand-logos__grid::-webkit-scrollbar,
  .ns-brand-logos[data-ns-slider-mode='mobile'] .ns-brand-logos__grid::-webkit-scrollbar {
    display: none;
  }

  .ns-brand-logos[data-ns-slider-mode='mobile'] .ns-slider-navigation {
    display: none;
  }

  @media (min-width: 768px) {
    .ns-brand-logos {
      --ns-brand-cell-height-active: var(--ns-brand-cell-height);
    }

    .ns-brand-logos__grid {
      --ns-brand-columns: var(--ns-brand-columns-tablet);
    }
  }

  @media (min-width: 1025px) {
    .ns-brand-logos__grid {
      --ns-brand-columns: var(--ns-brand-columns-desktop);
    }
  }

  @media (max-width: 767px) {
    .ns-brand-logos[data-ns-slider-mode='mobile'] .ns-brand-logos__grid {
      grid-template-columns: none;
      grid-auto-flow: column;
      grid-auto-columns: calc(100% / var(--ns-brand-columns));
      overflow-x: auto;
      overscroll-behavior-inline: contain;
      scroll-behavior: smooth;
      scroll-snap-type: inline mandatory;
      touch-action: pan-x pan-y;
      scrollbar-width: none;
    }

    .ns-brand-logos[data-ns-slider-mode='mobile'] .ns-slider-navigation {
      display: contents;
    }
  }

  @media (prefers-reduced-motion: reduce) {
    .ns-brand-logos__grid,
    .ns-brand-logos__image,
    .ns-brand-logos__fallback {
      scroll-behavior: auto;
      transition-duration: 0.01ms;
    }
  }
}
/* END_SNIPPET:_styles-brand-logos-styles */

/* START_SNIPPET:_styles-breadcrumbs-styles (INDEX:217) */
@layer components {
  .ns-breadcrumbs {
    display: grid;
    grid-template-columns:
      minmax(var(--ns-page-gutter), 1fr)
      min(calc(var(--ns-page-width) - var(--ns-page-gutter) * 2), calc(100% - var(--ns-page-gutter) * 2))
      minmax(var(--ns-page-gutter), 1fr);
    inline-size: 100%;
    color: var(--ns-color-foreground);
  }

  .ns-breadcrumbs__list {
    grid-column: 2;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--ns-space-8) var(--ns-space-12);
    min-inline-size: 0;
    margin: 0;
    padding-block: var(--ns-space-16);
    padding-inline: 0;
    list-style: none;
    font-size: var(--ns-type-body-small-size);
    line-height: var(--ns-type-body-line-height);
  }

  .ns-breadcrumbs__item {
    display: inline-flex;
    align-items: center;
    min-inline-size: 0;
    color: var(--ns-color-muted);
    color: color-mix(in srgb, currentColor 64%, transparent);
  }

  .ns-breadcrumbs__item + .ns-breadcrumbs__item::before {
    content: '';
    flex: 0 0 1px;
    inline-size: 1px;
    block-size: 1em;
    margin-inline-end: var(--ns-space-12);
    background: currentColor;
    opacity: 0.55;
    transform: rotate(18deg);
    transform-origin: center;
  }

  .ns-breadcrumbs__item:dir(rtl) + .ns-breadcrumbs__item:dir(rtl)::before {
    transform: rotate(-18deg);
  }

  .ns-breadcrumbs__item a {
    color: inherit;
    text-decoration: none;
    text-underline-offset: 0.18em;
  }

  .ns-breadcrumbs__item[aria-current='page'] {
    color: currentColor;
  }

  .ns-breadcrumbs__item a:focus-visible {
    border-radius: var(--ns-radius-xs);
    outline: 2px solid currentColor;
    outline-offset: 3px;
  }

  @media (hover: hover) and (pointer: fine) {
    .ns-breadcrumbs__item a:hover {
      color: currentColor;
      text-decoration: underline;
    }
  }
}
/* END_SNIPPET:_styles-breadcrumbs-styles */

/* START_SNIPPET:_styles-button-ambient-shimmer-styles (INDEX:218) */
@layer components {
  [data-ns-button-ambient-shimmer] {
    container: ns-ambient-shimmer / inline-size;
    position: relative;
    isolation: isolate;
    overflow: visible;
    transform: translate3d(0, 0, 0.01px);
  }

  [data-ns-button-ambient-shimmer] > .ns-button__icon,
  [data-ns-button-ambient-shimmer] > .ns-button__label {
    position: relative;
    z-index: 2;
  }

  .ns-button-effect--ambient-shimmer {
    overflow: hidden;
    color: currentcolor;
  }

  .ns-button-effect--ambient-shimmer::before {
    position: absolute;
    inset-block: -50%;
    inset-inline-start: 0;
    inline-size: 32%;
    background: linear-gradient(
      112deg,
      transparent 0%,
      color-mix(in srgb, currentcolor 8%, transparent) 32%,
      color-mix(in srgb, currentcolor 38%, transparent) 50%,
      color-mix(in srgb, currentcolor 8%, transparent) 68%,
      transparent 100%
    );
    content: '';
    opacity: 0;
    transform: translate3d(-240%, 0, 0) skewX(-14deg);
  }

  [data-ns-button-effect-runtime][data-ns-button-near='true']:not([aria-busy='true'])
    [data-ns-button-ambient-shimmer]:not(:disabled):not([aria-busy='true'])
    .ns-button-effect--ambient-shimmer::before {
    animation: ns-button-ambient-shimmer 6s cubic-bezier(0.4, 0, 0.2, 1) 2.8s infinite;
  }

  @supports (animation-timing-function: linear(0 0%, 1 100%)) {
    [data-ns-button-effect-runtime][data-ns-button-near='true']:not([aria-busy='true'])
      [data-ns-button-ambient-shimmer]:not(:disabled):not([aria-busy='true'])
      .ns-button-effect--ambient-shimmer::before {
      animation-name: ns-button-ambient-shimmer-adaptive;
      animation-timing-function: linear(0 0%, 0 1%, 1 var(--ns-ambient-stop, 16%), 1 100%);
    }

    @container ns-ambient-shimmer (min-width: 16rem) {
      .ns-button-effect--ambient-shimmer::before {
        --ns-ambient-stop: 19%;
      }
    }

    @container ns-ambient-shimmer (min-width: 30rem) {
      .ns-button-effect--ambient-shimmer::before {
        --ns-ambient-stop: 22%;
      }
    }

    @container ns-ambient-shimmer (min-width: 40rem) {
      .ns-button-effect--ambient-shimmer::before {
        --ns-ambient-stop: 24%;
      }
    }

    @container ns-ambient-shimmer (min-width: 64rem) {
      .ns-button-effect--ambient-shimmer::before {
        --ns-ambient-stop: 26%;
      }
    }
  }

  @keyframes ns-button-ambient-shimmer {
    0%,
    1% {
      opacity: 0;
      transform: translate3d(-240%, 0, 0) skewX(-14deg);
    }

    3% {
      opacity: 0.51;
    }

    14% {
      opacity: 0.51;
    }

    16%,
    100% {
      opacity: 0;
      transform: translate3d(420%, 0, 0) skewX(-14deg);
    }
  }

  @keyframes ns-button-ambient-shimmer-adaptive {
    from {
      opacity: 0.51;
      transform: translate3d(-240%, 0, 0) skewX(-14deg);
    }

    to {
      opacity: 0.51;
      transform: translate3d(420%, 0, 0) skewX(-14deg);
    }
  }

  @media (prefers-reduced-motion: reduce) {
    .ns-button-effect--ambient-shimmer::before {
      animation: none;
    }
  }
}
/* END_SNIPPET:_styles-button-ambient-shimmer-styles */

/* START_SNIPPET:_styles-button-animated-glow-styles (INDEX:219) */
@layer components {
  .ns-button--style-animated_glow_border {
    --ns-animated-glow-surface: var(--ns-button-animated-glow-surface);
    --ns-animated-glow-ink: var(--ns-button-animated-glow-text);
    --ns-animated-glow-border: var(--ns-button-animated-glow-border);
    color: var(--ns-animated-glow-ink);
    background: var(--ns-animated-glow-surface);
    border: var(--ns-button-animated-glow-border-width) solid var(--ns-animated-glow-border);
    border-radius: var(--ns-button-animated-glow-radius);
  }

  .ns-button--style-animated_glow_border[data-ns-button-tone='inverse'] {
    --ns-animated-glow-surface: var(--ns-button-animated-glow-inverse-surface);
    --ns-animated-glow-ink: var(--ns-button-animated-glow-inverse-text);
    --ns-animated-glow-border: var(--ns-button-animated-glow-inverse-border);
  }

  .ns-button-effect--animated-glow {
    inset: -50px;
    overflow: visible;
    opacity: 0;
    transition: opacity 200ms ease;
  }

  .ns-button-effect__glow-svg {
    position: absolute;
    inset: 0;
    inline-size: 100%;
    block-size: 100%;
    max-inline-size: none;
    overflow: visible;
  }

  .ns-button-effect__glow-stroke {
    width: calc(100% - 100px);
    height: calc(100% - 100px);
    rx: var(--ns-button-animated-glow-radius);
    fill: transparent;
    stroke: var(--ns-button-animated-glow-color);
    stroke-dasharray: 0 50;
    stroke-dashoffset: 0;
    stroke-linecap: round;
  }

  .ns-button-effect__glow-stroke--blur {
    stroke-width: var(--ns-button-animated-glow-blur-width);
    filter: blur(calc(var(--ns-button-animated-glow-blur-width) / 2));
  }

  .ns-button-effect__glow-stroke--sharp {
    stroke-width: var(--ns-button-animated-glow-border-width);
  }

  .ns-button--style-animated_glow_border[data-ns-button-near='true']:is(:hover, :focus-visible)
    .ns-button-effect--animated-glow {
    animation: ns-button-glow-fade var(--ns-button-animated-glow-duration) ease-in both;
  }

  .ns-button--style-animated_glow_border[data-ns-button-near='true']:is(:hover, :focus-visible)
    .ns-button-effect__glow-stroke {
    animation: ns-button-glow-travel var(--ns-button-animated-glow-duration) ease-in both;
  }

  @keyframes ns-button-glow-fade {
    0%,
    100% {
      opacity: 0;
    }

    25%,
    75% {
      opacity: 1;
    }
  }

  @keyframes ns-button-glow-travel {
    to {
      stroke-dasharray: var(--ns-button-animated-glow-line-length) calc(50 - var(--ns-button-animated-glow-line-length));
      stroke-dashoffset: -80;
    }
  }

  @media (prefers-reduced-motion: reduce) {
    .ns-button-effect--animated-glow,
    .ns-button-effect__glow-stroke {
      animation: none;
      transition: none;
    }
  }
}
/* END_SNIPPET:_styles-button-animated-glow-styles */

/* START_SNIPPET:_styles-button-aura-styles (INDEX:220) */
@layer components {
  .ns-button--style-aura {
    --ns-aura-surface: var(--ns-button-aura-surface);
    --ns-aura-ink: var(--ns-button-aura-text);
    color: var(--ns-aura-ink);
    background: var(--ns-aura-surface);
    border: 0;
    border-radius: var(--ns-button-aura-radius);
    transition: box-shadow 800ms
      linear(
        0,
        0.0407,
        0.1377,
        0.2616,
        0.3925,
        0.518,
        0.6306,
        0.727,
        0.8062,
        0.869,
        0.9171,
        0.9526,
        0.9778,
        0.9948,
        1.0055,
        1.0117,
        1.0145,
        1.0152,
        1.0144,
        1.0129,
        1.011,
        1.009,
        1.0071,
        1.0054,
        1.004,
        1.0028,
        1.0019,
        1.0012,
        1.0007,
        1.0003
      );
  }

  .ns-button--style-aura[data-ns-button-tone='inverse'] {
    --ns-aura-surface: var(--ns-button-aura-inverse-surface);
    --ns-aura-ink: var(--ns-button-aura-inverse-text);
  }

  .ns-button--style-aura:is(:hover, :focus-visible) {
    box-shadow:
      0 0 196.56px var(--ns-button-aura-glow),
      0 0 112.32px var(--ns-button-aura-glow),
      0 0 65.52px var(--ns-button-aura-glow),
      0 8px 32.76px var(--ns-button-aura-glow),
      0 0 9.36px color(from var(--ns-button-aura-glow) srgb r g b / 79%),
      0 0 4.68px var(--ns-button-aura-glow);
  }

  @media (prefers-reduced-motion: reduce) {
    .ns-button--style-aura {
      transition: none;
    }
  }
}
/* END_SNIPPET:_styles-button-aura-styles */

/* START_SNIPPET:_styles-button-border-glow-styles (INDEX:221) */
@layer components {
  .ns-button--style-border_glow {
    --ns-border-glow-surface: var(--ns-button-border-glow-surface);
    --ns-border-glow-ink: var(--ns-button-border-glow-text);
    --ns-border-glow-border: var(--ns-button-border-glow-border);
    --ns-border-glow-shadow: color(from var(--ns-button-effect-mask) srgb r g b / 10%);
    --ns-bgh-60: color(from var(--ns-button-border-glow-highlight) srgb r g b / 60%);
    --ns-bgh-50: color(from var(--ns-button-border-glow-highlight) srgb r g b / 50%);
    --ns-bgh-40: color(from var(--ns-button-border-glow-highlight) srgb r g b / 40%);
    --ns-bgh-30: color(from var(--ns-button-border-glow-highlight) srgb r g b / 30%);
    --ns-bgh-20: color(from var(--ns-button-border-glow-highlight) srgb r g b / 20%);
    --ns-bgh-10: color(from var(--ns-button-border-glow-highlight) srgb r g b / 10%);
    --ns-button-glow-angle: 45deg;
    --ns-button-border-opacity: 0;
    --ns-button-glow-opacity: 0;
    --ns-bg-p: var(--ns-button-border-glow-color-1);
    --ns-bg-r: var(--ns-button-border-glow-color-2);
    --ns-bg-b: var(--ns-button-border-glow-color-3);
    --ns-bg-k: var(--ns-button-effect-mask);
    --ns-bg-mesh:
      radial-gradient(at 80% 55%, var(--ns-bg-p), transparent 50%) border-box,
      radial-gradient(at 69% 34%, var(--ns-bg-r), transparent 50%) border-box,
      radial-gradient(at 8% 6%, var(--ns-bg-b), transparent 50%) border-box,
      radial-gradient(at 41% 38%, var(--ns-bg-p), transparent 50%) border-box,
      radial-gradient(at 86% 85%, var(--ns-bg-r), transparent 50%) border-box,
      radial-gradient(at 82% 18%, var(--ns-bg-b), transparent 50%) border-box,
      radial-gradient(at 51% 4%, var(--ns-bg-r), transparent 50%) border-box,
      linear-gradient(var(--ns-bg-p) 0 0) border-box;
    --ns-bg-outline-mask: conic-gradient(
      from var(--ns-button-glow-angle) at center,
      var(--ns-bg-k) 25%,
      transparent 40% 60%,
      var(--ns-bg-k) 75%
    );
    --ns-bg-fill-mask:
      linear-gradient(var(--ns-bg-k) 0 0), radial-gradient(ellipse at 50% 50%, var(--ns-bg-k) 40%, transparent 65%),
      radial-gradient(ellipse at 66% 66%, var(--ns-bg-k) 5%, transparent 40%),
      radial-gradient(ellipse at 33% 33%, var(--ns-bg-k) 5%, transparent 40%),
      radial-gradient(ellipse at 66% 33%, var(--ns-bg-k) 5%, transparent 40%),
      radial-gradient(ellipse at 33% 66%, var(--ns-bg-k) 5%, transparent 40%),
      conic-gradient(from var(--ns-button-glow-angle), transparent 5%, var(--ns-bg-k) 15% 85%, transparent 95%);
    --ns-bg-highlight-mask: conic-gradient(
      from var(--ns-button-glow-angle),
      var(--ns-bg-k) 2.5%,
      transparent 10% 90%,
      var(--ns-bg-k) 97.5%
    );
    color: var(--ns-border-glow-ink);
    background: var(--ns-border-glow-surface);
    border: 1px solid color(from var(--ns-border-glow-border) srgb r g b / var(--ns-button-border-glow-border-opacity));
    border-radius: var(--ns-button-border-glow-radius);
    box-shadow:
      var(--ns-border-glow-shadow) 0 1px 2px,
      var(--ns-border-glow-shadow) 0 2px 4px,
      var(--ns-border-glow-shadow) 0 4px 8px,
      var(--ns-border-glow-shadow) 0 8px 16px,
      var(--ns-border-glow-shadow) 0 16px 32px,
      var(--ns-border-glow-shadow) 0 32px 64px;
  }

  .ns-button--style-border_glow[data-ns-button-tone='inverse'] {
    --ns-border-glow-surface: var(--ns-button-border-glow-inverse-surface);
    --ns-border-glow-ink: var(--ns-button-border-glow-inverse-text);
    --ns-border-glow-border: var(--ns-button-border-glow-inverse-border);
  }

  .ns-button-effect--border-glow {
    overflow: visible;
  }

  .ns-button-effect__border-glow-outline,
  .ns-button-effect__border-glow-fill,
  .ns-button-effect__border-glow-highlight {
    position: absolute;
    border-radius: inherit;
    opacity: 0;
    transition: opacity 750ms ease-in-out;
  }

  .ns-button-effect__border-glow-outline,
  .ns-button-effect__border-glow-fill {
    inset: 0;
    border: 1px solid transparent;
  }

  .ns-button-effect__border-glow-outline {
    background:
      linear-gradient(var(--ns-border-glow-surface) 0 0) padding-box,
      linear-gradient(transparent 0 0) border-box,
      var(--ns-bg-mesh);
    mask-image: var(--ns-bg-outline-mask);
    -webkit-mask-image: var(--ns-bg-outline-mask);
  }

  .ns-button-effect__border-glow-fill {
    background: var(--ns-bg-mesh);
    background-clip: padding-box;
    mask-image: var(--ns-bg-fill-mask);
    mask-composite: subtract, add, add, add, add, add;
    -webkit-mask-image: var(--ns-bg-fill-mask);
    -webkit-mask-composite: source-out, source-over, source-over, source-over, source-over, source-over;
    mix-blend-mode: soft-light;
  }

  .ns-button-effect__border-glow-highlight {
    z-index: 1;
    inset: calc(-1 * var(--ns-button-border-glow-glow-radius));
    mask-image: var(--ns-bg-highlight-mask);
    -webkit-mask-image: var(--ns-bg-highlight-mask);
    mix-blend-mode: plus-lighter;
  }

  .ns-button-effect__border-glow-highlight-core {
    position: absolute;
    inset: var(--ns-button-border-glow-glow-radius);
    border-radius: inherit;
    box-shadow:
      inset 0 0 0 1px var(--ns-button-border-glow-highlight),
      inset 0 0 1px var(--ns-bgh-60),
      inset 0 0 3px var(--ns-bgh-50),
      inset 0 0 6px var(--ns-bgh-40),
      inset 0 0 15px var(--ns-bgh-30),
      inset 0 0 25px 2px var(--ns-bgh-20),
      inset 0 0 50px 2px var(--ns-bgh-10),
      0 0 1px var(--ns-bgh-60),
      0 0 3px var(--ns-bgh-50),
      0 0 6px var(--ns-bgh-40),
      0 0 15px var(--ns-bgh-30),
      0 0 25px 2px var(--ns-bgh-20),
      0 0 50px 2px var(--ns-bgh-10);
  }

  .ns-button--style-border_glow:hover :is(.ns-button-effect__border-glow-outline, .ns-button-effect__border-glow-fill) {
    transition-duration: 250ms;
    transition-timing-function: ease-out;
  }

  .ns-button--style-border_glow:hover .ns-button-effect__border-glow-outline {
    opacity: var(--ns-button-border-opacity);
  }

  .ns-button--style-border_glow:hover .ns-button-effect__border-glow-fill {
    opacity: calc(var(--ns-button-border-opacity) * 0.5);
  }

  .ns-button--style-border_glow:hover .ns-button-effect__border-glow-highlight {
    opacity: var(--ns-button-glow-opacity);
    transition-duration: 250ms;
    transition-timing-function: ease-out;
  }

  .ns-button--style-border_glow:focus-visible .ns-button-effect__border-glow-outline {
    opacity: 1;
  }

  .ns-button--style-border_glow:focus-visible .ns-button-effect__border-glow-fill {
    opacity: 0.5;
  }

  .ns-button--style-border_glow:focus-visible .ns-button-effect__border-glow-highlight {
    opacity: 1;
  }
}
/* END_SNIPPET:_styles-button-border-glow-styles */

/* START_SNIPPET:_styles-button-corner-styles (INDEX:222) */
@layer components {
  .ns-button--style-corner {
    --ns-corner-surface: var(--ns-button-corner-surface);
    --ns-corner-ink: var(--ns-button-corner-text);
    --ns-corner-border: var(--ns-button-corner-border);
    --ns-corner-accent: var(--ns-button-corner-accent);
    color: var(--ns-corner-ink);
    background: color(from var(--ns-corner-surface) srgb r g b / var(--ns-button-corner-surface-opacity));
    border: 1px solid color(from var(--ns-corner-border) srgb r g b / var(--ns-button-corner-border-opacity));
    border-radius: var(--ns-button-corner-radius);
    transition: background-color 400ms cubic-bezier(0.44, 0, 0.56, 1);
  }

  .ns-button--style-corner[data-ns-button-tone='inverse'] {
    --ns-corner-surface: var(--ns-button-corner-inverse-text);
    --ns-corner-ink: var(--ns-button-corner-inverse-text);
    --ns-corner-border: var(--ns-button-corner-inverse-border);
    --ns-corner-accent: var(--ns-button-corner-inverse-accent);
  }

  .ns-button--style-corner:is(:hover, :focus-visible) {
    background: color(from var(--ns-corner-surface) srgb r g b / var(--ns-button-corner-hover-opacity));
  }

  .ns-button-effect--corner {
    overflow: hidden;
  }

  .ns-button-effect__corner {
    position: absolute;
    inline-size: 3px;
    block-size: 3px;
    color: var(--ns-corner-accent);
  }

  .ns-button-effect__corner::before,
  .ns-button-effect__corner::after {
    position: absolute;
    background: currentcolor;
    content: '';
  }

  .ns-button-effect__corner::before {
    inline-size: 3px;
    block-size: 1px;
  }

  .ns-button-effect__corner::after {
    inline-size: 1px;
    block-size: 3px;
  }

  .ns-button-effect__corner--top-start {
    inset-block-start: 0;
    inset-inline-start: 0;
  }

  .ns-button-effect__corner--top-start::before,
  .ns-button-effect__corner--top-start::after {
    inset-block-start: 0;
    inset-inline-start: 0;
  }

  .ns-button-effect__corner--top-end {
    inset-block-start: 0;
    inset-inline-end: 0;
  }

  .ns-button-effect__corner--top-end::before,
  .ns-button-effect__corner--top-end::after {
    inset-block-start: 0;
    inset-inline-end: 0;
  }

  .ns-button-effect__corner--bottom-start {
    inset-block-end: 0;
    inset-inline-start: 0;
  }

  .ns-button-effect__corner--bottom-start::before,
  .ns-button-effect__corner--bottom-start::after {
    inset-block-end: 0;
    inset-inline-start: 0;
  }

  .ns-button-effect__corner--bottom-end {
    inset-block-end: 0;
    inset-inline-end: 0;
  }

  .ns-button-effect__corner--bottom-end::before,
  .ns-button-effect__corner--bottom-end::after {
    inset-block-end: 0;
    inset-inline-end: 0;
  }

  @media (prefers-reduced-motion: reduce) {
    .ns-button--style-corner {
      transition: none;
    }
  }
}
/* END_SNIPPET:_styles-button-corner-styles */

/* START_SNIPPET:_styles-button-effects-styles (INDEX:223) */
@layer components {
  [data-ns-button-effect] {
    position: relative;
    isolation: isolate;
    overflow: visible;
    transform: translate3d(0, 0, 0.01px);
  }

  [data-ns-button-effect] > .ns-button__icon,
  [data-ns-button-effect] > .ns-button__label {
    position: relative;
    z-index: 2;
  }

  .ns-button-effect {
    position: absolute;
    z-index: 0;
    inset: 0;
    overflow: hidden;
    border-radius: inherit;
    pointer-events: none;
  }
}
/* END_SNIPPET:_styles-button-effects-styles */

/* START_SNIPPET:_styles-button-liquid-glass-styles (INDEX:224) */
@layer components {
  .ns-button--style-liquid_glass {
    overflow: hidden;
    color: var(--ns-button-liquid-glass-text);
    background: transparent;
    border: 0;
    border-radius: var(--ns-button-liquid-glass-radius);
    box-shadow: none;
    transform: scale(1);
    transition: transform 200ms ease;
  }

  .ns-button--style-liquid_glass:is(:hover, :focus-visible) {
    transform: scale(1.05);
  }

  .ns-button--style-liquid_glass:active {
    transform: scale(0.95);
  }

  .ns-button-effect--liquid-glass {
    overflow: hidden;
  }

  .ns-button-effect__liquid-distortion,
  .ns-button-effect__liquid-tint,
  .ns-button-effect__liquid-highlight {
    position: absolute;
    inset: 0;
    border-radius: inherit;
  }

  .ns-button-effect__liquid-distortion {
    -webkit-backdrop-filter: blur(var(--ns-button-liquid-glass-blur));
    backdrop-filter: blur(var(--ns-button-liquid-glass-blur));
  }

  .ns-button-effect__liquid-tint {
    background: color(from var(--ns-button-liquid-glass-tint) srgb r g b / var(--ns-button-liquid-glass-tint-opacity));
  }

  .ns-button-effect__liquid-highlight {
    background: none;
    box-shadow: inset 1px 1px 1px
      color(from var(--ns-button-liquid-glass-highlight) srgb r g b / var(--ns-button-liquid-glass-highlight-opacity));
  }

  @media (prefers-reduced-motion: reduce) {
    .ns-button--style-liquid_glass {
      transition: none;
    }
  }
}
/* END_SNIPPET:_styles-button-liquid-glass-styles */

/* START_SNIPPET:_styles-button-shiny-styles (INDEX:225) */
@property --ns-button-shiny-angle {
  syntax: '<angle>';
  inherits: false;
  initial-value: 0deg;
}

@property --ns-button-shiny-angle-offset {
  syntax: '<angle>';
  inherits: false;
  initial-value: 0deg;
}

@property --ns-button-shiny-percent {
  syntax: '<percentage>';
  inherits: false;
  initial-value: 5%;
}

@layer components {
  .ns-button--style-shiny {
    --ns-button-shiny-bg: var(--ns-button-shiny-surface);
    --ns-button-shiny-fg: var(--ns-button-shiny-text);
    --ns-button-shiny-duration: 3s;
    --ns-button-shiny-shadow-size: 2px;
    overflow: hidden;
    border-radius: var(--ns-button-shiny-radius);
    background:
      linear-gradient(var(--ns-button-shiny-bg), var(--ns-button-shiny-bg)) padding-box,
      conic-gradient(
          from calc(var(--ns-button-shiny-angle) - var(--ns-button-shiny-angle-offset)),
          transparent,
          var(--ns-button-shiny-highlight) var(--ns-button-shiny-percent),
          var(--ns-button-shiny-fg) calc(var(--ns-button-shiny-percent) * 2),
          var(--ns-button-shiny-highlight) calc(var(--ns-button-shiny-percent) * 3),
          transparent calc(var(--ns-button-shiny-percent) * 4)
        )
        border-box;
    border: 1px solid transparent;
    box-shadow: none;
    color: var(--ns-button-shiny-fg);
    transition: 800ms cubic-bezier(0.25, 1, 0.5, 1);
    transition-property: --ns-button-shiny-angle-offset, --ns-button-shiny-percent;
    animation:
      ns-button-shiny-angle var(--ns-button-shiny-duration) linear infinite paused,
      ns-button-shiny-angle 7.5s linear infinite reverse paused;
    animation-composition: add;
  }

  .ns-button--style-shiny::before,
  .ns-button--style-shiny::after {
    position: absolute;
    z-index: -1;
    inset-block-start: 50%;
    inset-inline-start: 50%;
    translate: -50% -50%;
    content: '';
    pointer-events: none;
  }

  .ns-button--style-shiny::before {
    --ns-button-shiny-position: 2px;
    --ns-button-shiny-space: calc(var(--ns-button-shiny-position) * 2);
    inline-size: calc(100% - var(--ns-button-shiny-shadow-size) * 3);
    block-size: calc(100% - var(--ns-button-shiny-shadow-size) * 3);
    border-radius: inherit;
    background: radial-gradient(
        circle at var(--ns-button-shiny-position) var(--ns-button-shiny-position),
        var(--ns-button-shiny-highlight) calc(var(--ns-button-shiny-position) / 4),
        transparent 0
      )
      padding-box;
    background-repeat: space;
    background-size: var(--ns-button-shiny-space) var(--ns-button-shiny-space);
    -webkit-mask-image: conic-gradient(
      from calc(var(--ns-button-shiny-angle) + 45deg),
      var(--ns-button-effect-mask),
      transparent 10% 90%,
      var(--ns-button-effect-mask)
    );
    mask-image: conic-gradient(
      from calc(var(--ns-button-shiny-angle) + 45deg),
      var(--ns-button-effect-mask),
      transparent 10% 90%,
      var(--ns-button-effect-mask)
    );
    opacity: 0.4;
    animation:
      ns-button-shiny-angle var(--ns-button-shiny-duration) linear infinite paused,
      ns-button-shiny-angle 7.5s linear infinite reverse paused;
    animation-composition: add;
  }

  .ns-button--style-shiny::after {
    inline-size: 100%;
    aspect-ratio: 1;
    background: linear-gradient(-50deg, transparent, var(--ns-button-shiny-highlight), transparent);
    -webkit-mask-image: radial-gradient(circle at bottom, transparent 40%, var(--ns-button-effect-mask));
    mask-image: radial-gradient(circle at bottom, transparent 40%, var(--ns-button-effect-mask));
    opacity: 0.6;
    animation:
      ns-button-shiny-shimmer var(--ns-button-shiny-duration) linear infinite paused,
      ns-button-shiny-shimmer 7.5s linear infinite reverse paused;
    animation-composition: add;
  }

  .ns-button--style-shiny[data-ns-button-near='true'],
  .ns-button--style-shiny[data-ns-button-near='true']::before,
  .ns-button--style-shiny[data-ns-button-near='true']::after {
    animation-play-state: running, paused;
  }

  .ns-button--style-shiny[data-ns-button-near='true']:is(:hover, :focus-visible) {
    --ns-button-shiny-angle-offset: 95deg;
    --ns-button-shiny-percent: 20%;
    animation-play-state: running, running;
  }

  .ns-button--style-shiny[data-ns-button-near='true']:is(:hover, :focus-visible)::before,
  .ns-button--style-shiny[data-ns-button-near='true']:is(:hover, :focus-visible)::after {
    animation-play-state: running, running;
  }

  .ns-button--style-shiny:active {
    translate: 0 1px;
  }

  @keyframes ns-button-shiny-angle {
    to {
      --ns-button-shiny-angle: 360deg;
    }
  }

  @keyframes ns-button-shiny-shimmer {
    to {
      rotate: 360deg;
    }
  }

  @media (prefers-reduced-motion: reduce) {
    .ns-button--style-shiny,
    .ns-button--style-shiny::before,
    .ns-button--style-shiny::after {
      --ns-button-shiny-angle: 45deg;
      animation: none;
      transition: none;
    }
  }
}
/* END_SNIPPET:_styles-button-shiny-styles */

/* START_SNIPPET:_styles-button-soft-glass-styles (INDEX:226) */
@layer components {
  .ns-button--style-soft_glass {
    --ns-soft-glass-surface: var(--ns-button-soft-glass-surface);
    --ns-soft-glass-hover: var(--ns-button-soft-glass-hover);
    --ns-soft-glass-ink: var(--ns-button-soft-glass-text);
    --ns-soft-glass-border: var(--ns-button-soft-glass-border);
    overflow: hidden;
    color: var(--ns-soft-glass-ink);
    background: color(from var(--ns-soft-glass-surface) srgb r g b / var(--ns-button-soft-glass-surface-opacity));
    border: 1px solid color(from var(--ns-soft-glass-border) srgb r g b / var(--ns-button-soft-glass-border-opacity));
    border-radius: var(--ns-button-soft-glass-radius);
    box-shadow: inset 0 1px 0 color(from var(--ns-soft-glass-border) srgb r g b / 20%);
    -webkit-backdrop-filter: blur(var(--ns-button-soft-glass-blur));
    backdrop-filter: blur(var(--ns-button-soft-glass-blur));
    transition:
      background-color 250ms ease,
      border-color 250ms ease,
      box-shadow 250ms ease;
  }

  .ns-button--style-soft_glass[data-ns-button-tone='inverse'] {
    --ns-soft-glass-surface: var(--ns-button-soft-glass-inverse-surface);
    --ns-soft-glass-hover: var(--ns-button-soft-glass-inverse-surface);
    --ns-soft-glass-ink: var(--ns-button-soft-glass-inverse-text);
    --ns-soft-glass-border: var(--ns-button-soft-glass-inverse-border);
  }

  .ns-button--style-soft_glass:is(:hover, :focus-visible) {
    background: color(from var(--ns-soft-glass-hover) srgb r g b / var(--ns-button-soft-glass-hover-opacity));
    border-color: color(from var(--ns-soft-glass-border) srgb r g b / 28%);
    box-shadow:
      inset 0 1px 0 color(from var(--ns-soft-glass-border) srgb r g b / 28%),
      0 8px 24px var(--ns-button-soft-glass-shadow);
  }

  .ns-button-effect--soft-glass {
    background: linear-gradient(135deg, color(from currentcolor srgb r g b / 18%), transparent 42%);
  }

  @media (prefers-reduced-motion: reduce) {
    .ns-button--style-soft_glass {
      transition: none;
    }
  }
}
/* END_SNIPPET:_styles-button-soft-glass-styles */

/* START_SNIPPET:_styles-button-spectrum-styles (INDEX:227) */
@property --ns-bs-angle {
  syntax: '<angle>';
  inherits: false;
  initial-value: 0deg;
}

@layer components {
  .ns-button--style-spectrum {
    --ns-spectrum-surface: var(--ns-button-spectrum-surface);
    --ns-spectrum-ink: var(--ns-button-spectrum-text);
    overflow: hidden;
    color: var(--ns-spectrum-ink);
    background: transparent;
    border: var(--ns-button-spectrum-border-width) solid transparent;
    border-radius: var(--ns-button-spectrum-radius);
  }

  .ns-button--style-spectrum[data-ns-button-tone='inverse'] {
    --ns-spectrum-surface: var(--ns-button-spectrum-inverse-surface);
    --ns-spectrum-ink: var(--ns-button-spectrum-inverse-text);
  }

  .ns-button--style-spectrum::after {
    position: absolute;
    z-index: 1;
    inset: var(--ns-button-spectrum-border-width);
    border-radius: max(0px, calc(var(--ns-button-spectrum-radius) - var(--ns-button-spectrum-border-width)));
    background: var(--ns-spectrum-surface);
    content: '';
    pointer-events: none;
  }

  .ns-button-effect--spectrum {
    inset: 50% auto auto 50%;
    inline-size: 250%;
    block-size: 250%;
    border-radius: 0;
    background: conic-gradient(
      from var(--ns-bs-angle),
      var(--ns-button-spectrum-color-1),
      var(--ns-button-spectrum-color-2),
      var(--ns-button-spectrum-color-3),
      var(--ns-button-spectrum-color-1)
    );
    transform: translate(-50%, -50%);
    animation: ns-button-spectrum-spin 8s linear infinite paused;
  }

  .ns-button--style-spectrum[data-ns-button-near='true'] .ns-button-effect--spectrum {
    animation-play-state: running;
  }

  .ns-button--style-spectrum:is(:hover, :focus-visible) .ns-button-effect--spectrum {
    animation-duration: 3.2s;
  }

  @keyframes ns-button-spectrum-spin {
    to {
      --ns-bs-angle: 360deg;
    }
  }

  @media (prefers-reduced-motion: reduce) {
    .ns-button-effect--spectrum {
      --ns-bs-angle: 120deg;
      animation: none;
    }
  }
}
/* END_SNIPPET:_styles-button-spectrum-styles */

/* START_SNIPPET:_styles-cart-styles (INDEX:228) */
@layer components {
  .ns-cart {
    display: block;
    padding-block: var(--ns-space-16) var(--ns-space-60);
  }

  ns-cart-surface {
    display: block;
  }

  .ns-cart__title {
    margin-block: var(--ns-space-24) var(--ns-space-24);
    font-size: var(--ns-type-large-size);
    font-weight: var(--ns-type-weight-heading);
    line-height: var(--ns-type-large-line-height);
    text-align: center;
  }

  .ns-cart__form {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 16.875rem;
    gap: var(--ns-space-30);
    align-items: start;
  }

  .ns-cart__column-headings,
  .ns-cart-line {
    display: grid;
    grid-template-columns: 2.375rem 9.375rem minmax(10rem, 1fr) 6.25rem 8.25rem 6.25rem;
    align-items: center;
  }

  .ns-cart__column-headings {
    min-block-size: 1.5625rem;
    color: var(--ns-color-muted);
    font-size: var(--ns-type-label-size);
    line-height: var(--ns-type-label-line-height);
    text-transform: uppercase;
  }

  .ns-cart__column-headings span:first-child {
    grid-column: 1 / 4;
  }
  .ns-cart__column-headings span:nth-child(2) {
    grid-column: 4;
  }
  .ns-cart__column-headings span:nth-child(3) {
    grid-column: 5;
  }
  .ns-cart__column-headings span:nth-child(4) {
    grid-column: 6;
    text-align: end;
  }

  .ns-cart__items {
    padding: 0;
    list-style: none;
    border-block-start: 1px solid var(--ns-color-border);
  }
  .ns-cart__item {
    border-block-end: 1px solid var(--ns-color-border);
  }

  .ns-cart-line {
    min-block-size: 14.625rem;
    padding-block: var(--ns-space-20);
  }

  .ns-cart-line__remove {
    display: inline-flex;
    inline-size: 1.375rem;
    block-size: 1.875rem;
    align-items: center;
    color: var(--ns-color-foreground);
  }

  .ns-cart-line__remove svg {
    inline-size: 0.875rem;
    block-size: 1rem;
  }

  .ns-cart-line__media {
    display: block;
    inline-size: 9.375rem;
    aspect-ratio: 25 / 32;
    overflow: hidden;
    border-radius: var(--ns-radius-lg);
    background: var(--ns-color-surface-alt);
  }

  .ns-cart-line__media img,
  .ns-cart-line__placeholder {
    inline-size: 100%;
    block-size: 100%;
    object-fit: cover;
  }

  .ns-cart-line__details {
    min-inline-size: 0;
    padding-inline: var(--ns-space-20);
  }
  .ns-cart-line__title {
    color: var(--ns-color-foreground);
    text-decoration: none;
  }
  .ns-cart-line__variant {
    display: block;
    max-inline-size: 100%;
    margin-block-start: var(--ns-space-4);
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--ns-color-muted);
    font: inherit;
    cursor: pointer;
  }
  .ns-cart-line__plan,
  .ns-cart-line__property {
    color: var(--ns-color-muted);
  }
  .ns-cart-line__property {
    display: flex;
    gap: var(--ns-space-4);
    align-items: center;
    margin-block-start: var(--ns-space-4);
  }
  .ns-cart-line__property input {
    min-inline-size: 0;
    padding: 0;
    border: 0;
    border-block-end: 1px solid var(--ns-color-border);
    background: transparent;
    color: inherit;
    font: inherit;
  }
  .ns-cart-line__error {
    color: var(--ns-color-critical);
  }

  .ns-cart-line__unit-price,
  .ns-cart-line__total {
    display: grid;
    gap: var(--ns-space-4);
  }
  .ns-cart-line__unit-price s,
  .ns-cart-line__total s {
    color: var(--ns-color-muted);
  }
  .ns-cart-line__unit-price small {
    color: var(--ns-color-muted);
  }
  .ns-cart-line__total {
    justify-items: end;
    text-align: end;
  }

  .ns-cart-line__quantity-control {
    display: grid;
    grid-template-columns: var(--ns-touch-target-min) minmax(2.5rem, 1fr) var(--ns-touch-target-min);
    inline-size: 8.25rem;
    min-block-size: var(--ns-control-block-size-md);
    border: 1px solid var(--ns-color-border);
    border-radius: var(--ns-radius-input, 0px);
    background: var(--ns-color-surface-alt);
  }

  .ns-cart-line__quantity-control button,
  .ns-cart-line__quantity-control input {
    min-inline-size: 0;
    block-size: 100%;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: var(--ns-color-foreground);
    font: inherit;
    text-align: center;
  }

  .ns-cart-line__quantity-control button {
    display: grid;
    place-items: center;
    cursor: pointer;
  }

  .ns-cart-line__quantity-control button:disabled {
    cursor: not-allowed;
    opacity: 0.45;
  }

  .ns-cart-line__quantity input {
    inline-size: 100%;
    appearance: textfield;
  }

  .ns-cart-line__quantity input::-webkit-inner-spin-button,
  .ns-cart-line__quantity input::-webkit-outer-spin-button {
    appearance: none;
    margin: 0;
  }

  .ns-cart-line__discounts {
    display: grid;
    gap: var(--ns-space-4);
    padding: 0;
    color: var(--ns-color-success);
    font-size: var(--ns-type-caption-size);
    list-style: none;
  }

  .ns-cart__items-actions {
    display: flex;
    justify-content: space-between;
    padding-block-start: var(--ns-space-24);
  }

  .ns-cart__summary {
    padding: var(--ns-space-20);
    background: var(--ns-color-surface-alt);
  }

  .ns-cart--page .ns-cart__summary {
    border-radius: var(--ns-radius-content-panel, var(--ns-radius-2xl));
  }

  .ns-cart-summary {
    display: grid;
    gap: var(--ns-space-20);
  }
  .ns-cart-summary__title {
    font-size: var(--ns-type-body-size);
    font-weight: var(--ns-type-weight-emphasis);
    line-height: var(--ns-type-body-line-height);
    text-transform: uppercase;
  }
  .ns-cart-summary__note {
    display: block;
  }

  .ns-cart-summary__note-summary {
    display: flex;
    min-block-size: 3.25rem;
    align-items: center;
    justify-content: space-between;
    gap: var(--ns-space-16);
    cursor: pointer;
    list-style: none;
    text-transform: uppercase;
  }

  .ns-cart-summary__note-summary::-webkit-details-marker {
    display: none;
  }

  .ns-cart-summary__note-summary svg {
    flex: 0 0 auto;
    inline-size: 0.625rem;
    block-size: 0.625rem;
    transition: transform 160ms ease;
  }

  .ns-cart-summary__note[open] > .ns-cart-summary__note-summary svg {
    transform: rotate(180deg);
  }

  .ns-cart-summary__note-body {
    display: grid;
    gap: var(--ns-space-8);
    padding-block-end: var(--ns-space-8);
  }

  .ns-cart-summary__note:not([open]) > .ns-cart-summary__note-body {
    display: none;
  }
  .ns-cart-summary__note p,
  .ns-cart-summary__tax-note {
    color: var(--ns-color-muted);
  }

  .ns-cart-summary__note textarea {
    inline-size: 100%;
    min-block-size: 5.375rem;
    resize: vertical;
    border-radius: var(--ns-radius-input, 0px);
    color: var(--ns-color-foreground);
    background: var(--ns-color-background);
    border: 1px solid var(--ns-color-border);
  }

  .ns-cart-summary__totals {
    display: grid;
    gap: var(--ns-space-12);
    padding-block-start: var(--ns-space-20);
    border-block-start: 1px solid var(--ns-color-border);
  }
  .ns-cart-summary__row,
  .ns-cart-summary__discounts li {
    display: flex;
    justify-content: space-between;
    gap: var(--ns-space-16);
  }
  .ns-cart-summary__row--total {
    font-size: var(--ns-type-price-prominent-size);
    font-weight: var(--ns-type-weight-interface);
  }
  .ns-cart-summary__discounts {
    display: grid;
    gap: var(--ns-space-8);
    padding: 0;
    color: var(--ns-color-success);
    list-style: none;
  }
  .ns-cart-summary__tax-note a {
    color: inherit;
  }
  .ns-cart-summary__checkout {
    inline-size: 100%;
  }
  .ns-cart-summary__accelerated {
    inline-size: 100%;
    --shopify-accelerated-checkout-button-block-size: var(--ns-button-block-size);
    --shopify-accelerated-checkout-button-border-radius: var(--ns-radius-button, 0px);
  }
  .ns-cart-summary__view-cart {
    inline-size: 100%;
  }

  .ns-cart-summary__terms {
    display: flex;
    gap: var(--ns-space-8);
    align-items: flex-start;
    font-size: var(--ns-type-caption-size);
    line-height: var(--ns-type-caption-line-height);
  }

  .ns-cart-summary__terms input {
    flex: 0 0 auto;
    margin-block-start: 0.15em;
  }

  .ns-cart-overlay .ns-overlay__body {
    display: flex;
    inline-size: 100%;
    min-block-size: 100%;
    overflow: hidden;
  }

  .ns-cart-overlay .ns-overlay__panel {
    box-shadow: none;
  }

  @media (max-width: 1024px) {
    .ns-cart-overlay {
      --ns-overlay-close-block-start: 0.875rem;
      --ns-overlay-close-inline-end: 1.125rem;
    }
  }

  .ns-cart--overlay {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    inline-size: 100%;
    min-block-size: 100%;
    padding: 0;
  }

  .ns-cart--overlay .ns-cart__empty-content {
    flex: 1 1 auto;
    min-block-size: 0;
    padding: var(--ns-space-60) var(--ns-space-20) var(--ns-space-24);
    overflow-y: auto;
    overscroll-behavior: contain;
  }

  .ns-cart--overlay .ns-cart__empty-merchandising {
    display: grid;
    gap: var(--ns-space-20);
    margin-block-start: var(--ns-space-40);
  }

  .ns-cart--overlay .ns-cart__empty-state {
    min-block-size: 18rem;
    padding: var(--ns-space-40) 0;
  }

  .ns-cart__empty-editor-preview {
    flex: 0 1 50%;
    min-block-size: 0;
    padding: var(--ns-space-20);
    overflow-y: auto;
    border-block-start: 1px solid var(--ns-color-border);
  }

  .ns-cart__empty-editor-label {
    margin-block: 0 var(--ns-space-16);
    color: var(--ns-color-muted);
    font-size: var(--ns-type-caption-size);
    text-transform: uppercase;
  }

  .ns-cart--overlay .ns-cart__title {
    flex: 0 0 auto;
    min-block-size: 3.8125rem;
    margin: 0;
    padding: var(--ns-space-28) var(--ns-space-64) var(--ns-space-16) var(--ns-space-30);
    border-block-end: 1px solid var(--ns-color-border);
    font-size: var(--ns-type-body-size);
    font-weight: var(--ns-font-body-weight);
    line-height: 1.3;
    letter-spacing: 0.05em;
    text-align: start;
    text-transform: uppercase;
  }

  .ns-cart--overlay .ns-cart__form {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    min-block-size: 0;
  }

  .ns-cart--overlay .ns-cart__items-panel {
    flex: 1 1 auto;
    min-block-size: 0;
    overflow: auto;
    overscroll-behavior: contain;
  }

  .ns-cart--overlay .ns-cart__items {
    margin: 0;
    border: 0;
  }

  .ns-cart--overlay .ns-cart__item {
    border-block-end: 1px solid var(--ns-color-border);
  }

  .ns-cart--overlay .ns-cart-line {
    grid-template-columns: 4.375rem minmax(0, 1fr) 8.875rem;
    grid-template-areas:
      'media details total'
      'media details quantity'
      'media details remove';
    grid-template-rows: auto 2.1875rem auto;
    gap: var(--ns-space-4) var(--ns-space-16);
    align-items: start;
    min-block-size: 8.125rem;
    padding: var(--ns-space-20) var(--ns-space-30);
  }

  .ns-cart--overlay .ns-cart-line__remove {
    grid-area: remove;
    align-self: end;
    justify-self: end;
    inline-size: auto;
    block-size: auto;
    color: var(--ns-color-muted);
    font-size: var(--ns-type-body-small-size);
    line-height: 1.3;
    text-decoration: underline;
    text-underline-offset: 0.08em;
  }

  .ns-cart--overlay .ns-cart-line__media {
    grid-area: media;
    grid-row: 1 / -1;
    inline-size: 4.375rem;
    block-size: 5.625rem;
    aspect-ratio: 7 / 9;
  }

  .ns-cart--overlay .ns-cart-line__details {
    grid-area: details;
    grid-row: 1 / -1;
    padding: 0;
  }

  .ns-cart--overlay .ns-cart-line__title {
    font-size: var(--ns-type-body-small-size);
    line-height: 1.3;
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
  }

  .ns-cart--overlay .ns-cart-line__variant,
  .ns-cart--overlay .ns-cart-line__plan,
  .ns-cart--overlay .ns-cart-line__property {
    color: var(--ns-color-muted);
    font-size: var(--ns-type-body-small-size);
    line-height: 1.3;
  }

  .ns-cart--overlay .ns-cart-line__unit-price {
    display: none;
  }

  .ns-cart--overlay .ns-cart-line__quantity {
    grid-area: quantity;
    justify-self: end;
  }

  .ns-cart--overlay .ns-cart-line__quantity-control {
    grid-template-columns: 2.25rem 2.125rem 2.25rem;
    inline-size: 6.625rem;
    min-block-size: 2.1875rem;
    border: 0;
    border-radius: 0;
    background: transparent;
    gap: var(--ns-space-8);
  }

  .ns-cart--overlay .ns-cart-line__quantity-control button,
  .ns-cart--overlay .ns-cart-line__quantity-control input {
    border: 1px solid var(--ns-color-border);
  }

  .ns-cart--overlay .ns-cart-line__quantity-control input {
    border-radius: var(--ns-radius-input, 0px);
    background: var(--ns-color-surface-alt);
    color: var(--ns-color-muted);
  }

  .ns-cart--overlay .ns-cart-line__quantity-control button {
    border-radius: var(--ns-radius-icon-button, var(--ns-radius-xl));
  }

  .ns-cart--overlay .ns-cart-line__total {
    grid-area: total;
    display: flex;
    gap: var(--ns-space-4);
    align-self: start;
    justify-self: end;
    align-items: baseline;
    font-size: var(--ns-type-price-prominent-size);
    line-height: 1.2;
  }

  .ns-cart--overlay .ns-cart-line__quantity-price {
    color: var(--ns-color-muted);
    font-size: var(--ns-type-body-small-size);
  }

  .ns-cart--overlay .ns-cart__summary {
    flex: 0 0 auto;
    margin: 0;
    padding: 0 var(--ns-space-30) max(var(--ns-space-30), env(safe-area-inset-bottom));
    border-block-start: 1px solid var(--ns-color-border);
    background: var(--ns-color-background);
  }

  .ns-cart--overlay .ns-cart-summary {
    gap: var(--ns-space-12);
  }

  .ns-cart--overlay .ns-cart-summary__title {
    position: absolute;
    inline-size: 1px;
    block-size: 1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
  }

  .ns-cart--overlay .ns-cart-summary__note {
    border-block-end: 1px solid var(--ns-color-border);
  }

  .ns-cart--overlay .ns-cart-summary__note p {
    display: none;
  }

  .ns-cart--overlay .ns-cart-summary__note-summary {
    min-block-size: 3.25rem;
    font-size: var(--ns-type-body-small-size);
    line-height: 1.5;
    letter-spacing: 0.05em;
  }

  .ns-cart--overlay .ns-cart-summary__note-body {
    gap: var(--ns-space-12);
    padding-block-end: var(--ns-space-12);
  }

  .ns-cart--overlay .ns-cart-summary__note textarea {
    min-block-size: 6.5625rem;
    padding: var(--ns-space-8);
    background: var(--ns-color-surface-alt);
    font: inherit;
  }

  .ns-cart--overlay .ns-cart-summary__totals {
    gap: var(--ns-space-6);
    padding-block-start: var(--ns-space-16);
    border-block-start: 1px solid var(--ns-color-foreground);
  }

  .ns-cart--overlay .ns-cart-summary__row {
    font-size: var(--ns-type-body-small-size);
    text-transform: uppercase;
  }

  .ns-cart--overlay .ns-cart-summary__row:first-child:not(.ns-cart-summary__row--total) {
    display: none;
  }

  .ns-cart--overlay .ns-cart-summary__row--total {
    justify-content: start;
    font-size: var(--ns-type-price-prominent-size);
    line-height: 1.2;
  }

  .ns-cart--overlay .ns-cart-summary__tax-note {
    color: var(--ns-color-muted);
    font-size: var(--ns-type-caption-size);
    line-height: 1.3;
  }

  .ns-cart--overlay .ns-cart-summary__discounts {
    color: var(--ns-color-critical);
    font-size: var(--ns-type-body-small-size);
  }

  .ns-cart--overlay .ns-cart-summary__checkout,
  .ns-cart--overlay .ns-cart-summary__view-cart {
    min-block-size: 2.1875rem;
  }

  .ns-cart--overlay .ns-cart-summary__view-cart {
    justify-self: end;
    inline-size: auto;
    margin-block-start: var(--ns-space-4);
    color: var(--ns-color-foreground);
    font-size: var(--ns-type-body-small-size);
    line-height: 1.3;
    text-transform: uppercase;
  }

  .ns-cart--modal .ns-cart__form {
    display: flex;
  }

  .ns-cart--modal .ns-cart__title {
    min-block-size: 3.875rem;
    padding-inline: var(--ns-space-64);
    font-size: var(--ns-type-lead-size);
    text-align: center;
  }

  .ns-cart--modal .ns-cart__summary {
    overflow: visible;
  }

  .ns-cart--modal .ns-cart-line {
    grid-template-columns: 4.375rem minmax(0, 1fr) 8.875rem;
    min-block-size: 8.125rem;
    padding-inline: var(--ns-space-30);
  }

  .ns-cart--modal .ns-cart-summary {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    column-gap: var(--ns-space-32);
    row-gap: var(--ns-space-12);
    align-items: start;
  }

  .ns-cart--modal .ns-cart-summary__title {
    grid-column: 1 / -1;
  }

  .ns-cart--modal .ns-cart-summary__note {
    grid-column: 1 / -1;
    grid-row: 1;
  }

  .ns-cart--modal .ns-cart-summary__totals {
    grid-column: 1;
    grid-row: 2 / span 3;
  }

  .ns-cart--modal .ns-cart-summary__terms {
    grid-column: 2;
  }

  .ns-cart--modal .ns-cart-summary__checkout,
  .ns-cart--modal .ns-cart-summary__accelerated,
  .ns-cart--modal .ns-cart-summary__view-cart {
    grid-column: 2;
  }

  @media (max-width: 1024px) {
    .ns-cart__form {
      grid-template-columns: minmax(0, 1fr) 16rem;
      gap: var(--ns-space-20);
    }
    .ns-cart__column-headings,
    .ns-cart-line {
      grid-template-columns: 2rem 7rem minmax(8rem, 1fr) 5rem 8.25rem 5rem;
    }
    .ns-cart-line__media {
      inline-size: 7rem;
    }

    .ns-cart--modal .ns-cart__form {
      display: flex;
    }

    .ns-cart--modal .ns-cart-summary {
      grid-template-columns: minmax(0, 1fr);
    }

    .ns-cart--modal .ns-cart-summary__title,
    .ns-cart--modal .ns-cart-summary__note,
    .ns-cart--modal .ns-cart-summary__totals,
    .ns-cart--modal .ns-cart-summary__terms,
    .ns-cart--modal .ns-cart-summary__checkout,
    .ns-cart--modal .ns-cart-summary__accelerated,
    .ns-cart--modal .ns-cart-summary__view-cart {
      grid-column: 1;
      grid-row: auto;
    }
  }

  @media (max-width: 767px) {
    .ns-cart {
      padding-block-end: var(--ns-space-40);
    }
    .ns-cart__title {
      margin-block: var(--ns-space-24);
    }
    .ns-cart__form {
      grid-template-columns: minmax(0, 1fr);
    }
    .ns-cart__column-headings {
      display: none;
    }
    .ns-cart-line {
      grid-template-columns: 1.5rem 6rem minmax(0, 1fr);
      grid-template-areas:
        'remove media details'
        '. media price'
        '. media quantity'
        '. media total';
      min-block-size: auto;
      gap: var(--ns-space-8) var(--ns-space-12);
      align-items: start;
      padding-block: var(--ns-space-16);
    }
    .ns-cart-line__remove {
      grid-area: remove;
    }
    .ns-cart-line__media {
      grid-area: media;
      inline-size: 6rem;
    }
    .ns-cart-line__details {
      grid-area: details;
      padding: 0;
    }
    .ns-cart-line__unit-price {
      grid-area: price;
    }
    .ns-cart-line__quantity {
      grid-area: quantity;
    }
    .ns-cart-line__total {
      grid-area: total;
      justify-items: start;
      text-align: start;
    }
    .ns-cart-line__unit-price::before,
    .ns-cart-line__quantity::before,
    .ns-cart-line__total::before {
      content: attr(data-ns-label);
      color: var(--ns-color-muted);
      font-size: var(--ns-type-caption-size);
      text-transform: uppercase;
    }
    .ns-cart__items-actions {
      gap: var(--ns-space-16);
    }
    .ns-cart__summary {
      margin-inline: calc(var(--ns-page-gutter) * -1);
      padding-inline: var(--ns-page-gutter);
    }

    .ns-cart--overlay .ns-cart-line {
      grid-template-columns: 4.375rem minmax(0, 1fr) 6.625rem;
      grid-template-areas:
        'media details total'
        'media details quantity'
        'media details remove';
      gap: var(--ns-space-4) var(--ns-space-12);
      padding: var(--ns-space-16);
    }

    .ns-cart--overlay .ns-cart-line__media {
      inline-size: 4.375rem;
    }

    .ns-cart--overlay .ns-cart-line__unit-price::before,
    .ns-cart--overlay .ns-cart-line__quantity::before,
    .ns-cart--overlay .ns-cart-line__total::before {
      content: none;
    }

    .ns-cart--overlay .ns-cart__summary {
      margin-inline: 0;
      padding-inline: var(--ns-space-16);
    }
  }
}
/* END_SNIPPET:_styles-cart-styles */

/* START_SNIPPET:_styles-cinematic-product-stage-styles (INDEX:229) */
@layer components {
  .ns-cinematic-product-stage {
    position: relative;
    display: block;
    isolation: isolate;
    overflow: clip;
    min-inline-size: 0;
    color: var(--ns-color-text);
  }

  .ns-cinematic-product-stage__content {
    position: relative;
    z-index: 1;
    min-inline-size: 0;
  }

  .ns-cinematic-product-stage__scene {
    position: relative;
    block-size: var(--ns-presentation-height);
    min-block-size: 520px;
    overflow: clip;
    contain: layout paint style;
  }

  .ns-cinematic-product-stage__motion-stage {
    position: absolute;
    inset: 0;
  }

  .ns-presentation-subject {
    position: absolute;
    z-index: 20;
    inset-block-start: calc(var(--ns-presentation-ground) + var(--ns-presentation-subject-ground-offset));
    inset-inline-start: calc(50% + var(--ns-presentation-subject-offset));
    inline-size: min(var(--ns-presentation-subject-size), 980px);
    block-size: calc(var(--ns-presentation-ground) - 24px);
    transform: translate(-50%, -100%);
    transform-origin: 50% 100%;
  }

  .ns-presentation-subject__media,
  .ns-presentation-subject__primary,
  .ns-presentation-subject__light-pass,
  .ns-presentation-subject__placeholder {
    position: absolute;
    inset: 0;
    display: block;
  }

  .ns-presentation-subject__media {
    z-index: 2;
    transform-origin: 50% 100%;
  }

  .ns-presentation-subject__primary {
    z-index: 2;
  }

  .ns-presentation-subject__light-pass {
    z-index: 1;
    opacity: calc(0.18 * var(--ns-presentation-light-strength));
    filter: blur(13px) brightness(1.55) drop-shadow(0 0 24px var(--ns-presentation-accent));
    transform: translateY(5px) scale(1.015);
  }

  .ns-presentation-subject__image,
  .ns-presentation-subject__media > span > svg {
    display: block;
    inline-size: 100%;
    block-size: 100%;
    object-fit: contain;
    object-position: center bottom;
  }

  .ns-presentation-subject__halo {
    position: absolute;
    z-index: 0;
    inset-inline-start: 50%;
    inset-block-end: -5%;
    inline-size: 118%;
    block-size: 42%;
    border-radius: 50%;
    background: radial-gradient(
      ellipse,
      color-mix(in srgb, var(--ns-presentation-accent) 32%, transparent) 0%,
      color-mix(in srgb, var(--ns-presentation-accent) 10%, transparent) 42%,
      transparent 74%
    );
    opacity: calc(0.72 * var(--ns-presentation-light-strength));
    transform: translateX(-50%);
    filter: blur(18px);
  }

  .ns-presentation-subject__shadow {
    position: absolute;
    z-index: 1;
    inset-inline-start: calc(50% + var(--ns-presentation-shadow-offset));
    inset-block-end: -2.5%;
    inline-size: var(--ns-presentation-shadow-width);
    block-size: clamp(18px, 4.2vw, 54px);
    border-radius: 50%;
    background: radial-gradient(
      ellipse,
      color-mix(in srgb, var(--ns-color-background) 88%, transparent) 0%,
      color-mix(in srgb, var(--ns-color-background) 54%, transparent) 42%,
      transparent 76%
    );
    opacity: var(--ns-presentation-shadow-opacity);
    transform: translateX(-50%);
    filter: blur(8px);
  }

  [data-ns-motion-ready] .ns-presentation-subject__media,
  [data-ns-motion-ready] .ns-presentation-subject__halo,
  [data-ns-motion-ready] .ns-presentation-subject__shadow {
    transition:
      opacity 900ms cubic-bezier(0.22, 1, 0.36, 1),
      transform 1100ms cubic-bezier(0.22, 1, 0.36, 1);
  }

  [data-ns-motion-ready]:not([data-ns-motion-revealed]) .ns-presentation-subject__media {
    opacity: 0;
    transform: translate3d(0, 46px, 0) scale(0.94);
  }

  [data-ns-motion-ready]:not([data-ns-motion-revealed]) .ns-presentation-subject__halo,
  [data-ns-motion-ready]:not([data-ns-motion-revealed]) .ns-presentation-subject__shadow {
    opacity: 0;
  }

  @media (max-width: 767px) {
    .ns-cinematic-product-stage__scene {
      block-size: var(--ns-presentation-height-mobile);
      min-block-size: 420px;
    }

    .ns-presentation-subject {
      inset-block-start: calc(
        var(--ns-presentation-ground-mobile) + var(--ns-presentation-subject-ground-offset-mobile)
      );
      inset-inline-start: calc(50% + var(--ns-presentation-subject-offset-mobile));
      inline-size: min(var(--ns-presentation-subject-size-mobile), 680px);
      block-size: calc(var(--ns-presentation-ground-mobile) - 20px);
    }
  }

  @media (prefers-reduced-motion: reduce) {
    .ns-cinematic-product-stage
      :is(.ns-presentation-subject__media, .ns-presentation-subject__halo, .ns-presentation-subject__shadow) {
      transition: none;
    }
  }
}
/* END_SNIPPET:_styles-cinematic-product-stage-styles */

/* START_SNIPPET:_styles-collection-list-styles (INDEX:230) */
@layer components {
  .ns-collection-list__inner {
    --ns-radius-density-active: var(--ns-radius-density-mobile, var(--ns-radius-4xl));
    --ns-collection-list-edge-radius-limit-active: var(--ns-collection-list-edge-radius-limit-mobile, 999px);

    inline-size: var(--ns-content-width);
    margin-inline: auto;
  }

  .ns-collection-list__grid {
    display: grid;
    grid-template-columns: repeat(var(--ns-collection-list-columns-mobile), minmax(0, 1fr));
    gap: var(--ns-primary-grid-row-gap) var(--ns-primary-grid-column-gap);
  }

  .ns-collection-list-card {
    position: relative;
    display: flex;
    min-inline-size: 0;
    color: var(--ns-color-heading);
    text-decoration: none;
  }

  .ns-collection-list-card__media {
    display: block;
    overflow: hidden;
    inline-size: 100%;
    aspect-ratio: 37 / 27;
    border-radius: min(
      var(--ns-radius-media, 0px),
      var(--ns-radius-density-active, var(--ns-radius-4xl)),
      var(--ns-collection-list-edge-radius-limit-active)
    );
    background: var(--ns-color-surface-alt);
  }

  .ns-collection-list-card__image {
    display: block;
    inline-size: 100%;
    block-size: 100%;
    object-fit: cover;
    transition: transform 180ms ease;
  }

  .ns-collection-list-card__placeholder {
    color: var(--ns-color-muted);
  }

  .ns-collection-list-card__content {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-inline-size: 0;
    text-align: center;
  }

  .ns-collection-list-card__title {
    color: var(--ns-color-heading);
    font-size: var(--ns-type-card-title-size);
    line-height: 1.3;
    letter-spacing: 0.05em;
    text-transform: uppercase;
  }

  .ns-collection-list-card__count {
    color: var(--ns-color-muted);
    font-size: var(--ns-type-interface-meta-size);
    line-height: 1.2;
  }

  .ns-collection-list-card--overlay .ns-collection-list-card__content {
    position: absolute;
    inset-inline: 5.405%;
    inset-block-end: 0.625rem;
    min-block-size: 3.125rem;
    padding: var(--ns-space-4) var(--ns-space-12);
    border-radius: var(--ns-radius-content-panel, var(--ns-radius-2xl));
    background: color-mix(in srgb, var(--ns-color-background) 90%, transparent);
  }

  .ns-collection-list-card--below {
    flex-direction: column;
    gap: var(--ns-space-16);
  }

  .ns-collection-list-card--below .ns-collection-list-card__content {
    gap: var(--ns-space-2);
  }

  .ns-collection-list-card:is(:hover, :focus-visible) .ns-collection-list-card__image {
    transform: scale(1.015);
  }

  .ns-collection-list-card:focus-visible {
    outline: 2px solid currentColor;
    outline-offset: 3px;
  }

  .ns-collection-list__pagination {
    display: flex;
    justify-content: center;
    margin-block-start: var(--ns-space-30);
  }

  .ns-collection-list__pagination .page,
  .ns-collection-list__pagination .next,
  .ns-collection-list__pagination .prev {
    margin-inline: var(--ns-space-6);
  }

  .ns-collection-list__empty {
    text-align: center;
  }

  @media (min-width: 48rem) {
    .ns-collection-list__inner {
      --ns-radius-density-active: var(--ns-radius-density-tablet, var(--ns-radius-4xl));
      --ns-collection-list-edge-radius-limit-active: var(--ns-collection-list-edge-radius-limit-tablet, 999px);
    }

    .ns-collection-list__grid {
      grid-template-columns: repeat(var(--ns-collection-list-columns-tablet), minmax(0, 1fr));
    }
  }

  @media (min-width: 64.0625rem) {
    .ns-collection-list__inner {
      --ns-radius-density-active: var(--ns-radius-density-desktop, var(--ns-radius-4xl));
      --ns-collection-list-edge-radius-limit-active: var(--ns-collection-list-edge-radius-limit-desktop, 999px);
    }

    .ns-collection-list__grid {
      grid-template-columns: repeat(var(--ns-collection-list-columns-desktop), minmax(0, 1fr));
    }
  }

  @media (min-width: 78.75rem) {
    .ns-collection-list__inner {
      --ns-collection-list-edge-radius-limit-active: var(--ns-collection-list-edge-radius-limit-wide-desktop, 999px);
    }
  }

  @media (prefers-reduced-motion: reduce) {
    .ns-collection-list-card__image {
      transition: none;
    }
  }
}
/* END_SNIPPET:_styles-collection-list-styles */

/* START_SNIPPET:_styles-collection-styles (INDEX:231) */
@layer components {
  ns-collection-view {
    --ns-radius-density-active: var(--ns-radius-4xl);
  }

  ns-collection-view:is([data-ns-layout-mobile='3']) {
    --ns-radius-density-active: var(--ns-radius-3xl);
  }

  ns-collection-view:is([data-ns-layout-mobile='4']) {
    --ns-radius-density-active: var(--ns-radius-2xl);
  }

  ns-collection-view:is([data-ns-layout-mobile='5']) {
    --ns-radius-density-active: var(--ns-radius-xl);
  }

  ns-collection-view:is([data-ns-layout-mobile='6']) {
    --ns-radius-density-active: var(--ns-radius-lg);
  }

  ns-collection-view:is([data-ns-layout-mobile='7'], [data-ns-layout-mobile='8']) {
    --ns-radius-density-active: var(--ns-radius-md);
  }

  ns-collection-view,
  ns-price-range {
    display: block;
  }

  .ns-collection-page {
    --ns-listing-sidebar-inline-size: 16.875rem;
    --ns-listing-sidebar-track-size: calc(var(--ns-listing-sidebar-inline-size) + var(--ns-space-30));

    inline-size: 100%;
    margin-inline: auto;
    color: var(--ns-color-foreground);
  }

  .ns-collection-page__surface-foreground {
    inline-size: var(--ns-content-width);
    max-inline-size: 100%;
    min-inline-size: 0;
    margin-inline: auto;
  }

  .ns-collection-page__title,
  .ns-listing-topbar__heading {
    margin: 0;
    font-size: var(--ns-type-lead-size);
    font-weight: var(--ns-type-weight-heading);
    line-height: 1.25;
  }

  .ns-listing-topbar {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--ns-space-14);
    margin-block-end: var(--ns-space-30);
  }

  .ns-listing-topbar__heading-row {
    display: flex;
    align-items: baseline;
    gap: var(--ns-space-12);
  }

  .ns-listing-topbar__mobile-count {
    display: none;
  }

  .ns-listing-topbar__filter-trigger {
    --ns-button-radius: var(--ns-radius-compact);

    display: none;
    align-items: center;
    gap: var(--ns-space-8);
    inline-size: fit-content;
    min-block-size: 2.375rem;
    border: 1px solid var(--ns-color-border);
    padding-inline: var(--ns-space-14);
    background: transparent;
    color: inherit;
    font: inherit;
    cursor: pointer;
  }

  .ns-listing-topbar__filter-trigger svg {
    display: block;
    flex: none;
    inline-size: 0.9375rem;
    block-size: 0.9375rem;
  }

  .ns-listing-topbar__apply {
    min-block-size: var(--ns-button-block-size);
    padding-inline: var(--ns-button-padding-inline);
    border: 1px solid var(--ns-color-primary);
    border-radius: var(--ns-radius-button, 0px);
    background: var(--ns-color-primary);
    color: var(--ns-color-on-primary);
  }

  .ns-listing-topbar__controls {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--ns-space-20);
    inline-size: 100%;
    min-inline-size: 0;
    font-size: var(--ns-type-body-small-size);
    line-height: 1.2;
  }

  .ns-listing-topbar__card-view {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    gap: var(--ns-space-8);
    min-block-size: 2.375rem;
    border: 1px solid var(--ns-color-border);
    border-radius: var(--ns-radius-compact);
    padding-inline: var(--ns-space-12);
    background: var(--ns-color-background);
    color: var(--ns-color-foreground);
    cursor: pointer;
    white-space: nowrap;
  }

  .ns-listing-topbar__card-view .ns-checkbox {
    flex: 0 0 auto;
  }

  html[data-ns-product-card-view-preference='full']
    [data-ns-card-view-enabled]
    .ns-product-card
    :is(
      [data-ns-compact-hidden-group]:not([data-ns-option-empty]),
      [data-ns-compact-hidden-value]:not([data-ns-hidden-unavailable])
    ) {
    display: grid;
  }

  html[data-ns-product-card-view-preference='full']
    [data-ns-card-view-enabled]
    :is(.ns-product-card__option-overflow, .ns-product-card__options-reveal),
  html:not([data-ns-product-card-view-preference='full'])
    [data-ns-card-view-enabled][data-ns-card-view='compact']
    [data-ns-compact-detail-hidden] {
    display: none;
  }

  html[data-ns-product-card-view-preference='full']
    [data-ns-card-view-enabled]
    .ns-product-card[data-ns-card-variant-matrix-complete='true'] {
    --ns-product-card-add-display: inline-flex;
    --ns-product-card-choose-display: none;
  }

  .ns-listing-topbar__select {
    display: inline-flex;
    align-items: center;
    gap: var(--ns-space-6);
    white-space: nowrap;
  }

  .ns-listing-topbar__select select {
    min-block-size: 1.5rem;
    border: 0;
    padding-block: 0;
    background: transparent;
    color: var(--ns-color-muted);
    font: inherit;
    cursor: pointer;
  }

  .ns-listing-topbar__status {
    flex: 1 1 auto;
    margin: 0;
    color: var(--ns-color-muted);
    text-align: center;
    white-space: nowrap;
  }

  .ns-listing-topbar__grid-controls {
    display: none;
    align-items: center;
    gap: var(--ns-space-6);
    margin: 0;
    border: 0;
    padding: 0;
  }

  .ns-listing-topbar__grid-controls[data-ns-layout-controls='mobile'] {
    display: inline-flex;
  }

  .ns-listing-layout-button {
    display: grid;
    place-items: center;
    inline-size: 1.75rem;
    block-size: 1.75rem;
    border: 0;
    padding: var(--ns-space-4);
    background: transparent;
    color: var(--ns-color-muted);
    cursor: pointer;
  }

  .ns-listing-layout-button__icon {
    inline-size: 1.125rem;
    block-size: 1.125rem;
  }

  .ns-listing-layout-button:is(:hover, :focus-visible, [aria-pressed='true']) {
    color: var(--ns-color-foreground);
  }

  .ns-collection-page__body,
  .ns-collection-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--ns-space-30);
  }

  .ns-collection-list-card__details {
    display: none;
    color: var(--ns-color-muted);
    font-size: var(--ns-type-caption-size);
    line-height: 1.5;
  }

  .ns-collection-list-card__details p,
  .ns-collection-list-card__description {
    margin: 0 0 var(--ns-space-4);
  }

  .ns-collection-list-card__details strong {
    color: var(--ns-color-foreground);
  }

  .ns-collection-page--filters-left .ns-collection-page__body,
  .ns-collection-layout--left {
    grid-template-columns: var(--ns-listing-sidebar-inline-size, 16.875rem) minmax(0, 1fr);
  }

  .ns-collection-page--filters-right .ns-collection-page__body,
  .ns-collection-layout--right {
    grid-template-columns: minmax(0, 1fr) var(--ns-listing-sidebar-inline-size, 16.875rem);
  }

  .ns-collection-page--filters-right .ns-collection-sidebar,
  .ns-collection-layout--right > .ns-collection-facets--right {
    grid-column: 2;
  }

  .ns-collection-page--filters-right .ns-collection-page__main,
  .ns-collection-layout--right > .ns-collection-main {
    grid-column: 1;
    grid-row: 1;
  }

  .ns-collection-sidebar,
  .ns-collection-facets {
    min-inline-size: 0;
    font-size: var(--ns-type-body-small-size);
  }

  .ns-listing-facets__groups {
    display: grid;
  }

  .ns-listing-facet {
    border-block-end: 1px solid var(--ns-color-border);
  }

  .ns-listing-facet:first-child {
    border-block-start: 1px solid var(--ns-color-border);
  }

  .ns-listing-facet__summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-block-size: 3.25rem;
    gap: var(--ns-space-16);
    cursor: pointer;
    font-size: var(--ns-type-body-size);
    font-weight: var(--ns-type-weight-interface);
    line-height: 1.3;
    letter-spacing: 0.046875rem;
    list-style: none;
    text-transform: uppercase;
  }

  .ns-listing-facet__summary::-webkit-details-marker {
    display: none;
  }

  .ns-listing-facet__summary svg {
    inline-size: 0.625rem;
    block-size: 0.625rem;
    transition: transform 120ms ease;
  }

  .ns-listing-facet[open] > .ns-listing-facet__summary svg {
    transform: rotate(180deg);
  }

  .ns-listing-facet__body {
    padding-block: 0 var(--ns-space-18);
  }

  .ns-listing-facet__values {
    display: grid;
    gap: var(--ns-space-8);
    margin: 0;
    padding: 0;
    list-style: none;
  }

  .ns-listing-filter-value {
    display: grid;
    grid-template-columns: 1.125rem minmax(0, 1fr) auto;
    align-items: center;
    gap: var(--ns-space-8);
    min-block-size: 1.125rem;
    color: var(--ns-color-muted);
    line-height: 1.6;
    cursor: pointer;
  }

  .ns-listing-filter-value .ns-checkbox {
    cursor: inherit;
  }

  .ns-listing-filter-value:is(:hover, :focus-within),
  .ns-listing-filter-value--active {
    color: var(--ns-color-foreground);
  }

  .ns-listing-filter-value__swatch {
    inline-size: 1.125rem;
    block-size: 1.125rem;
    border: 1px solid var(--ns-color-border);
    border-radius: var(--ns-radius-color-swatch, var(--ns-radius-pill));
    background-color: var(--ns-filter-swatch-color, transparent);
    background-image: var(--ns-filter-swatch-image, none);
    background-position: center;
    background-size: cover;
  }

  .ns-listing-filter-value__count {
    color: var(--ns-color-muted);
    text-align: end;
  }

  .ns-listing-facet__values:has(.ns-listing-filter-value__swatch) {
    display: flex;
    flex-wrap: wrap;
    gap: var(--ns-space-8);
  }

  .ns-listing-facet__values:has(.ns-listing-filter-value__swatch) .ns-listing-filter-value {
    position: relative;
    display: block;
    min-block-size: 1.125rem;
  }

  .ns-listing-facet__values:has(.ns-listing-filter-value__swatch) .ns-listing-filter-value input {
    position: absolute;
    inset: 0;
    z-index: 1;
    opacity: 0;
  }

  .ns-listing-facet__values:has(.ns-listing-filter-value__swatch) .ns-listing-filter-value__label,
  .ns-listing-facet__values:has(.ns-listing-filter-value__swatch) .ns-listing-filter-value__count {
    position: absolute;
    inline-size: 1px;
    block-size: 1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
  }

  .ns-listing-filter-value input:checked + .ns-listing-filter-value__swatch {
    border-color: var(--ns-color-foreground);
    box-shadow:
      0 0 0 2px var(--ns-color-background),
      0 0 0 3px var(--ns-color-foreground);
  }

  .ns-listing-filter-value--disabled {
    cursor: not-allowed;
    opacity: 0.45;
  }

  .ns-listing-active-filters {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--ns-space-10) var(--ns-space-8);
    margin-block-end: var(--ns-space-16);
  }

  .ns-listing-active-filters__heading {
    flex-basis: 100%;
    margin: 0;
    font-size: var(--ns-type-body-size);
    font-weight: var(--ns-type-weight-interface);
    line-height: 1.3;
    letter-spacing: 0.046875rem;
    text-transform: uppercase;
  }

  .ns-listing-active-filters a {
    display: inline-flex;
    align-items: center;
    gap: var(--ns-space-6);
    min-block-size: 1.25rem;
    border: 0;
    padding-inline: var(--ns-space-10);
    background: var(--ns-color-surface-alt);
    color: var(--ns-color-muted);
    font-size: var(--ns-type-body-small-size);
    line-height: 1;
    text-decoration: none;
  }

  .ns-listing-active-filters svg {
    inline-size: 0.625rem;
    block-size: 0.625rem;
  }

  .ns-listing-active-filters__clear + .ns-listing-active-filters__chip {
    background: var(--ns-color-foreground);
    color: var(--ns-color-background);
  }

  .ns-listing-active-filters a.ns-listing-active-filters__clear {
    order: 2;
    flex-basis: 100%;
    justify-content: flex-start;
    min-block-size: 1rem;
    padding-inline: 0;
    background: transparent;
    color: var(--ns-color-muted);
    text-decoration: underline;
    text-underline-offset: 0.125rem;
  }

  .ns-listing-active-filters__clear svg {
    inline-size: 0.875rem;
    block-size: 0.875rem;
    color: var(--ns-color-foreground);
  }

  .ns-collection-sidebar__extras {
    display: grid;
    gap: var(--ns-space-30);
    margin-block-start: var(--ns-space-30);
  }

  .ns-collection-navigation-panel--horizontal {
    display: grid;
    gap: var(--ns-space-16);
  }

  .ns-collection-navigation {
    border-block-end: 1px solid var(--ns-color-border);
    padding-block-end: var(--ns-space-18);
  }

  .ns-collection-navigation nav,
  .ns-collection-navigation__level,
  .ns-collection-navigation__item {
    min-inline-size: 0;
  }

  .ns-collection-navigation__level {
    gap: var(--ns-space-8);
  }

  .ns-collection-navigation__level--2,
  .ns-collection-navigation__level--3 {
    padding-inline-start: var(--ns-space-16);
  }

  .ns-collection-navigation__group,
  .ns-collection-navigation__group:first-child {
    border: 0;
  }

  .ns-collection-navigation__group > .ns-listing-facet__summary,
  .ns-collection-navigation__link {
    min-block-size: 1.125rem;
    color: var(--ns-color-muted);
    font-size: var(--ns-type-body-small-size);
    font-weight: var(--ns-type-weight-interface);
    line-height: 1.6;
    letter-spacing: 0;
    text-transform: none;
  }

  .ns-collection-navigation__group > .ns-listing-facet__summary {
    gap: var(--ns-space-8);
  }

  .ns-collection-navigation__label {
    display: inline-flex;
    align-items: center;
    gap: var(--ns-space-8);
    min-inline-size: 0;
  }

  .ns-collection-navigation__group > .ns-listing-facet__summary svg {
    flex: 0 0 auto;
  }

  .ns-collection-navigation__group > .ns-listing-facet__body {
    padding-block: var(--ns-space-4) 0;
  }

  .ns-collection-navigation__link {
    display: flex;
    align-items: center;
    gap: var(--ns-space-8);
    color: var(--ns-color-muted);
    text-decoration: none;
  }

  .ns-collection-navigation__link:is(:hover, :focus-visible, .ns-is-active),
  .ns-collection-navigation__group > .ns-listing-facet__summary:is(:hover, :focus-visible) {
    color: var(--ns-color-foreground);
  }

  .ns-collection-navigation .ns-checkbox {
    flex-basis: 1.125rem;
  }

  .ns-collection-navigation__count {
    margin-inline-start: auto;
    color: var(--ns-color-muted);
  }

  .ns-collection-sidebar-block h2 {
    margin: 0 0 var(--ns-space-16);
    font-size: var(--ns-type-body-size);
    font-weight: var(--ns-type-weight-emphasis);
    letter-spacing: 0.046875rem;
    text-transform: uppercase;
  }

  .ns-collection-sidebar .ns-compact-collection__heading {
    margin-block-end: var(--ns-space-16);
    font-size: var(--ns-type-body-size);
    font-weight: var(--ns-type-weight-emphasis);
    letter-spacing: 0.046875rem;
    text-transform: uppercase;
  }

  .ns-collection-sidebar .ns-compact-collection__track {
    gap: var(--ns-space-16);
  }

  .ns-collection-sidebar .ns-compact-product-card {
    grid-template-columns: 3.75rem minmax(0, 1fr);
    column-gap: var(--ns-space-12);
    min-block-size: 4.8rem;
  }

  .ns-collection-sidebar .ns-compact-product-card .ns-compact-product-card__media {
    inline-size: 3.75rem;
    block-size: 4.8rem;
    aspect-ratio: auto;
  }

  .ns-collection-sidebar .ns-compact-product-card .ns-compact-product-card__badges {
    gap: var(--ns-space-4);
    margin-block-end: var(--ns-space-4);
  }

  .ns-collection-sidebar .ns-compact-product-card .ns-product-badge {
    min-block-size: 1.125rem;
    padding-inline: var(--ns-space-4);
    font-size: var(--ns-type-caption-size);
  }

  .ns-collection-sidebar .ns-compact-product-card .ns-product-card__title,
  .ns-collection-sidebar .ns-compact-product-card .ns-product-price,
  .ns-collection-sidebar .ns-compact-product-card .ns-product-card__eyebrow {
    font-size: var(--ns-type-caption-size);
    line-height: 1.35;
  }

  .ns-collection-sidebar .ns-visual-content,
  .ns-listing-drawer__content .ns-visual-content {
    position: static;
    inset: auto;
    display: block;
    padding: 0;
  }

  .ns-collection-sidebar .ns-visual-content__panel,
  .ns-listing-drawer__content .ns-visual-content__panel {
    width: 100%;
    max-width: none;
  }

  .ns-collection-page__horizontal-filters,
  .ns-collection-facets--horizontal {
    margin-block-end: var(--ns-space-20);
  }

  .ns-listing-facets--horizontal .ns-listing-facets__groups {
    display: flex;
    flex-wrap: wrap;
    gap: var(--ns-space-10);
  }

  .ns-listing-facets--horizontal .ns-listing-facet {
    position: relative;
    border: 1px solid var(--ns-color-border);
    border-radius: var(--ns-radius-compact);
  }

  .ns-listing-facets--horizontal .ns-listing-facet__summary {
    min-block-size: 2.375rem;
    padding-inline: var(--ns-space-14);
    font-size: var(--ns-type-caption-size);
  }

  .ns-listing-facets--horizontal .ns-listing-facet[open] > .ns-listing-facet__summary {
    background: var(--ns-color-foreground);
    color: var(--ns-color-background);
  }

  .ns-listing-facets--horizontal .ns-listing-facet__body {
    position: absolute;
    z-index: 8;
    inset-block-start: calc(100% + 0.25rem);
    inset-inline-start: 0;
    min-inline-size: 15rem;
    max-block-size: 22rem;
    overflow: auto;
    border: 1px solid var(--ns-color-border);
    border-radius: var(--ns-radius-content-panel, var(--ns-radius-2xl));
    padding: var(--ns-space-16);
    background: var(--ns-color-background);
    box-shadow: 0 0.5rem 1.5rem color-mix(in srgb, var(--ns-color-foreground) 8%, transparent);
  }

  .ns-listing-price {
    --ns-price-min-percent: 0%;
    --ns-price-max-percent: 100%;
  }

  .ns-listing-price__values {
    display: flex;
    justify-content: space-between;
    margin-block-end: var(--ns-space-10);
  }

  .ns-listing-price__track {
    position: relative;
    block-size: 1rem;
    margin-block: var(--ns-space-4) var(--ns-space-16);
  }

  .ns-listing-price__track::before,
  .ns-listing-price__progress {
    position: absolute;
    inset-block-start: 0.4375rem;
    block-size: 2px;
  }

  .ns-listing-price__track::before {
    content: '';
    inset-inline: 0;
    background: var(--ns-color-border);
  }

  .ns-listing-price__progress {
    inset-inline-start: var(--ns-price-min-percent);
    inset-inline-end: calc(100% - var(--ns-price-max-percent));
    background: var(--ns-color-foreground);
  }

  .ns-listing-price__track input[type='range'] {
    position: absolute;
    inset: 0;
    inline-size: 100%;
    block-size: 1rem;
    margin: 0;
    background: transparent;
    pointer-events: none;
    appearance: none;
  }

  .ns-listing-price__track input[type='range']::-webkit-slider-thumb {
    inline-size: 0.625rem;
    block-size: 0.625rem;
    border: 0;
    border-radius: 50%;
    background: var(--ns-color-foreground);
    cursor: grab;
    pointer-events: auto;
    appearance: none;
  }

  .ns-listing-price__track input[type='range']::-moz-range-thumb {
    inline-size: 0.625rem;
    block-size: 0.625rem;
    border: 0;
    border-radius: 50%;
    background: var(--ns-color-foreground);
    cursor: grab;
    pointer-events: auto;
  }

  .ns-listing-price__inputs {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--ns-space-12);
  }

  .ns-listing-price__inputs label {
    display: grid;
    gap: var(--ns-space-6);
  }

  .ns-listing-price__inputs input {
    min-inline-size: 0;
    block-size: 2.25rem;
    border: 1px solid var(--ns-color-border);
    border-radius: var(--ns-radius-compact);
    padding-inline: var(--ns-space-10);
    background: transparent;
    color: inherit;
  }

  .ns-collection-grid {
    display: grid;
    grid-template-columns: repeat(var(--ns-grid-columns-mobile, 2), minmax(0, 1fr));
    gap: var(--ns-primary-grid-row-gap) var(--ns-primary-grid-column-gap);
    min-inline-size: 0;
  }

  .ns-collection-grid__item {
    min-inline-size: 0;
  }

  .ns-collection-page__empty {
    grid-column: 1 / -1;
  }

  .ns-listing-pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--ns-space-6);
    margin-block-start: var(--ns-space-48);
  }

  .ns-listing-pagination__arrow,
  .ns-listing-pagination__page,
  .ns-listing-pagination__more {
    display: inline-grid;
    place-items: center;
    min-inline-size: 2.25rem;
    min-block-size: 2.25rem;
    border: 1px solid var(--ns-color-border);
    color: inherit;
    text-decoration: none;
  }

  .ns-listing-pagination__arrow {
    border-radius: var(--ns-radius-icon-button, var(--ns-radius-xl));
  }

  .ns-listing-pagination__page,
  .ns-listing-pagination__more {
    border-radius: var(--ns-radius-compact);
  }

  .ns-listing-pagination__page.ns-is-current,
  .ns-listing-pagination__more:is(:hover, :focus-visible) {
    border-color: var(--ns-color-foreground);
    background: var(--ns-color-foreground);
    color: var(--ns-color-background);
  }

  .ns-listing-pagination__arrow svg {
    inline-size: 0.875rem;
    block-size: 0.875rem;
  }

  .ns-listing-pagination__arrow--next svg {
    transform: rotate(180deg);
  }

  :root[dir='rtl'] .ns-listing-pagination__arrow--previous svg {
    transform: rotate(180deg);
  }

  :root[dir='rtl'] .ns-listing-pagination__arrow--next svg {
    transform: none;
  }

  .ns-listing-pagination__more {
    min-inline-size: 10rem;
    padding-inline: var(--ns-space-24);
  }

  .ns-listing-drawer__header {
    --ns-listing-drawer-header-action-space: var(--ns-control-block-size-56);

    display: flex;
    align-items: center;
    justify-content: space-between;
    min-block-size: 3.5rem;
    border-block-end: 1px solid var(--ns-color-border);
    padding-inline: var(--ns-space-16) var(--ns-listing-drawer-header-action-space);
  }

  .ns-listing-drawer__header h2 {
    margin: 0;
    font-size: var(--ns-type-navigation-size);
    font-weight: var(--ns-type-weight-emphasis);
  }

  .ns-overlay--listing-filters .ns-overlay__body {
    inline-size: 100%;
  }

  @media (max-width: 1024px) {
    .ns-overlay--listing-filters .ns-overlay__close {
      inset-block-start: 0.375rem;
      inset-inline-end: 0.25rem;
    }
  }

  .ns-overlay--listing-filters-mobile {
    display: none;
  }

  .ns-listing-drawer__content > .ns-listing-filters-block,
  .ns-listing-drawer__content > .ns-collection-navigation,
  .ns-listing-drawer__content > .ns-collection-sidebar__extras {
    margin: 0;
    padding-inline: var(--ns-space-16);
  }

  .ns-listing-drawer__content > .ns-listing-filters-block {
    display: grid;
  }

  .ns-listing-facets__footer {
    position: sticky;
    inset-block-end: 0;
    padding-block: var(--ns-space-16);
    background: var(--ns-color-background);
  }

  .ns-listing-facets__apply {
    inline-size: 100%;
    min-block-size: 2.75rem;
    border: 0;
    border-radius: var(--ns-radius-button, 0px);
    background: var(--ns-color-foreground);
    color: var(--ns-color-background);
    cursor: pointer;
  }

  @media (min-width: 48rem) {
    ns-collection-view {
      --ns-radius-density-active: var(--ns-radius-4xl);
    }

    ns-collection-view:is([data-ns-layout-tablet='3']) {
      --ns-radius-density-active: var(--ns-radius-3xl);
    }

    ns-collection-view:is([data-ns-layout-tablet='4']) {
      --ns-radius-density-active: var(--ns-radius-2xl);
    }

    ns-collection-view:is([data-ns-layout-tablet='5']) {
      --ns-radius-density-active: var(--ns-radius-xl);
    }

    ns-collection-view:is([data-ns-layout-tablet='6']) {
      --ns-radius-density-active: var(--ns-radius-lg);
    }

    ns-collection-view:is([data-ns-layout-tablet='7'], [data-ns-layout-tablet='8']) {
      --ns-radius-density-active: var(--ns-radius-md);
    }

    .ns-listing-topbar__grid-controls[data-ns-layout-controls='mobile'] {
      display: none;
    }

    .ns-listing-topbar__grid-controls[data-ns-layout-controls='tablet'] {
      display: inline-flex;
    }

    .ns-collection-grid {
      grid-template-columns: repeat(var(--ns-grid-columns-tablet, 3), minmax(0, 1fr));
    }
  }

  @media (min-width: 48rem) and (max-width: 64rem) {
    [data-ns-layout-tablet='list'] .ns-collection-grid {
      grid-template-columns: minmax(0, 1fr);
      gap: var(--ns-space-24);
    }

    [data-ns-layout-tablet='list'] .ns-product-card--collection-list {
      --ns-product-card-content-text-align: start;
      --ns-product-card-content-justify: start;
      display: grid;
      grid-template-columns: minmax(9rem, 12rem) minmax(0, 1fr);
      column-gap: var(--ns-space-24);
      padding-block-end: var(--ns-space-24);
      border-block-end: 1px solid var(--ns-color-border);
      background: var(--ns-color-product-card-surface, var(--ns-color-surface-alt));
      container-type: normal;
    }

    [data-ns-layout-tablet='list'] .ns-product-card--collection-list > .ns-product-card__media-block {
      grid-row: 1 / 3;
    }

    [data-ns-layout-tablet='list'] .ns-product-card--collection-list .ns-product-card__media {
      aspect-ratio: 25 / 32;
      border-radius: var(--ns-product-card-surface-radius);
    }

    [data-ns-layout-tablet='list'] .ns-product-card--collection-list .ns-product-card__information {
      display: contents;
    }

    [data-ns-layout-tablet='list'] .ns-product-card--collection-list .ns-product-card__content {
      padding: var(--ns-space-20) 0 0;
    }

    [data-ns-layout-tablet='list']
      .ns-product-card--collection-list
      :is(.ns-product-card__image, .ns-product-card__placeholder) {
      object-fit: cover;
    }

    [data-ns-layout-tablet='list'] .ns-product-card--collection-list .ns-collection-list-card__details {
      display: block;
      grid-column: 2;
    }
  }

  @media (min-width: 64.0625rem) {
    ns-collection-view {
      --ns-radius-density-active: var(--ns-radius-4xl);
    }

    ns-collection-view:is([data-ns-layout-desktop='3']) {
      --ns-radius-density-active: var(--ns-radius-3xl);
    }

    ns-collection-view:is([data-ns-layout-desktop='4']) {
      --ns-radius-density-active: var(--ns-radius-2xl);
    }

    ns-collection-view:is([data-ns-layout-desktop='5']) {
      --ns-radius-density-active: var(--ns-radius-xl);
    }

    ns-collection-view:is([data-ns-layout-desktop='6']) {
      --ns-radius-density-active: var(--ns-radius-lg);
    }

    ns-collection-view:is([data-ns-layout-desktop='7'], [data-ns-layout-desktop='8']) {
      --ns-radius-density-active: var(--ns-radius-md);
    }

    .ns-listing-topbar__grid-controls[data-ns-layout-controls='tablet'] {
      display: none;
    }

    .ns-listing-topbar__grid-controls[data-ns-layout-controls='desktop'] {
      display: inline-flex;
    }

    .ns-collection-page {
      padding-inline: 0;
    }

    .ns-collection-page--filters-left .ns-listing-topbar,
    .ns-search-listing[data-ns-desktop-filter-mode='left'] .ns-listing-topbar {
      margin-inline-start: var(--ns-listing-sidebar-track-size);
    }

    .ns-collection-page--filters-right .ns-listing-topbar,
    .ns-search-listing[data-ns-desktop-filter-mode='right'] .ns-listing-topbar {
      margin-inline-end: var(--ns-listing-sidebar-track-size);
    }

    .ns-collection-grid {
      grid-template-columns: repeat(var(--ns-grid-columns-desktop, 4), minmax(0, 1fr));
    }

    [data-ns-layout-desktop='list'] .ns-collection-grid {
      grid-template-columns: minmax(0, 1fr);
      gap: var(--ns-space-30);
    }

    [data-ns-layout-desktop='list'] {
      .ns-product-card--collection-list {
        --ns-product-card-content-text-align: start;
        --ns-product-card-content-justify: start;
        display: grid;
        grid-template-columns: 12.1875rem minmax(0, 1fr) 13.125rem;
        grid-template-rows: repeat(8, auto) 1fr;
        column-gap: var(--ns-space-30);
        min-block-size: 15.625rem;
        padding-block-end: var(--ns-space-30);
        border-block-end: 1px solid var(--ns-color-border);
        background: var(--ns-color-product-card-surface, var(--ns-color-surface-alt));
        container-type: normal;
      }

      .ns-product-card--collection-list > .ns-product-card__media-block {
        display: contents;
      }

      .ns-product-card--collection-list .ns-product-card__media {
        grid-column: 1;
        grid-row: 1 / -1;
        inline-size: 12.1875rem;
        block-size: 15.625rem;
        aspect-ratio: auto;
        border-radius: var(--ns-product-card-surface-radius);
      }

      .ns-product-card--collection-list .ns-product-card__information {
        display: contents;
      }

      .ns-product-card--collection-list :is(.ns-product-card__image, .ns-product-card__placeholder) {
        object-fit: cover;
      }

      .ns-product-card--collection-list .ns-product-card__content {
        display: contents;
      }

      .ns-product-card--collection-list .ns-product-card__eyebrow,
      .ns-product-card--collection-list .ns-product-card__title,
      .ns-product-card--collection-list .ns-product-card__options,
      .ns-product-card--collection-list .ns-collection-list-card__details {
        grid-column: 2;
      }

      .ns-product-card--collection-list .ns-product-card__eyebrow {
        grid-row: 1;
      }

      .ns-product-card--collection-list .ns-product-card__title {
        grid-row: 2;
      }

      .ns-product-card--collection-list .ns-collection-list-card__details {
        display: block;
        grid-row: 3 / span 3;
      }

      .ns-product-card--collection-list .ns-product-card__options {
        grid-row: 7;
        align-self: end;
      }

      .ns-product-card--collection-list .ns-product-card__price,
      .ns-product-card--collection-list .ns-product-card__rating,
      .ns-product-card--collection-list .ns-product-card__form {
        grid-column: 3;
        padding-inline-start: var(--ns-space-30);
        border-inline-start: 1px solid var(--ns-color-border);
      }

      .ns-product-card--collection-list .ns-product-card__price {
        grid-row: 1;
        font-size: var(--ns-type-price-prominent-size);
      }

      .ns-product-card--collection-list .ns-product-card__form {
        grid-row: 2 / span 3;
      }

      .ns-product-card--collection-list .ns-product-card__rating {
        grid-row: 5;
      }

      .ns-product-card--collection-list .ns-product-card__media-controls,
      .ns-product-card--collection-list .ns-product-card__quick-view,
      .ns-product-card--collection-list .ns-product-card__countdown {
        display: none;
      }

      .ns-product-card--collection-list .ns-product-card__buy-row {
        grid-template-columns: minmax(0, 1fr) 2.1875rem;
      }

      .ns-product-card--collection-list .ns-product-card__quantity {
        grid-template-columns: 2.25rem minmax(0, 1fr) 2.25rem;
        inline-size: 100%;
      }
    }

    .ns-collection-page--filters-drawer .ns-listing-topbar__filter-trigger--desktop,
    .ns-search-listing[data-ns-desktop-filter-mode='drawer'] .ns-listing-topbar__filter-trigger {
      display: inline-flex;
    }
  }

  @media (max-width: 64rem) {
    .ns-listing-topbar {
      grid-template-columns: minmax(0, 1fr) auto;
      align-items: center;
    }

    .ns-listing-topbar__controls {
      grid-column: 1 / -1;
    }

    .ns-collection-page__body,
    .ns-collection-page--filters-left .ns-collection-page__body,
    .ns-collection-page--filters-right .ns-collection-page__body,
    .ns-collection-layout,
    .ns-collection-layout--left,
    .ns-collection-layout--right {
      grid-template-columns: minmax(0, 1fr);
    }

    .ns-collection-sidebar,
    .ns-collection-facets--left,
    .ns-collection-facets--right {
      display: none;
    }

    .ns-collection-page--filters-right .ns-collection-page__main,
    .ns-collection-layout--right > .ns-collection-main {
      grid-column: 1;
      grid-row: auto;
    }

    .ns-listing-topbar__filter-trigger--mobile,
    .ns-listing-topbar__filter-trigger:not(.ns-listing-topbar__filter-trigger--mobile):not(
        .ns-listing-topbar__filter-trigger--desktop
      ) {
      display: inline-flex;
    }

    .ns-overlay--listing-filters-mobile {
      display: contents;
    }
  }

  @media (max-width: 47.99rem) {
    .ns-collection-page {
      padding-block-start: var(--ns-space-24);
    }

    .ns-listing-topbar {
      grid-template-columns: minmax(0, 1fr) auto;
      gap: var(--ns-space-14);
      margin-block-end: var(--ns-space-20);
    }

    .ns-listing-topbar__heading {
      font-size: var(--ns-type-lead-size);
    }

    .ns-listing-topbar__mobile-count {
      display: inline;
      color: var(--ns-color-muted);
      font-size: var(--ns-type-caption-size);
    }

    .ns-listing-topbar__controls {
      grid-column: 1 / -1;
      justify-content: space-between;
      overflow-x: auto;
      padding-block-end: var(--ns-space-4);
      overscroll-behavior-inline: contain;
      scrollbar-width: thin;
    }

    .ns-listing-topbar__card-view {
      position: sticky;
      z-index: 1;
      inset-inline-start: 0;
      min-block-size: 2.75rem;
      padding-inline: var(--ns-space-10);
      font-size: var(--ns-type-caption-size);
    }

    .ns-listing-topbar__status {
      display: none;
    }

    .ns-listing-topbar__view-controls {
      margin-inline-start: auto;
    }

    .ns-listing-facets--horizontal .ns-listing-facets__groups {
      flex-wrap: nowrap;
      overflow-x: auto;
    }

    .ns-listing-facets--horizontal .ns-listing-facet__body {
      position: fixed;
      inset: auto 1rem 1rem;
      max-block-size: 60dvh;
    }

    .ns-listing-pagination {
      margin-block-start: var(--ns-space-32);
    }
  }
}
/* END_SNIPPET:_styles-collection-styles */

/* START_SNIPPET:_styles-collection-tabs-styles (INDEX:232) */
@layer components {
  .ns-collection-tabs ns-product-source {
    display: contents;
  }

  ns-collection-tabs {
    --ns-collection-preview-columns: var(--ns-collection-columns-mobile);
    --ns-radius-density-active: var(--ns-radius-density-mobile, var(--ns-radius-4xl));

    display: block;
    width: 100%;
    min-width: 0;
    max-width: 100%;
    margin-inline: auto;
    overflow-x: clip;
    contain: inline-size;
  }

  ns-collection-tabs[data-ns-next-item-preview] {
    --ns-slider-next-item-preview-size: min(
      clamp(3rem, 8vi, 7rem),
      calc(
        (100% - (var(--ns-collection-preview-columns) - 1) * var(--ns-primary-grid-column-gap)) /
          var(--ns-collection-preview-columns) * 0.6
      )
    );
    --ns-slider-next-item-preview-extension: min(
      max(0px, calc((100vi - var(--ns-content-width)) / 2)),
      calc(var(--ns-slider-next-item-preview-size) + var(--ns-primary-grid-column-gap))
    );
  }

  ns-collection-tabs[data-ns-slider-mode='all'][data-ns-next-item-preview] {
    overflow-x: visible;
  }

  .ns-heading-tabs {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: var(--ns-space-16) var(--ns-space-30);
  }

  .ns-heading-tabs__button {
    padding: 0;
    border: 0;
    color: var(--ns-color-muted);
    font-family: var(--ns-font-body-family);
    font-size: var(--ns-type-navigation-size);
    font-style: var(--ns-font-body-style);
    font-weight: var(--ns-type-weight-interface);
    line-height: var(--ns-type-body-line-height);
    text-decoration: none;
    text-transform: capitalize;
    transition: color 160ms ease;
  }

  .ns-heading-tabs__button:is(:hover, :focus-visible, [aria-selected='true'], [data-ns-active]),
  .ns-collection-tabs__heading {
    color: var(--ns-color-heading);
  }

  .ns-collection-tabs__heading {
    cursor: default;
  }

  .ns-collection-tabs__list {
    margin-block-end: var(--ns-space-40);
  }

  .ns-collection-tabs__list:empty {
    display: none;
  }

  ns-collection-tabs[data-ns-runtime-ready] [data-ns-collection-item] > .ns-collection-tabs__source {
    display: none;
  }

  .ns-collection-tabs__tab {
    background: transparent;
  }

  .ns-collection-tabs__tab:focus-visible,
  .ns-collection-tabs__load-more .ns-button:focus-visible {
    outline: 2px solid var(--ns-color-accent);
    outline-offset: 3px;
  }

  .ns-collection-tabs__panel {
    position: relative;
    min-width: 0;
    max-width: 100%;
  }

  .ns-collection-tabs__panel[hidden] {
    display: none;
  }

  .ns-collection-tabs__grid {
    --ns-collection-columns: var(--ns-collection-columns-mobile);
    --ns-collection-gap: var(--ns-primary-grid-column-gap);
    display: grid;
    width: 100%;
    min-width: 0;
    max-width: 100%;
    grid-template-columns: repeat(var(--ns-collection-columns), minmax(0, 1fr));
    gap: var(--ns-primary-grid-row-gap) var(--ns-collection-gap);
  }

  .ns-collection-tabs__item {
    min-width: 0;
  }

  .ns-collection-tabs__editor-sentinel {
    grid-column: 1 / -1;
    margin: 0;
    color: var(--ns-color-muted);
    text-align: center;
  }

  .ns-collection-tabs__load-more {
    display: flex;
    justify-content: center;
    margin-block-start: var(--ns-space-40);
  }

  .ns-collection-tabs__load-more[hidden] {
    display: none;
  }

  ns-collection-tabs[data-ns-slider-mode='all'] .ns-collection-tabs__panel,
  ns-collection-tabs[data-ns-slider-mode='mobile'] .ns-collection-tabs__panel {
    --ns-slider-navigation-block-offset: 0;
  }

  ns-collection-tabs[data-ns-slider-mode='all'] .ns-collection-tabs__panel {
    padding-block-end: var(--ns-space-40);
  }

  ns-collection-tabs[data-ns-slider-mode='all'] .ns-collection-tabs__grid {
    display: flex;
    grid-template-columns: none;
    row-gap: 0;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-behavior: smooth;
    scroll-snap-type: inline mandatory;
    touch-action: pan-x pan-y;
    scrollbar-width: none;
  }

  ns-collection-tabs[data-ns-slider-mode='all'] .ns-collection-tabs__item {
    flex: 0 0
      calc((100% - (var(--ns-collection-columns) - 1) * var(--ns-collection-gap)) / var(--ns-collection-columns));
  }

  ns-collection-tabs[data-ns-slider-mode='all'][data-ns-next-item-preview] .ns-collection-tabs__grid {
    --ns-slider-page-size: var(--ns-collection-columns);
  }

  ns-collection-tabs[data-ns-slider-mode='all'][data-ns-next-item-preview]
    .ns-collection-tabs__grid[data-ns-slider-preview-active] {
    --ns-slider-next-item-preview-offset: max(
      var(--ns-slider-next-item-preview-extension),
      calc(var(--ns-slider-next-item-preview-size) + var(--ns-collection-gap))
    );

    inline-size: calc(100% + var(--ns-slider-next-item-preview-extension));
    max-inline-size: none;
  }

  ns-collection-tabs[data-ns-slider-mode='all'][data-ns-next-item-preview]
    .ns-collection-tabs__grid[data-ns-slider-preview-active]
    .ns-collection-tabs__item {
    flex-basis: calc(
      (
          100% - (var(--ns-collection-columns) - 1) * var(--ns-collection-gap) -
            var(--ns-slider-next-item-preview-offset)
        ) /
        var(--ns-collection-columns)
    );
  }

  ns-collection-tabs[data-ns-slider-mode='all'][data-ns-next-item-preview]
    .ns-collection-tabs__grid[data-ns-slider-preview-active]
    .ns-collection-tabs__item:last-child {
    margin-inline-end: var(--ns-slider-next-item-preview-offset);
  }

  ns-collection-tabs[data-ns-slider-mode='all'] .ns-collection-tabs__grid::-webkit-scrollbar,
  ns-collection-tabs[data-ns-slider-mode='mobile'] .ns-collection-tabs__grid::-webkit-scrollbar {
    display: none;
  }

  ns-collection-tabs[data-ns-slider-mode='all'] .ns-collection-tabs__item,
  ns-collection-tabs[data-ns-slider-mode='mobile'] .ns-collection-tabs__item {
    scroll-snap-align: start;
    scroll-snap-stop: always;
  }

  ns-collection-tabs[data-ns-slider-mode='mobile'] .ns-slider-navigation {
    display: none;
  }

  @media (min-width: 768px) {
    ns-collection-tabs {
      --ns-collection-preview-columns: var(--ns-collection-columns-tablet);
      --ns-radius-density-active: var(--ns-radius-density-tablet, var(--ns-radius-4xl));
    }

    .ns-collection-tabs__grid {
      --ns-collection-columns: var(--ns-collection-columns-tablet);
    }
  }

  @media (min-width: 1025px) {
    ns-collection-tabs {
      --ns-collection-preview-columns: var(--ns-collection-columns-desktop);
      --ns-radius-density-active: var(--ns-radius-density-desktop, var(--ns-radius-4xl));
    }

    .ns-collection-tabs__grid {
      --ns-collection-columns: var(--ns-collection-columns-desktop);
    }
  }

  @media (max-width: 767px) {
    ns-collection-tabs[data-ns-slider-mode='mobile'][data-ns-next-item-preview] {
      overflow-x: visible;
    }

    ns-collection-tabs[data-ns-slider-mode='mobile'] .ns-collection-tabs__panel {
      padding-block-end: var(--ns-space-40);
    }

    ns-collection-tabs[data-ns-slider-mode='mobile'] .ns-collection-tabs__grid {
      display: flex;
      grid-template-columns: none;
      row-gap: 0;
      overflow-x: auto;
      overscroll-behavior-inline: contain;
      scroll-behavior: smooth;
      scroll-snap-type: inline mandatory;
      touch-action: pan-x pan-y;
      scrollbar-width: none;
    }

    ns-collection-tabs[data-ns-slider-mode='mobile'] .ns-collection-tabs__item {
      flex: 0 0
        calc((100% - (var(--ns-collection-columns) - 1) * var(--ns-collection-gap)) / var(--ns-collection-columns));
    }

    ns-collection-tabs[data-ns-slider-mode='mobile'][data-ns-next-item-preview] .ns-collection-tabs__grid {
      --ns-slider-page-size: var(--ns-collection-columns);
    }

    ns-collection-tabs[data-ns-slider-mode='mobile'][data-ns-next-item-preview]
      .ns-collection-tabs__grid[data-ns-slider-preview-active] {
      --ns-slider-next-item-preview-offset: max(
        var(--ns-slider-next-item-preview-extension),
        calc(var(--ns-slider-next-item-preview-size) + var(--ns-collection-gap))
      );

      inline-size: calc(100% + var(--ns-slider-next-item-preview-extension));
      max-inline-size: none;
    }

    ns-collection-tabs[data-ns-slider-mode='mobile'][data-ns-next-item-preview]
      .ns-collection-tabs__grid[data-ns-slider-preview-active]
      .ns-collection-tabs__item {
      flex-basis: calc(
        (
            100% - (var(--ns-collection-columns) - 1) * var(--ns-collection-gap) -
              var(--ns-slider-next-item-preview-offset)
          ) /
          var(--ns-collection-columns)
      );
    }

    ns-collection-tabs[data-ns-slider-mode='mobile'][data-ns-next-item-preview]
      .ns-collection-tabs__grid[data-ns-slider-preview-active]
      .ns-collection-tabs__item:last-child {
      margin-inline-end: var(--ns-slider-next-item-preview-offset);
    }

    ns-collection-tabs[data-ns-slider-mode='mobile'] .ns-slider-navigation {
      display: contents;
    }
  }

  @media (prefers-reduced-motion: reduce) {
    ns-collection-tabs .ns-collection-tabs__grid {
      scroll-behavior: auto;
    }
  }
}
/* END_SNIPPET:_styles-collection-tabs-styles */

/* START_SNIPPET:_styles-compact-product-collection-styles (INDEX:233) */
@layer components {
  .ns-compact-collection ns-product-source {
    display: contents;
  }

  .ns-compact-collection {
    --ns-compact-collection-preview-offset: 0px;

    min-width: 0;
  }

  .ns-compact-collection[data-ns-next-item-preview] {
    --ns-slider-next-item-preview-size: min(clamp(3rem, 8vi, 7rem), 60%);
  }

  .ns-compact-collection[data-ns-next-item-preview][data-ns-slider-preview-active] {
    --ns-compact-collection-preview-offset: calc(var(--ns-slider-next-item-preview-size) + var(--ns-space-20));
  }

  .ns-visual-compact-product {
    --ns-compact-product-card-align-items: end;

    flex: 1 1 100%;
    align-self: stretch;
    width: 100%;
    min-width: 0;
    max-width: 100%;
  }

  .ns-visual-compact-product .ns-compact-product-card {
    width: 100%;
    max-width: 100%;
  }

  .ns-compact-collection__heading {
    margin: 0 0 var(--ns-space-32);
    color: var(--ns-color-heading);
    font-family: var(--ns-font-heading-family);
    font-size: var(--ns-type-medium-size);
    font-style: var(--ns-font-heading-style);
    font-weight: var(--ns-font-heading-weight);
    line-height: 1.2;
    text-transform: capitalize;
  }

  .ns-compact-collection__viewport {
    position: relative;
    min-width: 0;
  }
  .ns-compact-collection__track {
    display: grid;
    gap: var(--ns-space-20);
    min-width: 0;
  }
  .ns-compact-collection__item {
    min-width: 0;
    scroll-snap-align: start;
  }
  .ns-compact-collection__empty {
    margin: 0;
    color: var(--ns-color-muted);
  }

  .ns-compact-product-card {
    display: grid;
    grid-template-columns: 6.25rem minmax(0, 1fr);
    grid-template-rows: 1fr;
    column-gap: var(--ns-space-20);
    row-gap: 0;
    align-items: var(--ns-compact-product-card-align-items, start);
    min-block-size: 8rem;
    text-align: start;
  }

  .ns-compact-product-card .ns-compact-product-card__media {
    grid-column: 1;
    grid-row: 1;
    aspect-ratio: 25 / 32;
  }

  .ns-compact-product-card .ns-compact-product-card__content > .ns-u-theme-block-root > .ns-product-badges {
    position: static;
    display: flex;
    flex-wrap: wrap;
    justify-items: initial;
    gap: var(--ns-space-4);
    margin-block-end: var(--ns-space-10);
    pointer-events: none;
  }

  .ns-compact-product-card .ns-compact-product-card__content > .ns-u-theme-block-root > .ns-product-badges:empty {
    display: none;
  }

  .ns-compact-product-card .ns-compact-product-card__content {
    grid-column: 2;
    grid-row: 1;
    min-width: 0;
    padding: 0;
  }

  .ns-compact-product-card .ns-product-card__eyebrow {
    font-size: var(--ns-type-label-size);
  }
  .ns-compact-product-card .ns-product-card__title {
    margin-block-end: var(--ns-space-8);
    font-size: var(--ns-type-body-size);
  }
  .ns-compact-product-card .ns-product-price {
    font-size: var(--ns-type-price-size);
  }
  .ns-compact-product-card .ns-product-card__options {
    margin-block-start: var(--ns-space-8);
  }
  .ns-compact-product-card .ns-product-card__form {
    margin-block-start: var(--ns-space-8);
  }
  .ns-compact-product-card .ns-product-card__rating {
    margin-block-start: var(--ns-space-8);
  }

  .ns-compact-collection--all .ns-compact-collection__track {
    --ns-slider-page-size: 1;

    display: flex;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-snap-type: inline mandatory;
    scrollbar-width: none;
    touch-action: pan-x pan-y;
  }

  .ns-compact-collection--all .ns-compact-collection__track::-webkit-scrollbar {
    display: none;
  }

  .ns-compact-collection--mobile .ns-slider-navigation {
    display: none;
  }

  .ns-compact-collection--all .ns-compact-collection__item {
    flex: 0 0 calc(100% - var(--ns-compact-collection-preview-offset));
  }
  .ns-compact-collection--all[data-ns-next-item-preview][data-ns-slider-preview-active]
    .ns-compact-collection__item:last-child {
    margin-inline-end: var(--ns-compact-collection-preview-offset);
  }

  @media (max-width: 767px) {
    .ns-compact-product-card {
      grid-template-columns: 5.5rem minmax(0, 1fr);
      min-block-size: 7.04rem;
    }

    .ns-compact-collection--mobile .ns-compact-collection__track {
      --ns-slider-page-size: 1;

      display: flex;
      overflow-x: auto;
      overscroll-behavior-inline: contain;
      scroll-snap-type: inline mandatory;
      scrollbar-width: none;
      touch-action: pan-x pan-y;
    }

    .ns-compact-collection--mobile .ns-compact-collection__track::-webkit-scrollbar {
      display: none;
    }

    .ns-compact-collection--mobile .ns-slider-navigation {
      display: contents;
    }

    .ns-compact-collection--mobile .ns-compact-collection__item {
      flex: 0 0 calc(100% - var(--ns-compact-collection-preview-offset));
    }
    .ns-compact-collection--mobile[data-ns-next-item-preview][data-ns-slider-preview-active]
      .ns-compact-collection__item:last-child {
      margin-inline-end: var(--ns-compact-collection-preview-offset);
    }
  }
}
/* END_SNIPPET:_styles-compact-product-collection-styles */

/* START_SNIPPET:_styles-composition-layout-styles (INDEX:234) */
@layer components {
  .ns-composition {
    width: 100%;
  }

  .ns-composition__inner {
    width: var(--ns-content-width);
    margin-inline: auto;
  }

  .ns-composition__items {
    --ns-composition-active-columns: var(--ns-composition-columns, 1);
    --ns-composition-default-span-active: 1;

    display: grid;
    grid-template-columns: repeat(var(--ns-composition-active-columns), minmax(0, 1fr));
    grid-auto-flow: row;
    align-items: var(--ns-composition-item-alignment, start);
    gap: var(--ns-primary-grid-row-gap) var(--ns-primary-grid-column-gap);
  }

  .ns-composition-item,
  .ns-composition-item__scale,
  .ns-composition-item__scroll,
  .ns-composition-item__pointer,
  .ns-composition-item__ambient,
  .ns-composition-item__hover {
    min-width: 0;
  }

  .ns-composition-item__scale,
  .ns-composition-item__scroll,
  .ns-composition-item__pointer,
  .ns-composition-item__ambient,
  .ns-composition-item__hover {
    width: 100%;
  }

  .ns-composition--custom-grid .ns-composition__items {
    --ns-composition-default-span-active: var(--ns-composition-default-span, 12);

    grid-template-columns: repeat(12, minmax(0, 1fr));
  }

  .ns-composition__items > :not(.ns-u-theme-block-root),
  .ns-composition__items > .ns-u-theme-block-root > * {
    min-width: 0;
    grid-column: auto / span var(--ns-composition-default-span-active);
  }

  .ns-composition__items > [data-ns-composition-custom-width='true'],
  .ns-composition__items > .ns-u-theme-block-root > [data-ns-composition-custom-width='true'] {
    grid-column: auto / span var(--ns-composition-span-desktop, 12);
  }

  @media (min-width: 1025px) {
    .ns-composition[data-ns-composition-layout='masonry'] .ns-composition__items {
      display: block;
      columns: var(--ns-composition-columns, 1);
      column-gap: var(--ns-primary-grid-column-gap);
    }

    .ns-composition[data-ns-composition-layout='masonry'] .ns-composition-item {
      display: inline-block;
      width: 100%;
      margin-block: var(--ns-composition-item-masonry-offset, 0px) var(--ns-primary-grid-row-gap);
      break-inside: avoid;
    }

    .ns-composition[data-ns-composition-layout='canvas'] .ns-composition__items {
      position: relative;
      display: block;
      aspect-ratio: 100 / var(--ns-composition-canvas-height, 70);
      overflow: visible;
    }

    .ns-composition[data-ns-composition-layout='canvas'][data-ns-composition-overflow='hidden'] .ns-composition__items {
      overflow: hidden;
    }

    .ns-composition[data-ns-composition-layout='canvas'] .ns-composition-item {
      position: absolute;
      z-index: 1;
      inset-block-start: var(--ns-composition-item-canvas-y, 0%);
      inset-inline-start: var(--ns-composition-item-canvas-x, 0%);
      width: var(--ns-composition-item-canvas-width, 40%);
      margin: 0;
    }
  }

  @media (min-width: 768px) and (max-width: 1024px) {
    .ns-composition__items {
      --ns-composition-active-columns: var(--ns-composition-columns-tablet, 2);
    }

    .ns-composition--custom-grid .ns-composition__items {
      --ns-composition-default-span-active: var(--ns-composition-default-span-tablet, 12);

      grid-template-columns: repeat(12, minmax(0, 1fr));
    }

    .ns-composition__items > [data-ns-composition-custom-width='true'],
    .ns-composition__items > .ns-u-theme-block-root > [data-ns-composition-custom-width='true'] {
      grid-column: auto / span var(--ns-composition-span-tablet, 12);
    }
  }

  @media (max-width: 767px) {
    .ns-composition__items {
      --ns-composition-active-columns: var(--ns-composition-columns-mobile, 1);
    }

    .ns-composition--custom-grid .ns-composition__items {
      --ns-composition-default-span-active: var(--ns-composition-default-span-mobile, 12);

      grid-template-columns: repeat(12, minmax(0, 1fr));
    }

    .ns-composition__items > [data-ns-composition-custom-width='true'],
    .ns-composition__items > .ns-u-theme-block-root > [data-ns-composition-custom-width='true'] {
      grid-column: auto / span var(--ns-composition-span-mobile, 12);
    }
  }
}
/* END_SNIPPET:_styles-composition-layout-styles */

/* START_SNIPPET:_styles-content-menu-overlay-styles (INDEX:235) */
@layer components {
  .ns-content-menu-overlay {
    position: relative;
    min-width: 0;
    overflow: hidden;
    color: var(--ns-content-menu-text, var(--ns-color-text));
    container-type: inline-size;
  }

  .ns-content-menu-overlay > .ns-visual-media {
    z-index: auto;
  }

  .ns-content-menu-overlay__swap {
    position: absolute;
    z-index: 2;
    inset: 0;
  }

  .ns-content-menu-overlay__swap > summary {
    list-style: none;
    cursor: pointer;
  }

  .ns-content-menu-overlay__swap > summary::-webkit-details-marker {
    display: none;
  }

  .ns-content-menu-overlay__panel {
    position: absolute;
    z-index: 2;
    inset-inline: 1.25rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: var(--ns-space-10) var(--ns-space-16);
    border-radius: var(--ns-radius-content-panel, var(--ns-radius-2xl));
    color: var(--ns-content-menu-text, var(--ns-color-text));
    text-align: center;
    background: var(
      --ns-content-menu-panel-background,
      color-mix(in srgb, var(--ns-color-background) 90%, transparent)
    );
    transition:
      opacity 160ms ease,
      visibility 160ms ease;
  }

  .ns-content-menu-overlay__panel--default {
    bottom: 1.25rem;
    min-height: 2.1875rem;
  }

  .ns-content-menu-overlay__panel--default:has(.ns-content-menu-overlay__secondary) {
    min-height: 3.125rem;
  }

  .ns-content-menu-overlay__panel--hover {
    inset-block: 1.25rem;
    gap: var(--ns-space-12);
    border: 1px solid var(--ns-content-menu-border, currentcolor);
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
  }

  .ns-content-menu-overlay__panel--desktop-hover {
    z-index: 3;
    display: none;
  }

  .ns-content-menu-overlay__heading,
  .ns-content-menu-overlay__secondary {
    margin: 0;
  }

  .ns-content-menu-overlay__heading {
    font-family: var(--ns-font-body-family);
    font-size: var(--ns-type-navigation-size);
    font-style: var(--ns-font-body-style);
    font-weight: var(--ns-type-weight-emphasis);
    line-height: var(--ns-type-body-line-height);
    letter-spacing: 0.05em;
    text-transform: uppercase;
  }

  .ns-content-menu-overlay__secondary,
  .ns-content-menu-overlay__menu {
    color: color-mix(in srgb, currentcolor 55%, transparent);
    font-size: var(--ns-type-body-size);
    line-height: var(--ns-type-body-line-height);
  }

  .ns-content-menu-overlay__menu {
    display: grid;
    gap: var(--ns-space-4);
    margin: 0;
    padding: 0;
    list-style: none;
  }

  .ns-content-menu-overlay__menu a {
    color: inherit;
    text-decoration: none;
  }

  .ns-content-menu-overlay__menu a:is(:hover, :focus-visible) {
    color: var(--ns-content-menu-text, var(--ns-color-text));
    text-decoration: underline;
    text-underline-offset: 0.2em;
  }

  .ns-content-menu-overlay__swap[open] > .ns-content-menu-overlay__panel--default {
    visibility: hidden;
    opacity: 0;
  }

  .ns-content-menu-overlay__swap[open] > .ns-content-menu-overlay__panel--hover {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
  }

  .ns-content-menu-overlay__swap > summary:focus-visible + .ns-content-menu-overlay__panel--hover {
    outline: 2px solid currentcolor;
    outline-offset: -0.25rem;
  }

  @media (hover: hover) and (pointer: fine) {
    .ns-content-menu-overlay--interactive:hover
      .ns-content-menu-overlay__swap:not([open])
      > .ns-content-menu-overlay__panel--default {
      visibility: hidden;
      opacity: 0;
    }

    .ns-content-menu-overlay__panel--desktop-hover {
      display: flex;
    }

    .ns-content-menu-overlay--interactive:hover > .ns-content-menu-overlay__panel--desktop-hover {
      visibility: visible;
      opacity: 1;
      pointer-events: auto;
    }
  }

  @media (prefers-reduced-motion: reduce) {
    .ns-content-menu-overlay__panel {
      transition: none;
    }
  }
}
/* END_SNIPPET:_styles-content-menu-overlay-styles */

/* START_SNIPPET:_styles-expanding-cards-styles (INDEX:236) */
@layer components {
  .ns-expanding-cards {
    --ns-expanding-columns: var(--ns-expanding-columns-mobile, 1);
    --ns-radius-density-active: var(--ns-radius-density-mobile, var(--ns-radius-4xl));
    --ns-expanding-column-gap: var(--ns-layout-primary-grid-column-gap-mobile);
    --ns-expanding-row-gap: var(--ns-layout-primary-grid-row-gap-mobile);
    --ns-expanding-card-media-height: var(--ns-expanding-card-media-height-mobile);
    --ns-expanding-card-basis: calc(
      (100% - (var(--ns-expanding-columns) - 1) * var(--ns-expanding-column-gap)) / var(--ns-expanding-columns)
    );
  }

  .ns-expanding-cards__inner {
    width: var(--ns-content-width);
    min-inline-size: 0;
    margin-inline: auto;
  }

  .ns-expanding-cards__viewport {
    position: relative;
    min-inline-size: 0;
  }

  .ns-expanding-cards__track {
    display: flex;
    flex-wrap: wrap;
    gap: var(--ns-expanding-row-gap) var(--ns-expanding-column-gap);
    min-inline-size: 0;
    contain: layout style paint;
  }

  .ns-expanding-cards .ns-expanding-card {
    --ns-expanding-card-size: var(--ns-expanding-card-basis);
    --ns-expanding-card-growth: min(var(--ns-expanding-active-growth, 5%), calc(var(--ns-expanding-card-basis) * 0.35));

    position: relative;
    box-sizing: border-box;
    flex: 0 0 auto;
    width: var(--ns-expanding-card-size);
    min-width: 0;
    transition: width 600ms cubic-bezier(0, 0, 0.2, 1);
  }

  .ns-expanding-cards .ns-expanding-card__surface {
    --ns-expanding-card-media-frame-background: transparent;

    width: 100%;
    min-width: 0;
    overflow: clip;
  }

  .ns-expanding-cards .ns-expanding-card__surface > .ns-visual-media > .ns-visual-media__frame {
    background: var(--ns-expanding-card-media-frame-background, transparent);
  }

  .ns-expanding-cards .ns-expanding-card__surface.ns-visual-stage--desktop-overlay {
    --ns-expanding-card-media-frame-background: var(--ns-visual-stage-background, transparent);

    height: var(--ns-expanding-card-media-height);
    min-height: 0;
    background: transparent;
  }

  .ns-expanding-cards .ns-expanding-card__surface > .ns-visual-media {
    height: var(--ns-expanding-card-media-height);
    min-height: 0;
  }

  .ns-expanding-cards .ns-expanding-card[data-ns-expanding-state='active'] {
    --ns-expanding-card-size: calc(var(--ns-expanding-card-basis) + var(--ns-expanding-card-growth));

    z-index: 2;
  }

  .ns-expanding-cards .ns-expanding-card[data-ns-expanding-state='peer'] {
    z-index: 1;
  }

  .ns-expanding-cards .ns-expanding-card[data-ns-expanding-state='peer'][data-ns-expanding-peer-count='1'] {
    --ns-expanding-card-size: calc(var(--ns-expanding-card-basis) - var(--ns-expanding-card-growth));
  }

  .ns-expanding-cards .ns-expanding-card[data-ns-expanding-state='peer'][data-ns-expanding-peer-count='2'] {
    --ns-expanding-card-size: calc(var(--ns-expanding-card-basis) - var(--ns-expanding-card-growth) / 2);
  }

  .ns-expanding-cards .ns-expanding-card[data-ns-expanding-state='peer'][data-ns-expanding-peer-count='3'] {
    --ns-expanding-card-size: calc(var(--ns-expanding-card-basis) - var(--ns-expanding-card-growth) / 3);
  }

  .ns-expanding-card__surface > .ns-visual-media,
  .ns-expanding-card__surface > .ns-visual-stage__content {
    min-inline-size: 0;
  }

  .ns-expanding-cards[data-ns-mobile-layout='slider'] .ns-slider-navigation {
    display: none;
  }

  @media (min-width: 768px) {
    .ns-expanding-cards {
      --ns-expanding-columns: var(--ns-expanding-columns-tablet, 2);
      --ns-radius-density-active: var(--ns-radius-density-tablet, var(--ns-radius-4xl));
      --ns-expanding-column-gap: var(--ns-layout-primary-grid-column-gap-tablet);
      --ns-expanding-row-gap: var(--ns-layout-primary-grid-row-gap-tablet);
      --ns-expanding-card-media-height: var(--ns-expanding-card-media-height-tablet);
    }
  }

  @media (min-width: 768px) and (max-width: 1024px) {
    .ns-expanding-cards .ns-expanding-card__surface.ns-visual-stage--tablet-overlay {
      --ns-expanding-card-media-frame-background: var(--ns-visual-stage-background, transparent);

      background: transparent;
    }

    .ns-expanding-cards
      .ns-expanding-card__surface:is(.ns-visual-stage--tablet-media_first, .ns-visual-stage--tablet-content_first) {
      --ns-expanding-card-media-frame-background: transparent;

      background: var(--ns-visual-stage-background, transparent);
    }
  }

  @media (min-width: 1025px) {
    .ns-expanding-cards {
      --ns-expanding-columns: var(--ns-expanding-columns-desktop, 2);
      --ns-radius-density-active: var(--ns-radius-density-desktop, var(--ns-radius-4xl));
      --ns-expanding-column-gap: var(--ns-layout-primary-grid-column-gap-desktop);
      --ns-expanding-row-gap: var(--ns-layout-primary-grid-row-gap-desktop);
      --ns-expanding-card-media-height: var(--ns-expanding-card-media-height-desktop);
    }
  }

  @media (max-width: 767px) {
    .ns-expanding-cards .ns-expanding-card__surface.ns-visual-stage--mobile-overlay {
      --ns-expanding-card-media-frame-background: var(--ns-visual-stage-background, transparent);

      background: transparent;
    }

    .ns-expanding-cards
      .ns-expanding-card__surface:is(.ns-visual-stage--mobile-media_first, .ns-visual-stage--mobile-content_first) {
      --ns-expanding-card-media-frame-background: transparent;

      background: var(--ns-visual-stage-background, transparent);
    }

    .ns-expanding-cards[data-ns-mobile-layout='grid'] .ns-expanding-cards__track {
      display: grid;
      grid-template-columns: repeat(var(--ns-expanding-columns), minmax(0, 1fr));
    }

    .ns-expanding-cards[data-ns-mobile-layout='grid'] .ns-expanding-card {
      width: auto;
    }

    .ns-expanding-cards[data-ns-mobile-layout='slider'] .ns-expanding-cards__track {
      flex-wrap: nowrap;
      overflow-x: auto;
      overscroll-behavior-inline: contain;
      scroll-behavior: smooth;
      scroll-snap-type: inline mandatory;
      touch-action: pan-x pan-y;
      scrollbar-width: none;
    }

    .ns-expanding-cards[data-ns-mobile-layout='slider'] .ns-expanding-cards__track::-webkit-scrollbar {
      display: none;
    }

    .ns-expanding-cards[data-ns-mobile-layout='slider'] .ns-expanding-card {
      flex-basis: min(var(--ns-expanding-mobile-card-width, 85vw), 100%);
      width: min(var(--ns-expanding-mobile-card-width, 85vw), 100%);
      scroll-snap-align: start;
      scroll-snap-stop: always;
    }

    .ns-expanding-cards .ns-expanding-card__surface {
      width: 100%;
    }

    .ns-expanding-cards[data-ns-mobile-layout='slider'] .ns-slider-navigation {
      display: contents;
    }
  }

  @media (prefers-reduced-motion: reduce) {
    .ns-expanding-cards .ns-expanding-card {
      transition-duration: 0.01ms;
    }

    .ns-expanding-cards__track {
      scroll-behavior: auto;
    }
  }
}
/* END_SNIPPET:_styles-expanding-cards-styles */

/* START_SNIPPET:_styles-full-width-slider-styles (INDEX:237) */
@layer components {
  .ns-full-width-slider {
    --ns-full-width-slider-height: var(--ns-full-width-slider-height-desktop, 34.375rem);
    --ns-visual-slider-height: var(--ns-full-width-slider-height);

    width: 100%;
  }

  .ns-full-width-slider__inner {
    width: var(--ns-content-width);
    margin-inline: auto;
  }

  .ns-full-width-slider__viewport {
    position: relative;
    min-width: 0;
  }

  .ns-full-width-slider__track {
    counter-reset: ns-full-width-slide;
  }

  .ns-full-width-slider__slide {
    counter-increment: ns-full-width-slide;
    display: block;
    flex: 0 0 100%;
    width: 100%;
  }

  .ns-full-width-slider__stage-frame,
  .ns-full-width-slider__stage-frame > .ns-visual-slider__stage {
    width: 100%;
    height: var(--ns-full-width-slider-height);
    min-height: 0;
  }

  .ns-full-width-slider__information-frame {
    min-width: 0;
  }

  .ns-full-width-slider:not(.ns-full-width-slider--details) .ns-full-width-slider__information-frame {
    display: none;
  }

  .ns-full-width-slide-information__selector {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    width: 100%;
    min-height: 2.75rem;
    padding: 0;
    border: 0;
    color: var(--ns-color-muted);
    text-align: start;
    background: transparent;
    cursor: pointer;
  }

  .ns-full-width-slide-information__selector[aria-current='true'] {
    color: var(--ns-color-heading);
  }

  .ns-full-width-slide-information__index {
    min-width: 2.5ch;
    font-family: var(--ns-font-heading-family);
    font-weight: var(--ns-font-heading-weight);
    font-variant-numeric: tabular-nums;
    line-height: 1;
  }

  .ns-full-width-slide-information__index:empty::before {
    content: counter(ns-full-width-slide, decimal-leading-zero);
  }

  .ns-full-width-slide-information__timeline {
    position: relative;
    display: block;
    height: 3px;
    margin-inline-start: var(--ns-space-14);
    overflow: hidden;
    background: color-mix(in srgb, currentcolor 45%, transparent);
  }

  .ns-full-width-slide-information__progress {
    position: absolute;
    inset: 0;
    background: var(--ns-color-primary);
    transform: scaleX(0);
    transform-origin: inline-start center;
  }

  .ns-full-width-slide-information__selector[aria-current='true'] .ns-full-width-slide-information__progress {
    transform: scaleX(1);
  }

  .ns-full-width-slider[data-ns-slider-autoplay-enabled]
    .ns-full-width-slide-information__selector[aria-current='true']
    .ns-full-width-slide-information__progress {
    animation: ns-full-width-slider-progress var(--ns-slider-autoplay-duration, 6s) linear both;
  }

  .ns-full-width-slider[data-ns-slider-autoplay-enabled][data-ns-slider-autoplay-suspended]
    .ns-full-width-slide-information__selector[aria-current='true']
    .ns-full-width-slide-information__progress {
    animation-play-state: paused;
  }

  .ns-full-width-slider .ns-full-width-slide-information > .ns-visual-content {
    position: relative;
    inset: auto;
    width: 100%;
    min-height: 0;
  }

  .ns-full-width-slider--details .ns-full-width-slide-information > .ns-visual-content {
    opacity: 0.55;
    transition: opacity var(--ns-duration-standard) var(--ns-ease-standard);
  }

  .ns-full-width-slider--details
    .ns-full-width-slider__slide[data-ns-slider-active]
    .ns-full-width-slide-information
    > .ns-visual-content {
    opacity: 1;
  }

  .ns-full-width-slider--details.ns-full-width-slider--dots .ns-slider-navigation__dots {
    inset-block-start: calc(
      var(--ns-full-width-slider-height) - var(--ns-slider-navigation-block-offset-desktop, var(--ns-space-20)) -
        var(--ns-slider-navigation-dot-hit-area, 1.5rem)
    );
    inset-block-end: auto;
  }

  .ns-full-width-slider--details.ns-full-width-slider--dots .ns-slider-navigation__control {
    inset-block-start: calc(var(--ns-full-width-slider-height) / 2);
  }

  @keyframes ns-full-width-slider-progress {
    from {
      transform: scaleX(0);
    }

    to {
      transform: scaleX(1);
    }
  }

  @media (min-width: 768px) {
    .ns-full-width-slider--details .ns-full-width-slider__track {
      position: relative;
      display: grid;
      padding-block-start: calc(
        var(--ns-full-width-slider-height) + var(--ns-full-width-slider-details-offset, var(--ns-space-32))
      );
      overflow: visible;
      scroll-snap-type: none;
      touch-action: auto;
    }

    .ns-full-width-slider--details .ns-full-width-slider__slide {
      width: auto;
    }

    .ns-full-width-slider--details .ns-full-width-slider__stage-frame {
      position: absolute;
      z-index: 1;
      inset-block-start: 0;
      inset-inline: 0;
      visibility: hidden;
      opacity: 0;
      pointer-events: none;
    }

    .ns-full-width-slider--details
      :is(
        .ns-full-width-slider__slide:first-child .ns-full-width-slider__stage-frame,
        .ns-full-width-slider__stage-frame[aria-hidden='false']
      ) {
      z-index: 2;
      visibility: visible;
      opacity: 1;
      pointer-events: auto;
    }

    .ns-full-width-slider--details .ns-full-width-slider__stage-frame[aria-hidden='true'] {
      z-index: 1;
      visibility: hidden;
      opacity: 0;
      pointer-events: none;
    }

    .ns-full-width-slider--details:not(.ns-full-width-slider--dots) .ns-slider-navigation {
      display: none;
    }
  }

  @media (min-width: 1025px) {
    .ns-full-width-slider--details .ns-full-width-slider__track {
      grid-template-columns: repeat(var(--ns-full-width-slider-details-columns-desktop, 3), minmax(0, 1fr));
      gap: var(--ns-full-width-slider-details-row-gap-desktop, var(--ns-primary-grid-row-gap))
        var(--ns-full-width-slider-details-column-gap-desktop, var(--ns-primary-grid-column-gap));
    }
  }

  @media (min-width: 768px) and (max-width: 1024px) {
    .ns-full-width-slider {
      --ns-full-width-slider-height: var(
        --ns-full-width-slider-height-tablet,
        var(--ns-full-width-slider-height-desktop, 28.75rem)
      );
    }

    .ns-full-width-slider--details .ns-full-width-slider__track {
      grid-template-columns: repeat(var(--ns-full-width-slider-details-columns-tablet, 3), minmax(0, 1fr));
      gap: var(--ns-full-width-slider-details-row-gap-tablet, var(--ns-primary-grid-row-gap))
        var(--ns-full-width-slider-details-column-gap-tablet, var(--ns-primary-grid-column-gap));
    }
  }

  @media (max-width: 767px) {
    .ns-full-width-slider {
      --ns-full-width-slider-height: var(
        --ns-full-width-slider-height-mobile,
        var(--ns-full-width-slider-height-desktop, 20rem)
      );
    }

    .ns-full-width-slider__track {
      gap: var(--ns-space-16);
    }

    .ns-full-width-slider--details .ns-full-width-slider__information-frame {
      padding-block-start: var(--ns-space-18);
    }

    .ns-full-width-slider--details:not(.ns-full-width-slider--dots) .ns-slider-navigation {
      display: none;
    }

    .ns-full-width-slider--details .ns-full-width-slide-information > .ns-visual-content {
      opacity: 1;
    }

    .ns-full-width-slider--details.ns-full-width-slider--dots .ns-slider-navigation__dots {
      inset-block-start: calc(
        var(--ns-full-width-slider-height) -
          var(
            --ns-slider-navigation-block-offset-mobile,
            var(--ns-slider-navigation-block-offset-desktop, var(--ns-space-20))
          ) -
          var(--ns-slider-navigation-dot-hit-area, 1.5rem)
      );
    }
  }

  @media (prefers-reduced-motion: reduce) {
    .ns-full-width-slide-information__selector[aria-current='true'] .ns-full-width-slide-information__progress {
      animation: none;
      transform: scaleX(1);
    }
  }
}
/* END_SNIPPET:_styles-full-width-slider-styles */

/* START_SNIPPET:_styles-gift-card-styles (INDEX:238) */
@layer components {
  .ns-gift-card {
    display: block;
  }

  .ns-gift-card__main {
    --ns-gift-card-padding-block-start-max: 6.25rem;
    --ns-gift-card-padding-block-end-max: 7.5rem;

    display: flex;
    align-items: center;
    flex-direction: column;
    width: min(100%, 37.5rem);
    margin-inline: auto;
    padding: clamp(var(--ns-space-48), 8vw, var(--ns-gift-card-padding-block-start-max)) var(--ns-space-16)
      clamp(var(--ns-space-64), 8vw, var(--ns-gift-card-padding-block-end-max));
    text-align: center;
  }

  .ns-gift-card__brand {
    display: flex;
    justify-content: center;
    min-block-size: 2rem;
    margin-block-end: var(--ns-space-32);
  }

  .ns-gift-card__logo {
    width: auto;
    max-width: 11.25rem;
    max-height: 3.75rem;
    object-fit: contain;
  }

  .ns-gift-card__shop-name {
    max-width: 22rem;
    color: currentcolor;
    font-size: var(--ns-type-large-size);
    line-height: var(--ns-type-large-line-height);
    overflow-wrap: anywhere;
  }

  .ns-gift-card__title {
    margin: 0;
    font-size: var(--ns-type-large-size);
    font-weight: var(--ns-type-weight-heading);
    line-height: var(--ns-type-large-line-height);
    letter-spacing: 0;
  }

  .ns-gift-card__balance {
    margin-block-start: var(--ns-space-8);
    color: var(--ns-color-muted);
    font-size: var(--ns-type-balance-size, var(--ns-type-large-size));
    line-height: var(--ns-type-large-line-height);
  }

  .ns-gift-card__balance strong {
    color: inherit;
    font-weight: inherit;
  }

  .ns-gift-card__status,
  .ns-gift-card__expiry {
    margin-block-start: var(--ns-space-12);
  }

  .ns-gift-card__status {
    color: var(--ns-color-critical);
  }

  .ns-gift-card__expiry,
  .ns-gift-card__instructions {
    color: var(--ns-color-muted);
  }

  .ns-gift-card__message {
    max-width: 30rem;
    margin-block: var(--ns-space-24) 0;
    padding-inline-start: var(--ns-space-16);
    color: var(--ns-color-muted);
    border-inline-start: 2px solid var(--ns-color-border);
    text-align: start;
  }

  .ns-gift-card__card {
    position: relative;
    display: grid;
    place-items: end center;
    width: min(100%, 23.125rem);
    aspect-ratio: 37 / 22;
    margin-block-start: var(--ns-space-30);
    padding: var(--ns-space-20);
    overflow: hidden;
    background: var(--ns-color-primary);
    border-radius: var(--ns-radius-sm);
  }

  .ns-gift-card__ribbon {
    position: absolute;
    z-index: 0;
    display: block;
    background: var(--ns-color-on-primary);
  }

  .ns-gift-card__ribbon--horizontal {
    top: 25%;
    right: 0;
    left: 0;
    height: 0.5rem;
  }

  .ns-gift-card__ribbon--vertical {
    top: 0;
    right: 19%;
    width: 0.5rem;
    height: 52%;
  }

  .ns-gift-card__bow {
    position: absolute;
    z-index: 1;
    top: 14%;
    right: 9%;
    width: 4.5rem;
    height: 3rem;
  }

  .ns-gift-card__bow::before,
  .ns-gift-card__bow::after {
    position: absolute;
    top: 0.25rem;
    width: 2.5rem;
    height: 1.75rem;
    border: 0.4rem solid var(--ns-color-on-primary);
    border-radius: 100% 10% 100% 10%;
    content: '';
  }

  .ns-gift-card__bow::before {
    left: 0;
    transform: rotate(35deg);
  }

  .ns-gift-card__bow::after {
    right: 0;
    transform: scaleX(-1) rotate(35deg);
  }

  .ns-gift-card__code {
    --ns-radius-icon-button: var(--ns-radius-button, 0px);

    position: relative;
    z-index: 2;
    width: min(100%, 18rem);
    min-height: 2.5rem;
    padding: var(--ns-space-8) var(--ns-space-12);
    color: var(--ns-color-muted);
    font-size: var(--ns-type-lead-size);
    font-weight: var(--ns-type-weight-emphasis);
    line-height: 1;
    letter-spacing: 0.03em;
    overflow-wrap: anywhere;
    background: var(--ns-color-background);
    border: 0;
    cursor: copy;
  }

  .ns-gift-card__code:focus-visible {
    outline: 2px solid var(--ns-color-accent);
    outline-offset: 3px;
  }

  .ns-gift-card__instructions {
    margin-block-start: var(--ns-space-16);
  }

  .ns-gift-card__qr {
    display: grid;
    place-items: center;
    width: 8rem;
    min-height: 8rem;
    margin-block-start: var(--ns-space-24);
  }

  .ns-gift-card__qr img,
  .ns-gift-card__qr canvas {
    width: 7.5rem;
    height: 7.5rem;
  }

  .ns-gift-card__actions {
    display: flex;
    align-items: center;
    flex-direction: column;
    gap: var(--ns-space-20);
    margin-block-start: var(--ns-space-24);
  }

  .ns-gift-card__print {
    display: inline-flex;
    align-items: center;
    gap: var(--ns-space-8);
    padding: 0;
    color: var(--ns-color-foreground);
    font: inherit;
    text-transform: uppercase;
    background: transparent;
    border: 0;
    cursor: pointer;
  }

  .ns-gift-card__wallet img {
    display: block;
    width: 7.5rem;
    height: 2.5rem;
  }

  @media (max-width: 540px) {
    .ns-gift-card__main {
      padding-block-start: var(--ns-space-48);
    }

    .ns-gift-card__card {
      padding: var(--ns-space-16);
    }

    .ns-gift-card__code {
      font-size: var(--ns-type-body-size);
    }
  }

  @media print {
    body > :not(.ns-gift-card-section) {
      display: none;
    }

    body > .ns-gift-card-section {
      display: block;
    }

    .ns-gift-card__actions {
      display: none;
    }

    .ns-gift-card__main {
      padding: var(--ns-space-16);
    }

    .ns-gift-card__card {
      print-color-adjust: exact;
    }
  }
}
/* END_SNIPPET:_styles-gift-card-styles */

/* START_SNIPPET:_styles-google-map-styles (INDEX:239) */
@layer components {
  .ns-google-map,
  .ns-google-map__canvas,
  .ns-google-map__fallback {
    display: block;
    width: 100%;
    height: 100%;
    min-height: inherit;
  }

  .ns-google-map__fallback {
    display: grid;
    place-items: center;
    padding: var(--ns-space-24);
    color: var(--ns-color-link);
    text-align: center;
    background: var(--ns-visual-media-background, var(--ns-color-surface));
  }

  .ns-google-map__canvas[hidden],
  .ns-google-map__fallback[hidden] {
    display: none;
  }
}
/* END_SNIPPET:_styles-google-map-styles */

/* START_SNIPPET:_styles-hotspot-showcase-styles (INDEX:240) */
@layer components {
  .ns-product-hotspot {
    transition: opacity 260ms ease;
  }

  .ns-product-hotspot__marker > span svg {
    display: none;
    width: 40%;
    height: 40%;
    color: var(--ns-color-foreground);
  }

  .ns-product-hotspot:is([data-ns-hotspot-focused='true'], [data-ns-hotspot-popup-open='true'])
    .ns-product-hotspot__marker
    > span {
    width: calc(var(--ns-product-hotspot-marker-size, 20px) * 2);
    height: calc(var(--ns-product-hotspot-marker-size, 20px) * 2);
    box-shadow: 0 3px 18px color-mix(in srgb, var(--ns-color-foreground) 20%, transparent);
  }

  .ns-product-hotspot:is([data-ns-hotspot-focused='true'], [data-ns-hotspot-popup-open='true'])
    .ns-product-hotspot__marker
    > span::before {
    display: none;
  }

  .ns-product-hotspot:is([data-ns-hotspot-focused='true'], [data-ns-hotspot-popup-open='true'])
    .ns-product-hotspot__marker
    > span
    svg {
    display: block;
  }

  .ns-product-hotspot__details--text h3,
  .ns-product-hotspot__flow h3 {
    margin: 0;
    font: 600 1rem/1.25 var(--ns-font-heading-family);
  }

  .ns-product-hotspot__details--text .ns-rte,
  .ns-product-hotspot__flow .ns-rte {
    font-size: var(--ns-type-body-small-size);
    line-height: 1.45;
  }

  .ns-visual-media__hotspot-camera {
    position: relative;
    width: 100%;
    height: 100%;
  }

  .ns-visual-media__hotspot-camera,
  [data-ns-visual-stage] .ns-product-hotspot__disclosure {
    transform: perspective(1200px) translate3d(0, 0, 0) scale(1) rotateX(0) rotateY(0);
    transform-style: preserve-3d;
    transition: transform 760ms cubic-bezier(0.22, 1, 0.36, 1);
  }

  .ns-visual-media__hotspot-camera {
    transform-origin: 50% 50%;
  }

  [data-ns-visual-stage] .ns-product-hotspot__disclosure {
    transform-origin: var(--ns-hotspot-camera-origin-x, 50%) var(--ns-hotspot-camera-origin-y, 50%);
  }

  [data-ns-visual-stage][data-ns-hotspot-focused='true']
    :is(.ns-visual-media__hotspot-camera, .ns-product-hotspot__disclosure) {
    transform: perspective(1200px) translate3d(var(--ns-hotspot-camera-x, 0), var(--ns-hotspot-camera-y, 0), 0)
      scale(var(--ns-hotspot-camera-scale, 1)) rotateX(var(--ns-hotspot-camera-tilt-x, 0deg))
      rotateY(var(--ns-hotspot-camera-tilt-y, 0deg));
    will-change: transform;
  }

  .ns-visual-media__hotspot-replacement {
    position: absolute;
    z-index: 0;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    pointer-events: none;
    opacity: 0;
    transition: opacity 420ms cubic-bezier(0.22, 1, 0.36, 1);
  }

  .ns-visual-media__hotspot-replacement[data-ns-hotspot-replacement-ready='true'] {
    opacity: 1;
  }

  [data-ns-visual-stage][data-ns-hotspot-focused='true'] ns-product-hotspot:not([data-ns-hotspot-focused='true']) {
    pointer-events: none;
    opacity: 0;
  }

  .ns-add-all-products {
    display: grid;
    justify-items: start;
    gap: var(--ns-space-8);
    width: 100%;
  }

  .ns-add-all-products[hidden] {
    display: none;
  }

  .ns-add-all-products__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: var(--ns-space-10);
    min-height: 48px;
    padding: var(--ns-space-12) var(--ns-space-20);
    color: var(--ns-color-button-text, var(--ns-color-background));
    font: inherit;
    cursor: pointer;
    background: var(--ns-color-button, var(--ns-color-foreground));
    border: 1px solid currentcolor;
  }

  .ns-add-all-products__button:disabled {
    cursor: progress;
    opacity: 0.65;
  }

  .ns-add-all-products__icon,
  .ns-add-all-products__icon svg {
    display: block;
    width: 1.1rem;
    height: 1.1rem;
  }

  .ns-add-all-products__status,
  .ns-add-all-products__warnings {
    margin: 0;
    font-size: var(--ns-type-body-small-size);
    line-height: 1.4;
  }

  .ns-add-all-products__warnings {
    padding-inline-start: var(--ns-space-20);
  }

  @media (prefers-reduced-motion: reduce) {
    .ns-visual-media__hotspot-camera,
    [data-ns-visual-stage] .ns-product-hotspot__disclosure,
    .ns-visual-media__hotspot-replacement {
      transition: none;
    }
  }
}
/* END_SNIPPET:_styles-hotspot-showcase-styles */

/* START_SNIPPET:_styles-icons-catalog-styles (INDEX:241) */
@layer components {
  .ns-icons-catalog {
    width: 100%;
    margin-inline: auto;
    padding-block: var(--ns-icons-catalog-padding-top) var(--ns-icons-catalog-padding-bottom);
  }

  .ns-icons-catalog--embedded {
    width: 100%;
    margin-inline: 0;
    padding-block: 0;
  }

  .ns-icons-catalog__grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(min(100%, var(--ns-icons-catalog-card-width)), 1fr));
    gap: var(--ns-space-12);
  }

  .ns-icons-catalog__toolbar {
    display: grid;
    gap: var(--ns-space-12);
    margin-block-end: var(--ns-space-24);
  }

  .ns-icons-catalog__search-label {
    font-size: var(--ns-type-body-small-size);
    font-weight: var(--ns-type-weight-emphasis);
  }

  .ns-icons-catalog__search {
    width: min(100%, 28rem);
    min-height: 2.75rem;
    padding-inline: var(--ns-space-12);
    border: 1px solid var(--ns-color-border);
    border-radius: var(--ns-radius-input, 0px);
    background: var(--ns-color-background);
    color: var(--ns-color-foreground);
    font: inherit;
  }

  .ns-icons-catalog__filters {
    display: flex;
    gap: var(--ns-space-8);
    overflow-x: auto;
    scrollbar-width: thin;
  }

  .ns-icons-catalog__filter {
    flex: 0 0 auto;
    min-height: 2.25rem;
    padding-inline: var(--ns-space-12);
    border: 1px solid var(--ns-color-border);
    border-radius: var(--ns-radius-compact, var(--ns-radius-lg));
    background: transparent;
    color: var(--ns-color-foreground);
    font: inherit;
    cursor: pointer;
  }

  .ns-icons-catalog__filter[aria-pressed='true'] {
    border-color: var(--ns-color-foreground);
    background: var(--ns-color-foreground);
    color: var(--ns-color-background);
  }

  .ns-icons-catalog__group + .ns-icons-catalog__group {
    margin-block-start: var(--ns-space-48);
  }

  .ns-icons-catalog__group-title {
    margin: 0 0 var(--ns-space-20);
    font-size: var(--ns-type-small-size);
    font-weight: var(--ns-font-heading-weight);
  }

  .ns-icons-catalog__card {
    display: grid;
    appearance: none;
    min-width: 0;
    padding: var(--ns-space-16);
    border: 1px solid var(--ns-color-border);
    border-radius: var(--ns-radius-content-panel, var(--ns-radius-2xl));
    background: var(--ns-color-background);
    color: var(--ns-color-foreground);
    font: inherit;
    cursor: pointer;
    transition:
      border-color 160ms ease,
      box-shadow 160ms ease,
      transform 160ms ease;
  }

  .ns-icons-catalog__card:is(:hover, :focus-visible) {
    border-color: currentColor;
    box-shadow: 0 0 0 1px currentColor;
    transform: translateY(-2px);
  }

  .ns-icons-catalog__card:focus-visible {
    outline: 2px solid currentColor;
    outline-offset: 3px;
  }

  .ns-icons-catalog__preview {
    display: grid;
    place-items: center;
    min-height: 4rem;
    color: var(--ns-color-foreground);
  }

  .ns-icons-catalog__preview svg {
    width: 2rem;
    height: 2rem;
  }

  .ns-icons-catalog__preview img {
    display: block;
    width: auto;
    max-width: min(100%, 4.5rem);
    height: 2.5rem;
    object-fit: contain;
  }

  .ns-icons-catalog__mask {
    display: block;
    width: 2rem;
    height: 2rem;
    background-color: currentColor;
    mask: var(--ns-icons-catalog-icon) center / contain no-repeat;
  }

  .ns-icons-catalog__empty {
    padding: var(--ns-space-24);
    border: 1px solid var(--ns-color-border);
    border-radius: var(--ns-radius-content-panel, var(--ns-radius-2xl));
    text-align: center;
  }

  .ns-icons-catalog__dialog-actions {
    display: flex;
    flex-wrap: wrap;
    gap: var(--ns-space-8);
  }

  .ns-icons-catalog__action {
    min-height: 2.25rem;
    padding-inline: var(--ns-space-12);
    border: 1px solid var(--ns-color-border);
    border-radius: var(--ns-radius-compact, var(--ns-radius-lg));
    color: var(--ns-color-foreground);
    background: transparent;
    font: inherit;
    font-size: var(--ns-type-body-small-size);
    cursor: pointer;
  }

  .ns-icons-catalog__action:is(:hover, :focus-visible) {
    border-color: currentColor;
  }

  .ns-icons-catalog__dialog {
    display: grid;
    gap: var(--ns-space-16);
    max-height: min(80dvh, 48rem);
    padding: var(--ns-space-48) var(--ns-space-24) var(--ns-space-24);
    overflow: auto;
    overscroll-behavior: contain;
  }

  .ns-icons-catalog .ns-overlay__panel {
    border-radius: var(--ns-radius-popup, var(--ns-radius-3xl));
  }

  .ns-icons-catalog .ns-overlay__body {
    overflow: hidden;
    border-radius: inherit;
  }

  .ns-icons-catalog .ns-overlay__close {
    border-radius: var(--ns-radius-icon-button, var(--ns-radius-pill));
  }

  .ns-icons-catalog__dialog-title {
    margin: 0;
    font-size: var(--ns-type-small-size);
  }

  .ns-icons-catalog__code {
    max-height: min(60dvh, 32rem);
    margin: 0;
    padding: var(--ns-space-16);
    overflow: auto;
    border: 1px solid var(--ns-color-border);
    border-radius: var(--ns-radius-content-panel, var(--ns-radius-2xl));
    background: color-mix(in srgb, var(--ns-color-foreground) 4%, var(--ns-color-background));
    font-size: var(--ns-type-caption-size);
    white-space: pre-wrap;
    word-break: break-word;
  }

  .ns-icons-catalog__code[hidden] {
    display: none;
  }

  @media (prefers-reduced-motion: reduce) {
    .ns-icons-catalog__card {
      transition: none;
    }
  }
}
/* END_SNIPPET:_styles-icons-catalog-styles */

/* START_SNIPPET:_styles-instagram-feed-styles (INDEX:242) */
@layer components {
  .ns-instagram-feed {
    display: block;
    width: 100%;
    min-width: 0;
    max-width: 100%;
    margin-inline: auto;
    overflow-x: clip;
    contain: inline-size;
  }

  .ns-instagram-feed__viewport {
    position: relative;
    min-width: 0;
  }

  .ns-instagram-feed__track {
    --ns-instagram-columns: var(--ns-instagram-columns-mobile);
    display: grid;
    width: 100%;
    min-width: 0;
    grid-template-columns: repeat(var(--ns-instagram-columns), minmax(0, 1fr));
  }

  .ns-instagram-feed__track > ns-section-header {
    grid-column: 1 / -1;
  }

  .ns-instagram-post {
    min-width: 0;
    background: var(--ns-color-surface-muted, var(--ns-color-background));
  }

  .ns-instagram-post__link {
    position: relative;
    display: block;
    aspect-ratio: 1;
    min-width: 0;
    overflow: hidden;
    color: var(--ns-color-contrast-light);
  }

  .ns-instagram-post__link:focus-visible {
    z-index: 2;
    outline: 2px solid var(--ns-color-accent);
    outline-offset: -2px;
  }

  .ns-instagram-post__image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .ns-instagram-post__placeholder {
    color: var(--ns-color-muted);
    background: var(--ns-color-surface-muted, var(--ns-color-background));
  }

  .ns-instagram-post__overlay {
    position: absolute;
    inset: 0;
    display: grid;
    place-items: center;
    background: color-mix(in srgb, var(--ns-color-contrast-dark) 50%, transparent);
    opacity: 0;
    transition: opacity 160ms ease;
    pointer-events: none;
  }

  .ns-instagram-post__link:focus-visible .ns-instagram-post__overlay {
    opacity: 1;
  }

  @media (hover: hover) {
    .ns-instagram-post__link:hover .ns-instagram-post__overlay {
      opacity: 1;
    }
  }

  .ns-instagram-feed[data-ns-carousel-mode='all'] .ns-instagram-feed__track {
    grid-template-columns: none;
    grid-auto-flow: column;
    grid-auto-columns: calc(100% / var(--ns-instagram-columns));
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-behavior: smooth;
    scroll-snap-type: inline mandatory;
    touch-action: pan-x pan-y;
    scrollbar-width: none;
  }

  .ns-instagram-feed[data-ns-carousel-mode='all'] .ns-instagram-feed__track::-webkit-scrollbar,
  .ns-instagram-feed[data-ns-carousel-mode='mobile'] .ns-instagram-feed__track::-webkit-scrollbar {
    display: none;
  }

  .ns-instagram-feed[data-ns-carousel-mode='all'] .ns-instagram-post,
  .ns-instagram-feed[data-ns-carousel-mode='mobile'] .ns-instagram-post {
    scroll-snap-align: start;
    scroll-snap-stop: always;
  }

  .ns-instagram-feed[data-ns-carousel-mode='mobile'] .ns-slider-navigation {
    display: none;
  }

  @media (min-width: 768px) {
    .ns-instagram-feed__track {
      --ns-instagram-columns: var(--ns-instagram-columns-tablet);
    }
  }

  @media (min-width: 1025px) {
    .ns-instagram-feed__track {
      --ns-instagram-columns: var(--ns-instagram-columns-desktop);
    }
  }

  @media (max-width: 767px) {
    .ns-instagram-feed .ns-section-header {
      margin-block-end: var(--ns-instagram-header-gap-mobile, var(--ns-space-32));
    }

    .ns-instagram-feed[data-ns-carousel-mode='mobile'] .ns-instagram-feed__track {
      grid-template-columns: none;
      grid-auto-flow: column;
      grid-auto-columns: calc(100% / var(--ns-instagram-columns));
      overflow-x: auto;
      overscroll-behavior-inline: contain;
      scroll-behavior: smooth;
      scroll-snap-type: inline mandatory;
      touch-action: pan-x pan-y;
      scrollbar-width: none;
    }

    .ns-instagram-feed[data-ns-carousel-mode='mobile'] .ns-slider-navigation {
      display: contents;
    }
  }

  @media (prefers-reduced-motion: reduce) {
    .ns-instagram-feed__track,
    .ns-instagram-post__overlay {
      scroll-behavior: auto;
      transition: none;
    }
  }
}
/* END_SNIPPET:_styles-instagram-feed-styles */

/* START_SNIPPET:_styles-logo-overlay-styles (INDEX:243) */
@layer components {
  .ns-logo-overlay {
    --ns-logo-overlay-fallback-text-scale: clamp(2rem, 11vw, 12rem);

    position: absolute;
    inset: 0 0 auto;
    display: block;
    inline-size: 100%;
    color: var(--ns-color-foreground);
    overflow: visible;
    pointer-events: none;
  }

  .ns-logo-overlay__track,
  .ns-logo-overlay__sticky,
  .ns-logo-overlay__header-follow,
  .ns-logo-overlay__canvas,
  .ns-logo-overlay__stage {
    inline-size: 100%;
  }

  .ns-logo-overlay__sticky {
    position: relative;
    margin-block-start: var(--ns-logo-overlay-anchor-gap, 0px);
  }

  .ns-logo-overlay__canvas {
    display: grid;
    grid-template-columns: var(--ns-content-grid);
  }

  .ns-logo-overlay__stage {
    position: relative;
    display: flex;
    grid-column: 2;
    min-inline-size: 0;
  }

  .ns-logo-overlay[data-ns-alignment='start'] .ns-logo-overlay__stage {
    justify-content: flex-start;
  }

  .ns-logo-overlay[data-ns-alignment='center'] .ns-logo-overlay__stage {
    justify-content: center;
  }

  .ns-logo-overlay[data-ns-alignment='end'] .ns-logo-overlay__stage {
    justify-content: flex-end;
  }

  .ns-logo-overlay__logo {
    position: relative;
    flex: 0 0 auto;
    inline-size: var(--ns-logo-overlay-width, 100%);
    max-inline-size: none;
  }

  .ns-logo-overlay__logo > :is(img, svg, .ns-logo-overlay__fallback) {
    position: relative;
    z-index: 39;
    transform: scale(var(--ns-logo-overlay-scale, 1));
    transform-origin: top center;
  }

  [data-ns-main] ~ .shopify-section [data-ns-footer-parallax] {
    z-index: 40;
  }

  .ns-logo-overlay[data-ns-alignment='start'] .ns-logo-overlay__logo > :is(img, svg, .ns-logo-overlay__fallback) {
    transform-origin: top left;
  }

  .ns-logo-overlay[data-ns-alignment='end'] .ns-logo-overlay__logo > :is(img, svg, .ns-logo-overlay__fallback) {
    transform-origin: top right;
  }

  :root[dir='rtl']
    .ns-logo-overlay[data-ns-alignment='start']
    .ns-logo-overlay__logo
    > :is(img, svg, .ns-logo-overlay__fallback) {
    transform-origin: top right;
  }

  :root[dir='rtl']
    .ns-logo-overlay[data-ns-alignment='end']
    .ns-logo-overlay__logo
    > :is(img, svg, .ns-logo-overlay__fallback) {
    transform-origin: top left;
  }

  .ns-logo-overlay__logo :is(img, svg),
  .ns-logo-overlay__fallback {
    display: block;
    inline-size: 100%;
    block-size: auto;
  }

  .ns-logo-overlay__fallback {
    color: currentcolor;
    font-size: var(--ns-logo-overlay-fallback-text-scale, var(--ns-type-display-size));
    font-weight: var(--ns-type-weight-heading);
    line-height: 0.9;
    overflow-wrap: anywhere;
    text-align: center;
  }

  .ns-logo-overlay[data-ns-contrast='difference'] .ns-logo-overlay__logo > :is(img, svg, .ns-logo-overlay__fallback) {
    color: var(--ns-color-on-primary);
  }

  .ns-logo-overlay[data-ns-active] {
    block-size: var(--ns-logo-overlay-track-height, 0px);
  }

  .ns-logo-overlay[data-ns-active] .ns-logo-overlay__track {
    block-size: 100%;
  }

  .ns-logo-overlay[data-ns-active] .ns-logo-overlay__sticky {
    position: sticky;
    inset-block-start: calc(var(--ns-logo-overlay-header-reserve, 0px) + var(--ns-logo-overlay-anchor-gap, 0px));
    block-size: var(--ns-logo-overlay-end-height, 1px);
    margin-block-start: 0;
  }

  .ns-logo-overlay[data-ns-active] .ns-logo-overlay__header-follow,
  .ns-logo-overlay[data-ns-active] .ns-logo-overlay__canvas,
  .ns-logo-overlay[data-ns-active] .ns-logo-overlay__stage {
    block-size: 100%;
  }

  .ns-logo-overlay[data-ns-active] .ns-logo-overlay__header-follow {
    transform: translate3d(0, var(--ns-logo-overlay-header-shift, 0px), 0);
    transition: var(--ns-sticky-reveal-transition, transform 180ms ease);
  }

  .ns-logo-overlay[data-ns-active][data-ns-header-mode='reveal_secondary'] .ns-logo-overlay__header-follow {
    transition: var(--ns-ocean-wave-row-transition, transform 0.75s cubic-bezier(0.8, 0, 0, 0.8));
  }

  .ns-logo-overlay[data-ns-active] .ns-logo-overlay__logo {
    position: absolute;
    inset-block-start: 0;
  }

  .ns-logo-overlay[data-ns-active][data-ns-alignment='start'] .ns-logo-overlay__logo {
    inset-inline: 0 auto;
  }

  .ns-logo-overlay[data-ns-active][data-ns-alignment='center'] .ns-logo-overlay__logo {
    inset-inline: 0;
    margin-inline: auto;
  }

  .ns-logo-overlay[data-ns-active][data-ns-alignment='end'] .ns-logo-overlay__logo {
    inset-inline: auto 0;
  }

  @media (min-width: 768px) and (max-width: 1024px) {
    .ns-logo-overlay__logo {
      inline-size: var(--ns-logo-overlay-width-tablet, var(--ns-logo-overlay-width, 100%));
    }
  }

  @media (max-width: 767px) {
    .ns-logo-overlay__logo {
      inline-size: var(--ns-logo-overlay-width-mobile, var(--ns-logo-overlay-width, 100%));
    }

    .ns-logo-overlay[data-ns-mobile-behavior='off'] {
      display: none;
    }
  }

  @media (prefers-reduced-motion: reduce) {
    .ns-logo-overlay__logo > :is(img, svg, .ns-logo-overlay__fallback) {
      transform: none;
    }

    .ns-logo-overlay__header-follow {
      transition: none;
    }
  }

  @media print {
    .ns-logo-overlay {
      display: none;
    }
  }
}
/* END_SNIPPET:_styles-logo-overlay-styles */

/* START_SNIPPET:_styles-media-comparison-styles (INDEX:244) */
@layer components {
  .ns-media-comparison {
    --ns-media-comparison-height: var(--ns-media-comparison-height-desktop, 550px);

    display: block;
    width: 100%;
    min-width: 0;
  }

  .ns-media-comparison__canvas,
  .ns-media-comparison__items {
    position: relative;
    width: 100%;
  }

  .ns-media-comparison__items {
    display: grid;
    gap: var(--ns-space-16);
  }

  .ns-media-comparison__item {
    min-width: 0;
    overflow: hidden;
  }

  .ns-media-comparison__item-canvas {
    display: grid;
    height: var(--ns-media-comparison-height);
    min-height: 0;
  }

  .ns-media-comparison__item-canvas > :is(.ns-visual-media, .ns-visual-stage__content) {
    grid-area: 1 / 1;
    min-height: 0;
  }

  .ns-media-comparison__item-canvas > .ns-visual-media,
  .ns-media-comparison__item-canvas .ns-visual-media__frame,
  .ns-media-comparison__item-canvas :is(.ns-visual-media__picture, .ns-visual-media__picture img),
  .ns-media-comparison__item-canvas
    :is(.ns-visual-media__video, .ns-visual-media__external, .ns-visual-media__placeholder) {
    width: 100%;
    height: 100%;
  }

  .ns-media-comparison__item-canvas > .ns-visual-stage__content {
    z-index: 2;
    pointer-events: none;
  }

  .ns-media-comparison__controls {
    display: none;
  }

  .ns-media-comparison[data-ns-runtime-ready]:not([data-ns-stacked]) .ns-media-comparison__canvas,
  .ns-media-comparison[data-ns-runtime-ready]:not([data-ns-stacked]) .ns-media-comparison__items {
    height: var(--ns-media-comparison-height);
  }

  .ns-media-comparison[data-ns-runtime-ready]:not([data-ns-stacked]) .ns-media-comparison__items {
    display: block;
  }

  .ns-media-comparison[data-ns-runtime-ready]:not([data-ns-stacked]) .ns-media-comparison__item {
    position: absolute;
    inset: 0;
  }

  .ns-media-comparison[data-ns-runtime-ready][data-ns-comparison-axis='horizontal']:not([data-ns-stacked])
    .ns-media-comparison__item {
    --ns-media-comparison-rest-clip: inset(
      0 calc(100% - var(--ns-media-comparison-end, 100%)) 0 var(--ns-media-comparison-start, 0%)
    );

    clip-path: var(--ns-media-comparison-rest-clip);
  }

  .ns-media-comparison[data-ns-runtime-ready][data-ns-comparison-axis='vertical']:not([data-ns-stacked])
    .ns-media-comparison__item {
    --ns-media-comparison-rest-clip: inset(
      var(--ns-media-comparison-start, 0%) 0 calc(100% - var(--ns-media-comparison-end, 100%)) 0
    );

    clip-path: var(--ns-media-comparison-rest-clip);
  }

  .ns-media-comparison[data-ns-pointer-active]:not([data-ns-stacked]) .ns-media-comparison__canvas {
    cursor: ew-resize;
  }

  .ns-media-comparison[data-ns-pointer-active][data-ns-comparison-axis='vertical']:not([data-ns-stacked])
    .ns-media-comparison__canvas {
    cursor: ns-resize;
  }

  .ns-media-comparison[data-ns-pointer-active]:not([data-ns-stacked]) .ns-media-comparison__item:nth-child(2) {
    transition: clip-path 140ms linear;
  }

  .ns-media-comparison[data-ns-glitch-active]:not([data-ns-stacked]) .ns-media-comparison__item:nth-child(2) {
    animation: ns-media-comparison-glitch-reveal 980ms steps(1, end);
  }

  .ns-media-comparison[data-ns-glitch-active]:not([data-ns-stacked]) .ns-media-comparison__item:nth-child(2)::after {
    position: absolute;
    z-index: 3;
    inset: 0;
    content: '';
    opacity: 0;
    pointer-events: none;
    background: var(--ns-media-comparison-divider-color, var(--ns-color-background));
    animation: ns-media-comparison-glitch-flash 980ms steps(1, end);
  }

  .ns-media-comparison[data-ns-runtime-ready]:not([data-ns-stacked]) .ns-media-comparison__controls {
    position: absolute;
    z-index: 8;
    inset: 0;
    display: block;
    pointer-events: none;
  }

  .ns-media-comparison__divider {
    position: absolute;
    pointer-events: none;
  }

  [data-ns-comparison-axis='horizontal'] .ns-media-comparison__divider {
    inset: 0 auto 0 var(--ns-media-comparison-position, 50%);
    width: var(--ns-media-comparison-handle-size, 44px);
    transform: translateX(-50%);
  }

  [data-ns-comparison-axis='vertical'] .ns-media-comparison__divider {
    inset: var(--ns-media-comparison-position, 50%) 0 auto;
    height: var(--ns-media-comparison-handle-size, 44px);
    transform: translateY(-50%);
  }

  [data-ns-comparison-axis='vertical'] {
    --ns-mc-g: '\2195';
  }

  [data-ns-handle-style='classic'] {
    --ns-mc-s: 0 2px 14px color-mix(in srgb, var(--ns-color-foreground) 20%, transparent);
  }

  [data-ns-handle-style='pill'] {
    --ns-mc-w: 26px;
    --ns-mc-h: 80px;
    --ns-mc-aw: 30px;
    --ns-mc-ah: 180px;
    --ns-mc-g: '';
    --ns-mc-r: 15px;
    --ns-mc-s: none;
    --ns-mc-l: none;
  }

  [data-ns-handle-style='pill'][data-ns-comparison-axis='vertical'] {
    --ns-mc-w: 80px;
    --ns-mc-h: 26px;
    --ns-mc-aw: 180px;
    --ns-mc-ah: 30px;
  }

  .ns-media-comparison__divider-line {
    position: absolute;
    pointer-events: none;
    background: var(--ns-media-comparison-divider-color, var(--ns-color-background));
    box-shadow: var(--ns-mc-l, 0 0 0 1px color-mix(in srgb, var(--ns-color-foreground) 10%, transparent));
  }

  [data-ns-comparison-axis='horizontal'] .ns-media-comparison__divider-line {
    top: 0;
    bottom: 0;
    left: 50%;
    width: var(--ns-media-comparison-divider-width, 2px);
    transform: translateX(-50%);
  }

  [data-ns-comparison-axis='vertical'] .ns-media-comparison__divider-line {
    right: 0;
    left: 0;
    top: 50%;
    height: var(--ns-media-comparison-divider-width, 2px);
    transform: translateY(-50%);
  }

  .ns-media-comparison__divider-line::after {
    position: absolute;
    top: 50%;
    left: 50%;
    display: grid;
    width: var(--ns-mc-w, var(--ns-media-comparison-handle-size, 44px));
    height: var(--ns-mc-h, var(--ns-media-comparison-handle-size, 44px));
    content: var(--ns-mc-g, '\2194');
    color: var(--ns-media-comparison-handle-icon-color, var(--ns-color-foreground));
    font: 500 18px/1 var(--ns-font-body-family);
    background: var(--ns-media-comparison-divider-color, var(--ns-color-background));
    border-radius: var(--ns-mc-r, 50%);
    box-shadow: var(--ns-mc-s, none);
    transform: translate(-50%, -50%);
    transition:
      width 100ms ease-in-out,
      height 100ms ease-in-out;
    place-content: center;
  }

  [data-ns-handle-style='pill'] .ns-media-comparison__range:active + .ns-media-comparison__divider-line::after {
    width: var(--ns-mc-aw);
    height: var(--ns-mc-ah);
  }

  .ns-media-comparison__range:focus-visible {
    outline: none;
  }

  .ns-media-comparison__range:focus-visible:not(:active) + .ns-media-comparison__divider-line::after {
    outline: 2px solid transparent;
    outline-offset: 3px;
    box-shadow: 0 0 0 3px var(--ns-color-foreground);
  }

  .ns-media-comparison__range {
    position: absolute;
    z-index: 2;
    top: 50%;
    left: 50%;
    width: max(var(--ns-mc-w, 0px), var(--ns-media-comparison-handle-size, 44px));
    height: max(var(--ns-mc-h, 0px), var(--ns-media-comparison-handle-size, 44px));
    margin: 0;
    cursor: ew-resize;
    pointer-events: auto;
    appearance: none;
    background: transparent;
    transform: translate(-50%, -50%);
    touch-action: pan-y;
  }

  [data-ns-comparison-axis='vertical'] .ns-media-comparison__range {
    cursor: ns-resize;
    direction: ltr;
    writing-mode: vertical-lr;
    touch-action: pan-x;
  }

  .ns-media-comparison__range::-webkit-slider-runnable-track {
    background: transparent;
    border: 0;
  }

  .ns-media-comparison__range::-webkit-slider-thumb {
    width: var(--ns-media-comparison-handle-size, 44px);
    height: var(--ns-media-comparison-handle-size, 44px);
    appearance: none;
    background: transparent;
    border: 0;
  }

  .ns-media-comparison__range::-moz-range-track {
    background: transparent;
    border: 0;
  }

  .ns-media-comparison__range::-moz-range-thumb {
    width: var(--ns-media-comparison-handle-size, 44px);
    height: var(--ns-media-comparison-handle-size, 44px);
    background: transparent;
    border: 0;
  }

  .ns-media-comparison[data-ns-runtime-ready]:not([data-ns-stacked]) .ns-media-comparison__item[data-ns-editor-reveal] {
    z-index: 20;
    clip-path: none;
  }

  .ns-media-comparison:has(.ns-media-comparison__item[data-ns-editor-reveal]) .ns-media-comparison__controls {
    visibility: hidden;
  }

  .ns-media-comparison__empty,
  .ns-media-comparison__guidance {
    color: var(--ns-color-foreground);
    background: color-mix(in srgb, currentcolor 6%, transparent);
    border: 1px dashed color-mix(in srgb, currentcolor 25%, transparent);
  }

  .ns-media-comparison__empty {
    display: grid;
    min-height: 240px;
    padding: var(--ns-space-24);
    place-items: center;
  }

  .ns-media-comparison__guidance {
    margin: 0 0 var(--ns-space-12);
    padding: var(--ns-space-10) var(--ns-space-12);
  }

  @media (any-hover: hover) and (any-pointer: fine) {
    .ns-media-comparison[data-ns-pointer-active] .ns-media-comparison__divider-line {
      opacity: 0;
    }

    .ns-media-comparison[data-ns-pointer-active]
      .ns-media-comparison__range:focus-visible
      + .ns-media-comparison__divider-line {
      opacity: 1;
    }
  }

  @media (prefers-reduced-motion: reduce) {
    .ns-media-comparison[data-ns-pointer-active] .ns-media-comparison__item:nth-child(2) {
      transition: none;
    }

    .ns-media-comparison[data-ns-glitch-active] .ns-media-comparison__item:nth-child(2),
    .ns-media-comparison[data-ns-glitch-active] .ns-media-comparison__item:nth-child(2)::after {
      animation: none;
    }

    .ns-media-comparison__divider-line::after {
      transition: none;
    }
  }

  @media (max-width: 1024px) {
    .ns-media-comparison {
      --ns-media-comparison-height: var(
        --ns-media-comparison-height-tablet,
        var(--ns-media-comparison-height-desktop, 550px)
      );
    }
  }

  @media (max-width: 767px) {
    .ns-media-comparison {
      --ns-media-comparison-height: var(
        --ns-media-comparison-height-mobile,
        var(--ns-media-comparison-height-tablet, var(--ns-media-comparison-height-desktop, 550px))
      );
    }
  }

  @keyframes ns-media-comparison-glitch-reveal {
    0% {
      opacity: 0.3;
      clip-path: inset(2% 0 94%);
      transform: translate(10px, 20px);
    }

    8% {
      opacity: 1;
      clip-path: inset(18% 0 69%);
      transform: translate(-10px, 0);
    }

    17% {
      clip-path: inset(52% 0 42%);
      transform: translate(7px, -8px);
    }

    27% {
      opacity: 0.65;
      clip-path: inset(76% 0 8%);
      transform: translate(-6px, 10px);
    }

    38% {
      opacity: 1;
      clip-path: inset(35% 0 63%);
      transform: translate(5px, 0);
    }

    50% {
      clip-path: inset(8% 0 77%);
      transform: translate(-3px, -5px);
    }

    62% {
      opacity: 0.8;
      clip-path: inset(62% 0 30%);
      transform: translate(3px, 4px);
    }

    74%,
    100% {
      opacity: 1;
      clip-path: var(--ns-media-comparison-rest-clip);
      transform: none;
    }
  }

  @keyframes ns-media-comparison-glitch-flash {
    0%,
    17% {
      opacity: 0.18;
      clip-path: inset(0);
      transform: translate(10px, 20px);
    }

    18%,
    38% {
      opacity: 0;
    }

    39%,
    48% {
      opacity: 0.12;
      clip-path: inset(42% 0 47%);
      transform: translate(-10px, 0);
    }

    49%,
    100% {
      opacity: 0;
    }
  }
}
/* END_SNIPPET:_styles-media-comparison-styles */

/* START_SNIPPET:_styles-media-composition-styles (INDEX:245) */
@layer components {
  ns-media-composition-stack {
    position: relative;
    display: block;
    min-width: 0;
  }

  .ns-media-composition--padded > ns-media-composition-stack > .ns-media-composition__inner {
    box-sizing: border-box;
    padding-inline: var(--ns-page-padding);
  }

  .ns-media-composition[data-ns-scroll-behavior='sticky_stack'] .ns-media-composition__items {
    gap: 0;
  }

  .ns-media-composition__navigation {
    position: sticky;
    z-index: 30;
    inset-block-start: 50%;
    display: block;
    width: max-content;
    height: 0;
    margin-inline: auto clamp(var(--ns-space-8), 2vw, var(--ns-space-32));
    color: var(--ns-color-foreground, currentColor);
    pointer-events: none;
  }

  .ns-media-composition__navigation[hidden] {
    display: none;
  }

  .ns-media-composition__dots {
    display: grid;
    gap: var(--ns-space-2);
    padding: 0;
    margin: 0;
    list-style: none;
    transform: translateY(-50%);
    pointer-events: auto;
  }

  .ns-media-composition__dot {
    display: grid;
    width: 2.75rem;
    height: 2.75rem;
    place-items: center;
    color: inherit;
  }

  .ns-media-composition__dot[hidden] {
    display: none;
  }

  .ns-media-composition__dot::before {
    width: 0.625rem;
    height: 0.625rem;
    border: 0.0625rem solid currentColor;
    border-radius: var(--ns-radius-slider-dot, var(--ns-radius-sm));
    background: transparent;
    box-shadow: 0 0 0 0.0625rem color-mix(in srgb, var(--ns-color-foreground) 25%, transparent);
    content: '';
  }

  .ns-media-composition__dot[aria-current='true']::before {
    background: currentColor;
    box-shadow:
      0 0 0 0.1875rem var(--ns-color-background),
      0 0 0 0.25rem currentColor;
  }

  @media (min-width: 1025px) {
    .ns-media-composition[data-ns-window-height-desktop='below'] .ns-media-composition__navigation {
      inset-block-start: calc(var(--ns-header-flow-height, 0px) + (100vh - var(--ns-header-flow-height, 0px)) / 2);
    }

    @supports (height: 100dvh) {
      .ns-media-composition[data-ns-window-height-desktop='below'] .ns-media-composition__navigation {
        inset-block-start: calc(var(--ns-header-flow-height, 0px) + (100dvh - var(--ns-header-flow-height, 0px)) / 2);
      }
    }

    .ns-media-composition[data-ns-window-height-desktop]:not([data-ns-window-height-desktop='off']) {
      --ns-media-composition-scene-height: var(--ns-media-composition-window-height-desktop);

      min-height: 0;
      padding-block: 0;
    }

    .ns-media-composition[data-ns-window-height-desktop]:not([data-ns-window-height-desktop='off'])
      .ns-media-composition-row__composition
      .ns-visual-media {
      height: var(--ns-media-composition-scene-height);
      min-height: 0;
    }

    .ns-media-composition[data-ns-window-height-desktop]:not([data-ns-window-height-desktop='off']) .ns-visual-stage {
      min-height: var(--ns-media-composition-scene-height);
    }

    .ns-media-composition[data-ns-window-height-desktop]:not([data-ns-window-height-desktop='off'])
      :is(
        .ns-visual-slider__stage,
        .ns-media-comparison__canvas,
        .ns-media-comparison__items,
        .ns-media-comparison__item-canvas
      ) {
      height: var(--ns-media-composition-scene-height);
    }

    .ns-media-composition[data-ns-scroll-behavior='sticky_stack'][data-ns-window-height-desktop='full']
      .ns-media-composition-row {
      position: sticky;
      inset-block-start: 0;
      isolation: isolate;
    }

    .ns-media-composition[data-ns-scroll-behavior='sticky_stack'][data-ns-window-height-desktop='below']
      .ns-media-composition-row {
      position: sticky;
      inset-block-start: var(--ns-header-flow-height, 0px);
      isolation: isolate;
    }
  }

  @media (min-width: 768px) and (max-width: 1024px) {
    .ns-media-composition[data-ns-window-height-tablet]:not([data-ns-window-height-tablet='off']) {
      --ns-media-composition-scene-height: var(--ns-media-composition-window-height-tablet);

      min-height: 0;
      padding-block: 0;
    }

    .ns-media-composition[data-ns-window-height-tablet]:not([data-ns-window-height-tablet='off'])
      .ns-media-composition-row__composition
      .ns-visual-media {
      height: var(--ns-media-composition-scene-height);
      min-height: 0;
    }

    .ns-media-composition[data-ns-window-height-tablet]:not([data-ns-window-height-tablet='off']) .ns-visual-stage {
      min-height: var(--ns-media-composition-scene-height);
    }

    .ns-media-composition[data-ns-window-height-tablet]:not([data-ns-window-height-tablet='off'])
      :is(
        .ns-visual-slider__stage,
        .ns-media-comparison__canvas,
        .ns-media-comparison__items,
        .ns-media-comparison__item-canvas
      ) {
      height: var(--ns-media-composition-scene-height);
    }

    .ns-media-composition[data-ns-scroll-behavior='sticky_stack'][data-ns-window-height-tablet='full']
      .ns-media-composition-row {
      position: sticky;
      inset-block-start: 0;
      isolation: isolate;
    }

    .ns-media-composition[data-ns-scroll-behavior='sticky_stack'][data-ns-window-height-tablet='below']
      .ns-media-composition-row {
      position: sticky;
      inset-block-start: var(--ns-header-flow-height, 0px);
      isolation: isolate;
    }

    .ns-media-composition[data-ns-window-height-tablet='below'] .ns-media-composition__navigation {
      inset-block-start: calc(var(--ns-header-flow-height, 0px) + (100vh - var(--ns-header-flow-height, 0px)) / 2);
    }
  }

  @media (max-width: 767px) {
    .ns-media-composition[data-ns-window-height-mobile]:not([data-ns-window-height-mobile='off']) {
      --ns-media-composition-scene-height: var(--ns-media-composition-window-height-mobile);

      min-height: 0;
      padding-block: 0;
    }

    .ns-media-composition[data-ns-window-height-mobile]:not([data-ns-window-height-mobile='off'])
      .ns-media-composition-row__composition
      .ns-visual-media {
      height: var(--ns-media-composition-scene-height);
      min-height: 0;
    }

    .ns-media-composition[data-ns-window-height-mobile]:not([data-ns-window-height-mobile='off']) .ns-visual-stage {
      min-height: var(--ns-media-composition-scene-height);
    }

    .ns-media-composition[data-ns-window-height-mobile]:not([data-ns-window-height-mobile='off'])
      :is(
        .ns-visual-slider__stage,
        .ns-media-comparison__canvas,
        .ns-media-comparison__items,
        .ns-media-comparison__item-canvas
      ) {
      height: var(--ns-media-composition-scene-height);
    }

    .ns-media-composition[data-ns-scroll-behavior='sticky_stack'][data-ns-window-height-mobile='full']
      .ns-media-composition-row {
      position: sticky;
      inset-block-start: 0;
      isolation: isolate;
    }

    .ns-media-composition[data-ns-scroll-behavior='sticky_stack'][data-ns-window-height-mobile='below']
      .ns-media-composition-row {
      position: sticky;
      inset-block-start: var(--ns-header-flow-height, 0px);
      isolation: isolate;
    }

    .ns-media-composition__navigation {
      margin-inline-end: var(--ns-space-4);
    }

    .ns-media-composition[data-ns-window-height-mobile='below'] .ns-media-composition__navigation {
      inset-block-start: calc(var(--ns-header-flow-height, 0px) + (100svh - var(--ns-header-flow-height, 0px)) / 2);
    }
  }

  @media (max-width: 1024px) and (orientation: landscape) and (max-height: 560px) {
    .ns-media-composition[data-ns-scroll-behavior='sticky_stack'][data-ns-window-height-desktop]
      .ns-media-composition-row {
      position: relative;
      inset-block-start: auto;
      isolation: auto;
    }

    .ns-media-composition__navigation {
      display: none;
    }
  }

  @media (prefers-reduced-motion: reduce) {
    .ns-media-composition {
      scroll-behavior: auto;
    }
  }
}

@layer utilities {
  .ns-media-composition-row[data-ns-editor-reveal] {
    display: block;
  }
}
/* END_SNIPPET:_styles-media-composition-styles */

/* START_SNIPPET:_styles-media-gallery-styles (INDEX:246) */
@layer components {
  .ns-media-gallery {
    display: block;
    min-width: 0;
  }

  .ns-media-gallery__grid {
    width: 100%;
  }

  .ns-media-gallery[data-ns-gallery-masonry='true'] .ns-media-gallery__grid {
    column-count: var(--ns-gallery-columns-desktop, 3);
    column-gap: var(--ns-gallery-gap, var(--ns-space-10));
  }

  .ns-media-gallery[data-ns-gallery-masonry='true'] .ns-media-gallery__noscript-grid > * {
    break-inside: avoid;
    margin-block-end: var(--ns-gallery-gap, var(--ns-space-10));
  }

  .ns-media-gallery[data-ns-gallery-masonry='false'] .ns-media-gallery__grid {
    display: grid;
    grid-template-columns: repeat(var(--ns-gallery-columns-desktop, 3), minmax(0, 1fr));
    gap: var(--ns-gallery-gap, var(--ns-space-10));
  }

  .ns-media-gallery__item {
    min-width: 0;
  }
  .ns-media-gallery__placeholder {
    aspect-ratio: var(--ns-gallery-placeholder-ratio, 1);
    background: var(--ns-color-surface-muted, var(--ns-color-background));
  }
  .ns-media-gallery__placeholder[data-ns-gallery-placeholder-desktop='fixed'] {
    height: var(--ns-gallery-placeholder-height-desktop, 34.375rem);
    aspect-ratio: auto;
  }

  .ns-media-gallery[data-ns-gallery-masonry='true'] .ns-media-gallery__item {
    break-inside: avoid;
    margin-block-end: var(--ns-gallery-gap, var(--ns-space-10));
  }

  .ns-media-gallery__item > .ns-visual-media,
  .ns-media-gallery__item .ns-visual-media__picture,
  .ns-media-gallery__item .ns-visual-media__picture img {
    display: block;
    width: 100%;
  }

  .ns-media-gallery__item .ns-visual-media__picture img {
    height: auto;
  }

  .ns-media-gallery__actions {
    display: flex;
    justify-content: center;
    margin-block-start: var(--ns-space-32);
  }

  .ns-media-gallery__load-more {
    min-width: 7.625rem;
    min-height: 2.1875rem;
    text-transform: uppercase;
  }

  .ns-media-gallery-overlay {
    --ns-color-background: var(--ns-appearance-dark-background);
    --ns-color-foreground: var(--ns-appearance-dark-foreground);
    color-scheme: dark;
  }

  .ns-media-gallery-overlay .ns-overlay__panel {
    background: var(--ns-overlay-panel-background, var(--ns-color-background));
    box-shadow: none;
  }

  .ns-media-gallery-overlay .ns-overlay__body {
    width: 100%;
    height: 100%;
    overflow: hidden;
  }

  .ns-fullscreen-gallery {
    position: relative;
    display: grid;
    grid-template-rows: minmax(4.5rem, auto) minmax(0, 1fr) 7.5rem;
    width: 100%;
    height: 100%;
    padding-block: max(var(--ns-space-20), env(safe-area-inset-top))
      max(var(--ns-space-12), env(safe-area-inset-bottom));
    padding-inline: max(var(--ns-space-20), var(--ns-safe-area-inset-inline-start))
      max(var(--ns-space-20), var(--ns-safe-area-inset-inline-end));
    color: var(--ns-color-foreground);
  }

  .ns-fullscreen-gallery__header {
    align-self: start;
    text-align: center;
  }

  .ns-fullscreen-gallery__title,
  .ns-fullscreen-gallery__description {
    margin: 0;
  }

  .ns-fullscreen-gallery__title {
    font-size: var(--ns-type-body-small-size);
    font-style: italic;
    line-height: 1.4;
    text-transform: uppercase;
  }

  .ns-fullscreen-gallery__description {
    margin-block-start: var(--ns-space-10);
    font-size: var(--ns-type-lead-size);
    line-height: 1.35;
  }

  .ns-fullscreen-gallery__viewport {
    position: relative;
    display: grid;
    min-height: 0;
    place-items: center;
    touch-action: pan-y;
  }

  .ns-fullscreen-gallery__main {
    display: grid;
    width: min(70vw, 60rem);
    height: 100%;
    overflow: hidden;
    place-items: center;
  }

  .ns-fullscreen-gallery__main picture,
  .ns-fullscreen-gallery__main img {
    display: block;
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: 100%;
    object-fit: contain;
  }

  .ns-fullscreen-gallery__arrow {
    --ns-radius-icon-button: var(--ns-slider-arrow-radius, var(--ns-radius-xl));

    position: fixed;
    z-index: 2;
    inset-block-start: 50%;
    display: grid;
    width: var(--ns-touch-target-min, 2.75rem);
    height: var(--ns-touch-target-min, 2.75rem);
    padding: var(--ns-space-12);
    place-items: center;
    transform: translateY(-50%);
    border: 0;
    background: transparent;
    color: currentColor;
    cursor: pointer;
  }

  .ns-fullscreen-gallery__arrow svg {
    width: 1.5rem;
    height: 1.5rem;
  }

  .ns-fullscreen-gallery__arrow--previous {
    inset-inline-start: max(var(--ns-space-16), var(--ns-safe-area-inset-inline-start));
  }

  .ns-fullscreen-gallery__arrow--next {
    inset-inline-end: max(var(--ns-space-16), var(--ns-safe-area-inset-inline-end));
  }

  .ns-fullscreen-gallery__arrow--next svg {
    transform: rotate(180deg);
  }

  :root[dir='rtl'] .ns-fullscreen-gallery__arrow--previous svg {
    transform: rotate(180deg);
  }

  :root[dir='rtl'] .ns-fullscreen-gallery__arrow--next svg {
    transform: none;
  }

  .ns-fullscreen-gallery__thumbnails {
    display: flex;
    min-width: 0;
    align-items: end;
    justify-content: center;
    gap: var(--ns-space-10);
    overflow-x: auto;
    scrollbar-width: none;
    scroll-snap-type: inline mandatory;
  }

  .ns-fullscreen-gallery__thumbnails::-webkit-scrollbar {
    display: none;
  }

  .ns-fullscreen-gallery__thumbnail {
    flex: 0 0 8.625rem;
    height: 6.25rem;
    padding: 0;
    overflow: hidden;
    scroll-snap-align: center;
    transform: translateY(0);
    border: 0;
    border-radius: var(--ns-radius-lg);
    background: transparent;
    cursor: pointer;
    transition: transform 160ms ease;
  }

  .ns-fullscreen-gallery__thumbnail[aria-current='true'] {
    transform: translateY(-1.25rem);
  }

  .ns-fullscreen-gallery__thumbnail img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  @media (max-width: 1024px) {
    .ns-media-gallery__placeholder[data-ns-gallery-placeholder-tablet='adapt'] {
      height: auto;
      aspect-ratio: var(--ns-gallery-placeholder-ratio, 1);
    }
    .ns-media-gallery__placeholder[data-ns-gallery-placeholder-tablet='fixed'] {
      height: var(--ns-gallery-placeholder-height-tablet, var(--ns-gallery-placeholder-height-desktop, 34.375rem));
      aspect-ratio: auto;
    }
    .ns-media-gallery[data-ns-gallery-masonry='true'] .ns-media-gallery__grid {
      column-count: var(--ns-gallery-columns-tablet, 2);
    }

    .ns-media-gallery[data-ns-gallery-masonry='false'] .ns-media-gallery__grid {
      grid-template-columns: repeat(var(--ns-gallery-columns-tablet, 2), minmax(0, 1fr));
    }

    .ns-fullscreen-gallery {
      grid-template-rows: minmax(4.5rem, auto) minmax(0, 1fr);
    }

    .ns-fullscreen-gallery__thumbnails {
      display: none;
    }

    .ns-fullscreen-gallery__main {
      width: min(88vw, 52rem);
    }
  }

  @media (max-width: 767px) {
    .ns-media-gallery__placeholder[data-ns-gallery-placeholder-mobile='adapt'] {
      height: auto;
      aspect-ratio: var(--ns-gallery-placeholder-ratio, 1);
    }
    .ns-media-gallery__placeholder[data-ns-gallery-placeholder-mobile='fixed'] {
      height: var(--ns-gallery-placeholder-height-mobile, var(--ns-gallery-placeholder-height-desktop, 34.375rem));
      aspect-ratio: auto;
    }
    .ns-media-gallery[data-ns-gallery-masonry='true'] .ns-media-gallery__grid {
      column-count: var(--ns-gallery-columns-mobile, 1);
    }

    .ns-media-gallery[data-ns-gallery-masonry='false'] .ns-media-gallery__grid {
      grid-template-columns: repeat(var(--ns-gallery-columns-mobile, 1), minmax(0, 1fr));
    }

    .ns-fullscreen-gallery {
      padding-inline: var(--ns-space-8);
    }

    .ns-fullscreen-gallery__main {
      width: 100%;
    }

    .ns-fullscreen-gallery__arrow--previous {
      inset-inline-start: 0;
    }

    .ns-fullscreen-gallery__arrow--next {
      inset-inline-end: 0;
    }
  }

  @media (prefers-reduced-motion: reduce) {
    .ns-fullscreen-gallery__thumbnail {
      transition: none;
    }
  }
}
/* END_SNIPPET:_styles-media-gallery-styles */

/* START_SNIPPET:_styles-navigation-list-styles (INDEX:247) */
@layer components {
  .ns-navigation-list {
    display: grid;
    gap: var(--ns-space-8);
    margin: 0;
    padding: 0;
    list-style: none;
  }

  .ns-navigation-list .ns-navigation-list {
    margin-block-start: var(--ns-space-8);
  }

  .ns-navigation-list__link {
    display: inline-flex;
    align-items: center;
    max-inline-size: 100%;
    min-block-size: var(--ns-touch-target-min);
    padding: var(--ns-space-4) var(--ns-space-8);
    border-radius: var(--ns-radius-compact, var(--ns-radius-lg));
    color: var(--ns-color-foreground);
    font-size: var(--ns-type-navigation-size);
    font-weight: var(--ns-type-weight-emphasis);
    line-height: var(--ns-type-body-line-height);
    text-decoration: none;
    overflow-wrap: anywhere;
    transition:
      color 160ms ease,
      background-color 160ms ease;
  }

  .ns-navigation-list__link:active,
  .ns-navigation-list__link:focus-visible {
    background: var(
      --ns-navigation-link-interaction-background,
      color-mix(in srgb, var(--ns-color-foreground) 18%, transparent)
    );
  }

  .ns-navigation-list__link:focus-visible {
    outline: 2px solid var(--ns-color-primary);
    outline-offset: 2px;
  }

  :is(.ns-navigation-badge, .ns-header-link-label) {
    display: inline-flex;
    flex: none;
    align-items: center;
    padding-inline: var(--ns-space-4);
    border-radius: var(--ns-product-badge-radius);
    font-size: var(--ns-type-caption-size);
    line-height: var(--ns-type-caption-line-height);
    text-decoration: none;
    text-transform: uppercase;
  }

  @media (hover: hover) and (pointer: fine) {
    .ns-navigation-list__link:hover {
      background: var(
        --ns-navigation-link-interaction-background,
        color-mix(in srgb, var(--ns-color-foreground) 18%, transparent)
      );
    }
  }

  @media (min-width: 1025px) {
    .ns-navigation-column {
      display: grid;
      align-content: start;
      gap: var(--ns-space-12);
    }

    .ns-navigation-column__heading {
      margin: 0;
      color: var(--ns-color-muted);
      font-size: var(--ns-type-interface-meta-size);
      font-weight: var(--ns-type-weight-body);
      line-height: var(--ns-type-body-small-line-height);
      letter-spacing: normal;
      text-align: start;
      text-transform: none;
    }

    .ns-navigation-list__link {
      min-block-size: var(--ns-control-block-size-sm);
      margin-inline-start: calc(-1 * var(--ns-space-8));
    }
  }
}
/* END_SNIPPET:_styles-navigation-list-styles */

/* START_SNIPPET:_styles-newsletter-signup-styles (INDEX:248) */
@layer components {
  .ns-newsletter-signup {
    display: grid;
    inline-size: 100%;
    min-inline-size: 0;
    gap: var(--ns-space-20);
  }

  .ns-newsletter-signup__copy {
    display: grid;
    gap: var(--ns-space-12);
  }

  .ns-newsletter-signup__heading,
  .ns-newsletter-signup__description,
  .ns-newsletter-signup__description > :first-child,
  .ns-newsletter-signup__description > :last-child {
    margin: 0;
  }

  .ns-newsletter-signup__heading {
    font-size: var(--ns-type-small-size);
    line-height: 1.3;
    letter-spacing: 0.05em;
    text-transform: uppercase;
  }

  .ns-newsletter-signup__description {
    color: var(--ns-color-muted);
    line-height: 1.4;
  }

  .ns-newsletter-signup__form {
    display: grid;
    min-inline-size: 0;
    gap: var(--ns-space-10);
    margin: 0;
  }

  .ns-newsletter-signup__input {
    inline-size: 100%;
    min-inline-size: 0;
    block-size: var(--ns-text-control-block-size);
    min-block-size: var(--ns-text-control-block-size);
    padding-inline: var(--ns-space-16);
    color: var(--ns-color-foreground);
    background: transparent;
    border: 1px solid var(--ns-color-border);
    border-radius: var(--ns-radius-input, 0px);
  }

  .ns-newsletter-signup__input::placeholder {
    color: var(--ns-color-muted);
    opacity: 1;
  }

  .ns-newsletter-signup__input:focus-visible {
    border-color: var(--ns-color-foreground);
    outline: 1px solid var(--ns-color-foreground);
    outline-offset: -1px;
  }

  .ns-newsletter-signup__submit {
    inline-size: 100%;
  }

  .ns-newsletter-signup__message {
    grid-column: 1 / -1;
    margin: 0;
    color: var(--ns-color-muted);
    font-size: var(--ns-type-body-small-size);
    line-height: 1.4;
  }

  @media (min-width: 48rem) {
    .ns-newsletter-signup--horizontal .ns-newsletter-signup__form {
      grid-template-columns: minmax(12rem, 1fr) auto;
      align-items: start;
    }

    .ns-newsletter-signup--horizontal .ns-newsletter-signup__submit {
      inline-size: auto;
    }
  }
}
/* END_SNIPPET:_styles-newsletter-signup-styles */

/* START_SNIPPET:_styles-page-atmosphere-styles (INDEX:249) */
@layer components {
  body {
    isolation: isolate;
    background-color: var(--ns-page-atmosphere-base-background, var(--ns-color-background));
  }

  body::before,
  body::after {
    content: '';
    position: fixed;
    inset: 0;
    pointer-events: none;
    opacity: 0;
  }

  body::before {
    z-index: -1;
    background-image: var(--ns-page-atmosphere-background-image, none);
  }

  /* One promoted viewport layer owns the base-to-atmosphere crossfade. Opacity
     keeps advancing on the compositor while the main thread handles scrolling;
     JavaScript only reverses its target by toggling the body state. */
  body::after {
    z-index: -2;
    background-color: var(--ns-page-atmosphere-background-color, var(--ns-color-background));
  }

  body[data-ns-page-atmosphere-transitioning='true']::before {
    will-change: opacity;
    transition: opacity var(--ns-appearance-transition-duration, 1200ms) var(--ns-appearance-transition-easing, ease);
  }

  body[data-ns-page-atmosphere-transitioning='true']::after {
    will-change: opacity, background-color;
    transition:
      opacity var(--ns-appearance-transition-duration, 1200ms) var(--ns-appearance-transition-easing, ease),
      background-color var(--ns-appearance-transition-duration, 1200ms) var(--ns-appearance-transition-easing, ease);
  }

  body[data-ns-page-atmosphere-active='true']::before,
  body[data-ns-page-atmosphere-active='true']::after {
    opacity: 1;
  }

  body [data-ns-section-surface]:has(> [data-ns-section-appearance-source][data-ns-page-atmosphere-follower='true']) {
    background-color: transparent;
    background-image: none;
  }

  body[data-ns-page-atmosphere-transitioning='true']
    :is(
      [data-ns-section-surface][data-ns-page-atmosphere-owner='true'][data-ns-page-atmosphere-transition-participant='true'],
      [data-ns-section-surface][data-ns-page-atmosphere-participant='true'][data-ns-page-atmosphere-transition-participant='true']
    ),
  body[data-ns-page-atmosphere-transitioning='true']
    [data-ns-section-surface][data-ns-page-atmosphere-transition-participant='true']
    ns-product-card.ns-product-card--appearance-inverted {
    transition-property:
      --ns-color-background, --ns-color-foreground, --ns-color-heading, --ns-color-surface, --ns-color-surface-alt,
      --ns-color-product-card-surface, --ns-color-product-card-inverse-background,
      --ns-color-product-card-inverse-surface, --ns-color-media-overlay, --ns-color-primary, --ns-color-on-primary,
      --ns-color-secondary, --ns-color-on-secondary, --ns-color-accent, --ns-color-on-accent, --ns-color-link,
      --ns-color-border, --ns-color-muted, --ns-color-on-muted, --ns-color-success, --ns-color-on-success,
      --ns-color-warning, --ns-color-on-warning, --ns-color-critical, --ns-color-on-critical, --ns-color-info,
      --ns-color-on-info, --ns-color-subtle, --ns-color-highlight, --ns-color-on-highlight !important;
    transition-duration: var(--ns-appearance-transition-duration, 1200ms) !important;
    transition-timing-function: var(--ns-appearance-transition-easing, ease) !important;
  }

  body[data-ns-page-atmosphere-ready='true'] [data-ns-section-surface][data-ns-page-atmosphere-capable='true'] {
    --ns-color-background: var(--ns-page-atmosphere-base-background) !important;
    --ns-color-foreground: var(--ns-page-atmosphere-base-foreground) !important;
    --ns-color-heading: var(--ns-page-atmosphere-base-heading) !important;
    --ns-color-surface: var(--ns-page-atmosphere-base-surface) !important;
    --ns-color-surface-alt: var(--ns-page-atmosphere-base-surface-alt) !important;
    --ns-color-product-card-surface: var(--ns-page-atmosphere-base-product-card-surface) !important;
    --ns-product-card-inverse-color-scheme: var(--ns-page-atmosphere-base-product-card-inverse-color-scheme) !important;
    --ns-color-product-card-inverse-background: var(
      --ns-page-atmosphere-base-product-card-inverse-background
    ) !important;
    --ns-color-product-card-inverse-surface: var(--ns-page-atmosphere-base-product-card-inverse-surface) !important;
    --ns-color-media-overlay: var(--ns-page-atmosphere-base-media-overlay) !important;
    --ns-color-primary: var(--ns-page-atmosphere-base-primary) !important;
    --ns-color-on-primary: var(--ns-page-atmosphere-base-on-primary) !important;
    --ns-color-secondary: var(--ns-page-atmosphere-base-secondary) !important;
    --ns-color-on-secondary: var(--ns-page-atmosphere-base-on-secondary) !important;
    --ns-color-accent: var(--ns-page-atmosphere-base-accent) !important;
    --ns-color-on-accent: var(--ns-page-atmosphere-base-on-accent) !important;
    --ns-color-link: var(--ns-page-atmosphere-base-link) !important;
    --ns-color-border: var(--ns-page-atmosphere-base-border) !important;
    --ns-color-muted: var(--ns-page-atmosphere-base-muted) !important;
    --ns-color-on-muted: var(--ns-page-atmosphere-base-on-muted) !important;
    --ns-color-success: var(--ns-page-atmosphere-base-success) !important;
    --ns-color-on-success: var(--ns-page-atmosphere-base-on-success) !important;
    --ns-color-warning: var(--ns-page-atmosphere-base-warning) !important;
    --ns-color-on-warning: var(--ns-page-atmosphere-base-on-warning) !important;
    --ns-color-critical: var(--ns-page-atmosphere-base-critical) !important;
    --ns-color-on-critical: var(--ns-page-atmosphere-base-on-critical) !important;
    --ns-color-info: var(--ns-page-atmosphere-base-info) !important;
    --ns-color-on-info: var(--ns-page-atmosphere-base-on-info) !important;
    --ns-color-subtle: var(--ns-page-atmosphere-base-subtle) !important;
    --ns-color-highlight: var(--ns-page-atmosphere-base-highlight) !important;
    --ns-color-on-highlight: var(--ns-page-atmosphere-base-on-highlight) !important;
    --ns-button-background: var(--ns-color-primary) !important;
    --ns-button-border-color: var(--ns-color-primary) !important;
    --ns-button-color: var(--ns-color-on-primary) !important;
    background-color: transparent;
    background-image: none;
  }

  body[data-ns-page-atmosphere-active='true']
    :is(
      [data-ns-section-surface][data-ns-page-atmosphere-owner='true'],
      [data-ns-section-surface][data-ns-page-atmosphere-participant='true']
    ) {
    --ns-color-background: var(--ns-page-atmosphere-background) !important;
    --ns-color-foreground: var(--ns-page-atmosphere-foreground) !important;
    --ns-color-heading: var(--ns-page-atmosphere-heading) !important;
    --ns-color-surface: var(--ns-page-atmosphere-surface) !important;
    --ns-color-surface-alt: var(--ns-page-atmosphere-surface-alt) !important;
    --ns-color-product-card-surface: var(--ns-page-atmosphere-product-card-surface) !important;
    --ns-product-card-inverse-color-scheme: var(--ns-page-atmosphere-product-card-inverse-color-scheme) !important;
    --ns-color-product-card-inverse-background: var(--ns-page-atmosphere-product-card-inverse-background) !important;
    --ns-color-product-card-inverse-surface: var(--ns-page-atmosphere-product-card-inverse-surface) !important;
    --ns-color-media-overlay: var(--ns-page-atmosphere-media-overlay) !important;
    --ns-color-primary: var(--ns-page-atmosphere-primary) !important;
    --ns-color-on-primary: var(--ns-page-atmosphere-on-primary) !important;
    --ns-color-secondary: var(--ns-page-atmosphere-secondary) !important;
    --ns-color-on-secondary: var(--ns-page-atmosphere-on-secondary) !important;
    --ns-color-accent: var(--ns-page-atmosphere-accent) !important;
    --ns-color-on-accent: var(--ns-page-atmosphere-on-accent) !important;
    --ns-color-link: var(--ns-page-atmosphere-link) !important;
    --ns-color-border: var(--ns-page-atmosphere-border) !important;
    --ns-color-muted: var(--ns-page-atmosphere-muted) !important;
    --ns-color-on-muted: var(--ns-page-atmosphere-on-muted) !important;
    --ns-color-success: var(--ns-page-atmosphere-success) !important;
    --ns-color-on-success: var(--ns-page-atmosphere-on-success) !important;
    --ns-color-warning: var(--ns-page-atmosphere-warning) !important;
    --ns-color-on-warning: var(--ns-page-atmosphere-on-warning) !important;
    --ns-color-critical: var(--ns-page-atmosphere-critical) !important;
    --ns-color-on-critical: var(--ns-page-atmosphere-on-critical) !important;
    --ns-color-info: var(--ns-page-atmosphere-info) !important;
    --ns-color-on-info: var(--ns-page-atmosphere-on-info) !important;
    --ns-color-subtle: var(--ns-page-atmosphere-subtle) !important;
    --ns-color-highlight: var(--ns-page-atmosphere-highlight) !important;
    --ns-color-on-highlight: var(--ns-page-atmosphere-on-highlight) !important;
    --ns-button-background: var(--ns-color-primary) !important;
    --ns-button-border-color: var(--ns-color-primary) !important;
    --ns-button-color: var(--ns-color-on-primary) !important;
    color: var(--ns-color-foreground);
  }

  body[data-ns-page-atmosphere-context='light-default'] {
    --ns-page-atmosphere-product-card-inverse-color-scheme: dark;
    --ns-page-atmosphere-product-card-inverse-background: var(--ns-appearance-dark-background);
    --ns-page-atmosphere-product-card-inverse-surface: var(--ns-appearance-dark-product-card-surface);
  }

  body[data-ns-page-atmosphere-context='light-alternative'] {
    --ns-page-atmosphere-product-card-inverse-color-scheme: dark;
    --ns-page-atmosphere-product-card-inverse-background: var(--ns-appearance-dark-page-background-alt);
    --ns-page-atmosphere-product-card-inverse-surface: var(--ns-appearance-dark-background);
  }

  body[data-ns-page-atmosphere-context='dark-default'] {
    --ns-page-atmosphere-product-card-inverse-color-scheme: light;
    --ns-page-atmosphere-product-card-inverse-background: var(--ns-appearance-light-background);
    --ns-page-atmosphere-product-card-inverse-surface: var(--ns-appearance-light-product-card-surface);
  }

  body[data-ns-page-atmosphere-context='dark-alternative'] {
    --ns-page-atmosphere-product-card-inverse-color-scheme: light;
    --ns-page-atmosphere-product-card-inverse-background: var(--ns-appearance-light-page-background-alt);
    --ns-page-atmosphere-product-card-inverse-surface: var(--ns-appearance-light-background);
  }

  /* A base isolation boundary is recursive by contract. Rebinding every role
     on the wrapper, descendants and their pseudo-elements prevents a nested
     component from re-entering the active page atmosphere. */
  [data-ns-page-atmosphere-isolation='base'],
  [data-ns-page-atmosphere-isolation='base'] *,
  [data-ns-page-atmosphere-isolation='base']::before,
  [data-ns-page-atmosphere-isolation='base']::after,
  [data-ns-page-atmosphere-isolation='base'] *::before,
  [data-ns-page-atmosphere-isolation='base'] *::after {
    --ns-color-background: var(--ns-page-atmosphere-base-background) !important;
    --ns-color-foreground: var(--ns-page-atmosphere-base-foreground) !important;
    --ns-color-heading: var(--ns-page-atmosphere-base-heading) !important;
    --ns-color-surface: var(--ns-page-atmosphere-base-surface) !important;
    --ns-color-surface-alt: var(--ns-page-atmosphere-base-surface-alt) !important;
    --ns-color-product-card-surface: var(--ns-page-atmosphere-base-product-card-surface) !important;
    --ns-product-card-inverse-color-scheme: var(--ns-page-atmosphere-base-product-card-inverse-color-scheme) !important;
    --ns-color-product-card-inverse-background: var(
      --ns-page-atmosphere-base-product-card-inverse-background
    ) !important;
    --ns-color-product-card-inverse-surface: var(--ns-page-atmosphere-base-product-card-inverse-surface) !important;
    --ns-color-media-overlay: var(--ns-page-atmosphere-base-media-overlay) !important;
    --ns-color-primary: var(--ns-page-atmosphere-base-primary) !important;
    --ns-color-on-primary: var(--ns-page-atmosphere-base-on-primary) !important;
    --ns-color-secondary: var(--ns-page-atmosphere-base-secondary) !important;
    --ns-color-on-secondary: var(--ns-page-atmosphere-base-on-secondary) !important;
    --ns-color-accent: var(--ns-page-atmosphere-base-accent) !important;
    --ns-color-on-accent: var(--ns-page-atmosphere-base-on-accent) !important;
    --ns-color-link: var(--ns-page-atmosphere-base-link) !important;
    --ns-color-border: var(--ns-page-atmosphere-base-border) !important;
    --ns-color-muted: var(--ns-page-atmosphere-base-muted) !important;
    --ns-color-on-muted: var(--ns-page-atmosphere-base-on-muted) !important;
    --ns-color-success: var(--ns-page-atmosphere-base-success) !important;
    --ns-color-on-success: var(--ns-page-atmosphere-base-on-success) !important;
    --ns-color-warning: var(--ns-page-atmosphere-base-warning) !important;
    --ns-color-on-warning: var(--ns-page-atmosphere-base-on-warning) !important;
    --ns-color-critical: var(--ns-page-atmosphere-base-critical) !important;
    --ns-color-on-critical: var(--ns-page-atmosphere-base-on-critical) !important;
    --ns-color-info: var(--ns-page-atmosphere-base-info) !important;
    --ns-color-on-info: var(--ns-page-atmosphere-base-on-info) !important;
    --ns-color-subtle: var(--ns-page-atmosphere-base-subtle) !important;
    --ns-color-highlight: var(--ns-page-atmosphere-base-highlight) !important;
    --ns-color-on-highlight: var(--ns-page-atmosphere-base-on-highlight) !important;
    --ns-button-background: var(--ns-color-primary) !important;
    --ns-button-border-color: var(--ns-color-primary) !important;
    --ns-button-color: var(--ns-color-on-primary) !important;
  }

  [data-ns-page-atmosphere-isolation='base'] {
    color: var(--ns-color-foreground);
  }

  /* Inline merchant artwork is media, not a semantic theme icon. Keep its
     authored/base rendering stable across both directions of the page
     transition. Shopify placeholders also own an opaque base canvas so the
     changing body can never show through their transparent SVG viewport. */
  [data-ns-page-atmosphere-artwork],
  [data-ns-page-atmosphere-artwork] *,
  [data-ns-page-atmosphere-artwork]::before,
  [data-ns-page-atmosphere-artwork]::after,
  [data-ns-page-atmosphere-artwork] *::before,
  [data-ns-page-atmosphere-artwork] *::after {
    transition-property: none !important;
  }

  [data-ns-page-atmosphere-artwork='placeholder'] {
    color: var(--ns-page-atmosphere-base-muted) !important;
    background-color: var(--ns-page-atmosphere-base-background) !important;
  }

  /* Auto-colored content follows the page only in normal flow. An overlay is
     rebound from first paint, independent of page-atmosphere readiness or its
     active state, so neither initialization, entering nor leaving can expose an
     inherited in-flight token for one frame. Explicit block palettes remain local. */
  @media (min-width: 1025px) {
    :is(
        .ns-responsive-composition[data-ns-responsive-layout-desktop='overlay'],
        .ns-visual-stage--desktop-overlay,
        .ns-visual-slider--desktop-overlay
      )
      .ns-visual-content[data-ns-appearance-local='false'] {
      --ns-color-background: var(--ns-page-atmosphere-base-background) !important;
      --ns-color-foreground: var(--ns-page-atmosphere-base-foreground) !important;
      --ns-color-heading: var(--ns-page-atmosphere-base-heading) !important;
      --ns-color-surface: var(--ns-page-atmosphere-base-surface) !important;
      --ns-color-surface-alt: var(--ns-page-atmosphere-base-surface-alt) !important;
      --ns-color-product-card-surface: var(--ns-page-atmosphere-base-product-card-surface) !important;
      --ns-color-media-overlay: var(--ns-page-atmosphere-base-media-overlay) !important;
      --ns-color-primary: var(--ns-page-atmosphere-base-primary) !important;
      --ns-color-on-primary: var(--ns-page-atmosphere-base-on-primary) !important;
      --ns-color-secondary: var(--ns-page-atmosphere-base-secondary) !important;
      --ns-color-on-secondary: var(--ns-page-atmosphere-base-on-secondary) !important;
      --ns-color-accent: var(--ns-page-atmosphere-base-accent) !important;
      --ns-color-on-accent: var(--ns-page-atmosphere-base-on-accent) !important;
      --ns-color-link: var(--ns-page-atmosphere-base-link) !important;
      --ns-color-border: var(--ns-page-atmosphere-base-border) !important;
      --ns-color-muted: var(--ns-page-atmosphere-base-muted) !important;
      --ns-color-on-muted: var(--ns-page-atmosphere-base-on-muted) !important;
      --ns-color-success: var(--ns-page-atmosphere-base-success) !important;
      --ns-color-on-success: var(--ns-page-atmosphere-base-on-success) !important;
      --ns-color-warning: var(--ns-page-atmosphere-base-warning) !important;
      --ns-color-on-warning: var(--ns-page-atmosphere-base-on-warning) !important;
      --ns-color-critical: var(--ns-page-atmosphere-base-critical) !important;
      --ns-color-on-critical: var(--ns-page-atmosphere-base-on-critical) !important;
      --ns-color-info: var(--ns-page-atmosphere-base-info) !important;
      --ns-color-on-info: var(--ns-page-atmosphere-base-on-info) !important;
      --ns-color-subtle: var(--ns-page-atmosphere-base-subtle) !important;
      --ns-color-highlight: var(--ns-page-atmosphere-base-highlight) !important;
      --ns-color-on-highlight: var(--ns-page-atmosphere-base-on-highlight) !important;
      --ns-button-background: var(--ns-page-atmosphere-base-primary) !important;
      --ns-button-border-color: var(--ns-page-atmosphere-base-primary) !important;
      --ns-button-color: var(--ns-page-atmosphere-base-on-primary) !important;
    }

    :is(
        .ns-responsive-composition[data-ns-responsive-layout-desktop='overlay'],
        .ns-visual-stage--desktop-overlay,
        .ns-visual-slider--desktop-overlay
      )
      .ns-visual-content[data-ns-appearance-local='false']
      .ns-visual-button[data-ns-button-color-local='false']
      > .ns-button--primary {
      --ns-button-background: var(--ns-page-atmosphere-base-primary) !important;
      --ns-button-border-color: var(--ns-page-atmosphere-base-primary) !important;
      --ns-button-color: var(--ns-page-atmosphere-base-on-primary) !important;
      color: var(--ns-page-atmosphere-base-on-primary) !important;
      background-color: var(--ns-page-atmosphere-base-primary) !important;
      border-color: var(--ns-page-atmosphere-base-primary) !important;
    }

    :is(
        .ns-responsive-composition[data-ns-responsive-layout-desktop='overlay'],
        .ns-visual-stage--desktop-overlay,
        .ns-visual-slider--desktop-overlay
      )
      .ns-visual-content[data-ns-appearance-local='false']
      .ns-visual-button[data-ns-button-color-local='false']
      > .ns-button--secondary {
      --ns-button-background: var(--ns-page-atmosphere-base-background) !important;
      --ns-button-border-color: var(--ns-page-atmosphere-base-foreground) !important;
      --ns-button-color: var(--ns-page-atmosphere-base-foreground) !important;
      color: var(--ns-page-atmosphere-base-foreground) !important;
      background-color: var(--ns-page-atmosphere-base-background) !important;
      border-color: var(--ns-page-atmosphere-base-foreground) !important;
    }

    :is(
        .ns-responsive-composition[data-ns-responsive-layout-desktop='overlay'],
        .ns-visual-stage--desktop-overlay,
        .ns-visual-slider--desktop-overlay
      )
      .ns-visual-content[data-ns-appearance-local='false']
      .ns-visual-button[data-ns-button-color-local='false']
      > .ns-button--outline {
      --ns-button-border-color: var(--ns-page-atmosphere-base-foreground) !important;
      --ns-button-color: var(--ns-page-atmosphere-base-foreground) !important;
      color: var(--ns-page-atmosphere-base-foreground) !important;
      border-color: var(--ns-page-atmosphere-base-foreground) !important;
    }

    :is(
        .ns-responsive-composition[data-ns-responsive-layout-desktop='overlay'],
        .ns-visual-stage--desktop-overlay,
        .ns-visual-slider--desktop-overlay
      )
      .ns-visual-content[data-ns-appearance-local='false']
      .ns-visual-button[data-ns-button-color-local='false']
      > .ns-button--link {
      color: var(--ns-page-atmosphere-base-link) !important;
    }

    :is(
        .ns-responsive-composition[data-ns-responsive-layout-desktop='overlay'],
        .ns-visual-stage--desktop-overlay,
        .ns-visual-slider--desktop-overlay
      )
      .ns-visual-content[data-ns-appearance-local='false']
      .ns-visual-button[data-ns-button-color-local='false']
      > .ns-button--text {
      color: var(--ns-page-atmosphere-base-foreground) !important;
    }
  }

  @media (min-width: 768px) and (max-width: 1024px) {
    :is(
        .ns-responsive-composition[data-ns-responsive-layout-tablet='overlay'],
        .ns-visual-stage--tablet-overlay,
        .ns-visual-slider--tablet-overlay
      )
      .ns-visual-content[data-ns-appearance-local='false'] {
      --ns-color-background: var(--ns-page-atmosphere-base-background) !important;
      --ns-color-foreground: var(--ns-page-atmosphere-base-foreground) !important;
      --ns-color-heading: var(--ns-page-atmosphere-base-heading) !important;
      --ns-color-surface: var(--ns-page-atmosphere-base-surface) !important;
      --ns-color-surface-alt: var(--ns-page-atmosphere-base-surface-alt) !important;
      --ns-color-product-card-surface: var(--ns-page-atmosphere-base-product-card-surface) !important;
      --ns-color-media-overlay: var(--ns-page-atmosphere-base-media-overlay) !important;
      --ns-color-primary: var(--ns-page-atmosphere-base-primary) !important;
      --ns-color-on-primary: var(--ns-page-atmosphere-base-on-primary) !important;
      --ns-color-secondary: var(--ns-page-atmosphere-base-secondary) !important;
      --ns-color-on-secondary: var(--ns-page-atmosphere-base-on-secondary) !important;
      --ns-color-accent: var(--ns-page-atmosphere-base-accent) !important;
      --ns-color-on-accent: var(--ns-page-atmosphere-base-on-accent) !important;
      --ns-color-link: var(--ns-page-atmosphere-base-link) !important;
      --ns-color-border: var(--ns-page-atmosphere-base-border) !important;
      --ns-color-muted: var(--ns-page-atmosphere-base-muted) !important;
      --ns-color-on-muted: var(--ns-page-atmosphere-base-on-muted) !important;
      --ns-color-success: var(--ns-page-atmosphere-base-success) !important;
      --ns-color-on-success: var(--ns-page-atmosphere-base-on-success) !important;
      --ns-color-warning: var(--ns-page-atmosphere-base-warning) !important;
      --ns-color-on-warning: var(--ns-page-atmosphere-base-on-warning) !important;
      --ns-color-critical: var(--ns-page-atmosphere-base-critical) !important;
      --ns-color-on-critical: var(--ns-page-atmosphere-base-on-critical) !important;
      --ns-color-info: var(--ns-page-atmosphere-base-info) !important;
      --ns-color-on-info: var(--ns-page-atmosphere-base-on-info) !important;
      --ns-color-subtle: var(--ns-page-atmosphere-base-subtle) !important;
      --ns-color-highlight: var(--ns-page-atmosphere-base-highlight) !important;
      --ns-color-on-highlight: var(--ns-page-atmosphere-base-on-highlight) !important;
      --ns-button-background: var(--ns-page-atmosphere-base-primary) !important;
      --ns-button-border-color: var(--ns-page-atmosphere-base-primary) !important;
      --ns-button-color: var(--ns-page-atmosphere-base-on-primary) !important;
    }

    :is(
        .ns-responsive-composition[data-ns-responsive-layout-tablet='overlay'],
        .ns-visual-stage--tablet-overlay,
        .ns-visual-slider--tablet-overlay
      )
      .ns-visual-content[data-ns-appearance-local='false']
      .ns-visual-button[data-ns-button-color-local='false']
      > .ns-button--primary {
      --ns-button-background: var(--ns-page-atmosphere-base-primary) !important;
      --ns-button-border-color: var(--ns-page-atmosphere-base-primary) !important;
      --ns-button-color: var(--ns-page-atmosphere-base-on-primary) !important;
      color: var(--ns-page-atmosphere-base-on-primary) !important;
      background-color: var(--ns-page-atmosphere-base-primary) !important;
      border-color: var(--ns-page-atmosphere-base-primary) !important;
    }

    :is(
        .ns-responsive-composition[data-ns-responsive-layout-tablet='overlay'],
        .ns-visual-stage--tablet-overlay,
        .ns-visual-slider--tablet-overlay
      )
      .ns-visual-content[data-ns-appearance-local='false']
      .ns-visual-button[data-ns-button-color-local='false']
      > .ns-button--secondary {
      --ns-button-background: var(--ns-page-atmosphere-base-background) !important;
      --ns-button-border-color: var(--ns-page-atmosphere-base-foreground) !important;
      --ns-button-color: var(--ns-page-atmosphere-base-foreground) !important;
      color: var(--ns-page-atmosphere-base-foreground) !important;
      background-color: var(--ns-page-atmosphere-base-background) !important;
      border-color: var(--ns-page-atmosphere-base-foreground) !important;
    }

    :is(
        .ns-responsive-composition[data-ns-responsive-layout-tablet='overlay'],
        .ns-visual-stage--tablet-overlay,
        .ns-visual-slider--tablet-overlay
      )
      .ns-visual-content[data-ns-appearance-local='false']
      .ns-visual-button[data-ns-button-color-local='false']
      > .ns-button--outline {
      --ns-button-border-color: var(--ns-page-atmosphere-base-foreground) !important;
      --ns-button-color: var(--ns-page-atmosphere-base-foreground) !important;
      color: var(--ns-page-atmosphere-base-foreground) !important;
      border-color: var(--ns-page-atmosphere-base-foreground) !important;
    }

    :is(
        .ns-responsive-composition[data-ns-responsive-layout-tablet='overlay'],
        .ns-visual-stage--tablet-overlay,
        .ns-visual-slider--tablet-overlay
      )
      .ns-visual-content[data-ns-appearance-local='false']
      .ns-visual-button[data-ns-button-color-local='false']
      > .ns-button--link {
      color: var(--ns-page-atmosphere-base-link) !important;
    }

    :is(
        .ns-responsive-composition[data-ns-responsive-layout-tablet='overlay'],
        .ns-visual-stage--tablet-overlay,
        .ns-visual-slider--tablet-overlay
      )
      .ns-visual-content[data-ns-appearance-local='false']
      .ns-visual-button[data-ns-button-color-local='false']
      > .ns-button--text {
      color: var(--ns-page-atmosphere-base-foreground) !important;
    }
  }

  @media (max-width: 767px) {
    :is(
        .ns-responsive-composition[data-ns-responsive-layout-mobile='overlay'],
        .ns-visual-stage--mobile-overlay,
        .ns-visual-slider--mobile-overlay
      )
      .ns-visual-content[data-ns-appearance-local='false'] {
      --ns-color-background: var(--ns-page-atmosphere-base-background) !important;
      --ns-color-foreground: var(--ns-page-atmosphere-base-foreground) !important;
      --ns-color-heading: var(--ns-page-atmosphere-base-heading) !important;
      --ns-color-surface: var(--ns-page-atmosphere-base-surface) !important;
      --ns-color-surface-alt: var(--ns-page-atmosphere-base-surface-alt) !important;
      --ns-color-product-card-surface: var(--ns-page-atmosphere-base-product-card-surface) !important;
      --ns-color-media-overlay: var(--ns-page-atmosphere-base-media-overlay) !important;
      --ns-color-primary: var(--ns-page-atmosphere-base-primary) !important;
      --ns-color-on-primary: var(--ns-page-atmosphere-base-on-primary) !important;
      --ns-color-secondary: var(--ns-page-atmosphere-base-secondary) !important;
      --ns-color-on-secondary: var(--ns-page-atmosphere-base-on-secondary) !important;
      --ns-color-accent: var(--ns-page-atmosphere-base-accent) !important;
      --ns-color-on-accent: var(--ns-page-atmosphere-base-on-accent) !important;
      --ns-color-link: var(--ns-page-atmosphere-base-link) !important;
      --ns-color-border: var(--ns-page-atmosphere-base-border) !important;
      --ns-color-muted: var(--ns-page-atmosphere-base-muted) !important;
      --ns-color-on-muted: var(--ns-page-atmosphere-base-on-muted) !important;
      --ns-color-success: var(--ns-page-atmosphere-base-success) !important;
      --ns-color-on-success: var(--ns-page-atmosphere-base-on-success) !important;
      --ns-color-warning: var(--ns-page-atmosphere-base-warning) !important;
      --ns-color-on-warning: var(--ns-page-atmosphere-base-on-warning) !important;
      --ns-color-critical: var(--ns-page-atmosphere-base-critical) !important;
      --ns-color-on-critical: var(--ns-page-atmosphere-base-on-critical) !important;
      --ns-color-info: var(--ns-page-atmosphere-base-info) !important;
      --ns-color-on-info: var(--ns-page-atmosphere-base-on-info) !important;
      --ns-color-subtle: var(--ns-page-atmosphere-base-subtle) !important;
      --ns-color-highlight: var(--ns-page-atmosphere-base-highlight) !important;
      --ns-color-on-highlight: var(--ns-page-atmosphere-base-on-highlight) !important;
      --ns-button-background: var(--ns-page-atmosphere-base-primary) !important;
      --ns-button-border-color: var(--ns-page-atmosphere-base-primary) !important;
      --ns-button-color: var(--ns-page-atmosphere-base-on-primary) !important;
    }

    :is(
        .ns-responsive-composition[data-ns-responsive-layout-mobile='overlay'],
        .ns-visual-stage--mobile-overlay,
        .ns-visual-slider--mobile-overlay
      )
      .ns-visual-content[data-ns-appearance-local='false']
      .ns-visual-button[data-ns-button-color-local='false']
      > .ns-button--primary {
      --ns-button-background: var(--ns-page-atmosphere-base-primary) !important;
      --ns-button-border-color: var(--ns-page-atmosphere-base-primary) !important;
      --ns-button-color: var(--ns-page-atmosphere-base-on-primary) !important;
      color: var(--ns-page-atmosphere-base-on-primary) !important;
      background-color: var(--ns-page-atmosphere-base-primary) !important;
      border-color: var(--ns-page-atmosphere-base-primary) !important;
    }

    :is(
        .ns-responsive-composition[data-ns-responsive-layout-mobile='overlay'],
        .ns-visual-stage--mobile-overlay,
        .ns-visual-slider--mobile-overlay
      )
      .ns-visual-content[data-ns-appearance-local='false']
      .ns-visual-button[data-ns-button-color-local='false']
      > .ns-button--secondary {
      --ns-button-background: var(--ns-page-atmosphere-base-background) !important;
      --ns-button-border-color: var(--ns-page-atmosphere-base-foreground) !important;
      --ns-button-color: var(--ns-page-atmosphere-base-foreground) !important;
      color: var(--ns-page-atmosphere-base-foreground) !important;
      background-color: var(--ns-page-atmosphere-base-background) !important;
      border-color: var(--ns-page-atmosphere-base-foreground) !important;
    }

    :is(
        .ns-responsive-composition[data-ns-responsive-layout-mobile='overlay'],
        .ns-visual-stage--mobile-overlay,
        .ns-visual-slider--mobile-overlay
      )
      .ns-visual-content[data-ns-appearance-local='false']
      .ns-visual-button[data-ns-button-color-local='false']
      > .ns-button--outline {
      --ns-button-border-color: var(--ns-page-atmosphere-base-foreground) !important;
      --ns-button-color: var(--ns-page-atmosphere-base-foreground) !important;
      color: var(--ns-page-atmosphere-base-foreground) !important;
      border-color: var(--ns-page-atmosphere-base-foreground) !important;
    }

    :is(
        .ns-responsive-composition[data-ns-responsive-layout-mobile='overlay'],
        .ns-visual-stage--mobile-overlay,
        .ns-visual-slider--mobile-overlay
      )
      .ns-visual-content[data-ns-appearance-local='false']
      .ns-visual-button[data-ns-button-color-local='false']
      > .ns-button--link {
      color: var(--ns-page-atmosphere-base-link) !important;
    }

    :is(
        .ns-responsive-composition[data-ns-responsive-layout-mobile='overlay'],
        .ns-visual-stage--mobile-overlay,
        .ns-visual-slider--mobile-overlay
      )
      .ns-visual-content[data-ns-appearance-local='false']
      .ns-visual-button[data-ns-button-color-local='false']
      > .ns-button--text {
      color: var(--ns-page-atmosphere-base-foreground) !important;
    }
  }

  ns-header-stack[data-ns-header-atmosphere-active='true']
    :is(.ns-desktop-header, .ns-mobile-header, .ns-header-info-bar, .ns-header-promo, .ns-mega-menu) {
    --ns-header-adaptive-background: var(--ns-header-atmosphere-background);
    --ns-header-adaptive-foreground: var(--ns-header-atmosphere-foreground);
    --ns-header-adaptive-heading: var(--ns-header-atmosphere-heading);
    --ns-header-adaptive-surface: var(--ns-header-atmosphere-surface);
    --ns-header-adaptive-surface-alt: var(--ns-header-atmosphere-surface-alt);
    --ns-header-adaptive-primary: var(--ns-header-atmosphere-primary);
    --ns-header-adaptive-on-primary: var(--ns-header-atmosphere-on-primary);
    --ns-header-adaptive-secondary: var(--ns-header-atmosphere-secondary);
    --ns-header-adaptive-on-secondary: var(--ns-header-atmosphere-on-secondary);
    --ns-header-adaptive-link: var(--ns-header-atmosphere-link);
    --ns-header-adaptive-muted: var(--ns-header-atmosphere-muted);
    --ns-header-adaptive-on-muted: var(--ns-header-atmosphere-on-muted);
    --ns-header-adaptive-border: var(--ns-header-atmosphere-border);
    --ns-header-adaptive-accent: var(--ns-header-atmosphere-accent);
    --ns-header-adaptive-on-accent: var(--ns-header-atmosphere-on-accent);
    --ns-header-adaptive-info: var(--ns-header-atmosphere-info);
    --ns-header-adaptive-on-info: var(--ns-header-atmosphere-on-info);
    --ns-header-adaptive-success: var(--ns-header-atmosphere-success);
    --ns-header-adaptive-on-success: var(--ns-header-atmosphere-on-success);
    --ns-header-adaptive-warning: var(--ns-header-atmosphere-warning);
    --ns-header-adaptive-on-warning: var(--ns-header-atmosphere-on-warning);
    --ns-header-adaptive-critical: var(--ns-header-atmosphere-critical);
    --ns-header-adaptive-on-critical: var(--ns-header-atmosphere-on-critical);
    --ns-header-adaptive-subtle: var(--ns-header-atmosphere-subtle);
    --ns-header-adaptive-highlight: var(--ns-header-atmosphere-highlight);
    --ns-header-adaptive-on-highlight: var(--ns-header-atmosphere-on-highlight);
    --ns-header-adaptive-inverse-background: var(--ns-header-atmosphere-inverse-background);
    --ns-header-adaptive-inverse-foreground: var(--ns-header-atmosphere-inverse-foreground);
  }

  ns-header-stack[data-ns-header-interactive='true']
    :is(.ns-desktop-header, .ns-mobile-header, .ns-header-info-bar, .ns-header-promo, .ns-mega-menu),
  ns-header-stack:focus-within
    :is(.ns-desktop-header, .ns-mobile-header, .ns-header-info-bar, .ns-header-promo, .ns-mega-menu) {
    --ns-header-adaptive-background: var(--ns-header-local-background);
    --ns-header-adaptive-foreground: var(--ns-header-local-foreground);
    --ns-header-adaptive-heading: var(--ns-header-local-heading, var(--ns-header-local-foreground));
    --ns-header-adaptive-surface: var(--ns-header-local-surface, var(--ns-header-local-background));
    --ns-header-adaptive-surface-alt: var(--ns-header-local-surface-alt, var(--ns-header-local-surface));
    --ns-header-adaptive-primary: var(--ns-header-local-primary);
    --ns-header-adaptive-on-primary: var(--ns-header-local-on-primary);
    --ns-header-adaptive-secondary: var(--ns-header-local-secondary);
    --ns-header-adaptive-on-secondary: var(--ns-header-local-on-secondary);
    --ns-header-adaptive-link: var(--ns-header-local-link, var(--ns-header-local-foreground));
    --ns-header-adaptive-muted: var(--ns-header-local-muted);
    --ns-header-adaptive-on-muted: var(--ns-header-local-on-muted);
    --ns-header-adaptive-border: var(--ns-header-local-border);
    --ns-header-adaptive-accent: var(--ns-header-local-accent);
    --ns-header-adaptive-on-accent: var(--ns-header-local-on-accent);
    --ns-header-adaptive-info: var(--ns-header-local-info);
    --ns-header-adaptive-on-info: var(--ns-header-local-on-info);
    --ns-header-adaptive-success: var(--ns-header-local-success);
    --ns-header-adaptive-on-success: var(--ns-header-local-on-success);
    --ns-header-adaptive-warning: var(--ns-header-local-warning);
    --ns-header-adaptive-on-warning: var(--ns-header-local-on-warning);
    --ns-header-adaptive-critical: var(--ns-header-local-critical);
    --ns-header-adaptive-on-critical: var(--ns-header-local-on-critical);
    --ns-header-adaptive-subtle: var(--ns-header-local-subtle);
    --ns-header-adaptive-highlight: var(--ns-header-local-highlight);
    --ns-header-adaptive-on-highlight: var(--ns-header-local-on-highlight);
    --ns-header-adaptive-inverse-background: var(--ns-header-local-inverse-background);
    --ns-header-adaptive-inverse-foreground: var(--ns-header-local-inverse-foreground);
  }

  @media (hover: hover) and (pointer: fine) {
    ns-header-stack:hover
      :is(.ns-desktop-header, .ns-mobile-header, .ns-header-info-bar, .ns-header-promo, .ns-mega-menu) {
      --ns-header-adaptive-background: var(--ns-header-local-background);
      --ns-header-adaptive-foreground: var(--ns-header-local-foreground);
      --ns-header-adaptive-heading: var(--ns-header-local-heading, var(--ns-header-local-foreground));
      --ns-header-adaptive-surface: var(--ns-header-local-surface, var(--ns-header-local-background));
      --ns-header-adaptive-surface-alt: var(--ns-header-local-surface-alt, var(--ns-header-local-surface));
      --ns-header-adaptive-primary: var(--ns-header-local-primary);
      --ns-header-adaptive-on-primary: var(--ns-header-local-on-primary);
      --ns-header-adaptive-secondary: var(--ns-header-local-secondary);
      --ns-header-adaptive-on-secondary: var(--ns-header-local-on-secondary);
      --ns-header-adaptive-link: var(--ns-header-local-link, var(--ns-header-local-foreground));
      --ns-header-adaptive-muted: var(--ns-header-local-muted);
      --ns-header-adaptive-on-muted: var(--ns-header-local-on-muted);
      --ns-header-adaptive-border: var(--ns-header-local-border);
      --ns-header-adaptive-accent: var(--ns-header-local-accent);
      --ns-header-adaptive-on-accent: var(--ns-header-local-on-accent);
      --ns-header-adaptive-info: var(--ns-header-local-info);
      --ns-header-adaptive-on-info: var(--ns-header-local-on-info);
      --ns-header-adaptive-success: var(--ns-header-local-success);
      --ns-header-adaptive-on-success: var(--ns-header-local-on-success);
      --ns-header-adaptive-warning: var(--ns-header-local-warning);
      --ns-header-adaptive-on-warning: var(--ns-header-local-on-warning);
      --ns-header-adaptive-critical: var(--ns-header-local-critical);
      --ns-header-adaptive-on-critical: var(--ns-header-local-on-critical);
      --ns-header-adaptive-subtle: var(--ns-header-local-subtle);
      --ns-header-adaptive-highlight: var(--ns-header-local-highlight);
      --ns-header-adaptive-on-highlight: var(--ns-header-local-on-highlight);
      --ns-header-adaptive-inverse-background: var(--ns-header-local-inverse-background);
      --ns-header-adaptive-inverse-foreground: var(--ns-header-local-inverse-foreground);
    }
  }

  body[data-ns-page-atmosphere-transitioning='true']
    ns-header-stack
    :is(.ns-desktop-header, .ns-mobile-header, .ns-header-info-bar, .ns-header-promo, .ns-mega-menu) {
    transition:
      color var(--ns-appearance-transition-duration, 1200ms) var(--ns-appearance-transition-easing, ease),
      background-color var(--ns-appearance-transition-duration, 1200ms) var(--ns-appearance-transition-easing, ease),
      border-color var(--ns-appearance-transition-duration, 1200ms) var(--ns-appearance-transition-easing, ease),
      box-shadow var(--ns-appearance-transition-duration, 1200ms) var(--ns-appearance-transition-easing, ease);
  }

  body[data-ns-page-atmosphere-transitioning='true']
    ns-header-stack
    :is(
      .ns-desktop-header,
      .ns-desktop-header [data-ns-header-sticky-surface],
      .ns-mobile-header[data-ns-header-sticky-surface]
    ) {
    transition:
      color var(--ns-appearance-transition-duration, 1200ms) var(--ns-appearance-transition-easing, ease),
      var(
        --ns-header-surface-transition,
        background-color var(--ns-appearance-transition-duration, 1200ms) var(--ns-appearance-transition-easing, ease)
      ),
      border-color var(--ns-appearance-transition-duration, 1200ms) var(--ns-appearance-transition-easing, ease),
      box-shadow var(--ns-appearance-transition-duration, 1200ms) var(--ns-appearance-transition-easing, ease);
  }

  @media (prefers-reduced-motion: reduce) {
    body,
    body::before,
    body::after {
      transition: none;
    }

    body[data-ns-page-atmosphere-active='true']
      :is(
        [data-ns-section-surface][data-ns-page-atmosphere-owner='true'],
        [data-ns-section-surface][data-ns-page-atmosphere-participant='true']
      ),
    body[data-ns-page-atmosphere-ready='true']
      :is(
        [data-ns-section-surface][data-ns-page-atmosphere-capable='true'],
        [data-ns-section-surface]:has(> [data-ns-section-appearance-source][data-ns-page-atmosphere-follower='true'])
      ) {
      transition: none !important;
    }

    ns-product-card.ns-product-card--appearance-inverted {
      transition: none !important;
    }

    ns-header-stack :is(.ns-desktop-header, .ns-mobile-header, .ns-header-info-bar, .ns-header-promo, .ns-mega-menu) {
      transition: none;
    }
  }
}
/* END_SNIPPET:_styles-page-atmosphere-styles */

/* START_SNIPPET:_styles-page-navigation-styles (INDEX:250) */
@layer components {
  .ns-page-navigation-target {
    display: block;
    inline-size: 0;
    block-size: 0;
    scroll-margin-block-start: calc(var(--ns-header-stack-height, 0px) + var(--ns-space-16));
  }

  .ns-page-navigation {
    --ns-page-nav-shadow: var(--ns-appearance-dark-background);
    --ns-page-nav-open: var(--ns-appearance-dark-foreground);
    --ns-page-nav-muted: color-mix(in srgb, var(--ns-page-nav-open) 58.8%, var(--ns-page-nav-shadow));
    --ns-page-nav-progress: color-mix(in srgb, var(--ns-page-nav-open) 53.7%, var(--ns-page-nav-shadow));
    --ns-page-nav-current: var(--ns-page-nav-muted);
    --ns-page-nav-ring: var(--ns-page-nav-progress);
    --ns-page-nav-halo-opacity: 0.35;
    --ns-page-nav-origin-x: 0%;
    position: fixed;
    z-index: 35;
    inset-block-end: 0;
    isolation: isolate;
    padding-block: var(--ns-space-16);
    pointer-events: none;
    animation: ns-page-navigation-enter 0.3s ease-out both;
  }

  .ns-page-navigation[data-ns-page-navigation-position='left'] {
    inset-inline-start: 0;
    padding-inline: var(--ns-space-20) var(--ns-space-10);
  }

  .ns-page-navigation[data-ns-page-navigation-position='right'] {
    --ns-page-nav-origin-x: 100%;
    inset-inline-end: 0;
    padding-inline: var(--ns-space-10) var(--ns-space-20);
  }

  .ns-page-navigation:is(:hover, :focus-within) {
    --ns-page-nav-current: var(--ns-page-nav-open);
    --ns-page-nav-ring: color-mix(in srgb, var(--ns-page-nav-open) 70%, transparent);
    --ns-page-nav-halo-opacity: 0.1;
  }

  .ns-page-navigation::before {
    position: absolute;
    z-index: -1;
    inset-block-end: 0;
    inline-size: 180%;
    aspect-ratio: 1;
    background: radial-gradient(
      circle at var(--ns-page-nav-origin-x) 100%,
      var(--ns-page-nav-shadow),
      color-mix(in srgb, var(--ns-page-nav-shadow) 75%, transparent) 33%,
      transparent 60%
    );
    opacity: 0;
    content: '';
    transform: scale(0.8);
    transform-origin: var(--ns-page-nav-origin-x) 100%;
    transition:
      transform 0.3s,
      opacity 0.3s;
  }

  .ns-page-navigation[data-ns-page-navigation-position='left']::before {
    inset-inline-start: 0;
  }

  .ns-page-navigation[data-ns-page-navigation-position='right']::before {
    inset-inline-end: 0;
  }

  .ns-page-navigation:is(:hover, :focus-within)::before {
    opacity: 1;
    transform: scale(1);
    transition:
      transform 200ms,
      opacity 200ms;
  }

  .ns-page-navigation__list {
    inline-size: 21px;
    max-block-size: calc(100vh - 34px);
    margin: 0;
    padding: 0;
    overflow-y: auto;
    list-style: none;
    scrollbar-width: none;
  }

  .ns-page-navigation:is(:hover, :focus-within) .ns-page-navigation__list {
    inline-size: max-content;
  }

  .ns-page-navigation__link {
    display: flex;
    align-items: center;
    padding-block: var(--ns-space-6);
    color: var(--ns-page-nav-current);
    text-decoration: none;
    pointer-events: auto;
  }

  .ns-page-navigation[data-ns-page-navigation-position='right'] .ns-page-navigation__link {
    flex-direction: row-reverse;
  }

  .ns-page-navigation__indicator {
    --ns-page-navigation-progress: 0turn;
    position: relative;
    display: grid;
    flex: 0 0 10px;
    inline-size: 10px;
    block-size: 10px;
    margin-inline: var(--ns-space-8);
    place-items: center;
  }

  .ns-page-navigation__indicator::before,
  .ns-page-navigation__indicator::after {
    position: absolute;
    inset-block-start: 50%;
    inset-inline-start: 50%;
    border-radius: var(--ns-radius-slider-dot, var(--ns-radius-pill));
    opacity: 0;
    content: '';
    transform: translate(-50%, -50%);
    transition: opacity 160ms ease;
  }

  .ns-page-navigation__indicator::before {
    inline-size: 18px;
    block-size: 18px;
    background: conic-gradient(var(--ns-page-nav-ring) var(--ns-page-navigation-progress), transparent 0);
    mask: radial-gradient(farthest-side, transparent calc(100% - 2px), var(--ns-color-foreground) 0);
  }

  .ns-page-navigation__indicator::after {
    inline-size: 14px;
    block-size: 14px;
    border: 1.6px solid currentColor;
  }

  .ns-page-navigation__dot {
    inline-size: 3px;
    block-size: 3px;
    border-radius: var(--ns-radius-slider-dot, var(--ns-radius-pill));
    background: currentColor;
  }

  .ns-page-navigation__link[aria-current='location'] .ns-page-navigation__indicator::before {
    opacity: 1;
  }

  .ns-page-navigation__link[aria-current='location'] .ns-page-navigation__indicator::after {
    opacity: var(--ns-page-nav-halo-opacity);
  }

  .ns-page-navigation__label {
    overflow: hidden;
    max-inline-size: 0;
    padding-inline-start: var(--ns-space-4);
    opacity: 0;
    font-size: var(--ns-type-caption-size);
    line-height: 1.27;
    letter-spacing: 0.08em;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
    transform: translateX(-20px);
    transition:
      max-inline-size 0.3s,
      opacity 0.3s,
      transform 0.3s;
  }

  .ns-page-navigation[data-ns-page-navigation-position='right'] .ns-page-navigation__label {
    padding-inline: 0 var(--ns-space-4);
    transform: translateX(20px);
  }

  .ns-page-navigation:is(:hover, :focus-within) .ns-page-navigation__label {
    max-inline-size: min(18rem, 60vw);
    opacity: 1;
    transform: translateX(0);
  }

  .ns-page-navigation:is(:hover, :focus-within)
    .ns-page-navigation__link:is(:hover, :focus-visible)
    .ns-page-navigation__label {
    transform: translateX(8px);
    transition: transform 400ms cubic-bezier(0.14, 0.69, 0.41, 1);
  }

  .ns-page-navigation[data-ns-page-navigation-position='right']:is(:hover, :focus-within)
    .ns-page-navigation__link:is(:hover, :focus-visible)
    .ns-page-navigation__label {
    transform: translateX(-8px);
  }

  @keyframes ns-page-navigation-enter {
    from {
      opacity: 0;
      transform: translateY(12px);
    }

    to {
      opacity: 1;
      transform: translateY(0);
    }
  }

  @media (prefers-reduced-motion: reduce) {
    .ns-page-navigation,
    .ns-page-navigation::before,
    .ns-page-navigation__indicator::before,
    .ns-page-navigation__indicator::after,
    .ns-page-navigation__label {
      animation: none;
      transition: none;
    }
  }
}
/* END_SNIPPET:_styles-page-navigation-styles */

/* START_SNIPPET:_styles-password-styles (INDEX:251) */
@layer components {
  .ns-password {
    --ns-password-mobile-main-padding-block-start: 7rem;

    position: relative;
    min-block-size: 100svh;
    overflow: clip;
    color: var(--ns-color-foreground);
    background: var(--ns-color-background);
  }

  .ns-password__brand {
    position: absolute;
    z-index: 2;
    inset-block-start: 1.25rem;
    inset-inline-start: 1.25rem;
    display: block;
    inline-size: min(20rem, calc(100% - 7rem));
    color: var(--ns-color-foreground);
  }

  .ns-password__brand-image {
    display: block;
    inline-size: min(3.95rem, 100%);
    block-size: auto;
  }

  .ns-password__shop-name {
    display: block;
    color: currentcolor;
    font-size: var(--ns-type-large-size);
    font-weight: var(--ns-type-weight-heading);
    line-height: var(--ns-type-large-line-height);
    overflow-wrap: anywhere;
  }

  .ns-password__access {
    position: absolute;
    z-index: 3;
    inset-block-start: 1.125rem;
    inset-inline-end: 1.25rem;
  }

  .ns-password__access-toggle {
    display: grid;
    place-items: center;
    inline-size: 1.5rem;
    block-size: 1.5rem;
    margin-inline-start: auto;
    cursor: pointer;
    list-style: none;
  }

  .ns-password__access-toggle::-webkit-details-marker {
    display: none;
  }

  .ns-password__access-toggle:focus-visible {
    outline: 2px solid var(--ns-color-accent);
    outline-offset: 2px;
  }

  .ns-password__lock {
    display: block;
    inline-size: 1rem;
    block-size: 1rem;
  }

  .ns-password__lock svg {
    display: block;
    inline-size: 100%;
    block-size: 100%;
  }

  .ns-password__access:not([open]) > .ns-password__access-panel {
    display: none;
  }

  .ns-password__access:not([open]):is(:hover, :focus-within) > .ns-password__access-panel {
    display: block;
  }

  .ns-password__access-panel {
    inline-size: 16.25rem;
    margin-block-start: var(--ns-space-6);
    padding: var(--ns-space-32) var(--ns-space-20) var(--ns-space-20);
    border-radius: var(--ns-radius-content-panel, var(--ns-radius-2xl));
    background: var(--ns-color-background);
    box-shadow: 0 0 0.625rem color-mix(in srgb, var(--ns-color-foreground) 20%, transparent);
  }

  .ns-password__access-form {
    display: grid;
    gap: var(--ns-space-10);
  }

  .ns-password__access-label {
    margin-block-end: calc(-1 * var(--ns-space-6));
    font-size: var(--ns-type-caption-size);
    line-height: 1.5;
    text-transform: uppercase;
  }

  .ns-password__access-input {
    inline-size: 100%;
    block-size: var(--ns-text-control-block-size);
    padding-inline: var(--ns-space-16);
    color: var(--ns-color-foreground);
    background: var(--ns-color-surface-alt);
    border: 1px solid var(--ns-color-border);
    border-radius: var(--ns-radius-input, 0px);
    outline: 0;
  }

  .ns-password__access-input:focus-visible {
    border-color: var(--ns-color-foreground);
    outline: 1px solid var(--ns-color-foreground);
    outline-offset: -1px;
  }

  .ns-password__access-error {
    margin: 0;
    color: var(--ns-color-critical);
    font-size: var(--ns-type-caption-size);
    line-height: 1.4;
  }

  .ns-password__access-submit {
    inline-size: 100%;
    min-block-size: 2.1875rem;
  }

  .ns-password__main {
    display: grid;
    grid-template-columns: 17.5rem 30rem;
    align-items: center;
    justify-content: space-between;
    min-block-size: 100svh;
    padding: var(--ns-space-80) 11.39vw var(--ns-space-64) 14.58vw;
  }

  .ns-password__content {
    display: grid;
    align-content: center;
  }

  .ns-password__heading {
    max-inline-size: 17.5rem;
    margin: 0;
    font-size: var(--ns-type-medium-size);
    font-weight: var(--ns-type-weight-heading);
    line-height: var(--ns-type-medium-line-height);
  }

  .ns-password__description {
    margin: var(--ns-space-6) 0 var(--ns-space-28);
    color: var(--ns-color-muted);
    font-size: var(--ns-type-body-size);
    line-height: 1.4;
  }

  .ns-password__newsletter {
    display: grid;
    gap: var(--ns-space-12);
  }

  .ns-password__newsletter-input {
    inline-size: 100%;
    block-size: var(--ns-text-control-block-size);
    padding-inline: var(--ns-space-16);
    color: var(--ns-color-foreground);
    font-size: var(--ns-type-input-size);
    background: var(--ns-color-background);
    border: 1px solid var(--ns-color-border);
    border-radius: var(--ns-radius-input, 0px);
    outline: 0;
  }

  .ns-password__newsletter-input::placeholder {
    color: var(--ns-color-muted);
    opacity: 1;
    text-transform: capitalize;
  }

  .ns-password__newsletter-input:focus-visible {
    border-color: var(--ns-color-foreground);
    outline: 1px solid var(--ns-color-foreground);
    outline-offset: -1px;
  }

  .ns-password__newsletter-submit {
    inline-size: 100%;
    min-block-size: 2.1875rem;
  }

  .ns-password__newsletter .ns-newsletter-signup__message {
    margin: 0;
    color: var(--ns-color-muted);
    font-size: var(--ns-type-caption-size);
    line-height: 1.4;
  }

  .ns-password__social {
    display: flex;
    gap: var(--ns-space-16);
    margin: var(--ns-space-40) 0 0;
    padding: 0;
    list-style: none;
  }

  .ns-password__social a {
    display: grid;
    place-items: center;
    inline-size: 1rem;
    block-size: 1rem;
    color: var(--ns-color-foreground);
  }

  .ns-password__social svg {
    inline-size: 0.8125rem;
    block-size: 0.8125rem;
  }

  .ns-password__media {
    inline-size: 30rem;
    aspect-ratio: 24 / 35;
    overflow: hidden;
    border-radius: var(--ns-radius-media, 0px);
    background: var(--ns-color-surface-alt);
  }

  .ns-password__hero {
    display: block;
    inline-size: 100%;
    block-size: 100%;
    object-fit: cover;
  }

  .ns-password__hero--placeholder {
    color: var(--ns-color-muted);
    background: var(--ns-color-surface-alt);
  }

  .ns-password__footer {
    position: absolute;
    inset-block-end: 0.1rem;
    inset-inline-start: 1.3rem;
    color: var(--ns-color-muted);
    font-size: var(--ns-type-caption-size);
    line-height: 1.5;
  }

  .ns-password__footer a {
    color: inherit;
    text-underline-offset: 0.1em;
  }

  @media (max-width: 74.99rem) {
    .ns-password__main {
      grid-template-columns: minmax(15rem, 17.5rem) minmax(20rem, 30rem);
      --ns-password-main-gap-max: 8rem;

      gap: clamp(var(--ns-space-48), 8vw, var(--ns-password-main-gap-max));
      padding-inline: max(var(--ns-space-48), var(--ns-page-gutter));
    }
  }

  @media (max-width: 47.99rem) {
    .ns-password {
      overflow: visible;
    }

    .ns-password__access {
      inset-inline-end: 1rem;
    }

    .ns-password__access-panel {
      inline-size: min(16.25rem, calc(100vw - 2rem));
    }

    .ns-password__main {
      grid-template-columns: minmax(0, 1fr);
      gap: var(--ns-space-40);
      min-block-size: auto;
      padding: var(--ns-password-mobile-main-padding-block-start) var(--ns-space-20) var(--ns-space-48);
    }

    .ns-password__content,
    .ns-password__media {
      inline-size: min(100%, 30rem);
      margin-inline: auto;
    }

    .ns-password__content {
      order: 1;
    }

    .ns-password__media {
      order: 2;
    }

    .ns-password__footer {
      position: static;
      padding: 0 var(--ns-space-20) var(--ns-space-20);
      text-align: center;
    }
  }
}
/* END_SNIPPET:_styles-password-styles */

/* START_SNIPPET:_styles-popup-styles (INDEX:252) */
@layer components {
  .ns-popup-section {
    display: contents;
  }

  .ns-popup-overlay .ns-overlay__body {
    width: 100%;
    height: 100%;
    border-radius: inherit;
  }

  .ns-popup-overlay .ns-overlay__panel {
    border-radius: var(--ns-radius-popup, var(--ns-radius-3xl));
  }

  .ns-popup-overlay--visual-content-padding .ns-overlay__body {
    padding: 0;
  }

  .ns-popup-overlay--visual-content-padding .ns-popup-composition > .ns-visual-content {
    padding-block: var(--ns-overlay-padding);
    padding-inline: var(--ns-overlay-padding);
  }

  .ns-popup-overlay[data-ns-placement='left'] .ns-overlay__panel,
  .ns-popup-overlay[data-ns-placement='start'] .ns-overlay__panel {
    border-start-start-radius: 0;
    border-end-start-radius: 0;
  }

  .ns-popup-overlay[data-ns-placement='right'] .ns-overlay__panel,
  .ns-popup-overlay[data-ns-placement='end'] .ns-overlay__panel {
    border-start-end-radius: 0;
    border-end-end-radius: 0;
  }

  .ns-popup-overlay[data-ns-placement='top'] .ns-overlay__panel {
    border-start-start-radius: 0;
    border-start-end-radius: 0;
  }

  .ns-popup-overlay[data-ns-placement='bottom'] .ns-overlay__panel {
    border-end-start-radius: 0;
    border-end-end-radius: 0;
  }

  .ns-popup-overlay--fullscreen .ns-overlay__panel,
  .ns-popup-overlay--fullscreen .ns-overlay__body {
    border-radius: 0;
  }

  .ns-popup-overlay .ns-overlay__close {
    z-index: 10;
  }

  .ns-popup-surface {
    width: 100%;
    height: 100%;
    overflow: hidden;
  }

  .ns-popup-overlay[data-ns-auto-height='true'] .ns-popup-surface {
    min-height: 100%;
    height: auto;
    overflow: visible;
  }

  .ns-popup-overlay--product-quick-view .ns-overlay__body {
    padding: 0;
    overflow: hidden;
  }

  .ns-product-quick-view-fragment {
    display: grid;
    grid-template-rows: minmax(0, 1fr) auto;
    min-height: 100%;
    height: 100%;
    container: ns-product-quick-view / inline-size;
  }

  .ns-product-quick-view__content {
    --ns-content-width: 100%;

    min-height: 0;
    overflow: auto;
    overscroll-behavior: contain;
  }

  .ns-popup-overlay--product-quick-view .ns-product-page-shell {
    inline-size: 100%;
  }

  .ns-popup-overlay--product-quick-view .ns-product-page {
    --ns-product-media-track: 1.08fr;
    --ns-product-info-track: 1fr;
    --ns-product-info-track-min: 0px;
    --ns-product-info-max-inline-size: 100%;
    --ns-product-layout-padding-inline: var(--ns-space-30);
    --ns-product-layout-padding-block-start: var(--ns-space-30);
  }

  .ns-popup-overlay--product-quick-view .ns-product-page__info {
    inline-size: 100%;
    max-inline-size: none;
  }

  .ns-product-quick-view__footer {
    padding-block: var(--ns-space-8);
    padding-block-end: max(var(--ns-space-8), env(safe-area-inset-bottom));
    padding-inline: var(--ns-space-30);
    border-block-start: 1px solid var(--ns-color-border);
    background: var(--ns-overlay-panel-background, var(--ns-color-background));
  }

  .ns-popup-overlay--product-quick-view .ns-product-page__layout {
    inline-size: 100%;
    padding: var(--ns-space-30);
  }

  .ns-product-quick-view__full-details {
    display: inline-flex;
    min-block-size: 2.75rem;
    align-items: center;
    color: var(--ns-color-foreground);
    font-size: var(--ns-type-caption-size);
    font-weight: var(--ns-font-body-weight);
    text-decoration: underline;
    text-underline-offset: 0.18em;
  }

  @container ns-product-quick-view (min-width: 42rem) {
    .ns-product-quick-view__footer {
      display: grid;
      grid-template-columns: minmax(0, 1.08fr) minmax(0, 1fr);
      gap: clamp(var(--ns-space-24), 2.5cqi, var(--ns-space-30));
    }

    .ns-product-quick-view__full-details {
      grid-column: 2;
    }
  }

  @media (max-width: 767px) {
    .ns-popup-overlay--product-quick-view .ns-product-page {
      --ns-product-layout-padding-inline: var(--ns-space-16);
      --ns-product-layout-padding-block-start: var(--ns-space-16);
    }

    .ns-product-quick-view__footer {
      padding-inline: var(--ns-space-16);
    }

    .ns-popup-overlay--product-quick-view .ns-product-page__layout {
      padding: var(--ns-space-16);
    }
  }

  @media (max-width: 1024px) {
    .ns-popup-overlay--product-quick-view[data-ns-mobile-placement='bottom'] .ns-overlay__panel {
      border-end-start-radius: 0;
      border-end-end-radius: 0;
    }

    .ns-popup-overlay--visual-content-padding .ns-popup-composition > .ns-visual-content {
      padding-block: var(--ns-overlay-mobile-padding, var(--ns-overlay-padding));
      padding-inline: var(--ns-overlay-mobile-padding, var(--ns-overlay-padding));
    }
  }

  .ns-popup-composition > .ns-visual-content {
    position: relative;
    inset: auto;
    z-index: 2;
    min-height: 100%;
  }

  .ns-popup-composition > .ns-visual-media {
    height: 100%;
    min-height: 100%;
  }

  .ns-popup-composition .ns-visual-media__placeholder {
    display: none;
  }

  .ns-popup-composition .ns-newsletter-signup,
  .ns-popup-composition .ns-newsletter-signup__form {
    width: 100%;
  }

  .ns-popup-dismiss {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: var(--ns-space-8);
    width: 100%;
    color: inherit;
  }

  .ns-popup-dismiss__button {
    padding: 0;
    border: 0;
    border-bottom: 1px solid currentColor;
    background: transparent;
    color: inherit;
    font: inherit;
    cursor: pointer;
  }

  .ns-popup-dismiss__checkbox {
    display: inline-flex;
    align-items: center;
    gap: var(--ns-space-8);
    cursor: pointer;
  }

  .ns-popup-dismiss__note {
    flex-basis: 100%;
    margin: 0;
    text-align: center;
  }
}
/* END_SNIPPET:_styles-popup-styles */

/* START_SNIPPET:_styles-product-card-collection-styles (INDEX:253) */
@layer components {
  .ns-product-card-collection {
    --ns-radius-density-active: var(--ns-radius-density-wide-desktop, var(--ns-radius-4xl));
    --ns-product-card-collection-columns-narrow-active: var(--ns-product-card-collection-columns-narrow, 2);
    --ns-product-card-collection-gap-narrow-active: var(--ns-product-card-collection-gap, var(--ns-space-16));
    --ns-product-card-collection-carousel-columns: var(--ns-product-card-collection-columns, 4);
    --ns-product-card-collection-carousel-gap: var(--ns-product-card-collection-gap, var(--ns-space-16));
    --ns-product-card-collection-preview-offset: 0px;

    display: block;
    width: 100%;
    min-width: 0;
    container-type: inline-size;
  }

  .ns-product-card-collection ns-product-source {
    display: block;
    width: 100%;
    min-width: 0;
  }

  .ns-product-card-collection__heading {
    margin-block: 0 var(--ns-space-16);
    font-size: var(--ns-type-medium-size);
    font-weight: var(--ns-type-weight-heading);
    line-height: var(--ns-type-medium-line-height);
  }

  .ns-product-card-collection__viewport {
    position: relative;
    min-width: 0;
  }

  .ns-product-card-collection__track {
    display: grid;
    grid-template-columns: repeat(var(--ns-product-card-collection-columns, 4), minmax(0, 1fr));
    gap: var(--ns-product-card-collection-gap, var(--ns-space-16));
    min-width: 0;
  }

  .ns-product-card-collection__track > [data-ns-slider-item] {
    min-width: 0;
  }

  .ns-product-card-collection__empty {
    color: var(--ns-color-muted);
  }

  .ns-product-card-collection--all .ns-product-card-collection__track {
    display: flex;
    gap: var(--ns-product-card-collection-carousel-gap);
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-snap-type: inline mandatory;
    scrollbar-width: none;
  }

  .ns-product-card-collection--all .ns-product-card-collection__track::-webkit-scrollbar {
    display: none;
  }

  .ns-product-card-collection--all .ns-product-card-collection__track > [data-ns-slider-item] {
    flex: 0 0
      calc(
        (
            100% - (var(--ns-product-card-collection-carousel-columns) - 1) *
              var(--ns-product-card-collection-carousel-gap) - var(--ns-product-card-collection-preview-offset)
          ) /
          var(--ns-product-card-collection-carousel-columns)
      );
    scroll-snap-align: start;
  }

  .ns-product-card-collection[data-ns-next-item-preview] {
    --ns-slider-next-item-preview-size: min(
      clamp(3rem, 8vi, 7rem),
      calc(
        (
            100% - (var(--ns-product-card-collection-carousel-columns) - 1) *
              var(--ns-product-card-collection-carousel-gap)
          ) /
          var(--ns-product-card-collection-carousel-columns) * 0.6
      )
    );
  }

  .ns-product-card-collection[data-ns-next-item-preview][data-ns-slider-preview-active] {
    --ns-product-card-collection-preview-offset: calc(
      var(--ns-slider-next-item-preview-size) + var(--ns-product-card-collection-carousel-gap)
    );
  }

  .ns-product-card-collection[data-ns-next-item-preview] .ns-product-card-collection__track {
    --ns-slider-page-size: var(--ns-product-card-collection-carousel-columns);
  }

  .ns-product-card-collection--all[data-ns-next-item-preview][data-ns-slider-preview-active]
    .ns-product-card-collection__track
    > [data-ns-slider-item]:last-child {
    margin-inline-end: var(--ns-product-card-collection-preview-offset);
  }

  @media (min-width: 768px) and (max-width: 1024px) {
    .ns-product-card-collection {
      --ns-radius-density-active: var(--ns-radius-density-tablet, var(--ns-radius-4xl));
      --ns-product-card-collection-columns-narrow-active: var(--ns-product-card-collection-columns-tablet-narrow, 2);
      --ns-product-card-collection-gap-narrow-active: var(--ns-product-card-collection-gap-tablet, var(--ns-space-12));
      --ns-product-card-collection-carousel-columns: var(--ns-product-card-collection-columns-tablet, 2);
      --ns-product-card-collection-carousel-gap: var(--ns-product-card-collection-gap-tablet, var(--ns-space-12));
    }

    .ns-product-card-collection__track {
      grid-template-columns: repeat(var(--ns-product-card-collection-columns-tablet, 2), minmax(0, 1fr));
      gap: var(--ns-product-card-collection-gap-tablet, var(--ns-space-12));
    }
  }

  @media (min-width: 768px) {
    .ns-product-card-collection--mobile ns-slider-navigation {
      display: none;
    }
  }

  @media (max-width: 767px) {
    .ns-product-card-collection {
      --ns-radius-density-active: var(--ns-radius-density-mobile, var(--ns-radius-4xl));
      --ns-product-card-collection-columns-narrow-active: var(--ns-product-card-collection-columns-mobile-narrow, 2);
      --ns-product-card-collection-gap-narrow-active: var(--ns-product-card-collection-gap-mobile, var(--ns-space-10));
      --ns-product-card-collection-carousel-columns: var(--ns-product-card-collection-columns-mobile, 2);
      --ns-product-card-collection-carousel-gap: var(--ns-product-card-collection-gap-mobile, var(--ns-space-10));
    }

    .ns-product-card-collection__track {
      grid-template-columns: repeat(var(--ns-product-card-collection-columns-mobile, 2), minmax(0, 1fr));
      gap: var(--ns-product-card-collection-gap-mobile, var(--ns-space-10));
    }

    .ns-product-card-collection:is(.ns-product-card-collection--all, .ns-product-card-collection--mobile)
      .ns-product-card-collection__track {
      display: flex;
      gap: var(--ns-product-card-collection-carousel-gap);
      overflow-x: auto;
      overscroll-behavior-inline: contain;
      scroll-snap-type: inline mandatory;
      scrollbar-width: none;
    }

    .ns-product-card-collection:is(.ns-product-card-collection--all, .ns-product-card-collection--mobile)
      .ns-product-card-collection__track::-webkit-scrollbar {
      display: none;
    }

    .ns-product-card-collection:is(.ns-product-card-collection--all, .ns-product-card-collection--mobile)
      .ns-product-card-collection__track
      > [data-ns-slider-item] {
      flex: 0 0
        calc(
          (
              100% - (var(--ns-product-card-collection-carousel-columns) - 1) *
                var(--ns-product-card-collection-carousel-gap) - var(--ns-product-card-collection-preview-offset)
            ) /
            var(--ns-product-card-collection-carousel-columns)
        );
      scroll-snap-align: start;
    }

    .ns-product-card-collection--mobile[data-ns-next-item-preview][data-ns-slider-preview-active]
      .ns-product-card-collection__track
      > [data-ns-slider-item]:last-child {
      margin-inline-end: var(--ns-product-card-collection-preview-offset);
    }
  }

  @container (max-width: 30rem) {
    .ns-product-card-collection {
      --ns-product-card-collection-carousel-columns: var(--ns-product-card-collection-columns-narrow-active);
      --ns-product-card-collection-carousel-gap: var(--ns-product-card-collection-gap-narrow-active);
    }

    .ns-product-card-collection__track {
      grid-template-columns: repeat(var(--ns-product-card-collection-columns-narrow-active), minmax(0, 1fr));
    }
  }

  @container (max-width: 20rem) {
    .ns-product-card-collection {
      --ns-product-card-collection-carousel-columns: 1;
    }

    .ns-product-card-collection__track {
      grid-template-columns: minmax(0, 1fr);
    }
  }
}
/* END_SNIPPET:_styles-product-card-collection-styles */

/* START_SNIPPET:_styles-product-card-inverse-styles (INDEX:254) */
@layer components {
  @supports (color: light-dark(var(--ns-color-background), var(--ns-color-foreground))) {
    ns-product-card.ns-product-card--appearance-inverted {
      color-scheme: var(--ns-product-card-inverse-color-scheme);
      --ns-color-background: var(--ns-color-product-card-inverse-background);
      --ns-color-foreground: light-dark(var(--ns-appearance-light-foreground), var(--ns-appearance-dark-foreground));
      --ns-color-heading: light-dark(var(--ns-appearance-light-heading), var(--ns-appearance-dark-heading));
      --ns-color-surface: light-dark(var(--ns-appearance-light-surface), var(--ns-appearance-dark-surface));
      --ns-color-surface-alt: light-dark(var(--ns-appearance-light-surface-alt), var(--ns-appearance-dark-surface-alt));
      --ns-color-product-card-surface: var(--ns-color-product-card-inverse-surface);
      --ns-color-media-overlay: light-dark(
        var(--ns-appearance-light-media-overlay),
        var(--ns-appearance-dark-media-overlay)
      );
      --ns-color-primary: light-dark(var(--ns-appearance-light-primary), var(--ns-appearance-dark-primary));
      --ns-color-on-primary: light-dark(var(--ns-appearance-light-on-primary), var(--ns-appearance-dark-on-primary));
      --ns-color-secondary: light-dark(var(--ns-appearance-light-secondary), var(--ns-appearance-dark-secondary));
      --ns-color-on-secondary: light-dark(
        var(--ns-appearance-light-on-secondary),
        var(--ns-appearance-dark-on-secondary)
      );
      --ns-color-link: light-dark(var(--ns-appearance-light-link), var(--ns-appearance-dark-link));
      --ns-color-border: light-dark(var(--ns-appearance-light-border), var(--ns-appearance-dark-border));
      --ns-color-muted: light-dark(var(--ns-appearance-light-muted), var(--ns-appearance-dark-muted));
      --ns-color-on-muted: light-dark(var(--ns-appearance-light-on-muted), var(--ns-appearance-dark-on-muted));
      --ns-color-subtle: light-dark(var(--ns-appearance-light-subtle), var(--ns-appearance-dark-subtle));
      --ns-button-background: var(--ns-color-primary);
      --ns-button-border-color: var(--ns-color-primary);
      --ns-button-color: var(--ns-color-on-primary);
    }
  }
}
/* END_SNIPPET:_styles-product-card-inverse-styles */

/* START_SNIPPET:_styles-product-card-options-styles (INDEX:255) */
@layer components {
  .ns-product-card__options {
    display: grid;
    gap: var(--ns-space-10);
    margin-block-end: var(--ns-space-15);
  }

  .ns-product-card__option {
    border: 0;
    padding: 0;
  }

  .ns-product-card__option-values {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: var(--ns-product-card-content-justify);
    gap: var(--ns-space-8);
  }

  .ns-product-card:not([data-ns-card-options-expanded])
    :is([data-ns-compact-hidden-group], [data-ns-compact-hidden-value]),
  .ns-product-card :is([data-ns-hidden-unavailable], [data-ns-option-empty]) {
    display: none;
  }

  .ns-product-card__option-overflow {
    font-size: var(--ns-type-label-size);
  }

  .ns-product-card__options-reveal {
    display: none;
    align-items: center;
    min-block-size: 1.75rem;
    margin-block: calc(-1 * var(--ns-space-4));
    border: 0;
    padding: var(--ns-space-4) 0;
    background: transparent;
    color: var(--ns-color-muted);
    cursor: pointer;
    font: inherit;
    font-size: var(--ns-type-caption-size);
    text-decoration: underline;
    text-underline-offset: 0.18em;
  }

  html[data-ns-js] .ns-product-card__options-reveal {
    display: inline-flex;
  }

  .ns-product-card__options-reveal[hidden] {
    display: none;
  }

  @media (any-hover: hover) and (any-pointer: fine) {
    .ns-product-card__options-reveal:not([hidden]) {
      visibility: hidden;
      pointer-events: none;
    }

    .ns-product-card:is(:hover, :focus-within) .ns-product-card__options-reveal:not([hidden]) {
      visibility: visible;
      pointer-events: auto;
    }
  }

  @media (any-pointer: coarse) {
    .ns-product-card__options-reveal:not([hidden]) {
      visibility: visible;
      pointer-events: auto;
    }
  }

  .ns-product-card__option-value {
    position: relative;
    display: grid;
    place-items: center;
    min-inline-size: 1.5625rem;
    block-size: 1.5625rem;
    padding-inline: var(--ns-space-8);
    border: 1px solid var(--ns-color-border);
    border-radius: var(--ns-radius-text-swatch-small, var(--ns-radius-md));
    background: var(--ns-color-background);
    color: var(--ns-color-muted);
    cursor: pointer;
    font-size: var(--ns-type-label-size);
  }

  .ns-product-card__option-value--swatch {
    min-inline-size: 1.125rem;
    inline-size: 1.125rem;
    block-size: 1.125rem;
    padding: 0;
    border: 1px solid var(--ns-color-border);
    border-radius: var(--ns-radius-color-swatch, var(--ns-radius-pill));
    background-color: var(--ns-swatch-color, var(--ns-color-surface));
    background-image: var(--ns-swatch-image, none);
    background-position: center;
    background-size: cover;
    cursor: pointer;
  }

  .ns-product-card__option-value--image {
    inline-size: 2.875rem;
    block-size: 2.875rem;
    padding: 0;
    overflow: hidden;
    border-radius: var(--ns-radius-image-swatch-small, var(--ns-radius-md));
  }

  .ns-product-card__option-value--image img {
    inline-size: 100%;
    block-size: 100%;
    object-fit: cover;
    border-radius: inherit;
  }

  .ns-product-card__option-value--selected {
    border-color: var(--ns-color-foreground);
    color: var(--ns-color-foreground);
  }

  .ns-product-card__option-value--swatch.ns-product-card__option-value--selected {
    outline: 1px solid var(--ns-color-foreground);
    outline-offset: 2px;
  }

  .ns-product-card__option-value--unavailable {
    color: var(--ns-color-muted);
    text-decoration: line-through;
  }
}
/* END_SNIPPET:_styles-product-card-options-styles */

/* START_SNIPPET:_styles-product-card-styles (INDEX:256) */
@layer components {
  ns-product-card,
  .ns-product-card__media-block,
  .ns-product-card__media,
  .ns-product-card__media-link,
  .ns-product-card__media-track,
  .ns-product-card__information,
  .ns-product-card__content,
  .ns-product-card__form,
  ns-countdown {
    display: block;
  }

  .ns-product-card {
    --ns-product-card-content-text-align: left;
    --ns-product-card-content-justify: left;
    --ns-product-card-media-radius-base: var(--ns-radius-product-card-media, var(--ns-radius-media, 0px));
    --ns-product-card-surface-radius: min(
      var(--ns-product-card-media-radius-base),
      var(--ns-radius-density-active, var(--ns-radius-4xl)),
      max(var(--ns-radius-sm), 8cqi)
    );
    --ns-product-card-information-padding: clamp(var(--ns-space-16), 6cqi, var(--ns-space-24));

    position: relative;
    min-inline-size: 0;
    background: var(--ns-color-product-card-surface, var(--ns-color-surface-alt));
    color: var(--ns-color-foreground);
    container-type: inline-size;
    text-align: var(--ns-product-card-content-text-align);
  }

  .ns-product-card[data-ns-card-content-alignment='center'] {
    --ns-product-card-content-text-align: center;
    --ns-product-card-content-justify: center;
  }

  .ns-product-card[data-ns-card-content-alignment='right'] {
    --ns-product-card-content-text-align: right;
    --ns-product-card-content-justify: right;
  }

  .ns-product-card:is(.ns-compact-product-card, .ns-product-card--comparison) {
    --ns-product-card-content-text-align: start;
    --ns-product-card-content-justify: start;
  }

  .ns-u-theme-block-root[data-ns-color-mode='light'] > .ns-product-card,
  .ns-u-theme-block-root[data-ns-color-mode='dark'] > .ns-product-card {
    background: var(--ns-color-product-card-surface, var(--ns-color-background));
    color: var(--ns-color-foreground);
  }

  .ns-u-theme-block-root[data-ns-color-mode='light']
    > .ns-product-card:not(:is(.ns-compact-product-card, .ns-product-card--comparison, .ns-mega-menu-product)),
  .ns-u-theme-block-root[data-ns-color-mode='dark']
    > .ns-product-card:not(:is(.ns-compact-product-card, .ns-product-card--comparison, .ns-mega-menu-product)),
  .ns-product-card:not(:is(.ns-compact-product-card, .ns-product-card--comparison)) {
    background: transparent;
  }

  .ns-product-card.ns-compact-product-card {
    --ns-color-product-card-surface: transparent;

    background: transparent;
  }

  .ns-product-card__media {
    position: relative;
    overflow: hidden;
    aspect-ratio: var(--ns-product-card-media-ratio, 25 / 32);
    border-radius: var(--ns-product-card-surface-radius);
    background: var(--ns-color-product-card-surface, var(--ns-color-surface-alt));
  }

  .ns-product-card:not(:is(.ns-compact-product-card, .ns-product-card--comparison, .ns-mega-menu-product))
    .ns-product-card__media {
    background: transparent;
  }

  .ns-product-card:not(:is(.ns-compact-product-card, .ns-product-card--comparison, .ns-mega-menu-product))
    .ns-product-card__media {
    border-end-start-radius: 0;
    border-end-end-radius: 0;
  }

  .ns-product-card__media-block {
    position: relative;
    min-inline-size: 0;
  }

  .ns-compact-product-card .ns-product-card__media {
    --ns-compact-product-card-media-radius: min(var(--ns-product-card-media-radius-base), var(--ns-radius-lg));

    border-radius: var(--ns-compact-product-card-media-radius);
    border-start-start-radius: var(
      --ns-compact-product-media-start-start-radius,
      var(--ns-compact-product-card-media-radius)
    );
    border-end-start-radius: var(
      --ns-compact-product-media-end-start-radius,
      var(--ns-compact-product-card-media-radius)
    );
  }

  .ns-product-card__media-link,
  .ns-product-card__media-frame,
  .ns-product-card__media-track {
    position: absolute;
    inset: 0;
  }

  .ns-product-card__media-track {
    overflow: hidden;
  }

  .ns-product-card__media-frame {
    display: block;
    overflow: hidden;
  }

  .ns-product-card__image,
  .ns-product-card__placeholder {
    position: absolute;
    inset: 0;
    inline-size: 100%;
    block-size: 100%;
    object-fit: var(--ns-product-card-image-fit, cover);
  }

  .ns-product-card__media-frame--incoming {
    z-index: 1;
  }

  .ns-product-card__badges {
    position: absolute;
    z-index: 2;
    inset-block-start: var(--ns-space-10);
    inset-inline-start: var(--ns-space-10);
    display: grid;
    justify-items: start;
    gap: var(--ns-space-4);
    pointer-events: none;
  }

  .ns-product-card .ns-product-badge {
    display: inline-flex;
    align-items: center;
    min-block-size: 1.5rem;
    padding-inline: var(--ns-space-8);
    border-radius: var(--ns-product-badge-radius);
    background: var(--ns-color-surface);
    color: var(--ns-color-foreground);
    font-size: var(--ns-type-label-size);
    line-height: 1;
    text-transform: none;
  }

  .ns-product-card .ns-product-badge--sale {
    background: var(--ns-product-badge-sale-background);
    color: var(--ns-product-badge-sale-text);
  }

  .ns-product-card .ns-product-badge--out-of-stock {
    background: var(--ns-product-badge-out-of-stock-background);
    color: var(--ns-product-badge-out-of-stock-text);
  }

  .ns-product-card .ns-product-badge--new {
    background: var(--ns-product-badge-new-background);
    color: var(--ns-product-badge-new-text);
  }

  .ns-product-card .ns-product-badge--hot {
    background: var(--ns-product-badge-hot-background);
    color: var(--ns-product-badge-hot-text);
  }

  .ns-product-card .ns-product-badge--in-stock {
    background: var(--ns-product-badge-in-stock-background);
    color: var(--ns-product-badge-in-stock-text);
  }

  .ns-product-card .ns-product-badge--preorder {
    background: var(--ns-product-badge-preorder-background);
    color: var(--ns-product-badge-preorder-text);
  }

  .ns-product-card__media-button {
    --ns-radius-icon-button: var(--ns-slider-arrow-radius, var(--ns-radius-xl));

    display: grid;
    place-items: center;
    inline-size: 2.1875rem;
    block-size: 2.1875rem;
    border: 0;
    border-radius: var(--ns-slider-arrow-radius, var(--ns-radius-xl));
    background: color-mix(in srgb, var(--ns-color-background) 80%, transparent);
    color: var(--ns-color-foreground);
  }

  .ns-product-card__quick-view {
    display: inline-flex;
    min-block-size: 2.75rem;
    align-items: center;
    margin-inline-end: auto;
    color: var(--ns-color-muted);
    cursor: pointer;
    font-size: var(--ns-type-caption-size);
    text-decoration: underline;
    text-underline-offset: 0.18em;
  }

  .ns-product-card[data-ns-card-content-alignment='center'] .ns-product-card__quick-view {
    margin-inline: auto;
  }

  .ns-product-card[data-ns-card-content-alignment='right'] .ns-product-card__quick-view {
    margin-inline: auto 0;
  }

  .ns-product-card__quick-view:is(:hover, :focus-visible) {
    color: var(--ns-color-foreground);
  }

  .ns-product-card__quick-view-icon {
    display: none;
  }

  .ns-product-card__quick-view-icon svg,
  .ns-product-card__media-button svg,
  .ns-product-card__add svg {
    inline-size: var(--ns-icon-size-sm);
    block-size: var(--ns-icon-size-sm);
  }

  @media (hover: hover) and (pointer: fine) {
    .ns-product-card__quick-view {
      position: absolute;
      z-index: 2;
      inset-block-start: var(--ns-space-10);
      inset-inline-end: var(--ns-space-10);
      display: grid;
      inline-size: 2.1875rem;
      min-block-size: 0;
      block-size: 2.1875rem;
      margin: 0;
      place-items: center;
      border-radius: var(--ns-radius-icon-button, var(--ns-radius-pill));
      background: color-mix(in srgb, var(--ns-color-background) 80%, transparent);
      color: var(--ns-color-foreground);
      opacity: 0;
      pointer-events: none;
      text-decoration: none;
      transform: translateY(calc(var(--ns-space-4) * -1));
      transition:
        background-color 120ms ease,
        opacity 120ms ease,
        transform 120ms ease;
    }

    .ns-product-card:is(:hover, :focus-within) .ns-product-card__quick-view,
    .ns-product-card__quick-view:focus-visible {
      opacity: 1;
      pointer-events: auto;
      transform: none;
    }

    .ns-product-card__quick-view:is(:hover, :focus-visible) {
      background: var(--ns-color-background);
    }

    .ns-product-card__quick-view-icon {
      display: grid;
    }

    .ns-product-card__quick-view-label {
      display: none;
    }
  }

  .ns-product-card__countdown {
    position: absolute;
    z-index: 2;
    inset-block-end: var(--ns-space-10);
    inset-inline-start: var(--ns-space-10);
  }

  .ns-product-card__countdown .ns-product-countdown__values {
    --ns-product-card-countdown-cell-gap: 1px;

    display: flex;
    gap: var(--ns-product-card-countdown-cell-gap);
    font-variant-numeric: tabular-nums;
  }

  .ns-product-card__countdown .ns-product-countdown__values > span {
    display: grid;
    place-items: center;
    inline-size: 2.1875rem;
    block-size: 2.1875rem;
    background: color-mix(in srgb, var(--ns-color-background) 80%, transparent);
    line-height: 1;
  }

  .ns-product-card__countdown strong {
    font-size: var(--ns-type-body-size);
    font-weight: var(--ns-type-weight-interface);
  }

  .ns-product-card__countdown small {
    color: var(--ns-color-muted);
    font-size: var(--ns-type-caption-size);
    text-transform: uppercase;
  }

  .ns-product-card__media-controls {
    position: absolute;
    z-index: 3;
    inset-block-end: var(--ns-space-10);
    inset-inline-end: var(--ns-space-10);
    display: flex;
    gap: var(--ns-space-4);
  }

  ns-product-card:not(:defined) .ns-product-card__media-controls,
  ns-product-card:not(:defined) .ns-product-card__media-dots {
    display: none;
  }

  .ns-product-card__media-controls[hidden],
  .ns-product-card__media-dots[hidden] {
    display: none;
  }

  .ns-product-card__media-dots {
    --ns-product-card-media-dots-background: var(--ns-appearance-light-background);
    --ns-product-card-media-dots-foreground: var(--ns-appearance-light-foreground);

    position: absolute;
    z-index: 3;
    inset-block-end: var(--ns-space-8);
    inset-inline-start: 50%;
    display: flex;
    max-inline-size: calc(100% - var(--ns-space-20));
    align-items: center;
    justify-content: center;
    direction: ltr;
    padding-inline: var(--ns-space-4);
    border-radius: var(--ns-radius-pill);
    transform: translateX(-50%);
  }

  .ns-product-card__media-dots::before {
    position: absolute;
    z-index: -1;
    inset: 0;
    border-radius: inherit;
    background: color-mix(in srgb, var(--ns-product-card-media-dots-background) 76%, transparent);
    box-shadow: 0 1px 8px color-mix(in srgb, var(--ns-product-card-media-dots-foreground) 18%, transparent);
    content: '';
    opacity: 1;
    pointer-events: none;
    transition: opacity 180ms cubic-bezier(0.22, 0.61, 0.36, 1);
  }

  .ns-product-card__media-dot {
    display: grid;
    flex: 0 1 auto;
    inline-size: clamp(1.5rem, 10cqi, 2.75rem);
    min-inline-size: 1.5rem;
    block-size: clamp(1.5rem, 10cqi, 2.75rem);
    place-items: center;
    padding: 0;
    border: 0;
    background: transparent;
    color: color-mix(in srgb, var(--ns-product-card-media-dots-foreground) 32%, transparent);
    cursor: pointer;
  }

  .ns-product-card__media-dot > span {
    inline-size: 0.3125rem;
    block-size: 0.3125rem;
    border-radius: var(--ns-radius-slider-dot, var(--ns-radius-pill));
    background: currentColor;
    box-shadow:
      0 0 0 1px color-mix(in srgb, var(--ns-product-card-media-dots-background) 88%, transparent),
      0 1px 2px color-mix(in srgb, var(--ns-product-card-media-dots-foreground) 42%, transparent);
    transition:
      inline-size 120ms ease,
      block-size 120ms ease,
      color 120ms ease;
  }

  .ns-product-card__media-dot[aria-current='true'] {
    color: var(--ns-product-card-media-dots-foreground);
  }

  .ns-product-card__media-dot[aria-current='true'] > span {
    inline-size: 0.4375rem;
    block-size: 0.4375rem;
  }

  .ns-product-card__media-dot:focus-visible {
    outline: 2px solid var(--ns-product-card-media-dots-foreground);
    outline-offset: -3px;
  }

  @media (hover: hover) and (pointer: fine) {
    .ns-product-card__media-dots::before {
      opacity: 0;
    }

    .ns-product-card__media:hover .ns-product-card__media-dots::before,
    .ns-product-card__media:focus-within .ns-product-card__media-dots::before {
      opacity: 1;
    }
  }

  ns-product-card:defined .ns-product-card__media--dots {
    touch-action: pan-y;
    overscroll-behavior-inline: contain;
    user-select: none;
  }

  .ns-product-card__media--dots .ns-product-card__countdown {
    inset-block-end: 3.25rem;
  }

  .ns-product-card__media-button {
    cursor: pointer;
    transition:
      background-color 120ms ease,
      color 120ms ease,
      opacity 120ms ease;
  }

  .ns-product-card__media-button--next svg {
    transform: rotate(180deg);
  }

  .ns-product-card__media-button:hover:not(:disabled),
  .ns-product-card__media-button:focus-visible:not(:disabled) {
    background: var(--ns-color-foreground);
    color: var(--ns-color-background);
  }

  .ns-product-card__media-button:disabled {
    cursor: default;
    opacity: 0.45;
  }

  .ns-product-card__content {
    padding-block-start: var(--ns-space-20);
  }

  .ns-product-card__information {
    padding: var(--ns-product-card-information-padding);
    border-end-start-radius: var(--ns-product-card-surface-radius);
    border-end-end-radius: var(--ns-product-card-surface-radius);
    background: var(--ns-color-product-card-surface, var(--ns-color-surface-alt));
  }

  .ns-product-card__information > .ns-product-card__content {
    padding: 0;
  }

  .ns-product-card__eyebrow,
  .ns-product-card__title,
  .ns-product-card__price,
  .ns-product-card__rating,
  .ns-product-card__options,
  .ns-product-card__form {
    margin-block: 0;
  }

  .ns-product-card__eyebrow {
    margin-block-end: var(--ns-space-4);
    color: var(--ns-color-muted);
    font-size: var(--ns-type-label-size);
  }

  .ns-product-card__title {
    margin-block-end: var(--ns-space-8);
    font-family: var(--ns-font-body-family);
    font-size: var(--ns-type-card-title-size);
    font-style: var(--ns-font-body-style);
    font-weight: var(--ns-type-weight-interface);
    line-height: var(--ns-type-body-line-height);
  }

  .ns-product-card__title a {
    color: inherit;
    text-decoration: none;
  }

  .ns-product-card__price {
    display: flex;
    align-items: baseline;
    justify-content: var(--ns-product-card-content-justify);
    gap: var(--ns-space-8);
    margin-block-end: var(--ns-space-12);
    font-size: var(--ns-type-price-size);
    font-weight: var(--ns-type-weight-interface);
    letter-spacing: 0.046875rem;
  }

  .ns-product-card__price s {
    color: var(--ns-color-muted);
    font-size: var(--ns-type-interface-meta-size);
  }

  .ns-product-card__price .ns-product-price__current {
    color: var(--ns-color-foreground);
  }

  .ns-product-card .ns-product-rating {
    display: flex;
    align-items: center;
    justify-content: var(--ns-product-card-content-justify);
    gap: var(--ns-space-8);
    color: var(--ns-color-muted);
    font-size: var(--ns-type-label-size);
  }

  .ns-product-card .ns-product-rating__stars {
    position: relative;
    inline-size: 5rem;
    block-size: 1rem;
  }

  .ns-product-card .ns-product-rating__stars-empty,
  .ns-product-card .ns-product-rating__stars-filled {
    position: absolute;
    inset: 0;
    display: flex;
    overflow: hidden;
  }

  .ns-product-card .ns-product-rating__stars-empty {
    color: var(--ns-color-muted);
  }

  .ns-product-card .ns-product-rating__stars-filled {
    inline-size: var(--ns-rating-percent);
    color: var(--ns-color-foreground);
  }

  .ns-product-card .ns-product-rating__stars svg {
    flex: 0 0 1rem;
    inline-size: 1rem;
    block-size: 1rem;
  }

  .ns-product-card__buy-row {
    display: grid;
    grid-template-columns: 9.6875rem 2.1875rem;
    gap: var(--ns-space-15);
    justify-content: var(--ns-product-card-content-justify);
  }

  .ns-product-card__quantity {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: 2.25rem 3.875rem 2.25rem;
    gap: var(--ns-space-10);
    inline-size: 9.625rem;
  }

  .ns-product-card__quantity label {
    display: block;
    min-inline-size: 0;
  }

  .ns-product-card__quantity button,
  .ns-product-card__quantity input,
  .ns-product-card__add,
  .ns-product-card__choose-options {
    inline-size: 100%;
    min-block-size: 2.1875rem;
    border: 1px solid var(--ns-color-border);
  }

  .ns-product-card__quantity button {
    border-radius: var(--ns-radius-icon-button, var(--ns-radius-xl));
    padding: 0;
    background: var(--ns-color-background);
    color: var(--ns-color-foreground);
    cursor: pointer;
  }

  .ns-product-card__quantity input {
    border-radius: var(--ns-radius-compact, var(--ns-radius-lg));
    padding-inline: var(--ns-space-8);
    background: var(--ns-color-surface-alt);
    text-align: center;
  }

  .ns-product-card__quantity input::-webkit-inner-spin-button,
  .ns-product-card__quantity input::-webkit-outer-spin-button {
    margin: 0;
    appearance: none;
  }

  .ns-product-card__add,
  .ns-product-card__choose-options {
    --ns-button-padding-inline: clamp(0.75rem, 8cqi, var(--ns-button-padding-inline-authored, 1.75rem));
    --ns-button-radius: var(--ns-radius-compact);

    grid-row: 2;
    grid-column: 1 / -1;
    justify-content: center;
    align-items: center;
    gap: var(--ns-space-8);
    background: var(--ns-color-primary);
    color: var(--ns-color-on-primary);
    cursor: pointer;
    text-transform: uppercase;
    white-space: nowrap;
  }

  .ns-product-card__add > svg {
    flex: 0 0 auto;
  }

  .ns-product-card__add > .ns-button__label,
  .ns-product-card__choose-options > .ns-button__label {
    min-inline-size: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .ns-product-card__add {
    display: var(--ns-product-card-add-display, inline-flex);
  }

  .ns-product-card__choose-options {
    display: var(--ns-product-card-choose-display, none);
    text-align: center;
    text-decoration: none;
  }

  .ns-product-card[data-ns-card-cta='choose'] {
    --ns-product-card-add-display: none;
    --ns-product-card-choose-display: inline-flex;
  }

  .ns-product-card__add:disabled {
    cursor: not-allowed;
    opacity: 0.5;
  }

  .ns-product-card__form {
    margin-block-end: var(--ns-space-15);
  }

  .ns-product-card__compare {
    display: inline-flex;
    align-items: center;
    gap: var(--ns-space-8);
    min-block-size: 2.75rem;
    margin-block-start: auto;
    color: var(--ns-color-foreground);
    font-size: var(--ns-type-label-size);
    cursor: pointer;
  }

  .ns-product-card__compare[hidden] {
    display: none;
  }

  .ns-product-card__compare[data-ns-disabled] {
    cursor: not-allowed;
  }

  .ns-product-card__compare .ns-checkbox:disabled + span {
    color: var(--ns-color-muted);
  }

  .ns-product-card .ns-product-rating__count {
    text-decoration: underline;
    text-underline-offset: 0.2em;
  }

  @container (max-width: 13.75rem) {
    .ns-product-card {
      --ns-product-card-information-padding: var(--ns-space-16);
    }

    .ns-product-card__buy-row {
      grid-template-columns: minmax(0, 1fr) 2.1875rem;
      gap: var(--ns-space-8);
    }

    .ns-product-card__quantity {
      grid-template-columns: 2.1875rem minmax(0, 1fr) 2.1875rem;
      gap: var(--ns-space-8);
      inline-size: 100%;
    }
  }

  @media (prefers-reduced-motion: reduce) {
    .ns-product-card__quick-view,
    .ns-product-card__media-button,
    .ns-product-card__media-dots::before,
    .ns-product-card__media-dot > span {
      transition: none;
    }
  }
}
/* END_SNIPPET:_styles-product-card-styles */

/* START_SNIPPET:_styles-product-comparison-styles (INDEX:257) */
@layer components {
  .ns-product-compare {
    display: contents;
  }

  .ns-product-compare__tray {
    display: block;
  }

  .ns-product-compare__tray-inner {
    display: flex;
    align-items: center;
    gap: var(--ns-space-20);
  }

  .ns-product-compare__slots {
    display: flex;
    flex: 1 1 auto;
    gap: var(--ns-space-16);
    min-inline-size: 0;
  }

  .ns-product-compare__slot {
    display: grid;
    inline-size: min(20rem, 32vw);
    min-inline-size: 0;
  }

  .ns-product-compare__chip,
  .ns-product-compare__placeholder {
    display: flex;
    align-items: center;
    gap: var(--ns-space-12);
    min-block-size: 4.5rem;
    padding: var(--ns-space-8) var(--ns-space-16);
    overflow: hidden;
    border: 1px solid var(--ns-color-border);
    border-radius: var(--ns-radius-pill);
    background: var(--ns-color-background);
  }

  .ns-product-compare__placeholder {
    justify-content: center;
    color: var(--ns-color-muted);
    background: var(--ns-color-surface-alt);
    border-color: transparent;
  }

  .ns-product-compare__chip-image {
    flex: 0 0 5rem;
    inline-size: 5rem;
    block-size: 3rem;
    object-fit: contain;
  }

  .ns-product-compare__chip-title {
    flex: 1 1 auto;
    min-inline-size: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .ns-product-compare__remove {
    display: grid;
    flex: 0 0 auto;
    place-items: center;
    inline-size: 2.25rem;
    block-size: 2.25rem;
    padding: var(--ns-space-10);
    color: currentColor;
    background: transparent;
    border: 0;
    border-radius: var(--ns-radius-icon-button, var(--ns-radius-xl));
    cursor: pointer;
  }

  .ns-product-compare__remove:is(:hover, :focus-visible) {
    background: var(--ns-color-surface-alt);
  }

  .ns-product-compare__remove svg {
    inline-size: 100%;
    block-size: 100%;
  }

  .ns-product-compare__open {
    white-space: nowrap;
  }

  .ns-product-compare__surface {
    display: grid;
    grid-template-rows: auto minmax(0, 1fr);
    block-size: 100%;
    min-block-size: 0;
    color: var(--ns-color-foreground);
    background: var(--ns-color-background);
  }

  .ns-product-compare__header {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: var(--ns-space-20);
    padding: var(--ns-space-28) clamp(var(--ns-space-20), 4vw, var(--ns-space-48));
    border-block-end: 1px solid var(--ns-color-border);
  }

  .ns-product-compare__eyebrow {
    margin: 0 0 var(--ns-space-8);
    color: var(--ns-color-muted);
    font-size: var(--ns-type-label-size);
    letter-spacing: var(--ns-type-label-letter-spacing);
    text-transform: uppercase;
  }

  .ns-product-compare__title {
    margin: 0;
    font-family: var(--ns-font-heading-family);
    font-size: var(--ns-type-xl-size);
    font-style: var(--ns-font-heading-style);
    font-weight: var(--ns-font-heading-weight);
    line-height: var(--ns-type-xl-line-height);
  }

  .ns-product-compare__difference-toggle {
    display: inline-flex;
    align-items: center;
    gap: var(--ns-space-8);
    min-block-size: 2.75rem;
    white-space: nowrap;
  }

  .ns-product-compare__viewport {
    min-block-size: 0;
    overflow: auto;
    overscroll-behavior: contain;
    scrollbar-gutter: stable;
  }

  .ns-product-compare table {
    inline-size: 100%;
    min-inline-size: 58rem;
    border-collapse: collapse;
    table-layout: fixed;
  }

  .ns-product-compare :is(th, td) {
    min-inline-size: 14rem;
    padding: var(--ns-space-16) var(--ns-space-24);
    border-block-end: 1px solid var(--ns-color-border);
    text-align: start;
    vertical-align: top;
  }

  .ns-product-compare :is(th, td):first-child {
    position: sticky;
    z-index: 1;
    inset-inline-start: 0;
    inline-size: 12rem;
    min-inline-size: 12rem;
    color: var(--ns-color-muted);
    background: var(--ns-color-background);
    border-inline-end: 1px solid var(--ns-color-border);
    font-size: var(--ns-type-label-size);
    font-weight: var(--ns-type-weight-interface);
    text-transform: uppercase;
  }

  .ns-product-compare thead th {
    padding-block: var(--ns-space-24);
  }

  .ns-product-compare [data-ns-product-compare-header] {
    block-size: 1px;
  }

  .ns-product-compare .ns-product-card--comparison {
    min-block-size: 100%;
    container-type: normal;
  }

  .ns-product-compare .ns-product-card--comparison .ns-product-card__media {
    aspect-ratio: 4 / 3;
  }

  .ns-product-compare .ns-product-card--comparison .ns-product-card__compare {
    display: none;
  }

  .ns-product-compare__group th {
    position: static;
    z-index: auto;
    inline-size: auto;
    padding-block-start: var(--ns-space-28);
    color: var(--ns-color-foreground);
    background: var(--ns-color-surface-alt);
    border-inline-end: 0;
    font-size: var(--ns-type-body-size);
    text-transform: none;
  }

  .ns-product-compare[data-ns-hide-same='true'] [data-ns-product-compare-same='true'] {
    display: none;
  }

  @media (max-width: 759px) {
    .ns-product-compare__tray .ns-bottom-surface__inner {
      padding-inline: var(--ns-space-12);
    }

    .ns-product-compare__tray-inner {
      display: grid;
      gap: var(--ns-space-12);
    }

    .ns-product-compare__slots {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: var(--ns-space-8);
    }

    .ns-product-compare__slot {
      inline-size: auto;
    }

    .ns-product-compare__chip,
    .ns-product-compare__placeholder {
      min-block-size: 3.5rem;
      padding: var(--ns-space-8);
    }

    .ns-product-compare__chip-image {
      display: none;
    }

    .ns-product-compare__open {
      inline-size: 100%;
    }

    .ns-product-compare__header {
      display: grid;
      align-items: start;
      padding: var(--ns-space-20);
    }
  }
}
/* END_SNIPPET:_styles-product-comparison-styles */

/* START_SNIPPET:_styles-product-hotspot-styles (INDEX:258) */
@layer components {
  .ns-product-hotspot {
    --ns-product-hotspot-x: var(--ns-product-hotspot-x-desktop, 50%);
    --ns-product-hotspot-y: var(--ns-product-hotspot-y-desktop, 50%);
    --ns-product-hotspot-card-translate-x: var(--ns-product-hotspot-card-translate-x-desktop, 0%);

    position: relative;
    z-index: 4;
    width: 100%;
    height: auto;
    color: var(--ns-color-foreground);
    text-align: start;
  }

  .ns-product-hotspot__disclosure {
    position: relative;
    display: none;
  }

  .ns-product-hotspot__marker {
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    display: grid;
    width: 44px;
    height: 44px;
    padding: 0;
    cursor: pointer;
    background: transparent;
    border: 0;
    border-radius: var(--ns-radius-pill);
    outline: none;
    transform: translate(
      calc(-50% + var(--ns-product-hotspot-collision-x, 0px)),
      calc(-50% + var(--ns-product-hotspot-collision-y, 0px))
    );
    touch-action: manipulation;
    place-items: center;
    list-style: none;
  }

  .ns-product-hotspot__marker::before {
    position: absolute;
    z-index: -1;
    top: 50%;
    left: 50%;
    width: var(--ns-product-hotspot-connector-length, 0px);
    height: 1px;
    content: '';
    pointer-events: none;
    background: currentcolor;
    opacity: 0;
    transform: rotate(var(--ns-product-hotspot-connector-angle, 0deg));
    transform-origin: 0 50%;
  }

  .ns-product-hotspot[data-ns-hotspot-displaced] .ns-product-hotspot__marker::before {
    opacity: 0.45;
  }

  .ns-product-hotspot[data-ns-hotspot-unresolved] .ns-product-hotspot__marker > span {
    box-shadow:
      0 2px 12px color-mix(in srgb, var(--ns-color-foreground) 16%, transparent),
      0 0 0 2px color-mix(in srgb, var(--ns-color-foreground) 35%, transparent);
  }

  .ns-product-hotspot__marker::-webkit-details-marker {
    display: none;
  }

  .ns-product-hotspot__marker > span {
    position: absolute;
    display: grid;
    width: var(--ns-product-hotspot-marker-size, 20px);
    height: var(--ns-product-hotspot-marker-size, 20px);
    background: color-mix(in srgb, var(--ns-color-background) 90%, transparent);
    border: 1px solid color-mix(in srgb, var(--ns-color-foreground) 8%, transparent);
    border-radius: 50%;
    box-shadow: 0 2px 12px color-mix(in srgb, var(--ns-color-foreground) 16%, transparent);
    transition:
      width 160ms ease,
      height 160ms ease,
      box-shadow 160ms ease;
    place-items: center;
  }

  .ns-product-hotspot__marker > span::before {
    width: max(5px, calc(var(--ns-product-hotspot-marker-size, 20px) / 4));
    height: max(5px, calc(var(--ns-product-hotspot-marker-size, 20px) / 4));
    content: '';
    background: var(--ns-color-foreground);
    border-radius: 50%;
  }

  .ns-product-hotspot__marker:focus-visible:not([data-ns-pointer-focus]) > span {
    outline: 2px solid currentcolor;
    outline-offset: 3px;
  }

  .ns-product-hotspot__marker:focus-visible {
    outline: none;
  }

  .ns-product-hotspot__disclosure[open] > .ns-product-hotspot__marker > span {
    width: calc(var(--ns-product-hotspot-marker-size, 20px) * 2);
    height: calc(var(--ns-product-hotspot-marker-size, 20px) * 2);
    box-shadow: 0 3px 18px color-mix(in srgb, var(--ns-color-foreground) 20%, transparent);
  }

  .ns-product-hotspot__card {
    position: absolute;
    z-index: 1;
    bottom: 0;
    left: 0;
    display: grid;
    width: var(
      --ns-product-hotspot-card-runtime-width,
      min(var(--ns-product-hotspot-card-width, 160px), calc(100% - 16px), calc(100vw - 32px))
    );
    max-height: var(--ns-product-hotspot-card-runtime-max-height, none);
    overflow: auto;
    border-radius: var(--ns-radius-content-panel, var(--ns-radius-2xl));
    background: var(--ns-color-background);
    box-shadow: 0 8px 30px color-mix(in srgb, var(--ns-color-foreground) 16%, transparent);
    border: 0;
    pointer-events: auto;
    transform: var(
      --ns-product-hotspot-card-runtime-transform,
      translate(
        calc(var(--ns-product-hotspot-card-translate-x, 0%) + var(--ns-product-hotspot-collision-x, 0px)),
        calc(-50% + var(--ns-product-hotspot-collision-y, 0px))
      )
    );
  }

  .ns-product-hotspot__close {
    position: absolute;
    z-index: 2;
    top: 8px;
    right: 8px;
    display: grid;
    width: 44px;
    height: 44px;
    padding: var(--ns-space-14);
    color: var(--ns-color-foreground);
    cursor: pointer;
    background: color-mix(in srgb, var(--ns-color-background) 90%, transparent);
    border: 0;
    border-radius: var(--ns-radius-icon-button, var(--ns-radius-xl));
    place-items: center;
  }

  .ns-product-hotspot__close svg {
    display: block;
    width: 100%;
    height: 100%;
  }

  .ns-product-hotspot__media,
  .ns-product-hotspot__media img,
  .ns-product-hotspot__placeholder {
    display: block;
    width: 100%;
    aspect-ratio: 160 / 205;
    object-fit: cover;
  }

  .ns-product-hotspot__details {
    display: grid;
    gap: var(--ns-space-6);
    min-width: 0;
    padding: var(--ns-space-12) var(--ns-space-14) var(--ns-space-14);
    padding-inline-end: var(--ns-product-hotspot-details-inline-end, var(--ns-space-14));
  }

  .ns-product-hotspot :is(.ns-product-card__title, .ns-product-price) {
    margin: 0;
  }

  .ns-product-hotspot .ns-product-card__title {
    display: -webkit-box;
    overflow: hidden;
    color: var(--ns-color-foreground);
    font: 400 13px/1.3 var(--ns-font-body-family);
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }

  .ns-product-hotspot .ns-product-card__title a {
    color: inherit;
    text-decoration: none;
  }

  .ns-product-hotspot__price {
    display: flex;
    gap: var(--ns-space-6);
    color: var(--ns-color-foreground);
    font: 400 17px/1.2 var(--ns-font-body-family);
  }

  .ns-product-hotspot__flow {
    display: flex;
    align-items: baseline;
    justify-content: flex-start;
    gap: var(--ns-space-8);
    width: 100%;
  }

  :is(
      .ns-visual-stage--desktop-overlay,
      .ns-visual-slider--desktop-overlay .ns-visual-slider__stage,
      .ns-media-comparison__item-canvas
    )
    :is(.ns-product-hotspot, .ns-product-hotspot__disclosure) {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    pointer-events: none;
  }

  :is(
      .ns-visual-stage--desktop-overlay,
      .ns-visual-slider--desktop-overlay .ns-visual-slider__stage,
      .ns-media-comparison__item-canvas
    )
    .ns-product-hotspot__marker {
    top: var(--ns-product-hotspot-y);
    left: var(--ns-product-hotspot-x);
    pointer-events: auto;
  }

  :is(
      .ns-visual-stage--desktop-overlay,
      .ns-visual-slider--desktop-overlay .ns-visual-slider__stage,
      .ns-media-comparison__item-canvas
    )
    .ns-product-hotspot__card {
    top: var(--ns-product-hotspot-card-runtime-top, var(--ns-product-hotspot-y));
    bottom: auto;
    left: var(--ns-product-hotspot-card-runtime-left, var(--ns-product-hotspot-x));
    pointer-events: auto;
  }

  :is(
      .ns-visual-stage--desktop-overlay,
      .ns-visual-slider--desktop-overlay .ns-visual-slider__stage,
      .ns-media-comparison__item-canvas
    )
    .ns-product-hotspot__flow {
    display: none;
  }

  @media (max-width: 1024px) {
    .ns-product-hotspot {
      --ns-product-hotspot-x: var(--ns-product-hotspot-x-tablet, var(--ns-product-hotspot-x-desktop, 50%));
      --ns-product-hotspot-y: var(--ns-product-hotspot-y-tablet, var(--ns-product-hotspot-y-desktop, 50%));
      --ns-product-hotspot-card-translate-x: var(
        --ns-product-hotspot-card-translate-x-tablet,
        var(--ns-product-hotspot-card-translate-x-desktop, 0%)
      );
    }

    :is(.ns-visual-stage--tablet-overlay, .ns-visual-slider--tablet-overlay .ns-visual-slider__stage)
      :is(.ns-product-hotspot, .ns-product-hotspot__disclosure) {
      position: absolute;
      inset: 0;
      display: block;
      width: 100%;
      height: 100%;
      pointer-events: none;
    }

    :is(.ns-visual-stage--tablet-overlay, .ns-visual-slider--tablet-overlay .ns-visual-slider__stage)
      .ns-product-hotspot__marker {
      top: var(--ns-product-hotspot-y);
      left: var(--ns-product-hotspot-x);
      pointer-events: auto;
    }

    :is(.ns-visual-stage--tablet-overlay, .ns-visual-slider--tablet-overlay .ns-visual-slider__stage)
      .ns-product-hotspot__card {
      top: var(--ns-product-hotspot-card-runtime-top, var(--ns-product-hotspot-y));
      bottom: auto;
      left: var(--ns-product-hotspot-card-runtime-left, var(--ns-product-hotspot-x));
      pointer-events: auto;
    }

    :is(.ns-visual-stage--tablet-overlay, .ns-visual-slider--tablet-overlay .ns-visual-slider__stage)
      .ns-product-hotspot__flow {
      display: none;
    }

    :is(
        .ns-visual-stage--tablet-media_first,
        .ns-visual-stage--tablet-content_first,
        .ns-visual-slider--tablet-media_first .ns-visual-slider__stage,
        .ns-visual-slider--tablet-content_first .ns-visual-slider__stage
      )
      .ns-product-hotspot {
      position: relative;
      inset: auto;
      width: 100%;
      height: auto;
    }

    :is(
        .ns-visual-stage--tablet-media_first,
        .ns-visual-stage--tablet-content_first,
        .ns-visual-slider--tablet-media_first .ns-visual-slider__stage,
        .ns-visual-slider--tablet-content_first .ns-visual-slider__stage
      )
      .ns-product-hotspot__disclosure {
      display: none;
    }

    :is(
        .ns-visual-stage--tablet-media_first,
        .ns-visual-stage--tablet-content_first,
        .ns-visual-slider--tablet-media_first .ns-visual-slider__stage,
        .ns-visual-slider--tablet-content_first .ns-visual-slider__stage
      )
      .ns-product-hotspot__flow {
      display: flex;
    }
  }

  @media (max-width: 767px) {
    .ns-product-hotspot {
      --ns-product-hotspot-x: var(
        --ns-product-hotspot-x-mobile,
        var(--ns-product-hotspot-x-tablet, var(--ns-product-hotspot-x-desktop, 50%))
      );
      --ns-product-hotspot-y: var(
        --ns-product-hotspot-y-mobile,
        var(--ns-product-hotspot-y-tablet, var(--ns-product-hotspot-y-desktop, 50%))
      );
      --ns-product-hotspot-card-translate-x: var(
        --ns-product-hotspot-card-translate-x-mobile,
        var(--ns-product-hotspot-card-translate-x-tablet, var(--ns-product-hotspot-card-translate-x-desktop, 0%))
      );
    }

    :is(.ns-visual-stage--mobile-overlay, .ns-visual-slider--mobile-overlay .ns-visual-slider__stage)
      :is(.ns-product-hotspot, .ns-product-hotspot__disclosure) {
      position: absolute;
      inset: 0;
      display: block;
      width: 100%;
      height: 100%;
      pointer-events: none;
    }

    :is(.ns-visual-stage--mobile-overlay, .ns-visual-slider--mobile-overlay .ns-visual-slider__stage)
      .ns-product-hotspot__marker {
      top: var(--ns-product-hotspot-y);
      left: var(--ns-product-hotspot-x);
      pointer-events: auto;
    }

    :is(.ns-visual-stage--mobile-overlay, .ns-visual-slider--mobile-overlay .ns-visual-slider__stage)
      .ns-product-hotspot__card {
      top: var(--ns-product-hotspot-card-runtime-top, var(--ns-product-hotspot-y));
      bottom: auto;
      left: var(--ns-product-hotspot-card-runtime-left, var(--ns-product-hotspot-x));
      pointer-events: auto;
    }

    :is(.ns-visual-stage--mobile-overlay, .ns-visual-slider--mobile-overlay .ns-visual-slider__stage)
      .ns-product-hotspot__flow {
      display: none;
    }

    :is(
        .ns-visual-stage--mobile-media_first,
        .ns-visual-stage--mobile-content_first,
        .ns-visual-slider--mobile-media_first .ns-visual-slider__stage,
        .ns-visual-slider--mobile-content_first .ns-visual-slider__stage
      )
      .ns-product-hotspot {
      position: relative;
      inset: auto;
      width: 100%;
      height: auto;
    }

    :is(
        .ns-visual-stage--mobile-media_first,
        .ns-visual-stage--mobile-content_first,
        .ns-visual-slider--mobile-media_first .ns-visual-slider__stage,
        .ns-visual-slider--mobile-content_first .ns-visual-slider__stage
      )
      .ns-product-hotspot__disclosure {
      display: none;
    }

    :is(
        .ns-visual-stage--mobile-media_first,
        .ns-visual-stage--mobile-content_first,
        .ns-visual-slider--mobile-media_first .ns-visual-slider__stage,
        .ns-visual-slider--mobile-content_first .ns-visual-slider__stage
      )
      .ns-product-hotspot__flow {
      display: flex;
    }
  }

  :is(
      ns-product-hotspot:not(:defined),
      ns-product-hotspot-scope:not(:defined) ns-product-hotspot
    ).ns-product-hotspot[data-ns-product-hotspot] {
    position: relative;
    inset: auto;
    display: block;
    width: 100%;
    height: auto;
    pointer-events: auto;
  }

  :is(
      ns-product-hotspot:not(:defined),
      ns-product-hotspot-scope:not(:defined) ns-product-hotspot
    )[data-ns-product-hotspot]
    .ns-product-hotspot__disclosure {
    display: none;
  }

  :is(
      ns-product-hotspot:not(:defined),
      ns-product-hotspot-scope:not(:defined) ns-product-hotspot
    )[data-ns-product-hotspot]
    .ns-product-hotspot__flow {
    display: flex;
  }

  @media (prefers-reduced-motion: reduce) {
    .ns-product-hotspot__marker > span {
      transition: none;
    }
  }
}
/* END_SNIPPET:_styles-product-hotspot-styles */

/* START_SNIPPET:_styles-product-information (INDEX:259) */
@layer components {
  ns-product-information,
  ns-product-form,
  ns-quantity-selector,
  ns-countdown,
  ns-delivery-estimate {
    display: block;
  }

  .ns-product-page-shell {
    display: block;
    grid-column: 1 / -1;
    inline-size: var(--ns-content-width);
    min-inline-size: 0;
    margin-inline: auto;
    container: ns-product-information / inline-size;
  }

  .ns-product-page {
    display: block;
    inline-size: 100%;
  }

  .ns-product-page__layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--ns-space-30);
    inline-size: 100%;
    margin-inline: auto;
    padding: var(--ns-space-10) 0 var(--ns-space-60);
  }

  .ns-product-page__media,
  .ns-product-page__info,
  .ns-product-page__supplemental,
  .ns-product-media-container {
    min-inline-size: 0;
  }

  .ns-product-page__supplemental {
    inline-size: 100%;
    padding-inline: var(--ns-product-layout-padding-inline, 0);
    padding-block-end: var(--ns-product-layout-padding-block-start, var(--ns-space-60));
  }

  .ns-product-supplemental {
    display: grid;
    gap: var(--ns-product-supplemental-gap, var(--ns-space-24));
    inline-size: 100%;
    min-inline-size: 0;
  }

  .ns-product-page--placeholder {
    align-items: center;
  }

  .ns-product-page__placeholder-media svg {
    display: block;
    inline-size: 100%;
    aspect-ratio: 25 / 32;
    border-radius: var(--ns-radius-media-adaptive, var(--ns-radius-media, 0px));
    background: color-mix(in srgb, var(--ns-color-foreground) 4%, var(--ns-color-background));
  }

  .ns-product-page__placeholder-info {
    display: grid;
    gap: var(--ns-space-12);
  }

  .ns-product-page__placeholder-info > * {
    margin: 0;
  }

  .ns-product-details {
    display: flex;
    flex-direction: column;
    gap: var(--ns-product-details-gap, var(--ns-space-16));
  }

  .ns-product-badges,
  .ns-product-price__line,
  .ns-product-rating,
  .ns-product-links,
  .ns-product-secondary-actions,
  .ns-product-share {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--ns-space-8) var(--ns-space-16);
  }

  .ns-product-badges {
    gap: var(--ns-space-4);
  }

  .ns-product-badge {
    display: inline-flex;
    align-items: center;
    min-block-size: 1.5rem;
    padding-inline: var(--ns-space-8);
    border-radius: var(--ns-product-badge-radius);
    background: var(--ns-color-surface);
    color: var(--ns-color-foreground);
    font-size: var(--ns-type-label-size);
    line-height: 1;
    text-transform: none;
  }

  .ns-product-badge--sale {
    background: var(--ns-product-badge-sale-background);
    color: var(--ns-product-badge-sale-text);
  }

  .ns-product-badge--new {
    background: var(--ns-product-badge-new-background);
    color: var(--ns-product-badge-new-text);
  }

  .ns-product-badge--hot {
    background: var(--ns-product-badge-hot-background);
    color: var(--ns-product-badge-hot-text);
  }

  .ns-product-badge--preorder {
    background: var(--ns-product-badge-preorder-background);
    color: var(--ns-product-badge-preorder-text);
  }

  .ns-product-badge--in-stock {
    background: var(--ns-product-badge-in-stock-background);
    color: var(--ns-product-badge-in-stock-text);
  }

  .ns-product-badge--out-of-stock {
    background: var(--ns-product-badge-out-of-stock-background);
    color: var(--ns-product-badge-out-of-stock-text);
  }

  .ns-product-title {
    font-size: var(--ns-type-large-size);
    line-height: var(--ns-type-large-line-height);
    letter-spacing: 0;
  }

  .ns-product-title--small {
    font-size: var(--ns-type-medium-size);
  }

  .ns-product-title--large {
    font-size: var(--ns-type-xl-size);
  }

  .ns-product-badges + .ns-product-title,
  .ns-u-theme-block-root:has(> .ns-product-badges) + .ns-product-title,
  .ns-u-theme-block-root:has(> .ns-product-badges) + .ns-u-theme-block-root > .ns-product-title {
    margin-block-start: var(--ns-space-8);
  }

  .ns-product-rating + .ns-product-meta,
  .ns-product-meta + .ns-product-price,
  .ns-product-price + .ns-product-countdown {
    margin-block-start: var(--ns-space-8);
  }

  .ns-product-rating {
    color: var(--ns-color-muted);
    font-size: var(--ns-type-label-size);
  }

  .ns-product-rating__stars {
    position: relative;
    inline-size: 5rem;
    block-size: 1rem;
    color: var(--ns-color-foreground);
  }

  .ns-product-rating__stars-empty,
  .ns-product-rating__stars-filled {
    position: absolute;
    inset: 0;
    display: flex;
    gap: 0;
    overflow: hidden;
  }

  .ns-product-rating__stars-filled {
    inline-size: var(--ns-rating-percent);
  }

  .ns-product-rating__stars-empty {
    color: var(--ns-color-border);
  }

  .ns-product-rating__stars svg {
    flex: 0 0 1rem;
    inline-size: 1rem;
    block-size: 1rem;
  }

  .ns-product-meta {
    display: grid;
    align-items: start;
    gap: var(--ns-space-4);
    color: var(--ns-color-foreground);
    font-size: var(--ns-type-label-size);
  }

  .ns-product-meta > div {
    display: flex;
    gap: var(--ns-space-4);
  }

  .ns-product-meta dt {
    color: var(--ns-color-muted);
    font-weight: var(--ns-type-weight-interface);
    text-transform: uppercase;
  }

  .ns-product-meta dd {
    color: var(--ns-color-foreground);
  }

  .ns-product-price__line {
    gap: var(--ns-space-10);
    font-size: var(--ns-type-price-prominent-size);
    font-weight: var(--ns-type-weight-interface);
  }

  .ns-product-price__line s,
  .ns-product-price__unit,
  .ns-product-price__tax {
    color: var(--ns-color-muted);
  }

  .ns-product-price__current,
  .ns-product-price__saving {
    color: var(--ns-color-critical);
  }

  .ns-product-price__current {
    font-size: var(--ns-type-price-prominent-size);
  }

  .ns-product-price__line s {
    font-size: var(--ns-type-interface-meta-size);
  }

  .ns-product-price__saving,
  .ns-product-price__unit,
  .ns-product-price__tax {
    margin-block-start: var(--ns-space-4);
    font-size: var(--ns-type-label-size);
  }

  .ns-rte,
  .ns-product-description {
    line-height: 1.55;
  }

  .ns-rte > * + *,
  .ns-product-description > * + * {
    margin-block-start: var(--ns-space-12);
  }

  .ns-product-description :where(img, video, iframe) {
    max-inline-size: 100%;
    border-radius: var(--ns-radius-media-adaptive, var(--ns-radius-media, 0px));
  }

  .ns-product-inventory {
    padding: 0;
    background: transparent;
  }

  .ns-product-inventory__track {
    --ns-product-inventory-track-block-size: 0.25rem;

    display: block;
    overflow: hidden;
    block-size: var(--ns-product-inventory-track-block-size);
    margin-block-start: var(--ns-space-8);
    border-radius: var(--ns-radius-pill);
    background: var(--ns-color-border);
  }

  .ns-product-inventory__track > span {
    display: block;
    inline-size: var(--ns-inventory-progress);
    block-size: 100%;
    background: var(--ns-color-foreground);
  }

  .ns-product-delivery,
  .ns-product-visitors {
    display: flex;
    align-items: center;
    gap: var(--ns-space-10);
  }

  .ns-product-delivery__icon {
    flex: 0 0 auto;
    inline-size: var(--ns-icon-size-md);
    color: var(--ns-color-foreground);
  }

  .ns-variant-picker-block,
  .ns-variant-picker,
  .ns-variant-option {
    min-inline-size: 0;
  }

  .ns-variant-picker {
    display: grid;
    gap: var(--ns-space-20);
    padding-block-start: var(--ns-space-24);
    border-block-start: 1px dashed var(--ns-color-border);
  }

  .ns-variant-option {
    border: 0;
    padding: 0;
  }

  .ns-variant-option legend {
    margin-block-end: var(--ns-space-8);
    color: var(--ns-color-muted);
    font-weight: var(--ns-type-weight-interface);
    text-transform: uppercase;
  }

  .ns-variant-option legend strong {
    color: var(--ns-color-foreground);
    font-weight: var(--ns-type-weight-interface);
  }

  .ns-variant-option__values {
    display: flex;
    flex-wrap: wrap;
    gap: var(--ns-space-8);
  }

  .ns-variant-picker-block[data-ns-variant-option-scroll='true'] {
    .ns-variant-option__values {
      flex-wrap: nowrap;
      overflow-x: auto;
      white-space: nowrap;
    }

    .ns-variant-option__values > .ns-variant-value {
      flex: 0 0 auto;
    }

    @media (hover: hover) and (pointer: fine) {
      .ns-variant-option__values {
        padding-block-end: var(--ns-space-4);
      }
    }
  }

  .ns-variant-value {
    position: relative;
    display: grid;
    place-items: center;
    min-inline-size: 2.1875rem;
    min-block-size: 2.1875rem;
    padding: var(--ns-space-8) var(--ns-space-12);
    border: 1px solid var(--ns-color-border);
    border-radius: var(--ns-radius-text-swatch-large, var(--ns-radius-lg));
    cursor: pointer;
  }

  .ns-variant-value:has(input:checked) {
    border-color: var(--ns-color-foreground);
    box-shadow: inset 0 0 0 1px var(--ns-color-foreground);
  }

  .ns-variant-value--unavailable {
    color: var(--ns-color-muted);
    text-decoration: none;
  }

  .ns-variant-value--unavailable::after {
    position: absolute;
    inline-size: 120%;
    border-block-start: 1px solid currentColor;
    content: '';
    rotate: -45deg;
  }

  .ns-variant-value input {
    position: absolute;
    inline-size: 1px;
    block-size: 1px;
    overflow: hidden;
    clip-path: inset(50%);
  }

  .ns-variant-value__swatch {
    inline-size: 1.5rem;
    block-size: 1.5rem;
    border: 1px solid var(--ns-color-border);
    border-radius: var(--ns-radius-color-swatch, var(--ns-radius-pill));
    background-color: var(--ns-swatch-color, var(--ns-color-surface));
    background-image: var(--ns-swatch-image, none);
    background-position: center;
    background-size: cover;
  }

  .ns-variant-value--swatch {
    min-inline-size: 1.5rem;
    min-block-size: 1.5rem;
    padding: 0;
    border-color: transparent;
  }

  .ns-variant-value--swatch:has(input:checked) {
    border-color: transparent;
    box-shadow: none;
  }

  .ns-variant-value--swatch:has(input:checked) .ns-variant-value__swatch {
    outline: 1px solid var(--ns-color-foreground);
    outline-offset: 2px;
  }

  .ns-variant-value--image {
    inline-size: 2.625rem;
    block-size: 2.875rem;
    padding: 0;
    overflow: hidden;
    border-radius: var(--ns-radius-image-swatch-large, var(--ns-radius-lg));
  }

  .ns-variant-value--image img {
    inline-size: 100%;
    block-size: 100%;
    object-fit: contain;
    border-radius: inherit;
  }

  .ns-variant-option__select {
    inline-size: 100%;
    min-block-size: var(--ns-control-block-size-md);
    padding-inline: var(--ns-space-12);
    border: 1px solid var(--ns-color-border);
    border-radius: var(--ns-radius-input, 0px);
  }

  .ns-variant-picker__clear {
    justify-self: start;
    min-block-size: auto;
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--ns-color-muted);
    cursor: pointer;
    text-decoration: underline;
    text-underline-offset: 0.2em;
  }

  .ns-product-links a,
  .ns-product-secondary-actions a,
  .ns-product-share a {
    text-underline-offset: 0.2em;
  }

  .ns-product-links {
    column-gap: var(--ns-space-24);
    text-transform: uppercase;
  }

  .ns-product-form__controls {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--ns-space-10);
  }

  .ns-product-quantity {
    grid-column: 1;
  }

  .ns-product-quantity > label {
    display: block;
    margin-block-end: var(--ns-space-8);
    text-transform: uppercase;
  }

  .ns-product-add {
    grid-column: 1;
  }

  .ns-product-add__button {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    gap: var(--ns-space-8);
    inline-size: 100%;
    border: 1px solid var(--ns-color-primary);
    background: var(--ns-color-primary);
    color: var(--ns-color-on-primary);
    cursor: pointer;
  }

  .ns-product-add__button:disabled {
    cursor: not-allowed;
    opacity: 0.55;
  }

  .ns-product-add__icon {
    inline-size: var(--ns-icon-size-sm);
  }

  .ns-product-secondary-actions__compare {
    display: inline-flex;
    align-items: center;
    gap: var(--ns-space-8);
    min-block-size: 2.75rem;
    color: var(--ns-color-foreground);
    font-size: var(--ns-type-label-size);
    cursor: pointer;
  }

  .ns-product-secondary-actions__compare[hidden] {
    display: none;
  }

  .ns-product-secondary-actions__compare[data-ns-disabled] {
    cursor: not-allowed;
  }

  .ns-product-secondary-actions__compare .ns-checkbox:disabled + span {
    color: var(--ns-color-muted);
  }

  .ns-product-secondary-actions {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--ns-space-10);
  }

  .ns-product-terms,
  .ns-product-accelerated,
  .ns-product-form__status {
    grid-column: 1 / -1;
  }

  .ns-product-accelerated > div {
    inline-size: 100%;
  }

  .ns-product-payment-trust {
    display: grid;
    justify-items: center;
    gap: var(--ns-space-8);
    min-block-size: 3.875rem;
    padding: var(--ns-space-8) var(--ns-space-12);
    border: 1px solid var(--ns-color-border);
  }

  .ns-product-payment-trust__heading {
    color: var(--ns-color-muted);
    font-weight: var(--ns-type-weight-interface);
    text-transform: none;
  }

  .ns-product-payment-trust__icons {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: var(--ns-space-4);
    padding: 0;
    list-style: none;
  }

  .ns-product-payment-trust__icons svg {
    inline-size: 2.375rem;
  }

  .ns-product-share__label {
    color: var(--ns-color-foreground);
    text-transform: none;
  }

  .ns-product-accordion {
    border-block-start: 1px solid var(--ns-color-border);
  }

  .ns-product-accordion__row {
    border-block-end: 1px solid var(--ns-color-border);
  }

  .ns-product-accordion__summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    min-block-size: 3.25rem;
    cursor: pointer;
    font-weight: var(--ns-type-weight-strong);
    list-style: none;
  }

  .ns-product-accordion__summary::-webkit-details-marker {
    display: none;
  }

  .ns-product-accordion__indicator {
    inline-size: 0.75rem;
    block-size: 0.75rem;
    border-inline-end: 1px solid currentColor;
    border-block-end: 1px solid currentColor;
    rotate: 45deg;
    transition: rotate 160ms ease;
  }

  .ns-product-accordion__row[open] .ns-product-accordion__indicator {
    rotate: 225deg;
  }

  .ns-product-accordion__content {
    padding-block-end: var(--ns-space-20);
  }

  @media (max-width: 767px) {
    .ns-product-description {
      display: grid;
      grid-template-columns: minmax(0, 1fr);
    }

    .ns-product-description img {
      display: block;
      inline-size: auto;
      max-inline-size: 100%;
      block-size: auto;
    }
  }

  @container ns-product-information (min-width: 42rem) {
    .ns-product-page:not(.ns-product-page--centered):not(.ns-product-page--full-width-gallery)
      .ns-product-page__layout {
      grid-template-columns:
        minmax(0, var(--ns-product-media-track, 1.65fr))
        minmax(min(var(--ns-product-info-track-min, 20rem), 100%), var(--ns-product-info-track, 1fr));
      gap: clamp(var(--ns-space-24), 2.5cqi, var(--ns-space-30));
      inline-size: 100%;
      padding-inline: var(--ns-product-layout-padding-inline, 0);
      padding-block-start: var(--ns-product-layout-padding-block-start, var(--ns-space-30));
    }

    .ns-product-page:not(.ns-product-page--centered):not(.ns-product-page--full-width-gallery) .ns-product-page__info {
      inline-size: min(100%, var(--ns-product-info-max-inline-size, var(--ns-product-details-width, 36rem)));
      justify-self: end;
    }

    .ns-product-page--full-width-gallery .ns-product-page__media,
    .ns-product-page--full-width-gallery .ns-product-page__info,
    .ns-product-page--centered .ns-product-page__media,
    .ns-product-page--centered .ns-product-page__info {
      grid-column: 1 / -1;
    }

    .ns-product-page--centered .ns-product-page__info,
    .ns-product-page--full-width-gallery .ns-product-page__info {
      inline-size: min(100%, var(--ns-product-centered-width, 48.125rem));
      justify-self: center;
      text-align: center;
    }

    .ns-product-page--centered .ns-product-details,
    .ns-product-page--full-width-gallery .ns-product-details {
      align-items: stretch;
    }

    .ns-product-page--centered
      :is(
        .ns-product-badges,
        .ns-product-meta,
        .ns-product-price__line,
        .ns-product-rating,
        .ns-product-links,
        .ns-product-secondary-actions,
        .ns-product-share
      ),
    .ns-product-page--full-width-gallery
      :is(
        .ns-product-badges,
        .ns-product-meta,
        .ns-product-price__line,
        .ns-product-rating,
        .ns-product-links,
        .ns-product-secondary-actions,
        .ns-product-share
      ) {
      justify-content: center;
    }
  }
}
/* END_SNIPPET:_styles-product-information */

/* START_SNIPPET:_styles-product-media-gallery-styles (INDEX:260) */
@layer components {
  .ns-product-media-gallery {
    --ns-gallery-gap: 0.625rem;
    --ns-gallery-media-ratio: 0.78125;
    --ns-gallery-thumbnail-gap: 0.625rem;
    --ns-gallery-thumbnail-inline-size: 4.5rem;
    --ns-gallery-thumbnail-columns-desktop: 5;
    --ns-gallery-thumbnail-columns-tablet: 4;
    --ns-gallery-carousel-items: 3;
    --ns-gallery-radius: min(
      var(--ns-gallery-radius-base, var(--ns-radius-product-gallery-media, var(--ns-radius-media, 0px))),
      max(var(--ns-radius-sm), 8cqi)
    );
    --ns-gallery-thumbnail-radius: min(
      var(--ns-radius-product-gallery-thumbnail, var(--ns-radius-lg)),
      var(--ns-gallery-radius-base, var(--ns-radius-product-gallery-media, var(--ns-radius-media, 0px)))
    );
    display: block;
    min-inline-size: 0;
    container-type: inline-size;
  }

  .ns-product-media-gallery__stage {
    position: relative;
    min-inline-size: 0;
  }

  ns-inline-image-zoom {
    display: contents;
  }

  .ns-product-media-gallery__track {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: 100%;
    gap: var(--ns-gallery-gap);
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-behavior: smooth;
    scroll-snap-type: inline mandatory;
    scrollbar-width: none;
    touch-action: pan-x pan-y;
  }

  .ns-product-media-gallery__track::-webkit-scrollbar {
    display: none;
  }

  .ns-product-media-gallery__slide {
    position: relative;
    min-inline-size: 0;
    aspect-ratio: var(--ns-gallery-media-ratio);
    overflow: clip;
    border-radius: var(--ns-gallery-radius);
    scroll-snap-align: start;
    scroll-snap-stop: always;
    background: color-mix(in srgb, var(--ns-color-foreground) 4%, var(--ns-color-background));
  }

  .ns-product-media,
  .ns-product-media__element,
  .ns-product-media iframe,
  .ns-product-media model-viewer,
  .ns-product-media video {
    inline-size: 100%;
    block-size: 100%;
  }

  .ns-product-media__element,
  .ns-product-media iframe,
  .ns-product-media model-viewer,
  .ns-product-media video {
    display: block;
    border: 0;
    object-fit: contain;
  }

  .ns-product-media[data-ns-media-type='image'] .ns-product-media__element {
    object-fit: var(--ns-gallery-image-fit, contain);
  }

  .ns-product-media-gallery__zoom-link {
    display: block;
    inline-size: 100%;
    block-size: 100%;
    color: inherit;
    cursor: zoom-in;
  }

  .ns-product-media-gallery__arrow {
    --ns-radius-icon-button: var(--ns-slider-arrow-radius, var(--ns-radius-xl));

    position: absolute;
    inset-block-start: 50%;
    z-index: 2;
    display: none;
    place-items: center;
    inline-size: 2.1875rem;
    block-size: 2.1875rem;
    padding: 0;
    border: 0;
    border-radius: var(--ns-slider-arrow-radius, var(--ns-radius-xl));
    background: color-mix(in srgb, var(--ns-color-background) 88%, transparent);
    box-shadow: 0 0.125rem 0.75rem color-mix(in srgb, var(--ns-color-foreground) 12%, transparent);
    color: var(--ns-color-foreground);
    cursor: pointer;
    transform: translateY(-50%);
  }

  html[data-ns-js] .ns-product-media-gallery__arrow {
    display: grid;
  }

  .ns-product-media-gallery__arrow:disabled {
    opacity: 0.35;
    cursor: default;
  }

  .ns-product-media-gallery__arrow svg {
    inline-size: 1.5rem;
    block-size: 1.5rem;
  }

  .ns-product-media-gallery__arrow--previous {
    inset-inline-start: 0.3125rem;
  }

  .ns-product-media-gallery__arrow--next {
    inset-inline-end: 0.3125rem;
  }

  .ns-product-media-gallery__arrow--next svg {
    transform: rotate(180deg);
  }

  .ns-product-media-gallery__media-badge,
  .ns-product-media-gallery__zoom-indicator {
    position: absolute;
    z-index: 1;
    display: grid;
    place-items: center;
    inline-size: 2.75rem;
    block-size: 2.75rem;
    color: var(--ns-color-foreground);
  }

  .ns-product-media-gallery__media-badge {
    inset-block-end: 0;
    inset-inline-start: 0;
  }

  .ns-product-media-gallery__zoom-indicator {
    inset-block-end: 0;
    inset-inline-end: 0;
  }

  .ns-product-media-gallery__media-badge svg,
  .ns-product-media-gallery__zoom-indicator svg {
    inline-size: 1.25rem;
    block-size: 1.25rem;
  }

  .ns-product-media-gallery__zoom-level {
    position: absolute;
    z-index: 3;
    display: grid;
    inline-size: var(--ns-touch-target-min, 2.75rem);
    block-size: var(--ns-touch-target-min, 2.75rem);
    place-items: center;
    inset-block-end: 0.25rem;
    inset-inline-end: 3rem;
    border: 1px solid currentColor;
    border-radius: var(--ns-radius-icon-button, var(--ns-radius-pill));
    background: var(--ns-color-background);
    color: var(--ns-color-foreground);
  }

  .ns-product-media-gallery__zoom-level svg {
    inline-size: 1rem;
    block-size: 1rem;
  }

  html:not([data-ns-js]) .ns-product-media-gallery__zoom-level {
    display: none;
  }

  .ns-product-media-gallery__thumbnails {
    display: none;
  }

  .ns-product-media-gallery__thumbnail {
    position: relative;
    display: block;
    min-inline-size: 0;
    aspect-ratio: 25 / 32;
    overflow: clip;
    border: 1px solid transparent;
    border-radius: var(--ns-gallery-thumbnail-radius);
    color: var(--ns-color-foreground);
  }

  .ns-product-media-gallery__thumbnail[aria-current='true'] {
    border-color: currentColor;
  }

  .ns-product-media-gallery__thumbnail-image {
    inline-size: 100%;
    block-size: 100%;
    object-fit: contain;
  }

  .ns-product-media-gallery__thumbnail-badge {
    position: absolute;
    inset-inline-end: 0.25rem;
    inset-block-end: 0.25rem;
    display: grid;
    place-items: center;
    min-inline-size: 1.25rem;
    min-block-size: 1.25rem;
    padding: var(--ns-space-2);
    background: var(--ns-color-background);
    color: var(--ns-color-foreground);
  }

  .ns-product-media-gallery__thumbnail-badge svg {
    inline-size: 1rem;
    block-size: 1rem;
  }

  .ns-product-media-gallery__status {
    position: absolute;
    inline-size: 1px;
    block-size: 1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
  }

  .ns-product-media-gallery__placeholder svg {
    inline-size: 100%;
    aspect-ratio: var(--ns-gallery-media-ratio);
    background: color-mix(in srgb, var(--ns-color-foreground) 4%, var(--ns-color-background));
  }

  .ns-product-media-gallery__placeholder {
    overflow: clip;
    border-radius: var(--ns-gallery-radius);
  }

  @media (min-width: 768px) {
    .ns-product-media-gallery[data-ns-layout='thumbnails_left'] {
      position: relative;
      padding-inline-start: calc(var(--ns-gallery-thumbnail-inline-size) + var(--ns-gallery-thumbnail-gap));
    }

    .ns-product-media-gallery[data-ns-layout='thumbnails_left'] .ns-product-media-gallery__thumbnails {
      position: absolute;
      inset-block: 0;
      inset-inline-start: 0;
      display: grid;
      align-content: start;
      inline-size: var(--ns-gallery-thumbnail-inline-size);
      overflow-y: auto;
      gap: var(--ns-gallery-thumbnail-gap);
      scrollbar-width: none;
    }

    .ns-product-media-gallery[data-ns-layout='thumbnails_left']
      .ns-product-media-gallery__thumbnails::-webkit-scrollbar {
      display: none;
    }

    .ns-product-media-gallery[data-ns-layout='thumbnails_left'] .ns-product-media-gallery__stage {
      min-inline-size: 0;
    }

    .ns-product-media-gallery[data-ns-layout='thumbnails_grid'] .ns-product-media-gallery__thumbnails {
      display: grid;
      grid-template-columns: repeat(var(--ns-gallery-thumbnail-columns-tablet), minmax(0, 1fr));
      gap: var(--ns-gallery-thumbnail-gap);
      margin-block-start: var(--ns-gallery-thumbnail-gap);
    }

    .ns-product-media-gallery[data-ns-layout='stacked'] .ns-product-media-gallery__track,
    .ns-product-media-gallery[data-ns-layout='grid_two'] .ns-product-media-gallery__track {
      grid-auto-flow: row;
      grid-auto-columns: auto;
      overflow: visible;
      scroll-snap-type: none;
    }

    .ns-product-media-gallery[data-ns-layout='grid_two'] .ns-product-media-gallery__track {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .ns-product-media-gallery[data-ns-layout='carousel_three'] .ns-product-media-gallery__track {
      grid-auto-columns: calc(
        (100% - (var(--ns-gallery-carousel-items) - 1) * var(--ns-gallery-gap)) / var(--ns-gallery-carousel-items)
      );
    }

    html[data-ns-js] .ns-product-media-gallery[data-ns-layout='stacked'] .ns-product-media-gallery__arrow,
    html[data-ns-js] .ns-product-media-gallery[data-ns-layout='grid_two'] .ns-product-media-gallery__arrow {
      display: none;
    }
  }

  @media (min-width: 1025px) {
    .ns-product-media-gallery[data-ns-layout='thumbnails_grid'] .ns-product-media-gallery__thumbnails {
      grid-template-columns: repeat(var(--ns-gallery-thumbnail-columns-desktop), minmax(0, 1fr));
    }
  }

  @media (prefers-reduced-motion: reduce) {
    .ns-product-media-gallery__track {
      scroll-behavior: auto;
    }
  }
}
/* END_SNIPPET:_styles-product-media-gallery-styles */

/* START_SNIPPET:_styles-responsive-composition-styles (INDEX:261) */
@layer components {
  .ns-responsive-composition-block {
    width: 100%;
    min-width: 0;
    height: 100%;
    min-height: 100%;
  }

  .ns-overlay-composition-row {
    position: relative;
    height: auto;
    min-height: 0;
  }

  .ns-overlay-composition-row > .ns-overlay-composition {
    --ns-row-position: absolute;
    --ns-row-inset: 0;
    --ns-row-width: auto;
  }

  .ns-overlay-composition-row > .ns-overlay-composition[data-ns-responsive-layout-desktop='grid'] {
    --ns-row-position: relative;
    --ns-row-inset: auto;
    --ns-row-width: 100%;
  }

  .ns-overlay-composition-row > .ns-overlay-composition > .ns-visual-content,
  .ns-overlay-composition-row > .ns-overlay-composition > .ns-u-theme-block-root > .ns-visual-content {
    position: var(--ns-row-position);
    inset: var(--ns-row-inset);
    width: var(--ns-row-width);
  }

  .ns-responsive-composition {
    --ns-responsive-columns: var(--ns-responsive-columns-desktop, 1);
    --ns-responsive-gap: var(--ns-responsive-gap-desktop, 0px);
    display: grid;
    grid-template-columns: repeat(var(--ns-responsive-columns), minmax(0, 1fr));
    gap: var(--ns-responsive-gap);
    width: 100%;
    min-height: 100%;
  }

  .ns-responsive-composition > :not(.ns-u-theme-block-root),
  .ns-responsive-composition > .ns-u-theme-block-root > * {
    min-width: 0;
  }

  .ns-responsive-composition[data-ns-responsive-layout-desktop='overlay'] > :not(.ns-u-theme-block-root),
  .ns-responsive-composition[data-ns-responsive-layout-desktop='overlay'] > .ns-u-theme-block-root > * {
    grid-area: 1 / 1 / -1 / -1;
  }

  .ns-visual-layer--flow .ns-visual-content {
    position: relative;
    inset: auto;
    width: 100%;
  }

  @media (min-width: 768px) and (max-width: 1024px) {
    .ns-responsive-composition {
      --ns-responsive-columns: var(--ns-responsive-columns-tablet, var(--ns-responsive-columns-desktop, 1));
      --ns-responsive-gap: var(--ns-responsive-gap-tablet, var(--ns-responsive-gap-desktop, 0px));
    }

    .ns-responsive-composition[data-ns-responsive-layout-tablet='overlay'] > :not(.ns-u-theme-block-root),
    .ns-responsive-composition[data-ns-responsive-layout-tablet='overlay'] > .ns-u-theme-block-root > * {
      grid-area: 1 / 1 / -1 / -1;
    }

    .ns-responsive-composition[data-ns-responsive-layout-tablet='grid'] > :not(.ns-u-theme-block-root),
    .ns-responsive-composition[data-ns-responsive-layout-tablet='grid'] > .ns-u-theme-block-root > * {
      grid-area: auto;
    }

    .ns-overlay-composition-row > .ns-overlay-composition[data-ns-responsive-layout-tablet='grid'] {
      --ns-row-position: relative;
      --ns-row-inset: auto;
      --ns-row-width: 100%;
    }

    .ns-overlay-composition-row > .ns-overlay-composition[data-ns-responsive-layout-tablet='overlay'] {
      --ns-row-position: absolute;
      --ns-row-inset: 0;
      --ns-row-width: auto;
    }
  }

  @media (max-width: 767px) {
    .ns-responsive-composition {
      --ns-responsive-columns: var(--ns-responsive-columns-mobile, 1);
      --ns-responsive-gap: var(--ns-responsive-gap-mobile, var(--ns-responsive-gap-desktop, 0px));
    }

    .ns-responsive-composition[data-ns-responsive-layout-mobile='overlay'] > :not(.ns-u-theme-block-root),
    .ns-responsive-composition[data-ns-responsive-layout-mobile='overlay'] > .ns-u-theme-block-root > * {
      grid-area: 1 / 1 / -1 / -1;
    }

    .ns-responsive-composition[data-ns-responsive-layout-mobile='grid'] > :not(.ns-u-theme-block-root),
    .ns-responsive-composition[data-ns-responsive-layout-mobile='grid'] > .ns-u-theme-block-root > * {
      grid-area: auto;
    }

    .ns-overlay-composition-row > .ns-overlay-composition[data-ns-responsive-layout-mobile='grid'] {
      --ns-row-position: relative;
      --ns-row-inset: auto;
      --ns-row-width: 100%;
    }

    .ns-overlay-composition-row > .ns-overlay-composition[data-ns-responsive-layout-mobile='overlay'] {
      --ns-row-position: absolute;
      --ns-row-inset: 0;
      --ns-row-width: auto;
    }
  }
}
/* END_SNIPPET:_styles-responsive-composition-styles */

/* START_SNIPPET:_styles-section-background-styles (INDEX:262) */
@layer components {
  [data-ns-section-surface]:has(> .ns-section-background[data-ns-section-background-active='true']) {
    --ns-section-surface-padding-block-start: var(--ns-section-surface-padding-block-start-desktop, 0px);
    --ns-section-surface-padding-inline-end: var(--ns-section-surface-padding-inline-end-desktop, 0px);
    --ns-section-surface-padding-block-end: var(--ns-section-surface-padding-block-end-desktop, 0px);
    --ns-section-surface-padding-inline-start: var(--ns-section-surface-padding-inline-start-desktop, 0px);
    --ns-section-surface-margin-block-start: var(--ns-section-surface-margin-block-start-desktop, 0px);
    --ns-section-surface-margin-block-end: var(--ns-section-surface-margin-block-end-desktop, 0px);
    --ns-section-surface-min-height: var(--ns-section-surface-min-height-desktop, 0px);
    --ns-section-surface-content-alignment: var(--ns-section-surface-content-alignment-desktop, stretch);

    position: relative;
    isolation: isolate;
    display: grid;
    min-width: 0;
    min-height: var(--ns-section-surface-min-height);
    margin-block: var(--ns-section-surface-margin-block-start) var(--ns-section-surface-margin-block-end);
  }

  [data-ns-section-surface]:has(> .ns-section-background[data-ns-section-background-active='true']),
  [data-ns-section-surface]:has(> .ns-section-background[data-ns-section-appearance-active='true']) {
    position: relative;
    color: var(--ns-color-foreground);
    background: var(--ns-section-authored-background, var(--ns-color-background));
  }

  body[data-ns-page-atmosphere-transitioning='true']
    [data-ns-section-surface][data-ns-page-atmosphere-transition-participant='true']:has(
      > .ns-section-background[data-ns-section-background-active='true']
    ),
  body[data-ns-page-atmosphere-transitioning='true']
    [data-ns-section-surface][data-ns-page-atmosphere-transition-participant='true']:has(
      > .ns-section-background[data-ns-section-appearance-active='true']
    ) {
    transition:
      color var(--ns-appearance-transition-duration, 1200ms) var(--ns-appearance-transition-easing, ease),
      background-color var(--ns-appearance-transition-duration, 1200ms) var(--ns-appearance-transition-easing, ease);
  }

  [data-ns-section-surface]:has(> .ns-section-background[data-ns-section-background-active='true'])
    > [data-ns-section-surface-content] {
    grid-area: 1 / 1;
    min-width: 0;
  }

  [data-ns-section-surface]:has(> .ns-section-background[data-ns-section-background-active='true'])
    > [data-ns-section-surface-content] {
    z-index: 1;
    align-self: var(--ns-section-surface-content-alignment);
    padding-block: var(--ns-section-surface-padding-block-start) var(--ns-section-surface-padding-block-end);
    padding-inline: var(--ns-section-surface-padding-inline-start) var(--ns-section-surface-padding-inline-end);
  }

  .ns-section-background {
    position: absolute;
    inset: 0;
    z-index: 0;
    overflow: clip;
    pointer-events: none;
  }

  .ns-section-background[data-ns-section-background-design-mode='true'][data-ns-section-background-active='true'] {
    pointer-events: auto;
  }

  .ns-section-background__layers,
  .ns-section-background__layers > .ns-visual-layer,
  .ns-section-background .ns-visual-layer__composition {
    width: 100%;
    height: 100%;
    min-height: 100%;
  }

  .ns-section-background__layers {
    display: grid;
  }

  @media (prefers-reduced-motion: reduce) {
    [data-ns-section-surface]:has(> .ns-section-background[data-ns-section-background-active='true']),
    [data-ns-section-surface]:has(> .ns-section-background[data-ns-section-appearance-active='true']) {
      transition: none;
    }
  }

  .ns-section-background__layers > .ns-visual-layer {
    grid-area: 1 / 1;
    position: relative;
    isolation: isolate;
    z-index: 0;
  }

  .ns-section-background .ns-visual-layer--background .ns-visual-media,
  .ns-section-background .ns-visual-layer--background .ns-visual-media__picture,
  .ns-section-background .ns-visual-layer--background .ns-visual-media__picture img,
  .ns-section-background .ns-visual-layer--background .ns-visual-media__video,
  .ns-section-background .ns-visual-layer--background .ns-visual-media__external,
  .ns-section-background .ns-visual-layer--background .ns-visual-media__placeholder {
    width: 100%;
    height: 100%;
  }

  @media (min-width: 768px) and (max-width: 1024px) {
    [data-ns-section-surface]:has(> .ns-section-background[data-ns-section-background-active='true']) {
      --ns-section-surface-padding-block-start: var(
        --ns-section-surface-padding-block-start-tablet,
        var(--ns-section-surface-padding-block-start-desktop, 0px)
      );
      --ns-section-surface-padding-inline-end: var(
        --ns-section-surface-padding-inline-end-tablet,
        var(--ns-section-surface-padding-inline-end-desktop, 0px)
      );
      --ns-section-surface-padding-block-end: var(
        --ns-section-surface-padding-block-end-tablet,
        var(--ns-section-surface-padding-block-end-desktop, 0px)
      );
      --ns-section-surface-padding-inline-start: var(
        --ns-section-surface-padding-inline-start-tablet,
        var(--ns-section-surface-padding-inline-start-desktop, 0px)
      );
      --ns-section-surface-margin-block-start: var(
        --ns-section-surface-margin-block-start-tablet,
        var(--ns-section-surface-margin-block-start-desktop, 0px)
      );
      --ns-section-surface-margin-block-end: var(
        --ns-section-surface-margin-block-end-tablet,
        var(--ns-section-surface-margin-block-end-desktop, 0px)
      );
      --ns-section-surface-min-height: var(
        --ns-section-surface-min-height-tablet,
        var(--ns-section-surface-min-height-desktop, 0px)
      );
      --ns-section-surface-content-alignment: var(
        --ns-section-surface-content-alignment-tablet,
        var(--ns-section-surface-content-alignment-desktop, stretch)
      );
    }
  }

  @media (max-width: 767px) {
    [data-ns-section-surface]:has(> .ns-section-background[data-ns-section-background-active='true']) {
      --ns-section-surface-padding-block-start: var(
        --ns-section-surface-padding-block-start-mobile,
        var(--ns-section-surface-padding-block-start-desktop, 0px)
      );
      --ns-section-surface-padding-inline-end: var(
        --ns-section-surface-padding-inline-end-mobile,
        var(--ns-section-surface-padding-inline-end-desktop, 0px)
      );
      --ns-section-surface-padding-block-end: var(
        --ns-section-surface-padding-block-end-mobile,
        var(--ns-section-surface-padding-block-end-desktop, 0px)
      );
      --ns-section-surface-padding-inline-start: var(
        --ns-section-surface-padding-inline-start-mobile,
        var(--ns-section-surface-padding-inline-start-desktop, 0px)
      );
      --ns-section-surface-margin-block-start: var(
        --ns-section-surface-margin-block-start-mobile,
        var(--ns-section-surface-margin-block-start-desktop, 0px)
      );
      --ns-section-surface-margin-block-end: var(
        --ns-section-surface-margin-block-end-mobile,
        var(--ns-section-surface-margin-block-end-desktop, 0px)
      );
      --ns-section-surface-min-height: var(
        --ns-section-surface-min-height-mobile,
        var(--ns-section-surface-min-height-desktop, 0px)
      );
      --ns-section-surface-content-alignment: var(
        --ns-section-surface-content-alignment-mobile,
        var(--ns-section-surface-content-alignment-desktop, stretch)
      );
    }
  }
}
/* END_SNIPPET:_styles-section-background-styles */

/* START_SNIPPET:_styles-service-highlights-styles (INDEX:263) */
@layer components {
  .ns-service-highlights {
    border-block: 1px solid var(--ns-color-border);
    background: var(--ns-color-background);
    color: var(--ns-color-foreground);
  }

  .ns-service-highlights__inner {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--ns-primary-grid-row-gap) var(--ns-primary-grid-column-gap);
    align-items: center;
    width: var(--ns-content-width);
    min-height: 4.375rem;
    margin-inline: auto;
  }

  .ns-service-highlight {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--ns-space-12);
    min-width: 0;
    padding: var(--ns-space-12) var(--ns-space-16);
  }

  .ns-service-highlight__icon {
    display: grid;
    flex: 0 0 auto;
    place-items: center;
    width: 1.5rem;
    height: 1.5rem;
  }

  .ns-service-highlight__icon svg {
    width: 100%;
    height: 100%;
  }
  .ns-service-highlight__copy {
    min-width: 0;
    font-size: var(--ns-type-body-small-size);
    line-height: var(--ns-type-body-small-line-height);
  }
  .ns-service-highlight__heading {
    font-weight: var(--ns-type-weight-interface);
  }
  .ns-service-highlight__text {
    margin-inline-start: 0.25em;
    color: var(--ns-color-muted);
  }
  .ns-service-highlight__link {
    color: inherit;
    text-decoration: none;
  }
  .ns-service-highlight__link:hover {
    text-decoration: underline;
  }

  @media (max-width: 1024px) {
    .ns-service-highlights__inner {
      grid-template-columns: 1fr;
      padding-block: var(--ns-space-8);
    }
    .ns-service-highlight {
      justify-content: flex-start;
    }
  }
}
/* END_SNIPPET:_styles-service-highlights-styles */

/* START_SNIPPET:_styles-size-guide-styles (INDEX:264) */
@layer components {
  .ns-size-guide__inner {
    width: var(--ns-content-width);
    margin-inline: auto;
  }

  .ns-size-guide__grid {
    --ns-size-guide-media-offset: 2.0625rem;
    --ns-size-guide-row-gap: 2.3125rem;

    display: grid;
    grid-template-columns: minmax(0, 29fr) minmax(16.875rem, 9fr);
    column-gap: var(--ns-space-30);
    row-gap: var(--ns-size-guide-row-gap);
    align-items: start;
  }

  .ns-size-guide__grid > .ns-size-guide-table {
    grid-column: 1;
  }

  .ns-size-guide__grid > .ns-visual-stage {
    grid-column: 2;
    grid-row: 1 / span 20;
    margin-block-start: var(--ns-size-guide-media-offset);
  }

  .ns-size-guide-table {
    min-width: 0;
  }

  .ns-size-guide-table__heading {
    margin: 0 0 var(--ns-space-12);
    font: inherit;
    font-size: var(--ns-type-medium-size);
    line-height: var(--ns-type-medium-line-height);
    text-align: center;
  }

  .ns-size-guide-table__scroller {
    overflow-x: auto;
    scrollbar-width: thin;
  }

  .ns-size-guide-table__scroller:focus-visible {
    outline: 2px solid currentColor;
    outline-offset: 0.25rem;
  }

  .ns-size-guide-table table {
    width: 100%;
    min-width: 46rem;
    border-collapse: collapse;
    table-layout: fixed;
    font-size: var(--ns-type-caption-size);
    line-height: 1.3;
  }

  .ns-size-guide-table :is(th, td) {
    height: 2.1875rem;
    padding: var(--ns-space-8) var(--ns-space-12);
    border-bottom: 1px solid var(--ns-color-border);
    font-weight: var(--ns-type-weight-interface);
    text-align: center;
    white-space: nowrap;
  }

  .ns-size-guide-table :is(th, td):first-child {
    width: 11rem;
    text-align: start;
    text-transform: uppercase;
  }

  .ns-size-guide-row--header th {
    border-color: var(--ns-color-foreground);
    background: var(--ns-color-foreground);
    color: var(--ns-color-background);
    text-transform: uppercase;
  }

  .ns-size-guide .ns-visual-stage {
    overflow: visible;
    background: transparent;
  }

  @media (max-width: 63.99rem) {
    .ns-size-guide__grid {
      grid-template-columns: minmax(0, 1fr);
    }

    .ns-size-guide__grid > :is(.ns-size-guide-table, .ns-visual-stage) {
      grid-column: 1;
      grid-row: auto;
    }

    .ns-size-guide__grid > .ns-visual-stage {
      width: min(100%, 28rem);
      margin-block-start: 0;
      margin-inline: auto;
    }
  }

  @media (max-width: 47.99rem) {
    .ns-size-guide-table table {
      min-width: 40rem;
    }

    .ns-size-guide-table :is(th, td):first-child {
      width: 9rem;
    }
  }
}
/* END_SNIPPET:_styles-size-guide-styles */

/* START_SNIPPET:_styles-slider-navigation-styles (INDEX:265) */
@layer components {
  ns-slider-navigation:not(:defined) {
    display: none;
  }

  .ns-slider-navigation {
    display: contents;
    color: var(--ns-slider-navigation-color, var(--ns-color-foreground));
    transition: color var(--ns-appearance-transition-duration, 1200ms) var(--ns-appearance-transition-easing, ease);
  }

  .ns-visual-slider[data-ns-slider-active-content-color-mode='light'] {
    --ns-slider-navigation-color: var(--ns-appearance-light-foreground);
    --ns-slider-navigation-control-background: color-mix(
      in srgb,
      var(--ns-appearance-light-background) 86%,
      transparent
    );
    --ns-slider-navigation-border: var(--ns-appearance-light-border);
  }

  .ns-visual-slider[data-ns-slider-active-content-color-mode='dark'] {
    --ns-slider-navigation-color: var(--ns-appearance-dark-foreground);
    --ns-slider-navigation-control-background: color-mix(
      in srgb,
      var(--ns-appearance-dark-background) 86%,
      transparent
    );
    --ns-slider-navigation-border: var(--ns-appearance-dark-border);
  }

  .ns-slider-navigation__control {
    --ns-radius-icon-button: var(--ns-slider-arrow-radius, 12px);

    position: absolute;
    z-index: 4;
    inset-block-start: var(--ns-slider-navigation-control-block-start, 50%);
    display: grid;
    place-items: center;
    width: var(--ns-slider-navigation-control-size, var(--ns-control-block-size-md));
    height: var(--ns-slider-navigation-control-size, var(--ns-control-block-size-md));
    padding: 0;
    color: inherit;
    background: var(
      --ns-slider-navigation-control-background,
      color-mix(in srgb, var(--ns-color-background) 86%, transparent)
    );
    border: 1px solid var(--ns-slider-navigation-border, var(--ns-color-border));
    border-radius: var(--ns-slider-arrow-radius, 12px);
    transform: translateY(-50%);
    transition:
      color var(--ns-appearance-transition-duration, 1200ms) var(--ns-appearance-transition-easing, ease),
      background-color var(--ns-appearance-transition-duration, 1200ms) var(--ns-appearance-transition-easing, ease),
      border-color var(--ns-appearance-transition-duration, 1200ms) var(--ns-appearance-transition-easing, ease),
      opacity 160ms ease;
    cursor: pointer;
  }

  .ns-slider-navigation__control--previous {
    inset-inline-start: var(--ns-slider-navigation-inline-offset, var(--ns-space-16));
  }

  .ns-slider-navigation__control--next {
    inset-inline-end: var(
      --ns-slider-navigation-inline-end-offset,
      var(--ns-slider-navigation-inline-offset, var(--ns-space-16))
    );
  }

  .ns-slider-navigation__control svg {
    width: var(--ns-icon-size-sm);
    height: var(--ns-icon-size-sm);
  }

  .ns-slider-navigation__control--next svg {
    transform: rotate(180deg);
  }

  .ns-slider-navigation__control:disabled {
    cursor: default;
    opacity: 0.35;
    transition:
      color var(--ns-appearance-transition-duration, 1200ms) var(--ns-appearance-transition-easing, ease),
      background-color var(--ns-appearance-transition-duration, 1200ms) var(--ns-appearance-transition-easing, ease),
      border-color var(--ns-appearance-transition-duration, 1200ms) var(--ns-appearance-transition-easing, ease),
      opacity 160ms ease;
  }

  .ns-slider-navigation__dots {
    position: absolute;
    z-index: 4;
    inset-inline: 0;
    inset-block-end: var(
      --ns-slider-navigation-block-offset-desktop,
      var(--ns-slider-navigation-block-offset, var(--ns-space-20))
    );
    display: flex;
    justify-content: center;
    gap: var(--ns-slider-navigation-dot-gap, var(--ns-space-12));
    pointer-events: none;
  }

  .ns-slider-navigation__dot {
    width: var(--ns-slider-navigation-dot-size, 0.375rem);
    height: var(--ns-slider-navigation-dot-size, 0.375rem);
    padding: 0;
    color: inherit;
    background: currentColor;
    border: 0;
    border-radius: var(--ns-radius-slider-dot, var(--ns-radius-pill));
    opacity: 0.35;
    transition:
      width 160ms ease,
      height 160ms ease,
      color var(--ns-appearance-transition-duration, 1200ms) var(--ns-appearance-transition-easing, ease),
      background-color var(--ns-appearance-transition-duration, 1200ms) var(--ns-appearance-transition-easing, ease),
      opacity 160ms ease;
    pointer-events: auto;
    cursor: pointer;
  }

  .ns-slider-navigation__dot[aria-current='true'] {
    opacity: 1;
  }

  .ns-slider-navigation--pagination-external .ns-slider-navigation__dots {
    position: static;
    margin-block-start: var(--ns-slider-navigation-external-gap, var(--ns-space-20));
  }

  .ns-slider-navigation--pagination-emphasis .ns-slider-navigation__dots {
    align-items: center;
    gap: calc(
      var(--ns-slider-navigation-dot-center-distance, var(--ns-space-28)) -
        var(--ns-slider-navigation-dot-hit-area, var(--ns-space-24))
    );
  }

  .ns-slider-navigation--pagination-emphasis .ns-slider-navigation__dot {
    display: grid;
    place-items: center;
    width: var(--ns-slider-navigation-dot-hit-area, 1.5rem);
    height: var(--ns-slider-navigation-dot-hit-area, 1.5rem);
    background: transparent;
    opacity: 1;
  }

  .ns-slider-navigation--pagination-emphasis .ns-slider-navigation__dot::before {
    width: var(--ns-slider-navigation-inactive-dot-size, 0.375rem);
    height: var(--ns-slider-navigation-inactive-dot-size, 0.375rem);
    content: '';
    background: currentColor;
    border-radius: inherit;
    opacity: 0.35;
    transition:
      width 160ms ease,
      height 160ms ease,
      background-color var(--ns-appearance-transition-duration, 1200ms) var(--ns-appearance-transition-easing, ease),
      opacity 160ms ease;
  }

  .ns-slider-navigation--pagination-emphasis .ns-slider-navigation__dot[aria-current='true']::before {
    width: var(--ns-slider-navigation-active-dot-size, 0.625rem);
    height: var(--ns-slider-navigation-active-dot-size, 0.625rem);
    opacity: 1;
  }

  @media (max-width: 767px) {
    .ns-slider-navigation {
      --ns-slider-navigation-control-size: var(--ns-control-block-size-sm);
    }

    .ns-slider-navigation__dots {
      inset-block-end: var(
        --ns-slider-navigation-block-offset-mobile,
        var(--ns-slider-navigation-block-offset-desktop, var(--ns-slider-navigation-block-offset, var(--ns-space-20)))
      );
    }
  }

  @media (prefers-reduced-motion: reduce) {
    .ns-slider-navigation__control,
    .ns-slider-navigation__dot,
    .ns-slider-navigation__dot::before {
      transition: none;
    }
  }
}
/* END_SNIPPET:_styles-slider-navigation-styles */

/* START_SNIPPET:_styles-surface-transition-styles (INDEX:266) */
@layer components {
  .ns-surface-transition {
    position: absolute;
    inset-inline: 0;
    z-index: 1;
    block-size: var(--ns-surface-transition-height);
    overflow: clip;
    background: var(--ns-surface-transition-inverse-background);
    pointer-events: none;
  }

  .ns-surface-transition--top {
    inset-block-start: 0;
    --ns-surface-transition-upper-background: var(--ns-surface-transition-inverse-background);
    --ns-surface-transition-lower-background: var(--ns-color-background);
  }

  .ns-surface-transition--bottom {
    inset-block-end: 0;
    --ns-surface-transition-upper-background: var(--ns-color-background);
    --ns-surface-transition-lower-background: var(--ns-surface-transition-inverse-background);
  }

  .ns-surface-transition__svg {
    display: block;
    inline-size: 100%;
    block-size: 100%;
    fill: var(--ns-color-background);
  }

  .ns-surface-transition__depth-line {
    fill: none;
    stroke-linecap: butt;
    stroke-linejoin: round;
    vector-effect: non-scaling-stroke;
  }

  .ns-surface-transition__depth-line--shadow-far {
    stroke: color-mix(in srgb, var(--ns-surface-transition-lower-background) 97%, var(--ns-appearance-dark-background));
    stroke-width: 10px;
    transform: translateY(5px);
  }

  .ns-surface-transition__depth-line--shadow-mid {
    stroke: color-mix(in srgb, var(--ns-surface-transition-lower-background) 94%, var(--ns-appearance-dark-background));
    stroke-width: 8px;
    transform: translateY(4px);
  }

  .ns-surface-transition__depth-line--shadow-contact {
    stroke: color-mix(in srgb, var(--ns-surface-transition-lower-background) 88%, var(--ns-appearance-dark-background));
    stroke-width: 3px;
    transform: translateY(1.5px);
  }

  .ns-surface-transition__depth-line--rim {
    stroke: color-mix(
      in srgb,
      var(--ns-surface-transition-upper-background) 86%,
      var(--ns-appearance-light-background)
    );
    stroke-width: 1px;
    transform: translateY(-1.5px);
  }

  .ns-surface-transition__depth-line--bevel {
    stroke: color-mix(
      in srgb,
      var(--ns-surface-transition-upper-background) 80%,
      var(--ns-surface-transition-lower-background)
    );
    stroke-width: 1px;
    transform: translateY(-0.5px);
  }

  @media (max-width: 767px) {
    .ns-surface-transition__depth-line--shadow-far {
      stroke-width: 5px;
      transform: translateY(var(--ns-surface-transition-mobile-shadow-far-offset));
    }

    .ns-surface-transition__depth-line--shadow-mid {
      stroke-width: 4px;
      transform: translateY(var(--ns-surface-transition-mobile-shadow-mid-offset));
    }

    .ns-surface-transition__depth-line--shadow-contact {
      stroke-width: 2px;
      transform: translateY(var(--ns-surface-transition-mobile-shadow-contact-offset));
    }

    .ns-surface-transition__depth-line--rim {
      transform: translateY(var(--ns-surface-transition-mobile-rim-offset));
    }

    .ns-surface-transition__depth-line--bevel {
      transform: translateY(var(--ns-surface-transition-mobile-bevel-offset));
    }
  }
}
/* END_SNIPPET:_styles-surface-transition-styles */

/* START_SNIPPET:_styles-tabs-styles (INDEX:267) */
@layer components {
  .ns-tabs-block {
    width: 100%;
    min-width: 0;
  }

  .ns-content-tabs-section {
    width: 100%;
  }

  .ns-content-tabs-section__inner {
    width: var(--ns-content-width);
    margin-inline: auto;
  }

  .ns-tabs {
    --ns-tabs-summary-padding-inline: 2.75rem;
    --ns-tabs-trigger-border-overlap: -1px;

    display: block;
    width: 100%;
    min-width: 0;
  }

  .ns-tabs__tablist-scroll {
    display: none;
  }

  .ns-tabs__item {
    margin: 0;
  }

  .ns-tabs__summary {
    position: relative;
    display: block;
    min-height: 2.125rem;
    padding: var(--ns-space-8) var(--ns-tabs-summary-padding-inline);
    color: var(--ns-color-heading);
    font-size: var(--ns-type-navigation-size);
    font-weight: var(--ns-type-weight-interface);
    line-height: var(--ns-type-body-line-height);
    letter-spacing: 0.025em;
    text-align: center;
    text-transform: uppercase;
    cursor: pointer;
    list-style: none;
  }

  .ns-tabs__summary::-webkit-details-marker {
    display: none;
  }

  .ns-tabs__indicator {
    position: absolute;
    inset-inline-end: 0.75rem;
    inset-block-start: 50%;
    width: 1rem;
    translate: 0 -50%;
    text-align: center;
  }

  .ns-tabs__indicator::before {
    content: '+';
  }

  .ns-tabs__item[open] > .ns-tabs__summary .ns-tabs__indicator::before {
    content: '\00d7';
  }

  .ns-tabs__panel {
    min-width: 0;
    padding-block: var(--ns-space-20, var(--ns-space-20));
  }

  .ns-tab-composition > .ns-visual-content {
    position: relative;
    inset: auto;
    z-index: 2;
    min-height: 100%;
  }

  @media (max-width: 1024px) {
    .ns-tabs__items {
      border-block-start: 1px solid var(--ns-color-border);
    }

    .ns-tabs__item {
      border-block-end: 1px solid var(--ns-color-border);
    }
  }

  @media (min-width: 1025px) {
    .ns-tabs[data-ns-runtime-ready] .ns-tabs__tablist-scroll {
      display: block;
      overflow-x: auto;
      overflow-y: hidden;
      border-block-end: 1px solid var(--ns-color-border);
      scrollbar-width: none;
      touch-action: pan-x pan-y;
      overscroll-behavior-inline: contain;
    }

    .ns-tabs[data-ns-runtime-ready] .ns-tabs__tablist-scroll::-webkit-scrollbar {
      display: none;
    }

    .ns-tabs[data-ns-runtime-ready] .ns-tabs__tablist {
      display: flex;
      align-items: flex-end;
      justify-content: center;
      width: max-content;
      min-width: 100%;
      white-space: nowrap;
      scroll-snap-type: inline proximity;
    }

    .ns-tabs[data-ns-runtime-ready] .ns-tabs__trigger {
      flex: none;
      min-width: 8.5rem;
      min-height: 2.375rem;
      margin-block-end: var(--ns-tabs-trigger-border-overlap);
      padding: var(--ns-space-10) var(--ns-space-24) var(--ns-space-12);
      border: 1px solid transparent;
      background: transparent;
      color: var(--ns-color-muted);
      font: inherit;
      font-size: var(--ns-type-navigation-size);
      font-weight: var(--ns-type-weight-interface);
      line-height: var(--ns-type-body-line-height);
      letter-spacing: 0.05em;
      text-transform: uppercase;
      cursor: pointer;
      scroll-snap-align: start;
    }

    .ns-tabs[data-ns-runtime-ready] .ns-tabs__trigger[aria-selected='true'] {
      border-color: var(--ns-color-border);
      border-block-end-color: var(--ns-color-background);
      background: var(--ns-color-background);
      color: var(--ns-color-heading);
    }

    .ns-tabs[data-ns-runtime-ready] .ns-tabs__trigger:focus-visible {
      outline: 2px solid currentColor;
      outline-offset: -3px;
    }

    .ns-tabs[data-ns-runtime-ready] .ns-tabs__summary {
      display: none;
    }

    .ns-tabs[data-ns-runtime-ready] .ns-tabs__item {
      border: 0;
    }

    .ns-tabs[data-ns-runtime-ready] .ns-tabs__panel {
      padding-block: var(--ns-space-40, var(--ns-space-40)) 0;
    }
  }

  @media (prefers-reduced-motion: reduce) {
    .ns-tabs__tablist-scroll {
      scroll-behavior: auto;
    }
  }
}
/* END_SNIPPET:_styles-tabs-styles */

/* START_SNIPPET:_styles-testimonials-styles (INDEX:268) */
@layer components {
  .ns-testimonials {
    display: block;
    width: 100%;
    min-width: 0;
    max-width: 100%;
    overflow-x: clip;
    contain: inline-size;
    background: var(--ns-color-surface-alt);
  }

  .ns-testimonials__inner {
    width: var(--ns-content-width);
    min-width: 0;
    margin-inline: auto;
  }

  .ns-testimonials__viewport {
    position: relative;
    min-width: 0;
  }

  .ns-testimonials__track {
    --ns-testimonials-columns: var(--ns-testimonials-columns-mobile);
    --ns-testimonials-gap: var(--ns-primary-grid-column-gap);
    display: grid;
    min-width: 0;
    max-width: 100%;
    grid-template-columns: repeat(var(--ns-testimonials-columns), minmax(0, 1fr));
    gap: var(--ns-primary-grid-row-gap) var(--ns-testimonials-gap);
  }

  .ns-testimonials__track > ns-section-header {
    grid-column: 1 / -1;
  }

  .ns-testimonial-card {
    display: grid;
    min-width: 0;
    min-height: 27.125rem;
    grid-template-rows: 1fr auto;
    gap: var(--ns-space-30);
    padding: var(--ns-space-30);
    border-radius: var(--ns-radius-content-panel, var(--ns-radius-2xl));
    color: var(--ns-color-foreground);
    background: var(--ns-color-background);
  }

  .ns-testimonial-card__body {
    --ns-testimonial-card-content-gap: var(--ns-space-10);

    display: grid;
    align-content: start;
    justify-items: start;
    gap: var(--ns-testimonial-card-content-gap);
  }

  .ns-testimonial-card__title {
    margin: 0;
    font-size: var(--ns-type-medium-size);
    font-weight: var(--ns-font-heading-weight);
    line-height: var(--ns-type-medium-line-height);
  }

  .ns-rating-stars {
    position: relative;
    display: inline-block;
    width: max-content;
    color: var(--ns-color-border);
    line-height: 0;
  }

  .ns-rating-stars__empty,
  .ns-rating-stars__filled {
    display: flex;
    gap: var(--ns-space-4);
  }

  .ns-rating-stars__filled {
    position: absolute;
    inset-block-start: 0;
    inset-inline-start: 0;
    width: var(--ns-rating-percent);
    overflow: hidden;
    color: var(--ns-color-heading);
  }

  .ns-rating-stars svg {
    flex: 0 0 auto;
    width: var(--ns-icon-size-sm);
    height: var(--ns-icon-size-sm);
  }

  .ns-testimonial-card__review {
    color: var(--ns-color-muted);
    font-size: var(--ns-type-body-size);
    line-height: 1.4;
  }

  .ns-testimonial-card__review > :first-child {
    margin-block-start: 0;
  }

  .ns-testimonial-card__review > :last-child {
    margin-block-end: 0;
  }

  .ns-testimonial-card__author {
    display: grid;
    justify-items: start;
    gap: var(--ns-space-10);
  }

  .ns-testimonial-card__image {
    flex: 0 0 auto;
    width: 3.625rem;
    height: 3.625rem;
    object-fit: cover;
    color: var(--ns-color-muted);
    background: var(--ns-color-surface-alt);
    border-radius: var(--ns-radius-pill);
  }

  .ns-testimonial-card__author-copy {
    display: grid;
    gap: var(--ns-space-4);
    min-width: 0;
  }

  .ns-testimonial-card__attribution,
  .ns-testimonial-card__details {
    margin: 0;
  }

  .ns-testimonial-card__attribution {
    font-size: var(--ns-type-body-size);
  }

  .ns-testimonial-card__details {
    color: var(--ns-color-muted);
    font-size: var(--ns-type-caption-size);
  }

  .ns-testimonials[data-ns-slider-mode='all'] .ns-testimonials__track {
    grid-template-columns: none;
    grid-auto-flow: column;
    grid-auto-columns: calc(
      (100% - (var(--ns-testimonials-columns) - 1) * var(--ns-testimonials-gap)) / var(--ns-testimonials-columns)
    );
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-behavior: smooth;
    scroll-snap-type: inline mandatory;
    touch-action: pan-x pan-y;
    scrollbar-width: none;
  }

  .ns-testimonials[data-ns-slider-mode='all'] .ns-testimonials__track::-webkit-scrollbar,
  .ns-testimonials[data-ns-slider-mode='mobile'] .ns-testimonials__track::-webkit-scrollbar {
    display: none;
  }

  .ns-testimonials[data-ns-slider-mode='all'] .ns-testimonial-card,
  .ns-testimonials[data-ns-slider-mode='mobile'] .ns-testimonial-card {
    scroll-snap-align: start;
    scroll-snap-stop: always;
  }

  .ns-testimonials[data-ns-slider-mode='mobile'] .ns-slider-navigation {
    display: none;
  }

  @media (min-width: 768px) {
    .ns-testimonials__track {
      --ns-testimonials-columns: var(--ns-testimonials-columns-tablet);
    }
  }

  @media (min-width: 1025px) {
    .ns-testimonials__track {
      --ns-testimonials-columns: var(--ns-testimonials-columns-desktop);
    }
  }

  @media (max-width: 767px) {
    .ns-testimonials[data-ns-slider-mode='mobile'] .ns-testimonials__track {
      grid-template-columns: none;
      grid-auto-flow: column;
      grid-auto-columns: calc(
        (100% - (var(--ns-testimonials-columns) - 1) * var(--ns-testimonials-gap)) / var(--ns-testimonials-columns)
      );
      overflow-x: auto;
      overscroll-behavior-inline: contain;
      scroll-behavior: smooth;
      scroll-snap-type: inline mandatory;
      touch-action: pan-x pan-y;
      scrollbar-width: none;
    }

    .ns-testimonials[data-ns-slider-mode='mobile'] .ns-slider-navigation {
      display: contents;
    }
  }

  @media (prefers-reduced-motion: reduce) {
    .ns-testimonials__track {
      scroll-behavior: auto;
    }
  }
}
/* END_SNIPPET:_styles-testimonials-styles */

/* START_SNIPPET:_styles-theme-guide-editor-styles (INDEX:269) */
@import './theme-guide.css';

@layer components {
  .ns-theme-guide--editor {
    --ns-theme-guide-top-layer: 2147483647;
    display: contents;
  }

  .ns-theme-guide__launcher {
    position: fixed;
    z-index: 2147480000;
    inset-block-end: max(1.25rem, env(safe-area-inset-bottom));
    inset-inline-end: max(1.25rem, var(--ns-safe-area-inset-inline-end));
    display: inline-flex;
    align-items: center;
    gap: var(--ns-space-8);
    min-block-size: 2.75rem;
    max-inline-size: min(22rem, calc(100dvw - 2.5rem));
    padding: var(--ns-space-10) var(--ns-space-14);
    border: 1px solid var(--ns-color-foreground, CanvasText);
    border-radius: var(--ns-radius-button, 0px);
    background: var(--ns-color-foreground, CanvasText);
    color: var(--ns-color-background, Canvas);
    box-shadow: 0 0.75rem 2rem color-mix(in srgb, CanvasText 18%, transparent);
    cursor: pointer;
  }

  .ns-theme-guide__launcher .ns-icon {
    inline-size: 1.25rem;
    block-size: 1.25rem;
  }

  .ns-theme-guide__launcher-label,
  .ns-theme-guide__context-badge {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .ns-theme-guide__context-badge {
    max-inline-size: 11rem;
    padding-inline-start: var(--ns-space-8);
    border-inline-start: 1px solid currentColor;
    opacity: 0.76;
  }

  .ns-theme-guide__release-badge {
    inline-size: 0.5rem;
    block-size: 0.5rem;
    border-radius: 50%;
    background: var(--ns-color-accent, var(--ns-color-error, CanvasText));
  }

  .ns-theme-guide__mini,
  .ns-theme-guide__tour,
  .ns-theme-guide__onboarding {
    position: fixed;
    z-index: 2147479999;
    inline-size: min(25rem, calc(100dvw - 2.5rem));
    padding: var(--ns-space-20);
    border: 1px solid var(--ns-theme-guide-border);
    border-radius: var(--ns-radius-popup, var(--ns-radius-3xl));
    background: var(--ns-color-background, Canvas);
    color: var(--ns-color-foreground, CanvasText);
    box-shadow: 0 1rem 3rem color-mix(in srgb, CanvasText 20%, transparent);
    isolation: isolate;
    contain: layout style paint;
  }

  .ns-theme-guide__mini {
    inset-block-end: max(5rem, calc(env(safe-area-inset-bottom) + 4rem));
    inset-inline-end: max(1.25rem, var(--ns-safe-area-inset-inline-end));
  }

  .ns-theme-guide__tour {
    inset-block-end: max(1.25rem, env(safe-area-inset-bottom));
    inset-inline-start: max(1.25rem, var(--ns-safe-area-inset-inline-start));
  }

  .ns-theme-guide__onboarding {
    --ns-theme-guide-onboarding-title-gap: var(--ns-space-16);
    --ns-theme-guide-onboarding-body-gap: var(--ns-space-12);
    --ns-theme-guide-onboarding-actions-gap: var(--ns-space-24);
    inset-block-end: max(5rem, calc(env(safe-area-inset-bottom) + 4rem));
    inset-inline-start: max(1.25rem, var(--ns-safe-area-inset-inline-start));
  }

  .ns-theme-guide__onboarding-title {
    margin: var(--ns-theme-guide-onboarding-title-gap) 0 0;
    font-size: var(--ns-type-xs-size);
  }

  .ns-theme-guide__onboarding-body {
    margin: var(--ns-theme-guide-onboarding-body-gap) 0 0;
  }

  .ns-theme-guide__onboarding > .ns-theme-guide__mini-actions {
    margin-block-start: var(--ns-theme-guide-onboarding-actions-gap);
  }

  .ns-theme-guide__icon-hint {
    position: fixed;
    z-index: var(--ns-theme-guide-top-layer);
    inset-block-start: var(--ns-theme-guide-hint-block, 1rem);
    inset-inline-start: var(--ns-theme-guide-hint-inline, 1rem);
  }

  .ns-theme-guide__context-action {
    position: fixed;
    z-index: var(--ns-theme-guide-top-layer);
    inset-block-start: var(--ns-theme-guide-context-block, 0.5rem);
    inset-inline-start: var(--ns-theme-guide-context-inline, 0.5rem);
    display: grid;
    place-items: center;
    inline-size: 2.25rem;
    block-size: 2.25rem;
    padding: var(--ns-space-8);
    border: 1px solid var(--ns-color-foreground, CanvasText);
    border-radius: var(--ns-radius-icon-button, var(--ns-radius-pill));
    background: var(--ns-color-background, Canvas);
    color: var(--ns-color-foreground, CanvasText);
    box-shadow: 0 0.5rem 1.5rem color-mix(in srgb, CanvasText 18%, transparent);
    cursor: pointer;
  }

  .ns-theme-guide__context-action .ns-icon {
    inline-size: 1rem;
    block-size: 1rem;
  }

  .ns-theme-guide__icon-hint > button {
    display: inline-flex;
    align-items: center;
    gap: var(--ns-space-6);
    min-block-size: 2.25rem;
    padding-inline: var(--ns-space-12);
    border: 1px solid var(--ns-color-foreground, CanvasText);
    border-radius: var(--ns-radius-compact, var(--ns-radius-lg));
    background: var(--ns-color-background, Canvas);
    color: var(--ns-color-foreground, CanvasText);
    box-shadow: 0 0.5rem 1.5rem color-mix(in srgb, CanvasText 18%, transparent);
    cursor: pointer;
  }

  .ns-theme-guide__toast {
    position: fixed;
    z-index: var(--ns-theme-guide-top-layer);
    inset-block-end: max(5rem, calc(env(safe-area-inset-bottom) + 4rem));
    inset-inline-end: max(1.25rem, var(--ns-safe-area-inset-inline-end));
    max-inline-size: min(28rem, calc(100dvw - 2.5rem));
    margin: 0;
    padding: var(--ns-space-14) var(--ns-space-16);
    border: 1px solid var(--ns-color-foreground, CanvasText);
    border-radius: var(--ns-radius-notification, var(--ns-radius-xl));
    background: var(--ns-color-foreground, CanvasText);
    color: var(--ns-color-background, Canvas);
    box-shadow: 0 0.75rem 2rem color-mix(in srgb, CanvasText 18%, transparent);
  }

  .ns-theme-guide__mini-close,
  .ns-theme-guide__tour-close {
    position: absolute;
    inset-block-start: 0.75rem;
    inset-inline-end: 0.75rem;
    display: grid;
    place-items: center;
    inline-size: 2rem;
    block-size: 2rem;
    padding: var(--ns-space-6);
    border: 0;
    border-radius: var(--ns-radius-icon-button, var(--ns-radius-pill));
    background: transparent;
    color: inherit;
    cursor: pointer;
  }

  .ns-theme-guide__tour-progress {
    margin: 0;
    color: var(--ns-color-muted, GrayText);
    font-size: var(--ns-type-caption-size);
    letter-spacing: 0.06em;
    text-transform: uppercase;
  }

  .ns-theme-guide__mini-title,
  .ns-theme-guide__tour-title {
    margin: var(--ns-space-8) var(--ns-space-32) var(--ns-space-8) 0;
    font-size: var(--ns-type-xs-size);
    line-height: var(--ns-type-xs-line-height);
  }

  .ns-theme-guide__mini-summary,
  .ns-theme-guide__tour-body {
    margin: 0 0 var(--ns-space-16);
    color: var(--ns-color-muted, GrayText);
  }

  .ns-theme-guide__mini-actions,
  .ns-theme-guide__tour-actions {
    display: flex;
    flex-wrap: wrap;
    gap: var(--ns-space-10);
  }

  .ns-theme-guide__text-button {
    border: 0;
    background: transparent;
    color: var(--ns-color-link, LinkText);
    text-align: start;
    text-decoration: underline;
    text-underline-offset: 0.12em;
    cursor: pointer;
  }

  .ns-theme-guide__overlay .ns-overlay__dialog {
    z-index: var(--ns-theme-guide-top-layer);
  }

  .ns-theme-guide__overlay .ns-overlay__panel {
    border-radius: var(--ns-radius-popup, var(--ns-radius-3xl));
  }

  .ns-theme-guide__overlay[data-ns-placement='right'] .ns-overlay__panel {
    border-start-end-radius: 0;
    border-end-end-radius: 0;
  }

  .ns-theme-guide__overlay .ns-overlay__body {
    display: flex;
    flex: 1 1 auto;
    min-block-size: 0;
    overflow: hidden;
    border-radius: inherit;
  }

  .ns-theme-guide__overlay .ns-theme-guide__renderer {
    flex: 1 1 auto;
    block-size: 100%;
    min-block-size: 0;
    max-block-size: 100%;
  }

  @media (max-width: 1024px) {
    .ns-theme-guide__overlay .ns-overlay__panel {
      overflow: hidden;
    }

    .ns-theme-guide__overlay .ns-overlay__close {
      background: var(--ns-color-background, Canvas);
    }
  }

  [data-ns-theme-guide-target-active] {
    outline: 3px solid var(--ns-color-accent, Highlight);
    outline-offset: 4px;
  }

  @media (max-width: 1024px) {
    .ns-theme-guide--editor,
    .ns-theme-guide--editor .ns-theme-guide__launcher,
    .ns-theme-guide--editor .ns-theme-guide__mini,
    .ns-theme-guide--editor .ns-theme-guide__tour,
    .ns-theme-guide--editor .ns-theme-guide__onboarding,
    .ns-theme-guide--editor .ns-theme-guide__context-action,
    .ns-theme-guide--editor .ns-theme-guide__icon-hint,
    .ns-theme-guide--editor .ns-theme-guide__toast {
      display: none;
    }
  }

  @media (prefers-reduced-motion: reduce) {
    [data-ns-theme-guide-target-active] {
      scroll-behavior: auto;
      transition: none;
    }
  }
}
/* END_SNIPPET:_styles-theme-guide-editor-styles */

/* START_SNIPPET:_styles-theme-guide-styles (INDEX:270) */
@layer components {
  .ns-theme-guide {
    --ns-theme-guide-border: color-mix(in srgb, var(--ns-color-foreground, CanvasText) 14%, transparent);
    --ns-theme-guide-muted-surface: color-mix(
      in srgb,
      var(--ns-color-foreground, CanvasText) 5%,
      var(--ns-color-background, Canvas)
    );
    color: var(--ns-color-foreground, CanvasText);
    font-family: var(--ns-font-body-family, sans-serif);
    font-size: var(--ns-type-body-size, 1rem);
    line-height: var(--ns-type-body-line-height, 1.5);
  }

  .ns-theme-guide [hidden] {
    display: none;
  }

  .ns-theme-guide button,
  .ns-theme-guide input {
    font: inherit;
  }

  .ns-theme-guide .ns-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-block-size: var(--ns-button-block-size, 2.75rem);
    padding-inline: var(--ns-button-padding-inline, var(--ns-space-20));
    border: 1px solid var(--ns-color-primary, CanvasText);
    border-radius: var(--ns-radius-button, 0px);
    background: var(--ns-color-primary, CanvasText);
    color: var(--ns-color-on-primary, Canvas);
    font-size: var(--ns-type-label-size, 0.75rem);
    letter-spacing: var(--ns-type-label-letter-spacing, 0.04em);
    text-transform: uppercase;
    cursor: pointer;
  }

  .ns-theme-guide .ns-button--secondary {
    background: var(--ns-color-background, Canvas);
    color: var(--ns-color-foreground, CanvasText);
  }

  .ns-theme-guide .ns-button:focus-visible,
  .ns-theme-guide button:focus-visible,
  .ns-theme-guide input:focus-visible {
    outline: 2px solid var(--ns-color-accent, Highlight);
    outline-offset: 2px;
  }

  .ns-theme-guide__eyebrow,
  .ns-theme-guide__type,
  .ns-theme-guide__version {
    margin: 0;
    color: var(--ns-color-muted, GrayText);
    font-size: var(--ns-type-caption-size);
    letter-spacing: 0.06em;
    text-transform: uppercase;
  }

  .ns-theme-guide__renderer {
    display: grid;
    grid-template-columns: minmax(14rem, 18rem) minmax(0, 1fr);
    min-block-size: 100%;
    background: var(--ns-color-background, Canvas);
    color: var(--ns-color-foreground, CanvasText);
    isolation: isolate;
    contain: layout style;
  }

  .ns-theme-guide__navigation-panel {
    min-inline-size: 0;
    min-block-size: 0;
    padding: var(--ns-space-32) var(--ns-space-16);
    overflow: auto;
    overscroll-behavior: contain;
    border-inline-end: 1px solid var(--ns-theme-guide-border);
    background: var(--ns-theme-guide-muted-surface);
  }

  .ns-theme-guide__search-label {
    display: block;
    margin-block-end: var(--ns-space-8);
    font-size: var(--ns-type-caption-size);
    letter-spacing: 0.05em;
    text-transform: uppercase;
  }

  .ns-theme-guide__search-control {
    position: relative;
  }

  .ns-theme-guide__search {
    inline-size: 100%;
    min-block-size: 2.75rem;
    padding: var(--ns-space-10) var(--ns-space-40) var(--ns-space-10) var(--ns-space-12);
    border: 1px solid var(--ns-theme-guide-border);
    border-radius: var(--ns-radius-input, 0px);
    background: var(--ns-color-background, Canvas);
    color: var(--ns-color-foreground, CanvasText);
  }

  .ns-theme-guide__search-icon {
    position: absolute;
    inset-block-start: 50%;
    inset-inline-end: 0.75rem;
    transform: translateY(-50%);
    pointer-events: none;
  }

  .ns-theme-guide__navigation {
    margin-block-start: var(--ns-space-24);
  }

  .ns-theme-guide__nav-group + .ns-theme-guide__nav-group {
    margin-block-start: var(--ns-space-20);
  }

  .ns-theme-guide__nav-heading {
    margin: 0 0 var(--ns-space-6);
    color: var(--ns-color-muted, GrayText);
    font-size: var(--ns-type-caption-size);
    letter-spacing: 0.05em;
    text-transform: uppercase;
  }

  .ns-theme-guide__nav-list,
  .ns-theme-guide__content-list,
  .ns-theme-guide__related-list {
    margin: 0;
    padding: 0;
    list-style: none;
  }

  .ns-theme-guide__nav-button,
  .ns-theme-guide__related-button {
    border: 0;
    background: transparent;
    color: inherit;
    text-align: start;
    cursor: pointer;
  }

  .ns-theme-guide__nav-button {
    inline-size: 100%;
    padding: var(--ns-space-6) var(--ns-space-8);
    border-radius: var(--ns-radius-compact, var(--ns-radius-lg));
  }

  .ns-theme-guide__nav-button:hover,
  .ns-theme-guide__nav-button[data-current] {
    background: var(--ns-color-background, Canvas);
  }

  .ns-theme-guide__nav-button[data-current] {
    font-weight: var(--ns-type-weight-emphasis);
  }

  .ns-theme-guide__article {
    min-inline-size: 0;
    min-block-size: 0;
    padding: calc(var(--ns-space-48) + var(--ns-space-8)) clamp(var(--ns-space-24), 4vw, var(--ns-space-64));
    overflow: auto;
    overscroll-behavior: contain;
  }

  .ns-theme-guide__article-meta {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: var(--ns-space-12);
  }

  .ns-theme-guide__title {
    margin: var(--ns-space-12) 0;
    font-size: var(--ns-type-large-size);
    line-height: var(--ns-type-large-line-height);
  }

  .ns-theme-guide__summary {
    max-inline-size: 48rem;
    margin: 0 0 var(--ns-space-32);
    color: var(--ns-color-muted, GrayText);
    font-size: var(--ns-type-body-size);
  }

  .ns-theme-guide__breadcrumbs {
    display: flex;
    flex-wrap: wrap;
    gap: var(--ns-space-6);
    margin-block: calc(-1 * var(--ns-space-16)) var(--ns-space-24);
    color: var(--ns-color-muted, GrayText);
    font-size: var(--ns-type-body-small-size);
  }

  .ns-theme-guide__breadcrumbs a,
  .ns-theme-guide__article-footer a {
    color: var(--ns-color-link, LinkText);
    text-underline-offset: 0.12em;
  }

  .ns-theme-guide__media {
    max-inline-size: 48rem;
    margin-block: 0 var(--ns-space-32);
  }

  .ns-theme-guide__video {
    display: block;
    inline-size: 100%;
    aspect-ratio: 16 / 9;
    border: 0;
    border-radius: var(--ns-radius-media-adaptive, var(--ns-radius-media, 0px));
    background: var(--ns-theme-guide-muted-surface);
  }

  .ns-theme-guide__tabs {
    --ns-tabs-border-color: var(--ns-theme-guide-border);
  }

  .ns-theme-guide__content-list {
    display: grid;
    gap: var(--ns-space-12);
  }

  .ns-theme-guide__content-list > li {
    padding: var(--ns-space-16);
    border-inline-start: 0.1875rem solid var(--ns-color-accent, CanvasText);
    border-radius: var(--ns-radius-notification, var(--ns-radius-xl));
    background: var(--ns-theme-guide-muted-surface);
  }

  .ns-theme-guide__related-list {
    display: grid;
    gap: var(--ns-space-8);
  }

  .ns-theme-guide__related-button {
    color: var(--ns-color-link, LinkText);
    text-decoration: underline;
    text-underline-offset: 0.12em;
  }

  .ns-theme-guide__icons {
    margin-block-start: var(--ns-space-24);
  }

  .ns-theme-guide__icon-browser > .ns-theme-guide__search {
    max-inline-size: 24rem;
    margin-block-end: var(--ns-space-16);
  }

  .ns-theme-guide__status {
    min-block-size: 1.5rem;
    margin: var(--ns-space-16) 0 0;
  }

  .ns-theme-guide__structured {
    display: grid;
    gap: var(--ns-space-20);
    margin-block-start: var(--ns-space-24);
  }

  .ns-theme-guide__block {
    max-inline-size: 52rem;
    margin: 0;
  }

  .ns-theme-guide__block-title {
    margin: 0 0 var(--ns-space-10);
    font-size: var(--ns-type-lead-size);
  }

  .ns-theme-guide__structured-list,
  .ns-theme-guide__prose {
    margin: 0;
  }

  .ns-theme-guide__block--callout {
    padding: var(--ns-space-16);
    border-inline-start: 0.25rem solid var(--ns-color-accent, CanvasText);
    border-radius: var(--ns-radius-notification, var(--ns-radius-xl));
    background: var(--ns-theme-guide-muted-surface);
  }

  .ns-theme-guide__block--callout[data-tone='warning'] {
    border-inline-start-color: var(--ns-color-error, CanvasText);
  }

  .ns-theme-guide__nested-tabs {
    --ns-tabs-border-color: var(--ns-theme-guide-border);
    margin-block-start: var(--ns-space-16);
  }

  .ns-theme-guide__accordion-group {
    border-block-start: 1px solid var(--ns-theme-guide-border);
  }

  .ns-theme-guide .ns-accordion__item {
    border-block-end: 1px solid var(--ns-theme-guide-border);
  }

  .ns-theme-guide .ns-accordion__summary {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: var(--ns-space-16);
    min-block-size: 2.75rem;
    padding-block: var(--ns-space-10);
    color: var(--ns-color-heading, currentColor);
    font-size: var(--ns-type-body-small-size);
    letter-spacing: 0.025em;
    text-transform: uppercase;
    cursor: pointer;
    list-style: none;
  }

  .ns-theme-guide .ns-accordion__summary::-webkit-details-marker {
    display: none;
  }

  .ns-theme-guide .ns-accordion__indicator::before {
    content: '+';
    display: block;
    inline-size: 1em;
    text-align: center;
  }

  .ns-theme-guide .ns-accordion__item[open] .ns-accordion__indicator::before {
    content: '\00d7';
  }

  .ns-theme-guide .ns-accordion__content {
    padding-block: var(--ns-space-8) var(--ns-space-20);
    color: var(--ns-color-muted, currentColor);
  }

  .ns-theme-guide__image-fixture {
    margin: 0;
  }

  .ns-theme-guide__image-fixture-preview {
    display: grid;
    place-items: center;
    min-block-size: 12rem;
    aspect-ratio: 16 / 7;
    border-radius: var(--ns-radius-media-adaptive, var(--ns-radius-media, 0px));
    background:
      linear-gradient(135deg, transparent 35%, color-mix(in srgb, CanvasText 8%, transparent)),
      var(--ns-theme-guide-muted-surface);
    font-size: var(--ns-type-large-size);
    letter-spacing: 0.08em;
  }

  .ns-theme-guide__image-fixture figcaption {
    margin-block-start: var(--ns-space-8);
    color: var(--ns-color-muted, GrayText);
    font-size: var(--ns-type-body-small-size);
  }

  .ns-theme-guide__code {
    margin: 0;
    padding: var(--ns-space-16);
    overflow: auto;
    border: 1px solid var(--ns-theme-guide-border);
    border-radius: var(--ns-radius-content-panel, var(--ns-radius-2xl));
    background: var(--ns-theme-guide-muted-surface);
    font:
      0.8125rem/1.5 ui-monospace,
      SFMono-Regular,
      Consolas,
      monospace;
  }

  .ns-theme-guide__settings-table {
    width: 100%;
    border-collapse: collapse;
  }

  .ns-theme-guide__settings-table :is(th, td) {
    padding: var(--ns-space-12);
    border: 1px solid var(--ns-theme-guide-border);
    text-align: start;
    vertical-align: top;
  }

  .ns-theme-guide__comparison {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--ns-space-16);
  }

  .ns-theme-guide__comparison > div {
    min-block-size: 6rem;
    padding: var(--ns-space-16);
    border: 1px solid var(--ns-theme-guide-border);
    border-radius: var(--ns-radius-content-panel, var(--ns-radius-2xl));
  }

  .ns-theme-guide__comparison-after {
    background: var(--ns-theme-guide-muted-surface);
  }

  .ns-theme-guide__content-version {
    display: inline-flex;
    padding: var(--ns-space-4) var(--ns-space-8);
    border: 1px solid var(--ns-theme-guide-border);
    border-radius: var(--ns-product-badge-radius, var(--ns-radius-md));
    font:
      600 0.75rem/1.4 ui-monospace,
      SFMono-Regular,
      Consolas,
      monospace;
  }

  .ns-theme-guide__article-footer {
    margin-block-start: var(--ns-space-32);
    padding-block-start: var(--ns-space-16);
    border-block-start: 1px solid var(--ns-theme-guide-border);
  }

  .ns-theme-guide--page {
    display: block;
    padding-block: var(--ns-theme-guide-padding-top, var(--ns-space-48))
      var(--ns-theme-guide-padding-bottom, calc(var(--ns-space-40) + var(--ns-space-32)));
  }

  .ns-theme-guide__page-header {
    max-inline-size: 48rem;
    margin-block-end: var(--ns-space-32);
  }

  .ns-theme-guide__page-header h1 {
    margin: var(--ns-space-8) 0;
  }

  .ns-theme-guide__version-picker {
    display: flex;
    align-items: center;
    gap: var(--ns-space-12);
    margin-block-start: var(--ns-space-16);
  }

  .ns-theme-guide__version-picker select {
    min-block-size: 2.5rem;
    padding-inline: var(--ns-space-12);
    border: 1px solid var(--ns-theme-guide-border);
    border-radius: var(--ns-radius-input, 0px);
    background: var(--ns-color-background, Canvas);
    color: var(--ns-color-foreground, CanvasText);
    font: inherit;
  }

  .ns-theme-guide--page .ns-theme-guide__renderer {
    min-block-size: 44rem;
    overflow: clip;
    border: 1px solid var(--ns-theme-guide-border);
    border-radius: var(--ns-radius-content-panel, var(--ns-radius-2xl));
  }

  .ns-theme-guide__fallback {
    display: grid;
    gap: var(--ns-space-32);
  }

  .ns-theme-guide__fallback-article {
    scroll-margin-block-start: var(--ns-space-32);
    padding-block-end: var(--ns-space-32);
    border-block-end: 1px solid var(--ns-theme-guide-border);
  }

  @media (max-width: 1024px) {
    .ns-theme-guide__renderer {
      grid-template-columns: 1fr;
    }

    .ns-theme-guide__navigation-panel {
      max-block-size: 24rem;
      border-inline-end: 0;
      border-block-end: 1px solid var(--ns-theme-guide-border);
    }

    .ns-theme-guide__article {
      padding: var(--ns-space-32) var(--ns-space-16);
    }

    .ns-theme-guide__comparison {
      grid-template-columns: 1fr;
    }
  }

  @media (min-width: 1025px) {
    .ns-theme-guide :where(.ns-tabs[data-ns-runtime-ready] .ns-tabs__trigger) {
      border-start-start-radius: var(--ns-radius-compact, var(--ns-radius-lg));
      border-start-end-radius: var(--ns-radius-compact, var(--ns-radius-lg));
    }
  }

  @media (prefers-reduced-motion: reduce) {
    .ns-theme-guide * {
      scroll-behavior: auto;
      transition: none;
    }
  }

  @media print {
    .ns-theme-guide__navigation-panel,
    .ns-theme-guide__page-header .ns-theme-guide__version-picker,
    .ns-theme-guide__tabs [role='tablist'],
    .ns-theme-guide__article-footer {
      display: none;
    }

    .ns-theme-guide--page {
      padding: 0;
      color: CanvasText;
      background: Canvas;
    }

    .ns-theme-guide--page .ns-theme-guide__renderer {
      display: block;
      border: 0;
    }

    .ns-theme-guide__article {
      padding: 0;
      overflow: visible;
    }

    .ns-theme-guide__block,
    .ns-theme-guide__accordion-group,
    .ns-theme-guide__settings-table {
      break-inside: avoid;
    }
  }
}
/* END_SNIPPET:_styles-theme-guide-styles */

/* START_SNIPPET:_styles-ticker-styles (INDEX:271) */
@layer components {
  .ns-ticker {
    display: block;
    inline-size: 100%;
  }

  .ns-ticker__inner {
    inline-size: var(--ns-content-width);
    margin-inline: auto;
    color: var(--ns-color-foreground);
    background: transparent;
  }

  .ns-ticker__viewport {
    overflow-x: auto;
    padding-block: var(--ns-space-10);
    scrollbar-width: none;
  }

  .ns-ticker__viewport::-webkit-scrollbar {
    display: none;
  }

  .ns-ticker__track,
  .ns-ticker__group {
    display: flex;
    align-items: center;
    inline-size: max-content;
  }

  .ns-ticker__track {
    will-change: transform;
  }

  .ns-ticker__group {
    flex: none;
    gap: var(--ns-space-40);
    padding-inline-start: var(--ns-space-40);
  }

  .ns-ticker__item {
    display: block;
    flex: none;
    color: inherit;
    font-family: var(--ns-font-heading-family);
    font-style: var(--ns-font-heading-style);
    font-weight: var(--ns-font-heading-weight);
    line-height: normal;
    white-space: nowrap;
  }

  .ns-ticker__text,
  .ns-ticker__text > :first-child,
  .ns-ticker__text > :last-child {
    margin: 0;
    white-space: nowrap;
  }

  .ns-ticker__link {
    text-decoration: none;
    cursor: pointer;
  }

  .ns-ticker__link:focus-visible {
    outline: 0.125rem solid currentColor;
    outline-offset: 0.25rem;
  }

  .ns-ticker[data-ns-ticker-type='display'] .ns-ticker__item {
    font-size: var(--ns-type-display-size);
    letter-spacing: 0.05em;
    text-transform: uppercase;
  }

  .ns-ticker:is([data-ns-ticker-type='xxl'], [data-ns-ticker-type='h1']) .ns-ticker__item {
    font-size: var(--ns-type-xxl-size);
    letter-spacing: 0.05em;
    text-transform: uppercase;
  }

  .ns-ticker:is([data-ns-ticker-type='xl'], [data-ns-ticker-type='h2']) .ns-ticker__item {
    font-size: var(--ns-type-xl-size);
    text-transform: capitalize;
  }

  .ns-ticker:is([data-ns-ticker-type='large'], [data-ns-ticker-type='h3']) .ns-ticker__item {
    font-size: var(--ns-type-large-size);
    text-transform: capitalize;
  }

  .ns-ticker:is([data-ns-ticker-type='medium'], [data-ns-ticker-type='h4']) .ns-ticker__item {
    font-size: var(--ns-type-medium-size);
    letter-spacing: 0.05em;
    text-transform: uppercase;
  }

  .ns-ticker:is([data-ns-ticker-type='small'], [data-ns-ticker-type='h5']) .ns-ticker__item {
    font-size: var(--ns-type-small-size);
    text-transform: capitalize;
  }

  .ns-ticker:is([data-ns-ticker-type='xs'], [data-ns-ticker-type='h6']) .ns-ticker__item {
    font-size: var(--ns-type-xs-size);
    text-transform: capitalize;
  }

  .ns-ticker:is([data-ns-ticker-type='lead'], [data-ns-ticker-type='body']) .ns-ticker__item {
    font-family: var(--ns-font-body-family);
    font-size: var(--ns-type-lead-size);
    font-style: var(--ns-font-body-style);
    font-weight: var(--ns-font-body-weight);
  }

  .ns-ticker[data-ns-ticker-ready='true'] .ns-ticker__viewport {
    overflow: hidden;
  }

  .ns-ticker[data-ns-ticker-ready='true'] .ns-ticker__track {
    animation: ns-ticker-scroll var(--ns-ticker-duration, 30s) linear infinite;
  }

  .ns-ticker[data-ns-ticker-direction='right'] .ns-ticker__track {
    animation-direction: reverse;
  }

  .ns-ticker:focus-within .ns-ticker__track {
    animation-play-state: paused;
  }

  @media (hover: hover) {
    .ns-ticker:hover .ns-ticker__track {
      animation-play-state: paused;
    }
  }

  @media (prefers-reduced-motion: reduce) {
    .ns-ticker[data-ns-ticker-ready='true'] .ns-ticker__viewport {
      overflow-x: auto;
    }

    .ns-ticker[data-ns-ticker-ready='true'] .ns-ticker__track {
      animation: none;
      transform: none;
      will-change: auto;
    }
  }

  @keyframes ns-ticker-scroll {
    to {
      transform: translate3d(-50%, 0, 0);
    }
  }
}
/* END_SNIPPET:_styles-ticker-styles */

/* START_SNIPPET:_styles-video-styles (INDEX:272) */
@layer components {
  .ns-video {
    position: relative;
    display: block;
    width: 100%;
    height: auto;
    min-height: 0;
    aspect-ratio: var(--ns-video-aspect-ratio, 16 / 9);
    overflow: hidden;
    background: inherit;
  }

  .ns-video__media,
  .ns-video__poster,
  .ns-video__poster img {
    display: block;
    width: 100%;
    height: 100%;
  }

  .ns-video__media,
  .ns-video__poster img {
    object-fit: var(--ns-visual-media-fit, cover);
    object-position: var(--ns-visual-media-position, center center);
  }

  .ns-video__poster {
    position: absolute;
    z-index: 1;
    inset: 0;
    opacity: 1;
    visibility: visible;
    pointer-events: none;
    transition:
      visibility 600ms ease,
      opacity 600ms ease;
  }

  .ns-video__poster--interactive {
    padding: 0;
    border: 0;
    color: var(--ns-color-background);
    cursor: pointer;
    pointer-events: auto;
    background: transparent;
  }

  .ns-video__poster--interactive:focus-visible {
    outline: 2px solid currentColor;
    outline-offset: -4px;
  }

  .ns-video__play-icon {
    position: absolute;
    inset: 50% auto auto 50%;
    display: grid;
    width: 4rem;
    aspect-ratio: 1;
    place-items: center;
    border-radius: var(--ns-radius-icon-button, var(--ns-radius-xl));
    background: color-mix(in srgb, var(--ns-color-foreground) 55%, transparent);
    translate: -50% -50%;
  }

  .ns-video__poster img,
  .ns-video__play-icon {
    opacity: 1;
    visibility: visible;
    transition:
      visibility 600ms ease,
      opacity 600ms ease;
  }

  .ns-video__play-icon svg {
    width: 1.6rem;
    height: auto;
  }

  .ns-video[data-ns-video-autoplay='true']:not([data-ns-video-manual-fallback='true']) .ns-video__play-icon {
    display: none;
  }

  .ns-video__poster[hidden] {
    display: none;
  }

  .ns-video[data-ns-video-started='true'] .ns-video__poster {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
  }

  .ns-video[data-ns-video-started='true'][data-ns-video-manual-control='true'] .ns-video__poster {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
  }

  .ns-video[data-ns-video-started='true'][data-ns-video-manual-control='true']
    :is(.ns-video__poster img, .ns-video__play-icon) {
    opacity: 0;
    visibility: hidden;
  }

  .ns-video[data-ns-video-loading='true'] .ns-video__play-icon {
    opacity: 0.65;
  }

  @media (prefers-reduced-motion: no-preference) {
    .ns-video[data-ns-video-cover-waiting='true'] .ns-video__poster img {
      animation: ns-vp 1.2s ease-in-out infinite alternate;
    }
  }

  @keyframes ns-vp {
    to {
      opacity: 0.92;
    }
  }

  @media (any-hover: hover) and (any-pointer: fine) {
    .ns-video[data-ns-video-hover='true'] .ns-video__play-icon {
      display: none;
    }

    .ns-video[data-ns-video-hover='true'],
    .ns-video[data-ns-video-hover='true'] :is(.ns-video__media, .ns-video__poster--interactive) {
      cursor: var(--ns-video-hover-cursor, pointer);
    }
  }

  @media (any-pointer: coarse) {
    .ns-video[data-ns-video-hover='true'] .ns-video__play-icon {
      display: grid;
    }

    .ns-video[data-ns-video-hover='true'],
    .ns-video[data-ns-video-hover='true'] :is(.ns-video__media, .ns-video__poster--interactive) {
      cursor: pointer;
    }
  }

  .ns-video iframe {
    border: 0;
  }

  .ns-visual-media--desktop-fixed .ns-video {
    height: 100%;
    aspect-ratio: auto;
  }

  @media (min-width: 768px) and (max-width: 1024px) {
    .ns-visual-media--tablet-adapt .ns-video {
      height: auto;
      aspect-ratio: var(--ns-video-aspect-ratio, 16 / 9);
    }

    .ns-visual-media--tablet-fixed .ns-video {
      height: 100%;
      aspect-ratio: auto;
    }
  }

  @media (max-width: 767px) {
    .ns-visual-media--mobile-adapt .ns-video {
      height: auto;
      aspect-ratio: var(--ns-video-aspect-ratio, 16 / 9);
    }

    .ns-visual-media--mobile-fixed .ns-video {
      height: 100%;
      aspect-ratio: auto;
    }
  }

  @media (prefers-reduced-motion: reduce) {
    .ns-video__poster,
    .ns-video__poster img,
    .ns-video__play-icon {
      transition: none;
    }
  }
}
/* END_SNIPPET:_styles-video-styles */

/* START_SNIPPET:_styles-visual-builder-styles (INDEX:273) */
@layer components {
  .ns-visual-stage {
    --ns-visual-stage-gap: var(--ns-visual-stage-gap-desktop, 0px);
    --ns-visual-stage-min-height: var(--ns-visual-stage-min-height-desktop, 34.375rem);

    position: relative;
    width: 100%;
    overflow: hidden;
    background: var(--ns-visual-stage-background, transparent);
    container-type: inline-size;
  }

  .ns-visual-stage__content {
    position: relative;
    z-index: 3;
    display: flex;
    flex-direction: column;
    gap: var(--ns-visual-stage-gap);
    width: 100%;
  }

  .ns-visual-stage--desktop-overlay,
  .ns-visual-slider--desktop-overlay .ns-visual-slider__stage {
    display: grid;
  }

  .ns-visual-stage--desktop-overlay > :is(.ns-visual-media, .ns-visual-stage__content),
  .ns-visual-slider--desktop-overlay .ns-visual-slider__stage > :is(.ns-visual-media, .ns-visual-stage__content) {
    grid-area: 1 / 1;
    min-height: var(--ns-visual-stage-min-height);
  }

  .ns-visual-stage--desktop-overlay > .ns-visual-media {
    height: auto;
  }

  .ns-visual-slider--desktop-overlay .ns-visual-slider__stage > .ns-visual-media {
    height: 100%;
  }

  .ns-visual-stage--desktop-overlay > .ns-visual-stage__content,
  .ns-visual-slider--desktop-overlay .ns-visual-slider__stage > .ns-visual-stage__content {
    pointer-events: none;
  }

  .ns-visual-stage--desktop-media_first,
  .ns-visual-stage--desktop-content_first,
  .ns-visual-slider--desktop-media_first .ns-visual-slider__stage,
  .ns-visual-slider--desktop-content_first .ns-visual-slider__stage {
    display: flex;
    flex-direction: column;
    gap: var(--ns-visual-stage-gap);
  }

  .ns-visual-stage--desktop-content_first > .ns-visual-stage__content,
  .ns-visual-slider--desktop-content_first .ns-visual-slider__stage > .ns-visual-stage__content {
    order: -1;
  }

  .ns-visual-stage--desktop-media_first .ns-visual-content,
  .ns-visual-stage--desktop-content_first .ns-visual-content,
  .ns-visual-slider--desktop-media_first .ns-visual-content,
  .ns-visual-slider--desktop-content_first .ns-visual-content {
    position: relative;
    min-height: auto;
    padding: 0;
  }

  .ns-visual-stage--desktop-media_first .ns-visual-content__panel,
  .ns-visual-stage--desktop-content_first .ns-visual-content__panel,
  .ns-visual-slider--desktop-media_first .ns-visual-content__panel,
  .ns-visual-slider--desktop-content_first .ns-visual-content__panel {
    width: 100%;
    max-width: none;
    padding-block: calc(var(--ns-visual-content-panel-block) + var(--ns-visual-content-outer-block));
    padding-inline: calc(var(--ns-visual-content-panel-inline) + var(--ns-visual-content-outer-inline));
  }

  .ns-visual-media {
    --ns-visual-media-height: var(--ns-visual-media-height-desktop, 34.375rem);
    --ns-visual-media-position: var(--ns-visual-media-position-desktop, center center);
    --ns-visual-media-fit: var(--ns-visual-media-fit-desktop, cover);
    --ns-visual-media-width: var(--ns-visual-media-width-desktop, 100%);

    position: relative;
    z-index: 1;
    width: min(100%, var(--ns-visual-media-width));
    max-width: 100%;
    min-height: 0;
    container-type: inline-size;
  }

  .ns-visual-media__frame {
    --ns-visual-media-effective-radius: min(
      var(--ns-visual-media-radius, 0px),
      var(--ns-radius-density-active, var(--ns-radius-4xl)),
      var(--ns-visual-media-edge-radius-limit, 999px),
      max(var(--ns-radius-sm), 8cqi)
    );
    --ns-visual-media-start-radius: min(
      var(--ns-visual-media-effective-radius),
      var(--ns-visual-media-active-corner-start, 999px)
    );
    --ns-visual-media-end-radius: min(
      var(--ns-visual-media-effective-radius),
      var(--ns-visual-media-active-corner-end, 999px)
    );
  }

  .ns-visual-media__surface {
    overflow: hidden;
    border-radius: var(--ns-visual-media-start-radius) var(--ns-visual-media-start-radius)
      var(--ns-visual-media-end-radius) var(--ns-visual-media-end-radius);
    background: var(--ns-visual-media-background, transparent);
  }

  .ns-visual-media--desktop-fixed {
    height: var(--ns-visual-media-height);
  }

  .ns-visual-media__picture,
  .ns-visual-media__picture img,
  .ns-visual-media__video,
  .ns-visual-media__external,
  .ns-visual-media__placeholder {
    display: block;
    width: 100%;
    height: auto;
  }

  .ns-visual-media--desktop-fixed
    :is(
      .ns-visual-media__picture,
      .ns-visual-media__picture img,
      .ns-visual-media__video,
      .ns-visual-media__external,
      .ns-visual-media__placeholder
    ) {
    height: 100%;
  }

  .ns-visual-media__picture img,
  .ns-visual-media__video,
  .ns-visual-media__external,
  .ns-visual-media__placeholder {
    object-fit: var(--ns-visual-media-fit, cover);
    object-position: var(--ns-visual-media-position);
  }

  .ns-visual-media__external {
    border: 0;
  }

  .ns-visual-media__overlay {
    position: absolute;
    z-index: 2;
    inset: 0;
    pointer-events: none;
    background: var(--ns-visual-media-overlay, transparent);
    opacity: var(--ns-visual-media-overlay-opacity, 0);
  }

  .ns-visual-media__gradient {
    position: absolute;
    z-index: 2;
    inset: 0;
    inset-block-start: auto;
    block-size: min(var(--ns-visual-media-gradient-height, 460px), 100%);
    pointer-events: none;
    background: var(--ns-visual-media-gradient, transparent);
  }

  .ns-visual-media__gradient--top {
    inset-block-start: 0;
    inset-block-end: auto;
    transform: scaleY(-1);
  }

  html[data-ns-js]
    .ns-visual-media[data-ns-media-image-state]:not([data-ns-media-image-state='ready'])
    .ns-visual-media__gradient {
    visibility: hidden;
    opacity: 0;
  }

  .ns-visual-content {
    --ns-visual-content-x: var(--ns-visual-content-x-desktop, center);
    --ns-visual-content-y: var(--ns-visual-content-y-desktop, center);
    --ns-visual-content-width: var(--ns-visual-content-width-desktop, fit-content);
    --ns-visual-content-max-width: var(--ns-visual-content-max-width-desktop, 48rem);
    --ns-visual-content-outer-inline: var(--ns-visual-content-outer-inline-desktop, 2rem);
    --ns-visual-content-outer-block: var(--ns-visual-content-outer-block-desktop, 2rem);
    --ns-visual-content-panel-inline: var(--ns-visual-content-panel-inline-desktop, 0px);
    --ns-visual-content-panel-block: var(--ns-visual-content-panel-block-desktop, 0px);
    --ns-visual-content-direction: var(--ns-visual-content-direction-desktop, column);
    --ns-visual-content-gap: var(--ns-visual-content-gap-desktop, 1rem);
    --ns-visual-content-flex-align: var(--ns-visual-content-flex-align-desktop, center);
    --ns-visual-content-text-align: var(--ns-visual-content-text-align-desktop, center);

    position: absolute;
    inset: 0;
    display: flex;
    align-items: var(--ns-visual-content-y);
    justify-content: var(--ns-visual-content-x);
    min-width: 0;
    padding-block: var(--ns-visual-content-outer-block);
    padding-inline: var(--ns-visual-content-outer-inline);
  }

  .ns-visual-content__panel {
    position: relative;
    z-index: 2;
    display: flex;
    flex-flow: var(--ns-visual-content-direction) wrap;
    align-items: var(--ns-visual-content-flex-align);
    justify-content: var(--ns-visual-content-flex-align);
    gap: var(--ns-visual-content-gap);
    width: var(--ns-visual-content-width);
    max-width: min(100%, var(--ns-visual-content-max-width));
    padding-block: var(--ns-visual-content-panel-block);
    padding-inline: var(--ns-visual-content-panel-inline);
    color: var(--ns-color-foreground);
    text-align: var(--ns-visual-content-text-align, center);
    background: var(--ns-visual-content-panel-background, transparent);
    border-radius: var(--ns-visual-content-panel-radius, 0px);
    pointer-events: auto;
  }

  .ns-visual-content__panel > *,
  .ns-visual-content__panel > .ns-u-theme-block-root > * {
    min-width: 0;
  }

  .ns-visual-text {
    --ns-visual-text-size: var(--ns-visual-text-size-desktop, var(--ns-type-body-size));
    --ns-visual-text-line-height: var(--ns-visual-text-line-height-desktop, 1.3);
    --ns-visual-text-letter-spacing: var(--ns-visual-text-letter-spacing-desktop, 0em);

    width: var(--ns-visual-text-width, auto);
    max-width: 100%;
    margin-block-start: var(--ns-visual-text-margin-start, 0px);
    margin-block-end: var(--ns-visual-text-margin-end, 0px);
    color: var(--ns-visual-text-color, inherit);
    font-size: var(--ns-visual-text-size);
    font-weight: var(--ns-visual-text-weight, inherit);
    line-height: var(--ns-visual-text-line-height);
    letter-spacing: var(--ns-visual-text-letter-spacing);
    text-align: inherit;
    text-transform: var(--ns-visual-text-transform, none);
  }

  .ns-visual-text--heading {
    color: var(--ns-visual-text-color, var(--ns-color-heading));
    font-family: var(--ns-font-heading-family);
    font-style: var(--ns-font-heading-style);
    font-weight: var(--ns-visual-text-weight, var(--ns-font-heading-weight));
  }

  .ns-visual-text :is(p, h1, h2, h3, h4, h5, h6) {
    color: inherit;
    font: inherit;
    letter-spacing: inherit;
    text-transform: inherit;
  }

  .ns-visual-button {
    --ns-visual-button-width: var(--ns-visual-button-width-desktop, fit-content);

    display: flex;
    width: min(100%, var(--ns-visual-button-width));
  }

  .ns-visual-button > .ns-button {
    width: 100%;
  }

  .ns-visual-slider {
    --ns-visual-slider-height: var(--ns-visual-slider-height-desktop, 34.375rem);
    --ns-visual-slider-items: var(--ns-visual-slider-items-desktop, 1);
    --ns-visual-slider-item-gap: var(--ns-visual-slider-item-gap-desktop, var(--ns-primary-grid-column-gap));
    --ns-visual-slider-preview-extension: 0px;
    --ns-visual-slider-preview-offset: 0px;

    position: relative;
    display: block;
    width: 100%;
    min-width: 0;
    max-width: 100%;
    overflow: clip;
    contain: inline-size;
  }

  .ns-visual-slider[data-ns-next-item-preview] {
    --ns-slider-next-item-preview-size: min(
      clamp(3rem, 8vi, 7rem),
      calc(
        (100% - (var(--ns-visual-slider-items) - 1) * var(--ns-visual-slider-item-gap)) /
          var(--ns-visual-slider-items) * 0.6
      )
    );
  }

  .ns-visual-slider[data-ns-next-item-preview][data-ns-slider-preview-active] {
    --ns-visual-slider-preview-offset: max(
      var(--ns-visual-slider-preview-extension),
      calc(var(--ns-slider-next-item-preview-size) + var(--ns-visual-slider-item-gap))
    );
  }

  .ns-composition__items > .ns-visual-slider[data-ns-next-item-preview][data-ns-slider-preview-active]:only-child,
  .ns-composition__items
    > .ns-u-theme-block-root:only-child
    > .ns-visual-slider[data-ns-next-item-preview][data-ns-slider-preview-active]:not(
      [data-ns-composition-custom-width='true']
    ) {
    --ns-visual-slider-preview-extension: min(
      max(0px, calc((100vi - var(--ns-content-width)) / 2)),
      calc(var(--ns-slider-next-item-preview-size) + var(--ns-visual-slider-item-gap))
    );
    --ns-slider-navigation-inline-end-offset: calc(
      var(--ns-slider-navigation-inline-offset, var(--ns-space-16)) +
        var(--ns-slider-navigation-preview-inline-end-compensation, var(--ns-visual-slider-preview-extension))
    );

    inline-size: calc(100% + var(--ns-visual-slider-preview-extension));
    max-inline-size: none;
    overflow: visible;
  }

  .ns-visual-slider[data-ns-next-item-preview] .ns-visual-slider__track {
    --ns-slider-page-size: var(--ns-visual-slider-items);
  }

  .ns-visual-slider__track {
    display: flex;
    align-items: flex-start;
    width: 100%;
    min-width: 0;
    max-width: 100%;
    gap: var(--ns-visual-slider-item-gap);
    overflow-x: auto;
    overflow-y: hidden;
    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    overscroll-behavior-inline: contain;
    touch-action: pan-x pan-y;
  }

  .ns-visual-slider__track::-webkit-scrollbar {
    display: none;
  }

  @media (prefers-reduced-motion: reduce) {
    .ns-visual-slider__track {
      scroll-behavior: auto;
    }
  }

  .ns-visual-slider__slide {
    display: grid;
    grid-template-columns: repeat(var(--ns-visual-slide-columns-desktop, 1), minmax(0, 1fr));
    gap: var(--ns-visual-slide-gap-desktop, 0px);
    flex: 0 0
      calc(
        (100% + var(--ns-visual-slider-item-gap) - var(--ns-visual-slider-preview-offset)) /
          var(--ns-visual-slider-items) - var(--ns-visual-slider-item-gap)
      );
    min-width: 0;
    scroll-snap-align: start;
    scroll-snap-stop: always;
  }

  .ns-visual-slider[data-ns-next-item-preview][data-ns-slider-preview-active] .ns-visual-slider__slide:last-child {
    margin-inline-end: var(--ns-visual-slider-preview-offset);
  }

  .ns-visual-slider__stage {
    --ns-visual-stage-min-height: var(--ns-visual-slider-height);

    height: var(--ns-visual-slider-height);
    min-width: 0;
  }

  @media (min-width: 768px) and (max-width: 1024px) {
    .ns-visual-media {
      --ns-visual-media-width: var(--ns-visual-media-width-tablet, var(--ns-visual-media-width-desktop));
    }
    .ns-visual-slider {
      --ns-visual-slider-height: var(
        --ns-visual-slider-height-tablet,
        var(--ns-visual-slider-height-desktop, 34.375rem)
      );
      --ns-visual-slider-items: var(--ns-visual-slider-items-tablet, var(--ns-visual-slider-items-desktop, 1));
      --ns-visual-slider-item-gap: var(
        --ns-visual-slider-item-gap-tablet,
        var(--ns-visual-slider-item-gap-desktop, var(--ns-primary-grid-column-gap))
      );
    }

    .ns-visual-slider__slide {
      grid-template-columns: repeat(var(--ns-visual-slide-columns-tablet, 1), minmax(0, 1fr));
      gap: var(--ns-visual-slide-gap-tablet, var(--ns-visual-slide-gap-desktop, 0px));
    }

    .ns-visual-stage {
      --ns-visual-stage-gap: var(--ns-visual-stage-gap-tablet, var(--ns-visual-stage-gap-desktop, 0px));
      --ns-visual-stage-min-height: var(
        --ns-visual-stage-min-height-tablet,
        var(--ns-visual-stage-min-height-desktop, 34.375rem)
      );
    }

    .ns-visual-stage--tablet-overlay,
    .ns-visual-slider--tablet-overlay .ns-visual-slider__stage {
      display: grid;
    }

    .ns-visual-stage--tablet-overlay > .ns-visual-media,
    .ns-visual-stage--tablet-overlay > .ns-visual-stage__content,
    .ns-visual-slider--tablet-overlay .ns-visual-slider__stage > .ns-visual-media,
    .ns-visual-slider--tablet-overlay .ns-visual-slider__stage > .ns-visual-stage__content {
      grid-area: 1 / 1;
      min-height: var(--ns-visual-stage-min-height);
    }

    .ns-visual-stage--tablet-overlay > .ns-visual-media {
      height: auto;
    }

    .ns-visual-slider--tablet-overlay .ns-visual-slider__stage > .ns-visual-media {
      height: 100%;
    }

    .ns-visual-stage--tablet-overlay > .ns-visual-stage__content,
    .ns-visual-slider--tablet-overlay .ns-visual-slider__stage > .ns-visual-stage__content {
      order: initial;
      pointer-events: none;
    }

    .ns-visual-stage--tablet-overlay .ns-visual-content,
    .ns-visual-slider--tablet-overlay .ns-visual-content {
      position: absolute;
      min-height: 0;
      padding-block: var(--ns-visual-content-outer-block);
      padding-inline: var(--ns-visual-content-outer-inline);
    }

    .ns-visual-stage--tablet-overlay .ns-visual-content__panel,
    .ns-visual-slider--tablet-overlay .ns-visual-content__panel {
      width: var(--ns-visual-content-width);
      max-width: min(100%, var(--ns-visual-content-max-width));
      padding-block: var(--ns-visual-content-panel-block);
      padding-inline: var(--ns-visual-content-panel-inline);
    }

    .ns-visual-stage--tablet-media_first,
    .ns-visual-stage--tablet-content_first,
    .ns-visual-slider--tablet-media_first .ns-visual-slider__stage,
    .ns-visual-slider--tablet-content_first .ns-visual-slider__stage {
      display: flex;
      flex-direction: column;
      gap: var(--ns-visual-stage-gap);
    }

    :is(.ns-visual-stage--tablet-media_first, .ns-visual-stage--tablet-content_first)
      > :is(.ns-visual-media, .ns-visual-stage__content),
    :is(.ns-visual-slider--tablet-media_first, .ns-visual-slider--tablet-content_first)
      .ns-visual-slider__stage
      > :is(.ns-visual-media, .ns-visual-stage__content) {
      grid-area: auto;
      min-height: auto;
    }

    .ns-visual-stage--tablet-media_first > .ns-visual-stage__content,
    .ns-visual-stage--tablet-content_first > .ns-visual-stage__content,
    .ns-visual-slider--tablet-media_first .ns-visual-slider__stage > .ns-visual-stage__content,
    .ns-visual-slider--tablet-content_first .ns-visual-slider__stage > .ns-visual-stage__content {
      pointer-events: auto;
    }

    .ns-visual-stage--tablet-content_first > .ns-visual-stage__content,
    .ns-visual-slider--tablet-content_first .ns-visual-slider__stage > .ns-visual-stage__content {
      order: -1;
    }

    .ns-visual-stage--tablet-media_first .ns-visual-content,
    .ns-visual-stage--tablet-content_first .ns-visual-content,
    .ns-visual-slider--tablet-media_first .ns-visual-content,
    .ns-visual-slider--tablet-content_first .ns-visual-content {
      position: relative;
      min-height: auto;
      padding: 0;
    }

    .ns-visual-stage--tablet-media_first .ns-visual-content__panel,
    .ns-visual-stage--tablet-content_first .ns-visual-content__panel,
    .ns-visual-slider--tablet-media_first .ns-visual-content__panel,
    .ns-visual-slider--tablet-content_first .ns-visual-content__panel {
      width: 100%;
      max-width: none;
      padding-block: calc(var(--ns-visual-content-panel-block) + var(--ns-visual-content-outer-block));
      padding-inline: calc(var(--ns-visual-content-panel-inline) + var(--ns-visual-content-outer-inline));
    }

    .ns-visual-media {
      --ns-visual-media-height: var(--ns-visual-media-height-tablet, var(--ns-visual-media-height-desktop));
      --ns-visual-media-position: var(--ns-visual-media-position-tablet, var(--ns-visual-media-position-desktop));
      --ns-visual-media-fit: var(--ns-visual-media-fit-tablet, var(--ns-visual-media-fit-desktop, cover));
    }

    .ns-visual-media--tablet-fixed {
      height: var(--ns-visual-media-height);
    }

    .ns-visual-media--tablet-adapt {
      height: auto;
    }

    .ns-visual-media--tablet-fixed
      :is(
        .ns-visual-media__picture,
        .ns-visual-media__picture img,
        .ns-visual-media__video,
        .ns-visual-media__external,
        .ns-visual-media__placeholder
      ) {
      height: 100%;
    }

    /* prettier-ignore */
    .ns-visual-media--tablet-adapt :is(
      .ns-visual-media__picture,
      .ns-visual-media__picture img,
      .ns-visual-media__video,
      .ns-visual-media__external,
      .ns-visual-media__placeholder
    ) {
      height: auto;
    }

    .ns-visual-content {
      --ns-visual-content-x: var(--ns-visual-content-x-tablet, var(--ns-visual-content-x-desktop));
      --ns-visual-content-y: var(--ns-visual-content-y-tablet, var(--ns-visual-content-y-desktop));
      --ns-visual-content-width: var(--ns-visual-content-width-tablet, var(--ns-visual-content-width-desktop));
      --ns-visual-content-max-width: var(
        --ns-visual-content-max-width-tablet,
        var(--ns-visual-content-max-width-desktop)
      );
      --ns-visual-content-outer-inline: var(
        --ns-visual-content-outer-inline-tablet,
        var(--ns-visual-content-outer-inline-desktop)
      );
      --ns-visual-content-outer-block: var(
        --ns-visual-content-outer-block-tablet,
        var(--ns-visual-content-outer-block-desktop)
      );
      --ns-visual-content-panel-inline: var(
        --ns-visual-content-panel-inline-tablet,
        var(--ns-visual-content-panel-inline-desktop)
      );
      --ns-visual-content-panel-block: var(
        --ns-visual-content-panel-block-tablet,
        var(--ns-visual-content-panel-block-desktop)
      );
      --ns-visual-content-direction: var(
        --ns-visual-content-direction-tablet,
        var(--ns-visual-content-direction-desktop)
      );
      --ns-visual-content-gap: var(--ns-visual-content-gap-tablet, var(--ns-visual-content-gap-desktop));
      --ns-visual-content-flex-align: var(
        --ns-visual-content-flex-align-tablet,
        var(--ns-visual-content-flex-align-desktop)
      );
      --ns-visual-content-text-align: var(
        --ns-visual-content-text-align-tablet,
        var(--ns-visual-content-text-align-desktop)
      );
    }

    .ns-visual-text {
      --ns-visual-text-size: var(--ns-visual-text-size-tablet, var(--ns-visual-text-size-desktop));
      --ns-visual-text-line-height: var(--ns-visual-text-line-height-tablet, var(--ns-visual-text-line-height-desktop));
      --ns-visual-text-letter-spacing: var(
        --ns-visual-text-letter-spacing-tablet,
        var(--ns-visual-text-letter-spacing-desktop)
      );
    }

    .ns-visual-button {
      --ns-visual-button-width: var(--ns-visual-button-width-tablet, var(--ns-visual-button-width-desktop));
    }
  }

  @media (max-width: 767px) {
    .ns-visual-media {
      --ns-visual-media-width: var(--ns-visual-media-width-mobile, var(--ns-visual-media-width-desktop));
    }
    .ns-visual-slider {
      --ns-visual-slider-height: var(--ns-visual-slider-height-mobile, var(--ns-visual-slider-height-desktop, 28rem));
      --ns-visual-slider-items: var(--ns-visual-slider-items-mobile, var(--ns-visual-slider-items-desktop, 1));
      --ns-visual-slider-item-gap: var(
        --ns-visual-slider-item-gap-mobile,
        var(--ns-visual-slider-item-gap-desktop, var(--ns-primary-grid-column-gap))
      );
    }

    .ns-visual-slider__slide {
      grid-template-columns: repeat(var(--ns-visual-slide-columns-mobile, 1), minmax(0, 1fr));
      gap: var(--ns-visual-slide-gap-mobile, var(--ns-visual-slide-gap-desktop, 0px));
    }

    .ns-visual-stage {
      --ns-visual-stage-gap: var(--ns-visual-stage-gap-mobile, var(--ns-visual-stage-gap-desktop, 0px));
      --ns-visual-stage-min-height: var(
        --ns-visual-stage-min-height-mobile,
        var(--ns-visual-stage-min-height-desktop, 28rem)
      );
    }

    .ns-visual-stage--mobile-overlay,
    .ns-visual-slider--mobile-overlay .ns-visual-slider__stage {
      display: grid;
    }

    .ns-visual-stage--mobile-overlay > .ns-visual-media,
    .ns-visual-stage--mobile-overlay > .ns-visual-stage__content,
    .ns-visual-slider--mobile-overlay .ns-visual-slider__stage > .ns-visual-media,
    .ns-visual-slider--mobile-overlay .ns-visual-slider__stage > .ns-visual-stage__content {
      grid-area: 1 / 1;
      min-height: var(--ns-visual-stage-min-height);
    }

    .ns-visual-stage--mobile-overlay > .ns-visual-media {
      height: auto;
    }

    .ns-visual-slider--mobile-overlay .ns-visual-slider__stage > .ns-visual-media {
      height: 100%;
    }

    .ns-visual-stage--mobile-overlay > .ns-visual-stage__content,
    .ns-visual-slider--mobile-overlay .ns-visual-slider__stage > .ns-visual-stage__content {
      order: initial;
      pointer-events: none;
    }

    .ns-visual-stage--mobile-overlay .ns-visual-content,
    .ns-visual-slider--mobile-overlay .ns-visual-content {
      position: absolute;
      min-height: 0;
      padding-block: var(--ns-visual-content-outer-block);
      padding-inline: var(--ns-visual-content-outer-inline);
    }

    .ns-visual-stage--mobile-overlay .ns-visual-content__panel,
    .ns-visual-slider--mobile-overlay .ns-visual-content__panel {
      width: var(--ns-visual-content-width);
      max-width: min(100%, var(--ns-visual-content-max-width));
      padding-block: var(--ns-visual-content-panel-block);
      padding-inline: var(--ns-visual-content-panel-inline);
    }

    .ns-visual-stage--mobile-media_first,
    .ns-visual-stage--mobile-content_first,
    .ns-visual-slider--mobile-media_first .ns-visual-slider__stage,
    .ns-visual-slider--mobile-content_first .ns-visual-slider__stage {
      display: flex;
      flex-direction: column;
      gap: var(--ns-visual-stage-gap);
    }

    :is(.ns-visual-stage--mobile-media_first, .ns-visual-stage--mobile-content_first)
      > :is(.ns-visual-media, .ns-visual-stage__content),
    :is(.ns-visual-slider--mobile-media_first, .ns-visual-slider--mobile-content_first)
      .ns-visual-slider__stage
      > :is(.ns-visual-media, .ns-visual-stage__content) {
      grid-area: auto;
      min-height: auto;
    }

    .ns-visual-stage--mobile-media_first > .ns-visual-stage__content,
    .ns-visual-stage--mobile-content_first > .ns-visual-stage__content,
    .ns-visual-slider--mobile-media_first .ns-visual-slider__stage > .ns-visual-stage__content,
    .ns-visual-slider--mobile-content_first .ns-visual-slider__stage > .ns-visual-stage__content {
      pointer-events: auto;
    }

    .ns-visual-stage--mobile-content_first > .ns-visual-stage__content,
    .ns-visual-slider--mobile-content_first .ns-visual-slider__stage > .ns-visual-stage__content {
      order: -1;
    }

    .ns-visual-stage--mobile-media_first .ns-visual-content,
    .ns-visual-stage--mobile-content_first .ns-visual-content,
    .ns-visual-slider--mobile-media_first .ns-visual-content,
    .ns-visual-slider--mobile-content_first .ns-visual-content {
      position: relative;
      min-height: auto;
      padding: 0;
    }

    .ns-visual-stage--mobile-media_first .ns-visual-content__panel,
    .ns-visual-stage--mobile-content_first .ns-visual-content__panel,
    .ns-visual-slider--mobile-media_first .ns-visual-content__panel,
    .ns-visual-slider--mobile-content_first .ns-visual-content__panel {
      width: 100%;
      max-width: none;
      padding-block: calc(var(--ns-visual-content-panel-block) + var(--ns-visual-content-outer-block));
      padding-inline: calc(var(--ns-visual-content-panel-inline) + var(--ns-visual-content-outer-inline));
    }

    .ns-visual-media {
      --ns-visual-media-height: var(--ns-visual-media-height-mobile, var(--ns-visual-media-height-desktop));
      --ns-visual-media-position: var(--ns-visual-media-position-mobile, var(--ns-visual-media-position-desktop));
      --ns-visual-media-fit: var(--ns-visual-media-fit-mobile, var(--ns-visual-media-fit-desktop, cover));
    }

    .ns-visual-media--mobile-fixed {
      height: var(--ns-visual-media-height);
    }

    .ns-visual-media--mobile-adapt {
      height: auto;
    }

    .ns-visual-layer__composition [data-ns-media-mobile-proportional='true'] {
      height: auto;
      aspect-ratio: var(--ns-visual-media-mobile-proportional-ratio);
    }

    .ns-visual-media--mobile-fixed
      :is(
        .ns-visual-media__picture,
        .ns-visual-media__picture img,
        .ns-visual-media__video,
        .ns-visual-media__external,
        .ns-visual-media__placeholder
      ) {
      height: 100%;
    }

    /* prettier-ignore */
    .ns-visual-media--mobile-adapt :is(
      .ns-visual-media__picture,
      .ns-visual-media__picture img,
      .ns-visual-media__video,
      .ns-visual-media__external,
      .ns-visual-media__placeholder
    ) {
      height: auto;
    }

    .ns-visual-content {
      --ns-visual-content-x: var(--ns-visual-content-x-mobile, var(--ns-visual-content-x-desktop));
      --ns-visual-content-y: var(--ns-visual-content-y-mobile, var(--ns-visual-content-y-desktop));
      --ns-visual-content-width: var(--ns-visual-content-width-mobile, var(--ns-visual-content-width-desktop));
      --ns-visual-content-max-width: var(
        --ns-visual-content-max-width-mobile,
        var(--ns-visual-content-max-width-desktop)
      );
      --ns-visual-content-outer-inline: var(
        --ns-visual-content-outer-inline-mobile,
        var(--ns-visual-content-outer-inline-desktop)
      );
      --ns-visual-content-outer-block: var(
        --ns-visual-content-outer-block-mobile,
        var(--ns-visual-content-outer-block-desktop)
      );
      --ns-visual-content-panel-inline: var(
        --ns-visual-content-panel-inline-mobile,
        var(--ns-visual-content-panel-inline-desktop)
      );
      --ns-visual-content-panel-block: var(
        --ns-visual-content-panel-block-mobile,
        var(--ns-visual-content-panel-block-desktop)
      );
      --ns-visual-content-direction: var(
        --ns-visual-content-direction-mobile,
        var(--ns-visual-content-direction-desktop)
      );
      --ns-visual-content-gap: var(--ns-visual-content-gap-mobile, var(--ns-visual-content-gap-desktop));
      --ns-visual-content-flex-align: var(
        --ns-visual-content-flex-align-mobile,
        var(--ns-visual-content-flex-align-desktop)
      );
      --ns-visual-content-text-align: var(
        --ns-visual-content-text-align-mobile,
        var(--ns-visual-content-text-align-desktop)
      );
    }

    .ns-visual-text {
      --ns-visual-text-size: var(--ns-visual-text-size-mobile, var(--ns-visual-text-size-desktop));
      --ns-visual-text-line-height: var(--ns-visual-text-line-height-mobile, var(--ns-visual-text-line-height-desktop));
      --ns-visual-text-letter-spacing: var(
        --ns-visual-text-letter-spacing-mobile,
        var(--ns-visual-text-letter-spacing-desktop)
      );
    }

    .ns-visual-button {
      --ns-visual-button-width: var(--ns-visual-button-width-mobile, var(--ns-visual-button-width-desktop));
    }
  }
}

@layer utilities {
  @media (min-width: 768px) and (max-width: 1024px) {
    .ns-visual-hide-tablet {
      display: none;
    }
  }

  @media (max-width: 767px) {
    .ns-visual-hide-mobile {
      display: none;
    }
  }

  @media (min-width: 1025px) {
    .ns-visual-hide-desktop {
      display: none;
    }
  }
}
/* END_SNIPPET:_styles-visual-builder-styles */

/* START_SNIPPET:_styles-visual-grade-lab-styles (INDEX:274) */
@layer components {
  .ns-visual-grade-lab {
    max-inline-size: 1440px;
    margin-inline: auto;
    padding: clamp(var(--ns-space-16), 3vw, var(--ns-space-48));
    color: var(--ns-color-foreground);
  }

  .ns-visual-grade-lab__layout {
    display: grid;
    grid-template-columns: minmax(17rem, 24rem) minmax(0, 1fr);
    gap: clamp(var(--ns-space-16), 3vw, var(--ns-space-40));
    align-items: start;
  }

  .ns-visual-grade-lab__controls,
  .ns-visual-grade-lab__panel {
    border: 1px solid var(--ns-color-border);
    border-radius: var(--ns-radius-content-panel);
    background: var(--ns-color-surface);
    padding: var(--ns-space-16);
  }

  .ns-visual-grade-lab__controls {
    position: sticky;
    inset-block-start: 1rem;
    display: grid;
    gap: var(--ns-space-12);
    max-block-size: calc(100vh - 2rem);
    overflow: auto;
  }

  .ns-visual-grade-lab__strength-guide {
    margin: 0;
    color: var(--ns-color-muted);
    font-size: var(--ns-type-caption-size);
  }

  .ns-visual-grade-lab__control {
    display: grid;
    grid-template-columns: minmax(8rem, 1fr) minmax(7rem, 1.4fr) 3.5rem;
    gap: var(--ns-space-8);
    align-items: center;
  }

  .ns-visual-grade-lab__control output {
    font-variant-numeric: tabular-nums;
    text-align: end;
  }

  .ns-visual-grade-lab__preview,
  .ns-visual-grade-lab__panels {
    display: grid;
    gap: var(--ns-space-16);
  }

  .ns-visual-grade-lab__media {
    overflow: clip;
    min-block-size: 18rem;
    border-radius: var(--ns-radius-media);
    background: var(--ns-color-surface-alt);
    filter: url('#ns-vg-lab-filter');
  }

  .ns-visual-grade-lab__media :is(img, video, svg) {
    display: block;
    inline-size: 100%;
    block-size: min(64vh, 42rem);
    object-fit: cover;
  }

  .ns-visual-grade-lab__swatches {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(9rem, 1fr));
    gap: var(--ns-space-12);
  }

  .ns-visual-grade-lab__swatch {
    display: grid;
    grid-template-columns: 1fr 1fr;
    min-block-size: 5rem;
    overflow: clip;
    border: 1px solid var(--ns-color-border);
    border-radius: var(--ns-radius-input);
  }

  .ns-visual-grade-lab__swatch::before,
  .ns-visual-grade-lab__swatch::after {
    display: grid;
    place-items: end start;
    padding: var(--ns-space-8);
    color: var(--ns-color-on-primary);
    font-size: var(--ns-type-caption-size);
    text-shadow: 0 1px 2px var(--ns-color-primary);
  }

  .ns-visual-grade-lab__swatch::before {
    content: attr(data-ns-vg-lab-source-label);
    background: var(--ns-vg-lab-source);
  }

  .ns-visual-grade-lab__swatch::after {
    content: attr(data-ns-vg-lab-output-label);
    background: var(--ns-vg-lab-output);
  }

  .ns-visual-grade-lab__contrast {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--ns-space-8);
  }

  .ns-visual-grade-lab__contrast output {
    padding: var(--ns-space-10);
    border: 1px solid var(--ns-color-border);
    border-radius: var(--ns-radius-input);
  }

  .ns-visual-grade-lab__contrast output[data-ns-vg-lab-pass='false'] {
    border-color: var(--ns-color-critical);
  }

  .ns-visual-grade-lab textarea,
  .ns-visual-grade-lab select {
    inline-size: 100%;
  }

  .ns-visual-grade-lab textarea,
  .ns-visual-grade-lab pre {
    max-block-size: 22rem;
    overflow: auto;
    font-family: var(--ns-font-body-family);
    font-size: var(--ns-type-caption-size);
  }

  .ns-visual-grade-lab__actions {
    display: flex;
    flex-wrap: wrap;
    gap: var(--ns-space-8);
  }

  @media (max-width: 767px) {
    .ns-visual-grade-lab__layout {
      grid-template-columns: 1fr;
    }

    .ns-visual-grade-lab__controls {
      position: static;
      max-block-size: none;
      overflow: visible;
    }
  }
}
/* END_SNIPPET:_styles-visual-grade-lab-styles */

/* START_SNIPPET:_styles-visual-group-styles (INDEX:275) */
@layer components {
  .ns-visual-group {
    --ns-visual-group-direction: var(--ns-visual-group-direction-desktop, row);
    --ns-visual-group-gap: var(--ns-visual-group-gap-desktop, 0.75rem);
    --ns-visual-group-equal-flow: var(--ns-visual-group-equal-flow-desktop, column);
    --ns-visual-group-equal-template: var(--ns-visual-group-equal-template-desktop, none);
    --ns-visual-group-equal-auto-columns: var(--ns-visual-group-equal-auto-columns-desktop, minmax(0, 1fr));
    --ns-visual-group-max-width: var(--ns-visual-group-max-width-desktop, 100%);

    display: flex;
    flex-flow: var(--ns-visual-group-direction) var(--ns-visual-group-wrap, wrap);
    align-items: var(--ns-visual-content-flex-align, center);
    justify-content: var(--ns-visual-content-flex-align, center);
    gap: var(--ns-visual-group-gap);
    width: var(--ns-visual-group-width, auto);
    max-width: min(100%, var(--ns-visual-group-max-width, 100%));
    margin-inline: auto;
  }

  .ns-visual-group--equal {
    display: grid;
    grid-auto-flow: var(--ns-visual-group-equal-flow);
    grid-template-columns: var(--ns-visual-group-equal-template);
    grid-auto-columns: var(--ns-visual-group-equal-auto-columns);
  }

  .ns-visual-group--equal > :not(.ns-u-theme-block-root),
  .ns-visual-group--equal > .ns-u-theme-block-root > * {
    align-self: stretch;
    width: 100%;
    min-width: 0;
    max-width: 100%;
  }

  .ns-visual-group--profile {
    text-align: center;
  }

  .ns-visual-group--profile > :not(.ns-u-theme-block-root):first-child,
  .ns-visual-group--profile > .ns-u-theme-block-root:first-child > :first-child {
    align-self: stretch;
    text-align: start;
  }

  .ns-visual-group--icon-heading {
    align-items: center;
    justify-content: flex-start;
    text-align: start;
  }

  .ns-visual-group--separator {
    border-block-start: 1px solid var(--ns-color-border);
  }

  @media (min-width: 768px) and (max-width: 1024px) {
    .ns-visual-group {
      --ns-visual-group-direction: var(--ns-visual-group-direction-tablet, var(--ns-visual-group-direction-desktop));
      --ns-visual-group-gap: var(--ns-visual-group-gap-tablet, var(--ns-visual-group-gap-desktop));
      --ns-visual-group-max-width: var(
        --ns-visual-group-max-width-tablet,
        var(--ns-visual-group-max-width-desktop, 100%)
      );
      --ns-visual-group-equal-flow: var(--ns-visual-group-equal-flow-tablet, var(--ns-visual-group-equal-flow-desktop));
      --ns-visual-group-equal-template: var(
        --ns-visual-group-equal-template-tablet,
        var(--ns-visual-group-equal-template-desktop)
      );
      --ns-visual-group-equal-auto-columns: var(
        --ns-visual-group-equal-auto-columns-tablet,
        var(--ns-visual-group-equal-auto-columns-desktop)
      );
    }
  }

  @media (max-width: 767px) {
    .ns-visual-group {
      --ns-visual-group-direction: var(--ns-visual-group-direction-mobile, var(--ns-visual-group-direction-desktop));
      --ns-visual-group-gap: var(--ns-visual-group-gap-mobile, var(--ns-visual-group-gap-desktop));
      --ns-visual-group-max-width: var(
        --ns-visual-group-max-width-mobile,
        var(--ns-visual-group-max-width-desktop, 100%)
      );
      --ns-visual-group-equal-flow: var(--ns-visual-group-equal-flow-mobile, var(--ns-visual-group-equal-flow-desktop));
      --ns-visual-group-equal-template: var(
        --ns-visual-group-equal-template-mobile,
        var(--ns-visual-group-equal-template-desktop)
      );
      --ns-visual-group-equal-auto-columns: var(
        --ns-visual-group-equal-auto-columns-mobile,
        var(--ns-visual-group-equal-auto-columns-desktop)
      );
    }
  }
}
/* END_SNIPPET:_styles-visual-group-styles */

/* START_SNIPPET:_styles-visual-media-styles (INDEX:276) */
@layer components {
  .ns-visual-media {
    --ns-visual-media-radius: var(--ns-visual-media-context-radius-wide-desktop, var(--ns-radius-media, 0px));
    --ns-radius-density-active: var(--ns-radius-density-wide-desktop, var(--ns-radius-4xl));
    --ns-visual-media-edge-radius-limit: var(--ns-section-edge-media-radius-limit-wide-desktop, 999px);
    --ns-visual-media-active-corner-start: var(--ns-visual-media-corner-start-desktop, 999px);
    --ns-visual-media-active-corner-end: var(--ns-visual-media-corner-end-desktop, 999px);
    display: block;
    isolation: isolate;
  }

  @media (min-width: 1025px) {
    .ns-visual-stage:not(.ns-visual-slider__stage)[data-ns-visual-surface-motion]:not(
        [data-ns-visual-has-content][data-ns-visual-gapless-desktop]
      ),
    .ns-visual-slider:not([data-ns-visual-gapless-desktop]) .ns-visual-slider__stage[data-ns-visual-surface-motion],
    .ns-visual-slider__stage[data-ns-visual-surface-motion]:not([data-ns-visual-has-content]) {
      overflow: visible;
    }
  }

  @media (min-width: 768px) and (max-width: 1024px) {
    .ns-visual-stage:not(.ns-visual-slider__stage)[data-ns-visual-surface-motion]:not(
        [data-ns-visual-has-content][data-ns-visual-gapless-tablet]
      ),
    .ns-visual-slider:not([data-ns-visual-gapless-tablet]) .ns-visual-slider__stage[data-ns-visual-surface-motion],
    .ns-visual-slider__stage[data-ns-visual-surface-motion]:not([data-ns-visual-has-content]) {
      overflow: visible;
    }
  }

  @media (max-width: 767px) {
    .ns-visual-stage:not(.ns-visual-slider__stage)[data-ns-visual-surface-motion]:not(
        [data-ns-visual-has-content][data-ns-visual-gapless-mobile]
      ),
    .ns-visual-slider:not([data-ns-visual-gapless-mobile]) .ns-visual-slider__stage[data-ns-visual-surface-motion],
    .ns-visual-slider__stage[data-ns-visual-surface-motion]:not([data-ns-visual-has-content]) {
      overflow: visible;
    }
  }

  :is(.ns-visual-content, .ns-visual-group, .ns-contact-form, .ns-section-header, .ns-overlay__panel) {
    --ns-visual-media-context-radius-wide-desktop: var(--ns-radius-media, 0px);
    --ns-visual-media-context-radius-desktop: var(--ns-radius-media, 0px);
    --ns-visual-media-context-radius-tablet: var(--ns-radius-media, 0px);
    --ns-visual-media-context-radius-mobile: var(--ns-radius-media, 0px);
    --ns-section-edge-media-radius-limit-wide-desktop: 999px;
    --ns-section-edge-media-radius-limit-desktop: 999px;
    --ns-section-edge-media-radius-limit-tablet: 999px;
    --ns-section-edge-media-radius-limit-mobile: 999px;
  }

  @media (min-width: 1025px) and (max-width: 1259px) {
    .ns-visual-media {
      --ns-visual-media-radius: var(--ns-visual-media-context-radius-desktop, var(--ns-radius-media, 0px));
      --ns-radius-density-active: var(--ns-radius-density-desktop, var(--ns-radius-4xl));
      --ns-visual-media-edge-radius-limit: var(--ns-section-edge-media-radius-limit-desktop, 999px);
    }
  }

  @media (min-width: 768px) and (max-width: 1024px) {
    .ns-visual-media {
      --ns-visual-media-radius: var(--ns-visual-media-context-radius-tablet, var(--ns-radius-media, 0px));
      --ns-radius-density-active: var(--ns-radius-density-tablet, var(--ns-radius-4xl));
      --ns-visual-media-edge-radius-limit: var(--ns-section-edge-media-radius-limit-tablet, 999px);
      --ns-visual-media-active-corner-start: var(
        --ns-visual-media-corner-start-tablet,
        var(--ns-visual-media-corner-start-desktop, 999px)
      );
      --ns-visual-media-active-corner-end: var(
        --ns-visual-media-corner-end-tablet,
        var(--ns-visual-media-corner-end-desktop, 999px)
      );
    }
  }

  @media (max-width: 767px) {
    .ns-visual-media {
      --ns-visual-media-radius: var(--ns-visual-media-context-radius-mobile, var(--ns-radius-media, 0px));
      --ns-radius-density-active: var(--ns-radius-density-mobile, var(--ns-radius-4xl));
      --ns-visual-media-edge-radius-limit: var(--ns-section-edge-media-radius-limit-mobile, 999px);
      --ns-visual-media-active-corner-start: var(
        --ns-visual-media-corner-start-mobile,
        var(--ns-visual-media-corner-start-desktop, 999px)
      );
      --ns-visual-media-active-corner-end: var(
        --ns-visual-media-corner-end-mobile,
        var(--ns-visual-media-corner-end-desktop, 999px)
      );
    }

    .ns-visual-media--mobile-adapt
      :is(
        .ns-visual-media__frame,
        .ns-visual-media__motion-pointer-surface,
        .ns-visual-media__motion-hover-surface,
        .ns-visual-media__surface,
        .ns-visual-media__motion-coverage,
        .ns-visual-media__motion-scroll,
        .ns-visual-media__motion-pointer,
        .ns-visual-media__motion-ambient,
        .ns-visual-media__motion-hover
      ) {
      height: auto;
      min-height: 0;
    }
  }

  .ns-visual-media__frame {
    display: block;
    width: 100%;
    height: 100%;
    border-radius: var(--ns-visual-media-start-radius) var(--ns-visual-media-start-radius)
      var(--ns-visual-media-end-radius) var(--ns-visual-media-end-radius);
    color: inherit;
  }

  .ns-visual-media__frame,
  .ns-visual-media__motion-pointer-surface,
  .ns-visual-media__motion-hover-surface,
  .ns-visual-media__surface,
  .ns-visual-media__motion-coverage,
  .ns-visual-media__motion-scroll,
  .ns-visual-media__motion-pointer,
  .ns-visual-media__motion-ambient,
  .ns-visual-media__motion-hover {
    display: block;
    width: 100%;
    height: 100%;
    min-height: inherit;
  }

  .ns-visual-media__motion-pointer-surface,
  .ns-visual-media__motion-hover-surface,
  .ns-visual-media__surface {
    border-radius: inherit;
  }

  .ns-visual-media__motion-pointer-surface,
  .ns-visual-media__motion-hover-surface,
  .ns-visual-media__surface,
  .ns-visual-media__motion-coverage,
  .ns-visual-media__motion-scroll,
  .ns-visual-media__motion-pointer,
  .ns-visual-media__motion-ambient,
  .ns-visual-media__motion-hover {
    position: relative;
  }

  [data-ns-motion-ready] .ns-visual-media__motion-coverage {
    transform: scale(var(--ns-motion-media-scale, 1));
    transform-origin: center;
  }

  [data-ns-motion-active][data-ns-motion-coverage] .ns-visual-media__motion-coverage {
    will-change: transform;
  }

  .ns-visual-media--placement {
    --ns-visual-media-placement-inline: var(--ns-visual-media-placement-inline-desktop, center);
    --ns-visual-media-placement-block: var(--ns-visual-media-placement-block-desktop, center);
    --ns-visual-media-placement-margin: var(--ns-visual-media-placement-margin-desktop, auto);
    --ns-visual-media-offset-inline: var(--ns-visual-media-offset-inline-desktop, 0px);
    --ns-visual-media-offset-block: var(--ns-visual-media-offset-block-desktop, 0px);

    inset-block-start: var(--ns-visual-media-offset-block);
    inset-inline-start: var(--ns-visual-media-offset-inline);
    align-self: var(--ns-visual-media-placement-block);
    justify-self: var(--ns-visual-media-placement-inline);
    margin-inline: var(--ns-visual-media-placement-margin);
  }

  .ns-visual-media__frame[href] {
    text-decoration: none;
  }

  @media (min-width: 768px) and (max-width: 1024px) {
    .ns-visual-media--placement {
      --ns-visual-media-placement-inline: var(
        --ns-visual-media-placement-inline-tablet,
        var(--ns-visual-media-placement-inline-desktop, center)
      );
      --ns-visual-media-placement-block: var(
        --ns-visual-media-placement-block-tablet,
        var(--ns-visual-media-placement-block-desktop, center)
      );
      --ns-visual-media-placement-margin: var(
        --ns-visual-media-placement-margin-tablet,
        var(--ns-visual-media-placement-margin-desktop, auto)
      );
      --ns-visual-media-offset-inline: var(
        --ns-visual-media-offset-inline-tablet,
        var(--ns-visual-media-offset-inline-desktop, 0px)
      );
      --ns-visual-media-offset-block: var(
        --ns-visual-media-offset-block-tablet,
        var(--ns-visual-media-offset-block-desktop, 0px)
      );
    }
  }

  @media (max-width: 767px) {
    .ns-visual-media--placement {
      --ns-visual-media-placement-inline: var(
        --ns-visual-media-placement-inline-mobile,
        var(--ns-visual-media-placement-inline-desktop, center)
      );
      --ns-visual-media-placement-block: var(
        --ns-visual-media-placement-block-mobile,
        var(--ns-visual-media-placement-block-desktop, center)
      );
      --ns-visual-media-placement-margin: var(
        --ns-visual-media-placement-margin-mobile,
        var(--ns-visual-media-placement-margin-desktop, auto)
      );
      --ns-visual-media-offset-inline: var(
        --ns-visual-media-offset-inline-mobile,
        var(--ns-visual-media-offset-inline-desktop, 0px)
      );
      --ns-visual-media-offset-block: var(
        --ns-visual-media-offset-block-mobile,
        var(--ns-visual-media-offset-block-desktop, 0px)
      );
    }
  }
}
/* END_SNIPPET:_styles-visual-media-styles */

/* START_SNIPPET:_styles-visual-slide-stage-styles (INDEX:277) */
@layer components {
  .ns-visual-slider__stage[data-ns-visual-has-content] {
    --ns-reel-connected-radius: min(
      var(--ns-visual-media-context-radius-wide-desktop, var(--ns-radius-media, 0px)),
      var(--ns-radius-density-wide-desktop, var(--ns-radius-4xl)),
      var(--ns-section-edge-media-radius-limit-wide-desktop, 999px),
      max(var(--ns-radius-sm), 8cqi)
    );
  }

  .ns-visual-slider__stage[data-ns-visual-has-content]
    .ns-visual-content[data-ns-visual-has-compact-product]
    > .ns-visual-content__panel {
    --ns-compact-product-media-concentric-radius: max(
        0px,
        calc(
          var(--ns-reel-connected-radius) - var(--ns-visual-content-outer-inline) -
            var(--ns-visual-content-panel-inline)
        )
      )
      max(
        0px,
        calc(
          var(--ns-reel-connected-radius) - var(--ns-visual-content-outer-block) - var(--ns-visual-content-panel-block)
        )
      );
  }

  @media (min-width: 1025px) {
    :is(
        .ns-visual-slider--desktop-media_first[data-ns-visual-gapless-desktop],
        .ns-visual-slider--desktop-content_first[data-ns-visual-gapless-desktop]
      )
      .ns-visual-slider__stage[data-ns-visual-has-compact-product]
      > .ns-visual-media
      > .ns-visual-media__frame {
      --ns-visual-media-effective-radius: var(--ns-reel-connected-radius);
    }

    .ns-visual-slider--desktop-media_first[data-ns-visual-gapless-desktop]
      .ns-visual-slider__stage[data-ns-visual-has-compact-product]
      .ns-visual-content[data-ns-visual-has-compact-product]
      > .ns-visual-content__panel {
      overflow: clip;
      border-radius: 0 0 var(--ns-reel-connected-radius) var(--ns-reel-connected-radius);
    }

    .ns-visual-slider--desktop-content_first[data-ns-visual-gapless-desktop]
      .ns-visual-slider__stage[data-ns-visual-has-compact-product]
      .ns-visual-content[data-ns-visual-has-compact-product]
      > .ns-visual-content__panel {
      overflow: clip;
      border-radius: var(--ns-reel-connected-radius) var(--ns-reel-connected-radius) 0 0;
    }

    .ns-visual-slider--desktop-overlay
      .ns-visual-slider__stage[data-ns-visual-has-compact-product]
      .ns-visual-content[data-ns-visual-has-compact-product]
      > .ns-visual-content__panel {
      --ns-compact-product-media-end-start-radius: var(--ns-compact-product-media-concentric-radius);
    }

    :is(
        .ns-visual-slider--desktop-media_first[data-ns-visual-gapless-desktop],
        .ns-visual-slider--desktop-content_first[data-ns-visual-gapless-desktop]
      )
      .ns-visual-slider__stage[data-ns-visual-has-content],
    .ns-visual-slider--desktop-overlay .ns-visual-slider__stage[data-ns-visual-has-compact-product] {
      border-radius: var(--ns-reel-connected-radius);
    }

    :is(
        .ns-visual-slider--desktop-media_first[data-ns-visual-gapless-desktop],
        .ns-visual-slider--desktop-content_first[data-ns-visual-gapless-desktop]
      )
      .ns-visual-slider__stage[data-ns-visual-has-content]
      .ns-visual-content
      > .ns-visual-content__panel,
    .ns-visual-slider--desktop-overlay
      .ns-visual-slider__stage[data-ns-visual-has-compact-product]
      .ns-visual-content[data-ns-visual-has-compact-product]
      > .ns-visual-content__panel {
      border-radius: 0;
    }
  }

  @media (min-width: 1025px) and (max-width: 1259px) {
    .ns-visual-slider__stage[data-ns-visual-has-content] {
      --ns-reel-connected-radius: min(
        var(--ns-visual-media-context-radius-desktop, var(--ns-radius-media, 0px)),
        var(--ns-radius-density-desktop, var(--ns-radius-4xl)),
        var(--ns-section-edge-media-radius-limit-desktop, 999px),
        max(var(--ns-radius-sm), 8cqi)
      );
    }
  }

  @media (min-width: 768px) and (max-width: 1024px) {
    .ns-visual-slider__stage[data-ns-visual-has-content] {
      --ns-reel-connected-radius: min(
        var(--ns-visual-media-context-radius-tablet, var(--ns-radius-media, 0px)),
        var(--ns-radius-density-tablet, var(--ns-radius-4xl)),
        var(--ns-section-edge-media-radius-limit-tablet, 999px),
        max(var(--ns-radius-sm), 8cqi)
      );
    }

    :is(
        .ns-visual-slider--tablet-overlay,
        .ns-visual-slider--tablet-media_first,
        .ns-visual-slider--tablet-content_first
      )
      .ns-visual-slider__stage[data-ns-visual-has-compact-product]
      > .ns-visual-media
      > .ns-visual-media__frame {
      --ns-visual-media-effective-radius: min(
        var(--ns-visual-media-radius, 0px),
        var(--ns-radius-density-active, var(--ns-radius-4xl)),
        var(--ns-visual-media-edge-radius-limit, 999px),
        max(var(--ns-radius-sm), 8cqi)
      );
    }

    :is(
        .ns-visual-slider--tablet-overlay,
        .ns-visual-slider--tablet-media_first,
        .ns-visual-slider--tablet-content_first
      )
      .ns-visual-slider__stage[data-ns-visual-has-compact-product]
      .ns-visual-content[data-ns-visual-has-compact-product]
      > .ns-visual-content__panel {
      border-radius: var(--ns-visual-content-panel-radius, 0px);
    }

    :is(
        .ns-visual-slider--tablet-media_first[data-ns-visual-gapless-tablet],
        .ns-visual-slider--tablet-content_first[data-ns-visual-gapless-tablet]
      )
      .ns-visual-slider__stage[data-ns-visual-has-compact-product]
      > .ns-visual-media
      > .ns-visual-media__frame {
      --ns-visual-media-effective-radius: var(--ns-reel-connected-radius);
    }

    .ns-visual-slider--tablet-media_first[data-ns-visual-gapless-tablet]
      .ns-visual-slider__stage[data-ns-visual-has-compact-product]
      .ns-visual-content[data-ns-visual-has-compact-product]
      > .ns-visual-content__panel {
      overflow: clip;
      border-radius: 0 0 var(--ns-reel-connected-radius) var(--ns-reel-connected-radius);
    }

    .ns-visual-slider--tablet-content_first[data-ns-visual-gapless-tablet]
      .ns-visual-slider__stage[data-ns-visual-has-compact-product]
      .ns-visual-content[data-ns-visual-has-compact-product]
      > .ns-visual-content__panel {
      overflow: clip;
      border-radius: var(--ns-reel-connected-radius) var(--ns-reel-connected-radius) 0 0;
    }

    .ns-visual-slider--tablet-overlay
      .ns-visual-slider__stage[data-ns-visual-has-compact-product]
      .ns-visual-content[data-ns-visual-has-compact-product]
      > .ns-visual-content__panel {
      --ns-compact-product-media-end-start-radius: var(--ns-compact-product-media-concentric-radius);
    }

    :is(
        .ns-visual-slider--tablet-media_first[data-ns-visual-gapless-tablet],
        .ns-visual-slider--tablet-content_first[data-ns-visual-gapless-tablet]
      )
      .ns-visual-slider__stage[data-ns-visual-has-content],
    .ns-visual-slider--tablet-overlay .ns-visual-slider__stage[data-ns-visual-has-compact-product] {
      border-radius: var(--ns-reel-connected-radius);
    }

    :is(
        .ns-visual-slider--tablet-media_first[data-ns-visual-gapless-tablet],
        .ns-visual-slider--tablet-content_first[data-ns-visual-gapless-tablet]
      )
      .ns-visual-slider__stage[data-ns-visual-has-content]
      .ns-visual-content
      > .ns-visual-content__panel,
    .ns-visual-slider--tablet-overlay
      .ns-visual-slider__stage[data-ns-visual-has-compact-product]
      .ns-visual-content[data-ns-visual-has-compact-product]
      > .ns-visual-content__panel {
      border-radius: 0;
    }
  }

  @media (max-width: 767px) {
    .ns-visual-slider__stage[data-ns-visual-has-content] {
      --ns-reel-connected-radius: min(
        var(--ns-visual-media-context-radius-mobile, var(--ns-radius-media, 0px)),
        var(--ns-radius-density-mobile, var(--ns-radius-4xl)),
        var(--ns-section-edge-media-radius-limit-mobile, 999px),
        max(var(--ns-radius-sm), 8cqi)
      );
    }

    :is(
        .ns-visual-slider--mobile-overlay,
        .ns-visual-slider--mobile-media_first,
        .ns-visual-slider--mobile-content_first
      )
      .ns-visual-slider__stage[data-ns-visual-has-compact-product]
      > .ns-visual-media
      > .ns-visual-media__frame {
      --ns-visual-media-effective-radius: min(
        var(--ns-visual-media-radius, 0px),
        var(--ns-radius-density-active, var(--ns-radius-4xl)),
        var(--ns-visual-media-edge-radius-limit, 999px),
        max(var(--ns-radius-sm), 8cqi)
      );
    }

    :is(
        .ns-visual-slider--mobile-overlay,
        .ns-visual-slider--mobile-media_first,
        .ns-visual-slider--mobile-content_first
      )
      .ns-visual-slider__stage[data-ns-visual-has-compact-product]
      .ns-visual-content[data-ns-visual-has-compact-product]
      > .ns-visual-content__panel {
      border-radius: var(--ns-visual-content-panel-radius, 0px);
    }

    :is(
        .ns-visual-slider--mobile-media_first[data-ns-visual-gapless-mobile],
        .ns-visual-slider--mobile-content_first[data-ns-visual-gapless-mobile]
      )
      .ns-visual-slider__stage[data-ns-visual-has-compact-product]
      > .ns-visual-media
      > .ns-visual-media__frame {
      --ns-visual-media-effective-radius: var(--ns-reel-connected-radius);
    }

    .ns-visual-slider--mobile-media_first[data-ns-visual-gapless-mobile]
      .ns-visual-slider__stage[data-ns-visual-has-compact-product]
      .ns-visual-content[data-ns-visual-has-compact-product]
      > .ns-visual-content__panel {
      overflow: clip;
      border-radius: 0 0 var(--ns-reel-connected-radius) var(--ns-reel-connected-radius);
    }

    .ns-visual-slider--mobile-content_first[data-ns-visual-gapless-mobile]
      .ns-visual-slider__stage[data-ns-visual-has-compact-product]
      .ns-visual-content[data-ns-visual-has-compact-product]
      > .ns-visual-content__panel {
      overflow: clip;
      border-radius: var(--ns-reel-connected-radius) var(--ns-reel-connected-radius) 0 0;
    }

    .ns-visual-slider--mobile-overlay
      .ns-visual-slider__stage[data-ns-visual-has-compact-product]
      .ns-visual-content[data-ns-visual-has-compact-product]
      > .ns-visual-content__panel {
      --ns-compact-product-media-end-start-radius: var(--ns-compact-product-media-concentric-radius);
    }

    :is(
        .ns-visual-slider--mobile-media_first[data-ns-visual-gapless-mobile],
        .ns-visual-slider--mobile-content_first[data-ns-visual-gapless-mobile]
      )
      .ns-visual-slider__stage[data-ns-visual-has-content],
    .ns-visual-slider--mobile-overlay .ns-visual-slider__stage[data-ns-visual-has-compact-product] {
      border-radius: var(--ns-reel-connected-radius);
    }

    :is(
        .ns-visual-slider--mobile-media_first[data-ns-visual-gapless-mobile],
        .ns-visual-slider--mobile-content_first[data-ns-visual-gapless-mobile]
      )
      .ns-visual-slider__stage[data-ns-visual-has-content]
      .ns-visual-content
      > .ns-visual-content__panel,
    .ns-visual-slider--mobile-overlay
      .ns-visual-slider__stage[data-ns-visual-has-compact-product]
      .ns-visual-content[data-ns-visual-has-compact-product]
      > .ns-visual-content__panel {
      border-radius: 0;
    }
  }
}
/* END_SNIPPET:_styles-visual-slide-stage-styles */

/* START_SNIPPET:_styles-visual-slider-autoplay-styles (INDEX:278) */
@layer components {
  .ns-visual-slider-autoplay {
    position: absolute;
    z-index: 5;
    inset-inline-end: var(--ns-space-16);
    inset-block-start: var(--ns-space-16);
  }

  .ns-visual-slider-autoplay:not(:defined) {
    display: none;
  }

  .ns-visual-slider-autoplay__toggle {
    display: grid;
    place-items: center;
    inline-size: 2.75rem;
    block-size: 2.75rem;
    padding: 0;
    border: 1px solid currentcolor;
    border-radius: var(--ns-radius-icon-button, var(--ns-radius-xl));
    color: var(--ns-color-heading);
    background: color-mix(in srgb, var(--ns-color-background) 72%, transparent);
    cursor: pointer;
  }

  .ns-visual-slider-autoplay__icon {
    grid-area: 1 / 1;
    width: 1rem;
    height: 1rem;
  }

  .ns-visual-slider-autoplay__icon svg {
    display: block;
    width: 100%;
    height: 100%;
  }

  .ns-visual-slider-autoplay__play,
  .ns-visual-slider-autoplay[data-ns-slider-paused] .ns-visual-slider-autoplay__pause {
    display: none;
  }

  .ns-visual-slider-autoplay[data-ns-slider-paused] .ns-visual-slider-autoplay__play {
    display: block;
  }

  @media (max-width: 767px) {
    .ns-visual-slider-autoplay {
      inset-inline-end: var(--ns-space-12);
      inset-block-start: var(--ns-space-12);
    }

    .ns-visual-slider-autoplay__toggle {
      inline-size: 2.75rem;
      block-size: 2.75rem;
    }

    .ns-visual-slider-autoplay__icon {
      width: 1rem;
      height: 1rem;
    }
  }
}
/* END_SNIPPET:_styles-visual-slider-autoplay-styles */

/* START_SNIPPET:_styles-visual-stage-styles (INDEX:279) */
@layer components {
  .ns-visual-stage[data-ns-visual-has-content] {
    --ns-reel-connected-radius: min(
      var(--ns-visual-media-context-radius-wide-desktop, var(--ns-radius-media, 0px)),
      var(--ns-radius-density-wide-desktop, var(--ns-radius-4xl)),
      var(--ns-section-edge-media-radius-limit-wide-desktop, 999px),
      max(var(--ns-radius-sm), 8cqi)
    );
  }

  .ns-visual-stage[data-ns-visual-has-content]
    .ns-visual-content[data-ns-visual-has-compact-product]
    > .ns-visual-content__panel {
    --ns-compact-product-media-concentric-radius: max(
        0px,
        calc(
          var(--ns-reel-connected-radius) - var(--ns-visual-content-outer-inline) -
            var(--ns-visual-content-panel-inline)
        )
      )
      max(
        0px,
        calc(
          var(--ns-reel-connected-radius) - var(--ns-visual-content-outer-block) - var(--ns-visual-content-panel-block)
        )
      );
  }

  @media (min-width: 1025px) {
    :is(
        .ns-visual-stage--desktop-media_first[data-ns-visual-gapless-desktop],
        .ns-visual-stage--desktop-content_first[data-ns-visual-gapless-desktop]
      )[data-ns-visual-has-compact-product]
      > .ns-visual-media
      > .ns-visual-media__frame {
      --ns-visual-media-effective-radius: var(--ns-reel-connected-radius);
    }

    .ns-visual-stage--desktop-media_first[data-ns-visual-gapless-desktop][data-ns-visual-has-compact-product]
      .ns-visual-content[data-ns-visual-has-compact-product]
      > .ns-visual-content__panel {
      overflow: clip;
      border-radius: 0 0 var(--ns-reel-connected-radius) var(--ns-reel-connected-radius);
    }

    .ns-visual-stage--desktop-content_first[data-ns-visual-gapless-desktop][data-ns-visual-has-compact-product]
      .ns-visual-content[data-ns-visual-has-compact-product]
      > .ns-visual-content__panel {
      overflow: clip;
      border-radius: var(--ns-reel-connected-radius) var(--ns-reel-connected-radius) 0 0;
    }

    .ns-visual-stage--desktop-overlay[data-ns-visual-has-compact-product]
      .ns-visual-content[data-ns-visual-has-compact-product]
      > .ns-visual-content__panel {
      --ns-compact-product-media-end-start-radius: var(--ns-compact-product-media-concentric-radius);
    }

    :is(
      .ns-visual-stage--desktop-media_first[data-ns-visual-gapless-desktop],
      .ns-visual-stage--desktop-content_first[data-ns-visual-gapless-desktop]
    )[data-ns-visual-has-content],
    .ns-visual-stage--desktop-overlay[data-ns-visual-has-compact-product] {
      border-radius: var(--ns-reel-connected-radius);
    }

    :is(
        .ns-visual-stage--desktop-media_first[data-ns-visual-gapless-desktop],
        .ns-visual-stage--desktop-content_first[data-ns-visual-gapless-desktop]
      )[data-ns-visual-has-content]
      .ns-visual-content
      > .ns-visual-content__panel,
    .ns-visual-stage--desktop-overlay[data-ns-visual-has-compact-product]
      .ns-visual-content[data-ns-visual-has-compact-product]
      > .ns-visual-content__panel {
      border-radius: 0;
    }
  }

  @media (min-width: 1025px) and (max-width: 1259px) {
    .ns-visual-stage[data-ns-visual-has-content] {
      --ns-reel-connected-radius: min(
        var(--ns-visual-media-context-radius-desktop, var(--ns-radius-media, 0px)),
        var(--ns-radius-density-desktop, var(--ns-radius-4xl)),
        var(--ns-section-edge-media-radius-limit-desktop, 999px),
        max(var(--ns-radius-sm), 8cqi)
      );
    }
  }

  @media (min-width: 768px) and (max-width: 1024px) {
    .ns-visual-stage[data-ns-visual-has-content] {
      --ns-reel-connected-radius: min(
        var(--ns-visual-media-context-radius-tablet, var(--ns-radius-media, 0px)),
        var(--ns-radius-density-tablet, var(--ns-radius-4xl)),
        var(--ns-section-edge-media-radius-limit-tablet, 999px),
        max(var(--ns-radius-sm), 8cqi)
      );
    }

    :is(
        .ns-visual-stage--tablet-overlay,
        .ns-visual-stage--tablet-media_first,
        .ns-visual-stage--tablet-content_first
      )[data-ns-visual-has-compact-product]
      > .ns-visual-media
      > .ns-visual-media__frame {
      --ns-visual-media-effective-radius: min(
        var(--ns-visual-media-radius, 0px),
        var(--ns-radius-density-active, var(--ns-radius-4xl)),
        var(--ns-visual-media-edge-radius-limit, 999px),
        max(var(--ns-radius-sm), 8cqi)
      );
    }

    :is(
        .ns-visual-stage--tablet-overlay,
        .ns-visual-stage--tablet-media_first,
        .ns-visual-stage--tablet-content_first
      )[data-ns-visual-has-compact-product]
      .ns-visual-content[data-ns-visual-has-compact-product]
      > .ns-visual-content__panel {
      border-radius: var(--ns-visual-content-panel-radius, 0px);
    }

    :is(
        .ns-visual-stage--tablet-media_first[data-ns-visual-gapless-tablet],
        .ns-visual-stage--tablet-content_first[data-ns-visual-gapless-tablet]
      )[data-ns-visual-has-compact-product]
      > .ns-visual-media
      > .ns-visual-media__frame {
      --ns-visual-media-effective-radius: var(--ns-reel-connected-radius);
    }

    .ns-visual-stage--tablet-media_first[data-ns-visual-gapless-tablet][data-ns-visual-has-compact-product]
      .ns-visual-content[data-ns-visual-has-compact-product]
      > .ns-visual-content__panel {
      overflow: clip;
      border-radius: 0 0 var(--ns-reel-connected-radius) var(--ns-reel-connected-radius);
    }

    .ns-visual-stage--tablet-content_first[data-ns-visual-gapless-tablet][data-ns-visual-has-compact-product]
      .ns-visual-content[data-ns-visual-has-compact-product]
      > .ns-visual-content__panel {
      overflow: clip;
      border-radius: var(--ns-reel-connected-radius) var(--ns-reel-connected-radius) 0 0;
    }

    .ns-visual-stage--tablet-overlay[data-ns-visual-has-compact-product]
      .ns-visual-content[data-ns-visual-has-compact-product]
      > .ns-visual-content__panel {
      --ns-compact-product-media-end-start-radius: var(--ns-compact-product-media-concentric-radius);
    }

    :is(
      .ns-visual-stage--tablet-media_first[data-ns-visual-gapless-tablet],
      .ns-visual-stage--tablet-content_first[data-ns-visual-gapless-tablet]
    )[data-ns-visual-has-content],
    .ns-visual-stage--tablet-overlay[data-ns-visual-has-compact-product] {
      border-radius: var(--ns-reel-connected-radius);
    }

    :is(
        .ns-visual-stage--tablet-media_first[data-ns-visual-gapless-tablet],
        .ns-visual-stage--tablet-content_first[data-ns-visual-gapless-tablet]
      )[data-ns-visual-has-content]
      .ns-visual-content
      > .ns-visual-content__panel,
    .ns-visual-stage--tablet-overlay[data-ns-visual-has-compact-product]
      .ns-visual-content[data-ns-visual-has-compact-product]
      > .ns-visual-content__panel {
      border-radius: 0;
    }
  }

  @media (max-width: 767px) {
    .ns-visual-stage[data-ns-visual-has-content] {
      --ns-reel-connected-radius: min(
        var(--ns-visual-media-context-radius-mobile, var(--ns-radius-media, 0px)),
        var(--ns-radius-density-mobile, var(--ns-radius-4xl)),
        var(--ns-section-edge-media-radius-limit-mobile, 999px),
        max(var(--ns-radius-sm), 8cqi)
      );
    }

    :is(
        .ns-visual-stage--mobile-overlay,
        .ns-visual-stage--mobile-media_first,
        .ns-visual-stage--mobile-content_first
      )[data-ns-visual-has-compact-product]
      > .ns-visual-media
      > .ns-visual-media__frame {
      --ns-visual-media-effective-radius: min(
        var(--ns-visual-media-radius, 0px),
        var(--ns-radius-density-active, var(--ns-radius-4xl)),
        var(--ns-visual-media-edge-radius-limit, 999px),
        max(var(--ns-radius-sm), 8cqi)
      );
    }

    :is(
        .ns-visual-stage--mobile-overlay,
        .ns-visual-stage--mobile-media_first,
        .ns-visual-stage--mobile-content_first
      )[data-ns-visual-has-compact-product]
      .ns-visual-content[data-ns-visual-has-compact-product]
      > .ns-visual-content__panel {
      border-radius: var(--ns-visual-content-panel-radius, 0px);
    }

    :is(
        .ns-visual-stage--mobile-media_first[data-ns-visual-gapless-mobile],
        .ns-visual-stage--mobile-content_first[data-ns-visual-gapless-mobile]
      )[data-ns-visual-has-compact-product]
      > .ns-visual-media
      > .ns-visual-media__frame {
      --ns-visual-media-effective-radius: var(--ns-reel-connected-radius);
    }

    .ns-visual-stage--mobile-media_first[data-ns-visual-gapless-mobile][data-ns-visual-has-compact-product]
      .ns-visual-content[data-ns-visual-has-compact-product]
      > .ns-visual-content__panel {
      overflow: clip;
      border-radius: 0 0 var(--ns-reel-connected-radius) var(--ns-reel-connected-radius);
    }

    .ns-visual-stage--mobile-content_first[data-ns-visual-gapless-mobile][data-ns-visual-has-compact-product]
      .ns-visual-content[data-ns-visual-has-compact-product]
      > .ns-visual-content__panel {
      overflow: clip;
      border-radius: var(--ns-reel-connected-radius) var(--ns-reel-connected-radius) 0 0;
    }

    .ns-visual-stage--mobile-overlay[data-ns-visual-has-compact-product]
      .ns-visual-content[data-ns-visual-has-compact-product]
      > .ns-visual-content__panel {
      --ns-compact-product-media-end-start-radius: var(--ns-compact-product-media-concentric-radius);
    }

    :is(
      .ns-visual-stage--mobile-media_first[data-ns-visual-gapless-mobile],
      .ns-visual-stage--mobile-content_first[data-ns-visual-gapless-mobile]
    )[data-ns-visual-has-content],
    .ns-visual-stage--mobile-overlay[data-ns-visual-has-compact-product] {
      border-radius: var(--ns-reel-connected-radius);
    }

    :is(
        .ns-visual-stage--mobile-media_first[data-ns-visual-gapless-mobile],
        .ns-visual-stage--mobile-content_first[data-ns-visual-gapless-mobile]
      )[data-ns-visual-has-content]
      .ns-visual-content
      > .ns-visual-content__panel,
    .ns-visual-stage--mobile-overlay[data-ns-visual-has-compact-product]
      .ns-visual-content[data-ns-visual-has-compact-product]
      > .ns-visual-content__panel {
      border-radius: 0;
    }
  }
}
/* END_SNIPPET:_styles-visual-stage-styles */

/* START_SNIPPET:_styles-visual-surface-link-styles (INDEX:280) */
@layer components {
  .ns-visual-surface-link {
    position: absolute;
    inset: 0;
  }

  .ns-visual-surface-link--stage {
    z-index: 2;
  }

  .ns-visual-content__panel > .ns-visual-surface-link--content {
    z-index: 0;
  }

  .ns-visual-stage--surface-linked > .ns-visual-stage__content,
  .ns-visual-stage--surface-linked .ns-visual-content__panel:not(.ns-visual-content__panel--surface-linked),
  .ns-visual-content__panel--surface-linked > :not(.ns-visual-surface-link) {
    pointer-events: none;
  }

  .ns-visual-content__panel--surface-linked,
  .ns-visual-content__panel--surface-linked > .ns-visual-surface-link--content {
    pointer-events: auto;
  }

  :is(.ns-visual-stage--surface-linked, .ns-visual-content__panel--surface-linked)
    :is(
      a,
      button,
      input,
      select,
      textarea,
      video,
      iframe,
      audio,
      [role='button'],
      [contenteditable='true'],
      shopify-app-block,
      [data-shopify-app-block]
    ):not(.ns-visual-surface-link) {
    position: relative;
    z-index: 1;
    pointer-events: auto;
  }

  .ns-visual-stage--surface-linked
    > .ns-visual-media:has(:is(iframe, video[controls], .ns-video__poster--interactive:not([hidden]))) {
    z-index: 4;
    pointer-events: auto;
  }
}
/* END_SNIPPET:_styles-visual-surface-link-styles */

/* START_SNIPPET:accordion-row (INDEX:281) */
@layer components {
    .ns-accordion__item {
      border-block-end: 1px solid var(--ns-color-border);
    }

    .ns-accordion__summary {
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      align-items: center;
      gap: var(--ns-space-16);
      min-block-size: 2.125rem;
      padding-block: var(--ns-space-8);
      color: var(--ns-color-heading, currentColor);
      font-size: var(--ns-type-body-size);
      font-weight: var(--ns-type-weight-interface);
      line-height: 1.3;
      letter-spacing: 0.025em;
      text-transform: uppercase;
      cursor: pointer;
      list-style: none;
    }

    .ns-accordion__summary::-webkit-details-marker {
      display: none;
    }

    .ns-accordion__indicator::before {
      display: block;
      inline-size: 1em;
      text-align: center;
      content: '+';
    }

    .ns-accordion__item[open] > .ns-accordion__summary .ns-accordion__indicator::before {
      content: '\00d7';
    }

    .ns-accordion__content {
      padding-block: var(--ns-space-16) var(--ns-space-20);
      color: var(--ns-color-muted, currentColor);
    }

    .ns-accordion__content > * + * {
      margin-block-start: var(--ns-space-16);
    }
  }
/* END_SNIPPET:accordion-row */

/* START_SNIPPET:button (INDEX:293) */
@layer components {
    .ns-button {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: var(--ns-space-8);
      text-align: center;
      text-decoration: none;
      border-radius: var(--ns-radius-button, 0px);
      cursor: pointer;
    }

    .ns-button--style-primary,
    .ns-button--primary {
      color: var(--ns-button-color, var(--ns-color-on-primary));
      background: var(--ns-button-background, var(--ns-color-primary));
      border: var(--ns-border-width-default) solid var(--ns-button-border-color, var(--ns-color-primary));
    }

    .ns-button--style-secondary,
    .ns-button--secondary {
      color: var(--ns-button-color, var(--ns-color-on-secondary));
      background: var(--ns-button-background, var(--ns-color-secondary));
      border: var(--ns-border-width-default) solid var(--ns-button-border-color, var(--ns-color-secondary));
    }

    .ns-button--style-outline,
    .ns-button--outline {
      color: var(--ns-button-color, currentColor);
      background: transparent;
      border: var(--ns-border-width-default) solid;
      border-color: var(--ns-button-border-color, currentColor);
    }

    .ns-button--style-outline[data-ns-button-tone='inverse'] {
      color: var(--ns-color-button-outline-inverse);
      border-color: var(--ns-color-button-outline-inverse);
    }

    :is(.ns-button--style-link, .ns-button--link),
    :is(.ns-button--style-link-muted, .ns-button--link-muted),
    :is(.ns-button--style-text, .ns-button--text) {
      min-block-size: auto;
      padding: 0;
      color: var(--ns-color-link);
      background: transparent;
      border: 0;
    }

    :is(.ns-button--style-link, .ns-button--link),
    :is(.ns-button--style-link-muted, .ns-button--link-muted) {
      line-height: 1.3;
      letter-spacing: 0;
      text-decoration: underline;
      text-transform: none;
      text-underline-offset: 0.08em;
    }

    :is(.ns-button--style-link, .ns-button--link) {
      text-transform: uppercase;
    }

    :is(.ns-button--style-link-muted, .ns-button--link-muted) {
      color: var(--ns-color-muted);
    }

    :is(.ns-button--style-text, .ns-button--text) {
      color: var(--ns-color-foreground);
    }

    .ns-button__icon {
      flex: 0 0 auto;
      inline-size: var(--ns-icon-size-20);
      block-size: var(--ns-icon-size-20);
    }

    .ns-button__icon svg {
      inline-size: 100%;
      block-size: 100%;
    }

    .ns-button__label {
      min-inline-size: 0;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }

    .ns-button:focus-visible {
      outline: var(--ns-focus-ring-width) solid var(--ns-color-accent);
      outline-offset: 2px;
    }

    .ns-button:disabled {
      cursor: not-allowed;
      opacity: 0.55;
    }
  }
/* END_SNIPPET:button */

/* START_SNIPPET:checkbox (INDEX:297) */
@layer components {
    .ns-checkbox {
      display: inline-grid;
      place-content: center;
      flex: 0 0 auto;
      inline-size: 1.125rem;
      block-size: 1.125rem;
      margin: 0;
      color: var(--ns-color-foreground);
      background: var(--ns-color-background);
      border: 1px solid var(--ns-color-border);
      border-radius: var(--ns-radius-xs, 2px);
      appearance: none;
      cursor: pointer;
    }

    .ns-checkbox::before {
      inline-size: 0.375rem;
      block-size: 0.625rem;
      border-inline-end: 1.5px solid currentcolor;
      border-block-end: 1.5px solid currentcolor;
      content: '';
      transform: translateY(-0.0625rem) rotate(45deg) scale(0);
      transform-origin: center;
    }

    .ns-checkbox:checked,
    .ns-checkbox--checked {
      border-color: var(--ns-color-foreground);
    }

    .ns-checkbox:checked::before,
    .ns-checkbox--checked::before {
      transform: translateY(-0.0625rem) rotate(45deg) scale(1);
    }

    .ns-checkbox--decorative {
      cursor: inherit;
    }

    .ns-checkbox:is(:hover, :focus-visible) {
      border-color: var(--ns-color-foreground);
    }

    .ns-checkbox:focus-visible {
      outline: 2px solid var(--ns-color-foreground);
      outline-offset: 2px;
    }

    .ns-checkbox:disabled {
      cursor: not-allowed;
      opacity: 0.5;
    }
  }
/* END_SNIPPET:checkbox */

/* START_SNIPPET:desktop-header (INDEX:305) */
@layer components {
    .ns-desktop-header {
      position: relative;
      display: block;
      background: transparent;
      color: var(--ns-color-foreground);
    }

    .ns-desktop-header__container {
      width: var(--ns-content-width);
      margin-inline: auto;
    }

    .ns-desktop-header__main {
      --ns-header-row-background: var(--ns-color-background);

      background-color: var(--ns-header-row-background);
      box-shadow: inset 0 -1px var(--ns-color-border);
    }

    .ns-desktop-header__main-inner {
      display: grid;
      grid-template-columns: auto minmax(0, 1fr) auto;
      align-items: center;
      gap: var(--ns-space-16);
      min-height: var(--ns-header-main-height, var(--ns-space-40));
    }

    .ns-desktop-header__logo-host {
      display: block;
      width: min(var(--ns-header-logo-width), 100%);
    }

    .ns-desktop-header__logo {
      display: block;
      width: 100%;
      color: inherit;
    }

    .ns-desktop-header__logo-image {
      --ns-header-logo-max-block-size: 1.875rem;

      width: 100%;
      max-height: var(--ns-header-logo-max-block-size);
      object-fit: contain;
    }

    .ns-desktop-header__shop-name {
      display: block;
      overflow: hidden;
      color: currentcolor;
      font-size: var(--ns-type-navigation-size);
      line-height: 1;
      text-overflow: ellipsis;
      white-space: nowrap;
    }

    .ns-desktop-header__tagline {
      color: var(--ns-color-muted);
    }

    .ns-desktop-header__navigation {
      --ns-header-sticky-background: var(--ns-header-sticky-nav-background);
      --ns-header-sticky-foreground: var(--ns-header-sticky-nav-foreground);
      --ns-header-row-background: var(--ns-header-nav-background);

      min-height: var(--ns-header-nav-height, var(--ns-space-40));
      background-color: var(--ns-header-row-background);
      color: var(--ns-header-nav-foreground);
    }

    .ns-desktop-header[data-ns-header-transparent='true'] {
      background: transparent;
    }

    .ns-desktop-header[data-ns-header-transparent='true']
      :is(.ns-desktop-header__main, .ns-desktop-header__navigation) {
      box-shadow: none;
    }

    .ns-desktop-header--categories[data-ns-header-transparent='true'] .ns-desktop-header__navigation {
      background: transparent;
    }

    .ns-desktop-header__navigation-inner {
      display: flex;
      align-items: center;
      min-height: inherit;
    }

    .ns-desktop-header__navigation-inner > .ns-header-nav {
      flex: 1;
    }

    .ns-desktop-header__nav-search {
      display: flex;
      align-items: center;
      gap: var(--ns-space-8);
      min-height: var(--ns-header-nav-height, var(--ns-space-40));
      color: inherit;
      letter-spacing: 0.05em;
      text-decoration: none;
      text-transform: uppercase;
    }

    .ns-desktop-header__nav-search svg {
      width: 1.25rem;
    }

    .ns-desktop-header--centered .ns-desktop-header__main-inner {
      grid-template-columns: 1fr auto 1fr;
    }

    .ns-desktop-header--centered .ns-desktop-header__logo-host {
      grid-column: 2;
    }

    .ns-desktop-header--centered .ns-header-actions {
      grid-column: 3;
    }

    .ns-desktop-header--classic .ns-header-actions {
      grid-column: 3;
    }

    .ns-desktop-header--centered .ns-desktop-header__navigation-inner > .ns-header-nav {
      display: flex;
      justify-content: center;
      transform: translateX(-0.5625rem);
    }

    .ns-desktop-header--compact .ns-desktop-header__main-inner,
    .ns-desktop-header--inline-centered .ns-desktop-header__main-inner {
      position: relative;
      grid-template-columns: auto minmax(0, 1fr) auto;
    }

    .ns-desktop-header__inline-menu {
      min-width: 0;
    }

    .ns-desktop-header--compact .ns-desktop-header__inline-menu {
      transform: translateX(0.1875rem);
    }

    .ns-desktop-header--inline-centered .ns-desktop-header__logo-host {
      position: absolute;
      inset-block-start: 50%;
      inset-inline-start: 50%;
      transform: translate(-50%, -50%);
    }

    .ns-desktop-header--inline-centered .ns-desktop-header__inline-menu {
      grid-column: 1;
      grid-row: 1;
    }

    .ns-desktop-header--inline-centered .ns-header-actions {
      grid-column: 3;
      grid-row: 1;
    }

    .ns-header-search {
      position: relative;
      display: grid;
      grid-template-columns: minmax(12rem, 1fr) auto;
      align-items: center;
      gap: var(--ns-space-10);
      justify-self: center;
      width: min(35.5625rem, 100%);
      margin: 0;
    }

    .ns-header-search__icon {
      position: absolute;
      inset-inline-start: var(--ns-space-12);
      display: grid;
      place-items: center;
      width: 1rem;
      color: var(--ns-color-muted);
      pointer-events: none;
    }

    .ns-header-search__input {
      width: 100%;
      block-size: var(--ns-text-control-block-size);
      padding: 0 var(--ns-space-16) 0 var(--ns-space-40);
      border: 1px solid var(--ns-color-border);
      border-radius: var(--ns-radius-input, 0px);
      outline-offset: 2px;
      background: var(--ns-color-surface);
      color: var(--ns-color-foreground);
      font: inherit;
      appearance: none;
    }

    .ns-header-search__input::placeholder {
      color: var(--ns-color-muted);
      opacity: 1;
    }

    .ns-header-search__input::-webkit-search-cancel-button {
      appearance: none;
    }

    .ns-header-search__button {
      display: flex;
      align-items: center;
      justify-content: center;
      padding-inline: var(--ns-button-padding-inline);
      border: 1px solid var(--ns-color-foreground);
      border-radius: var(--ns-radius-button, 0px);
      background: transparent;
      color: var(--ns-color-foreground);
      font: inherit;
      text-transform: uppercase;
      cursor: pointer;
    }

    .ns-desktop-header--search-centered .ns-desktop-header__main-inner {
      grid-template-columns: auto auto minmax(0, 1fr) auto;
      gap: var(--ns-space-12);
    }

    .ns-desktop-header--search-centered .ns-desktop-header__logo-host,
    .ns-desktop-header--categories .ns-desktop-header__logo-host {
      transform: translateY(-0.09375rem);
    }

    .ns-desktop-header--search-centered .ns-desktop-header__tagline {
      transform: translate(-0.4375rem, 0.4375rem);
    }

    .ns-desktop-header--search-centered .ns-header-actions--cart-label_count,
    .ns-desktop-header--categories .ns-header-actions--cart-label_count {
      gap: var(--ns-space-28);
    }

    .ns-desktop-header--search-centered .ns-header-search {
      grid-column: 3;
    }

    .ns-desktop-header--search-centered:not(.ns-desktop-header--search-placement-right_only) .ns-header-search {
      transform: translateX(0.75rem);
    }

    .ns-desktop-header--search-centered .ns-header-actions {
      grid-column: 4;
    }

    .ns-desktop-header--search-centered:not(.ns-desktop-header--search-placement-right_only)
      .ns-desktop-header__navigation-inner
      > .ns-header-nav {
      display: flex;
      justify-content: center;
      transform: translateX(-0.5625rem);
    }

    .ns-desktop-header--search-centered.ns-desktop-header--search-placement-right_only .ns-desktop-header__main-inner {
      grid-template-columns: auto auto minmax(0, 1fr) auto;
    }

    .ns-desktop-header--search-centered.ns-desktop-header--search-placement-right_only .ns-header-search {
      grid-column: 3;
      width: 23.125rem;
      margin-inline-end: var(--ns-space-26);
      justify-self: end;
    }

    .ns-desktop-header--search-centered.ns-desktop-header--search-placement-right_only
      .ns-desktop-header__navigation-inner
      > .ns-header-nav {
      flex: 0 1 auto;
    }

    .ns-desktop-header--categories .ns-desktop-header__navigation {
      background: var(--ns-color-surface);
      color: var(--ns-color-foreground);
    }

    .ns-desktop-header--categories .ns-header-search {
      transform: translateX(2.8125rem);
    }

    .ns-desktop-header--categories .ns-header-search__input {
      background: var(--ns-color-background);
    }

    .ns-desktop-header--categories .ns-desktop-header__navigation-inner {
      display: grid;
      grid-template-columns: 16.875rem minmax(0, 1fr);
      gap: var(--ns-space-30);
    }

    .ns-desktop-header--categories .ns-desktop-header__navigation-inner > .ns-header-nav {
      --ns-header-nav-gap: 1.125rem;

      min-width: 0;
    }

    @media (max-width: 1024px) {
      .ns-desktop-header {
        display: none;
      }
    }
  }
/* END_SNIPPET:desktop-header */

/* START_SNIPPET:empty-state (INDEX:307) */
@layer components {
    .ns-empty-state {
      --ns-surface-transition-base-min-block-size: 33rem;
      --ns-surface-transition-base-padding-start: clamp(var(--ns-space-60), 9vw, 8.5rem);
      --ns-surface-transition-base-padding-end: clamp(var(--ns-space-60), 9vw, 8.5rem);

      display: grid;
      min-block-size: var(--ns-surface-transition-base-min-block-size);
      padding: var(--ns-surface-transition-base-padding-start) var(--ns-page-gutter)
        var(--ns-surface-transition-base-padding-end);
      place-items: center;
    }

    .ns-empty-state__inner {
      display: grid;
      inline-size: min(100%, 45.625rem);
      align-items: center;
    }

    .ns-empty-state--centered .ns-empty-state__inner {
      inline-size: min(100%, 35.6875rem);
    }

    .ns-empty-state--split .ns-empty-state__inner {
      grid-template-columns: 13.75rem minmax(0, 1fr);
      gap: var(--ns-space-60);
    }

    .ns-empty-state__illustration {
      display: grid;
      inline-size: 13.75rem;
      block-size: 13.75rem;
      place-items: center;
      overflow: hidden;
    }

    .ns-empty-state__illustration svg {
      display: block;
      max-inline-size: 100%;
      max-block-size: 100%;
    }

    .ns-empty-state__content {
      min-inline-size: 0;
    }

    .ns-empty-state--centered .ns-empty-state__content {
      text-align: center;
    }

    .ns-empty-state__eyebrow,
    .ns-empty-state__title,
    .ns-empty-state__lead,
    .ns-empty-state__description,
    .ns-empty-state__body p,
    .ns-empty-state__body ul {
      margin: 0;
    }

    .ns-empty-state__eyebrow {
      margin-block-end: var(--ns-space-20);
      color: var(--ns-color-foreground);
      font-size: var(--ns-type-display-size);
      line-height: var(--ns-type-display-line-height);
      letter-spacing: 0.05em;
      text-transform: uppercase;
    }

    .ns-empty-state__title {
      color: var(--ns-color-foreground);
      font-size: var(--ns-type-large-size);
      font-weight: var(--ns-type-weight-heading);
      line-height: var(--ns-type-large-line-height);
    }

    .ns-empty-state__lead {
      margin-block-start: var(--ns-space-20);
      color: var(--ns-color-foreground);
      font-size: var(--ns-type-lead-size);
      line-height: var(--ns-type-lead-line-height);
    }

    .ns-empty-state__description,
    .ns-empty-state__body {
      color: var(--ns-color-muted);
      font-size: var(--ns-type-body-size);
      line-height: var(--ns-type-body-line-height);
    }

    .ns-empty-state__description {
      margin-block-start: var(--ns-space-16);
    }

    .ns-empty-state__body {
      margin-block-start: var(--ns-space-20);
    }

    .ns-empty-state__body ul {
      display: grid;
      gap: var(--ns-space-4);
      padding-inline-start: var(--ns-space-18);
    }

    .ns-empty-state__form {
      margin-block-start: var(--ns-space-30);
    }

    .ns-empty-state__form form {
      display: grid;
      grid-template-columns: minmax(0, 1fr) 6.875rem;
    }

    .ns-empty-state__form input,
    .ns-empty-state__form button {
      block-size: var(--ns-text-control-block-size);
      min-block-size: var(--ns-text-control-block-size);
      border: 1px solid var(--ns-color-border);
    }

    .ns-empty-state__form input {
      min-inline-size: 0;
      padding-inline: var(--ns-space-16);
      color: var(--ns-color-foreground);
      background: var(--ns-color-background);
      border-radius: var(--ns-radius-input, 0px);
    }

    .ns-empty-state__form button {
      padding-inline: var(--ns-button-padding-inline);
      color: var(--ns-color-foreground);
      font-size: var(--ns-type-label-size);
      letter-spacing: var(--ns-type-label-letter-spacing);
      text-transform: uppercase;
      background: var(--ns-color-background);
      border-color: var(--ns-color-foreground);
      border-radius: var(--ns-radius-button, 0px);
      cursor: pointer;
    }

    .ns-empty-state__action {
      min-inline-size: 11.25rem;
      margin-block-start: var(--ns-space-40);
    }

    @media (max-width: 46.99rem) {
      .ns-empty-state {
        --ns-surface-transition-base-min-block-size: 28rem;
        --ns-surface-transition-base-padding-start: var(--ns-space-60);
        --ns-surface-transition-base-padding-end: var(--ns-space-60);

        min-block-size: var(--ns-surface-transition-base-min-block-size);
        padding-block: var(--ns-surface-transition-base-padding-start)
          var(--ns-surface-transition-base-padding-end);
      }

      .ns-empty-state--split .ns-empty-state__inner {
        grid-template-columns: minmax(0, 1fr);
        gap: var(--ns-space-30);
        justify-items: center;
      }

      .ns-empty-state--split .ns-empty-state__content {
        inline-size: min(100%, 29rem);
        text-align: center;
      }

      .ns-empty-state__body ul {
        display: inline-grid;
        text-align: start;
      }

      .ns-empty-state__form form {
        grid-template-columns: minmax(0, 1fr);
        gap: var(--ns-space-10);
      }
    }
  }
/* END_SNIPPET:empty-state */

/* START_SNIPPET:footer-layout-styles (INDEX:308) */
@layer components {
    .ns-footer {
      color: var(--ns-color-foreground);
      background: var(--ns-footer-background, var(--ns-color-background));
      border-block-start: 1px solid var(--ns-color-border);
    }

    .ns-footer__frame {
      display: grid;
      grid-template-columns: var(--ns-content-grid);
      width: 100%;
    }

    .ns-footer__frame > * {
      grid-column: 2;
    }

    .ns-footer-layout {
      display: block;
      width: 100%;
    }

    .ns-footer-layout__main,
    .ns-footer-layout__utility {
      display: grid;
      min-width: 0;
    }

    .ns-footer-layout__main > *,
    .ns-footer-layout__utility > * {
      min-width: 0;
    }

    .ns-footer-layout__newsletter {
      padding-block: var(--ns-space-40);
    }

    .ns-footer-layout__navigation,
    .ns-footer-layout__support,
    .ns-footer-layout__apps {
      border-block-start: 1px solid var(--ns-color-border);
    }

    .ns-footer-layout__apps:empty {
      display: none;
    }

    .ns-footer-layout__social {
      padding-block: var(--ns-space-32);
      border-block-start: 1px solid var(--ns-color-border);
    }

    .ns-footer-layout__utility {
      justify-items: center;
      gap: var(--ns-space-20);
      padding-block: var(--ns-space-32) var(--ns-space-20);
      text-align: center;
      border-block-start: 1px solid var(--ns-color-border);
    }

    .ns-footer-layout__brand {
      width: 4rem;
    }

    .ns-footer-layout__back-to-top {
      display: grid;
      place-items: center;
      width: 100%;
      padding-block: var(--ns-space-32) var(--ns-space-24);
    }

    @media (min-width: 1025px) {
      .ns-footer-layout__main {
        gap: var(--ns-space-30);
        padding-block: var(--ns-space-48) var(--ns-space-60);
      }

      .ns-footer-layout__newsletter,
      .ns-footer-layout__navigation,
      .ns-footer-layout__support,
      .ns-footer-layout__social,
      .ns-footer-layout__apps {
        padding: 0;
        border: 0;
      }

      .ns-footer-layout__navigation {
        display: grid;
        gap: var(--ns-space-30);
      }

      .ns-footer-layout__apps {
        grid-column: 1 / -1;
      }

      .ns-footer-layout__utility {
        grid-template-columns: auto minmax(0, 1fr) auto auto;
        align-items: center;
        justify-items: start;
        gap: var(--ns-space-20);
        min-height: 4rem;
        padding-block: var(--ns-space-16);
        text-align: start;
      }

      .ns-footer-layout__payments {
        justify-self: end;
      }

      .ns-footer-layout__back-to-top {
        grid-column: 1 / -1;
        justify-self: stretch;
        margin: 0;
        padding-block: var(--ns-space-40) var(--ns-space-32);
      }

      .ns-footer-layout--type_2 .ns-footer-layout__main {
        grid-template-columns: repeat(6, minmax(0, 1fr));
      }

      .ns-footer-layout--type_2 .ns-footer-layout__newsletter {
        grid-column: 1 / -1;
      }

      .ns-footer-layout--type_2 .ns-footer-layout__navigation {
        grid-column: 1 / 4;
        grid-template-columns: repeat(3, minmax(0, 1fr));
      }

      .ns-footer-layout--type_2 .ns-footer-layout__support {
        grid-column: 4 / 6;
      }

      .ns-footer-layout--type_2 .ns-footer-layout__social {
        grid-column: 6;
      }

      .ns-footer-layout--type_2 .ns-footer-layout__utility,
      .ns-footer-layout--type_3 .ns-footer-layout__utility {
        min-height: 3.875rem;
        padding-block: var(--ns-space-8);
      }

      .ns-footer-layout--type_3 .ns-footer-layout__main {
        --ns-footer-type-3-main-padding-block-end: 5.625rem;

        grid-template-columns: repeat(2, minmax(0, 1fr));
        padding-block-end: var(--ns-footer-type-3-main-padding-block-end);
      }

      .ns-footer-layout--type_3 .ns-footer-layout__navigation {
        grid-row: 1 / 3;
        grid-column: 1;
        grid-template-columns: repeat(3, minmax(0, 1fr));
      }

      .ns-footer-layout--type_3 .ns-footer-layout__newsletter,
      .ns-footer-layout--type_3 .ns-footer-layout__social {
        grid-column: 2;
      }

      .ns-footer-layout--type_4 .ns-footer-layout__main {
        grid-template-columns: 1.15fr 1.35fr 1fr;
        padding-block-end: var(--ns-space-48);
      }

      .ns-footer-layout--type_4 .ns-footer-layout__navigation {
        grid-row: 1;
        grid-column: 3;
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }

      .ns-footer-layout--type_4 .ns-footer-layout__newsletter {
        grid-row: 1;
        grid-column: 1;
        padding-inline-end: var(--ns-space-30);
        border-inline-end: 1px solid var(--ns-color-border);
      }

      .ns-footer-layout--type_4 .ns-footer-layout__support {
        grid-row: 1;
        grid-column: 2;
        padding-inline-end: var(--ns-space-30);
        border-inline-end: 1px solid var(--ns-color-border);
      }

      .ns-footer-layout--type_4 .ns-footer-layout__social {
        grid-column: 1 / -1;
        margin-block: var(--ns-space-32) calc(-1 * var(--ns-space-48));
        padding-block: var(--ns-space-24);
        border-block-start: 1px solid var(--ns-color-border);
      }

      .ns-footer-layout--type_4 .ns-footer-layout__utility {
        grid-template-columns: 1fr auto auto 1fr;
      }

      .ns-footer-layout--type_4 .ns-footer-layout__legal {
        grid-column: 2;
        text-align: center;
      }

      .ns-footer-layout--type_5 .ns-footer-layout__main {
        --ns-footer-type-5-main-padding-block: 3.5rem;

        justify-items: center;
        padding-block: var(--ns-footer-type-5-main-padding-block);
      }

      .ns-footer-layout--type_5 .ns-footer-layout__newsletter {
        width: min(100%, 35.5rem);
      }

      .ns-footer-layout--type_5 .ns-footer-layout__utility {
        grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
        grid-template-rows: auto auto;
        row-gap: var(--ns-space-8);
        min-height: 4.875rem;
        padding-block: var(--ns-space-12);
      }

      .ns-footer-layout--type_5 .ns-footer-layout__legal,
      .ns-footer-layout--type_5 .ns-footer-layout__social {
        grid-column: 2;
      }

      .ns-footer-layout--type_5 .ns-footer-layout__legal {
        grid-row: 1;
      }

      .ns-footer-layout--type_5 .ns-footer-layout__social {
        grid-row: 2;
      }

      .ns-footer-layout--type_6 {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        align-items: center;
        min-height: 2.4375rem;
      }

      .ns-footer-layout--type_6 .ns-footer-layout__main,
      .ns-footer-layout--type_6 .ns-footer-layout__utility {
        display: contents;
      }

      .ns-footer-layout--type_6 .ns-footer-layout__social {
        grid-row: 2;
        grid-column: 2;
      }

      .ns-footer-layout--type_6 .ns-footer-layout__legal {
        grid-row: 2;
        grid-column: 1;
      }

      .ns-footer-layout--type_6 .ns-footer-layout__social,
      .ns-footer-layout--type_6 .ns-footer-layout__legal {
        padding-block: var(--ns-space-8);
        border: 0;
      }
    }
  }
/* END_SNIPPET:footer-layout-styles */

/* START_SNIPPET:footer-parallax-styles (INDEX:309) */
@layer components {
    [data-ns-footer-parallax] {
      position: relative;
      z-index: 1;
      transform: translate3d(0, var(--ns-footer-parallax-offset, 0px), 0);
    }

    [data-ns-footer-parallax][data-ns-footer-parallax-static] {
      transform: none;
    }

    @media (prefers-reduced-motion: reduce) {
      [data-ns-footer-parallax] {
        transform: none;
      }
    }
  }
/* END_SNIPPET:footer-parallax-styles */

/* START_SNIPPET:form-field (INDEX:310) */
@layer components {
    .ns-field {
      --ns-field-block-size: var(--ns-text-control-block-size);

      display: grid;
      grid-template-columns: minmax(0, 1fr);
      inline-size: 100%;
      color: var(--ns-color-foreground);
    }

    .ns-field__label {
      margin-block-end: var(--ns-space-4);
      color: currentcolor;
      font-size: var(--ns-type-body-small-size);
      font-weight: var(--ns-type-weight-emphasis);
      line-height: var(--ns-type-body-line-height);
      text-transform: uppercase;
    }

    .ns-field__control {
      min-inline-size: 0;
      block-size: var(--ns-field-block-size);
      padding-inline: var(--ns-space-16);
      color: var(--ns-color-muted);
      font-size: var(--ns-type-input-size);
      font-weight: var(--ns-type-weight-interface);
      line-height: var(--ns-type-body-line-height);
      background: var(--ns-color-surface-alt);
      border: var(--ns-border-width-default) solid var(--ns-color-border);
      border-radius: var(--ns-radius-input, 0px);
      outline: 0;
    }

    .ns-field__control::placeholder {
      color: var(--ns-color-muted);
      opacity: 1;
    }

    .ns-field__control--textarea {
      block-size: 10.0625rem;
      min-block-size: 10.0625rem;
      padding-block: var(--ns-space-10);
      resize: vertical;
    }

    .ns-field__control:hover,
    .ns-field__control:focus-visible {
      color: var(--ns-color-foreground);
      background: var(--ns-color-background);
      border-color: var(--ns-color-border);
    }

    .ns-field__control:hover::placeholder,
    .ns-field__control:focus-visible::placeholder {
      color: var(--ns-color-foreground);
    }

    .ns-field__control:focus-visible {
      outline: var(--ns-border-width-default) solid var(--ns-color-foreground);
      outline-offset: -1px;
    }

    .ns-field--error {
      --ns-field-status-color: var(--ns-color-critical);
      --ns-field-status-foreground: var(--ns-color-on-critical);

      color: var(--ns-color-critical);
    }

    .ns-field--success {
      --ns-field-status-color: var(--ns-color-success);
      --ns-field-status-foreground: var(--ns-color-on-success);

      color: var(--ns-color-success);
    }

    .ns-field--error .ns-field__control {
      border-color: color-mix(in srgb, var(--ns-color-critical) 30%, transparent);
    }

    .ns-field--success .ns-field__control {
      border-color: color-mix(in srgb, var(--ns-color-success) 30%, transparent);
    }

    .ns-field__message {
      position: relative;
      justify-self: start;
      margin-inline-start: var(--ns-space-15);
      padding-inline: var(--ns-space-4);
      color: var(--ns-field-status-foreground);
      font-size: var(--ns-type-caption-size);
      line-height: var(--ns-type-caption-line-height);
      background: var(--ns-field-status-color);
      border-radius: var(--ns-radius-tooltip, var(--ns-radius-xs));
    }

    .ns-field__message::before {
      position: absolute;
      inset-block-start: -0.25rem;
      inset-inline-start: 0.875rem;
      inline-size: 0;
      block-size: 0;
      border-inline: 0.25rem solid transparent;
      border-block-end: 0.25rem solid var(--ns-field-status-color);
      content: '';
    }

    .ns-field__control:disabled {
      cursor: not-allowed;
      opacity: 0.55;
    }
  }
/* END_SNIPPET:form-field */

/* START_SNIPPET:header-account-action (INDEX:311) */
@layer components {
    .ns-account-action-wrap {
      display: inline-grid;
      place-items: center;
      color: inherit;
    }

    .ns-account-action {
      --shopify-account-font-heading: var(--ns-font-heading-family);
      --shopify-account-font-heading-weight: var(--ns-font-heading-weight);
      --shopify-account-font-body: var(--ns-font-body-family);
      --shopify-account-font-body-weight: var(--ns-font-body-weight);
      --shopify-account-radius-base: var(--ns-radius-button);
      --shopify-account-radius-button: var(--ns-radius-button);
      --shopify-account-radius-button-small: var(--ns-radius-button);
      --shopify-account-radius-dialog: var(--ns-radius-popup);
      --shopify-account-radius-input: var(--ns-radius-input);
      --shopify-account-color-background: var(--ns-color-background);
      --shopify-account-color-background-subdued: var(--ns-color-surface-alt);
      --shopify-account-color-text: var(--ns-color-foreground);
      --shopify-account-color-text-subdued: var(--ns-color-muted);
      --shopify-account-color-border: var(--ns-color-border);
      --shopify-account-color-card-background: var(--ns-color-surface);
      --shopify-account-color-card-text: var(--ns-color-foreground);
      --shopify-account-color-control-background: var(--ns-color-surface);
      --shopify-account-color-control-text: var(--ns-color-foreground);
      --shopify-account-color-accent: var(--ns-color-primary);
      --shopify-account-color-accent-text: var(--ns-color-on-primary);
      --shopify-account-signed-in-avatar-color-background: var(--ns-color-primary);
      --shopify-account-signed-in-avatar-color-text: var(--ns-color-on-primary);

      display: inline-grid;
      place-items: center;
      color: inherit;
    }

    .ns-account-action:not(:defined) {
      min-width: var(--ns-control-block-size-40);
      min-height: var(--ns-control-block-size-40);
    }

    .ns-account-action__signed-out,
    .ns-account-action__fallback {
      display: grid;
      place-items: center;
      color: inherit;
    }

    .ns-header-actions .ns-account-action {
      --shopify-account-avatar-size: var(--ns-control-block-size-40);
    }

    .ns-mobile-header .ns-account-action {
      --shopify-account-avatar-size: var(--ns-touch-target-min);

      padding: 0;
    }

    .ns-mobile-header .ns-account-action-wrap {
      padding: 0;
    }

    .ns-account-action::part(signed-out-avatar) {
      border: 0;
      background: transparent;
      color: inherit;
    }
  }
/* END_SNIPPET:header-account-action */

/* START_SNIPPET:header-actions (INDEX:312) */
@layer components {
    .ns-header-actions {
      --ns-header-action-size: var(--ns-control-block-size-40);
      --ns-header-action-compact-size: var(--ns-control-block-size-32);

      display: flex;
      align-items: center;
      justify-content: flex-end;
      gap: var(--ns-space-16);
      white-space: nowrap;
    }

    .ns-header-actions__item {
      display: flex;
      align-items: center;
      gap: var(--ns-space-4);
      min-height: var(--ns-header-action-size);
      color: inherit;
      font-size: var(--ns-type-body-size);
      text-decoration: none;
    }

    .ns-header-actions__item svg {
      width: var(--ns-icon-size-20);
      height: var(--ns-icon-size-20);
      color: currentColor;
    }

    .ns-header-actions__cart--icon_badge {
      --ns-cart-icon-half-inline-size: 0.625rem;
      --ns-cart-icon-half-block-size: 0.625rem;
      --ns-cart-count-inline-overhang: 0.575rem;
      --ns-cart-count-block-overhang: 0.65rem;

      position: relative;
      display: grid;
      place-items: center;
      width: var(--ns-header-action-size);
      min-width: var(--ns-header-action-size);
      height: var(--ns-header-action-size);
      padding: var(--ns-space-10);
    }

    .ns-header-actions__cart--icon_badge > svg {
      width: calc(var(--ns-cart-icon-half-inline-size) + var(--ns-cart-icon-half-inline-size));
      height: calc(var(--ns-cart-icon-half-block-size) + var(--ns-cart-icon-half-block-size));
    }

    .ns-header-actions__cart-count {
      position: absolute;
      inset-block-start: calc(50% - var(--ns-cart-icon-half-block-size) - var(--ns-cart-count-block-overhang));
      inset-inline-end: calc(50% - var(--ns-cart-icon-half-inline-size) - var(--ns-cart-count-inline-overhang));
      place-items: center;
      min-width: 1rem;
      height: 1rem;
      padding-inline: var(--ns-space-4);
      border-radius: var(--ns-radius-pill, 999px);
      background: var(--ns-color-primary);
      color: var(--ns-color-on-primary);
      font-size: var(--ns-type-caption-size);
      line-height: 1;
      pointer-events: none;
    }

    .ns-header-actions__cart-count:not([hidden]) {
      display: grid;
    }

    .ns-header-actions__cart-count[hidden] {
      display: none;
    }

    .ns-header-actions__service {
      font-size: var(--ns-type-caption-size);
      font-style: italic;
    }

    .ns-desktop-header .ns-header-actions--cart-icon_badge {
      --ns-header-action-visual-gap: 0.875rem;
      --ns-header-action-inline-inset: 0.375rem;

      gap: calc(
        var(--ns-header-action-visual-gap) - var(--ns-header-action-inline-inset) - var(--ns-header-action-inline-inset)
      );
    }

    .ns-desktop-header .ns-header-actions--cart-icon_badge .ns-account-action {
      --shopify-account-avatar-size: var(--ns-header-action-compact-size);
    }

    .ns-desktop-header .ns-header-actions--cart-icon_badge :is(.ns-account-action, .ns-account-action__fallback) {
      width: var(--ns-header-action-compact-size);
      min-width: var(--ns-header-action-compact-size);
      inline-size: var(--ns-header-action-compact-size);
      min-inline-size: var(--ns-header-action-compact-size);
    }

    .ns-desktop-header .ns-header-actions--cart-icon_badge .ns-header-actions__item--icon-only {
      width: var(--ns-header-action-compact-size);
      min-width: var(--ns-header-action-compact-size);
      justify-content: center;
      padding-inline: var(--ns-header-action-inline-inset);
    }

    .ns-desktop-header .ns-header-actions--cart-icon_badge .ns-header-actions__cart--icon_badge {
      width: var(--ns-header-action-compact-size);
      min-width: var(--ns-header-action-compact-size);
      padding-inline: var(--ns-header-action-inline-inset);
    }

    .ns-desktop-header .ns-header-actions--cart-icon_badge .ns-header-actions__service {
      padding-inline-end: var(--ns-header-action-inline-inset);
    }

    .ns-header-actions__localization {
      font-size: var(--ns-type-body-size);
    }

    .ns-desktop-header
      .ns-header-actions--cart-icon_badge
      .ns-header-actions__localization
      .ns-localization__disclosure
      summary {
      padding-inline-start: var(--ns-header-action-inline-inset);
    }
  }
/* END_SNIPPET:header-actions */

/* START_SNIPPET:header-categories (INDEX:314) */
@layer components {
    .ns-header-categories {
      position: relative;
      align-self: stretch;
      width: 16.875rem;
      background: var(--ns-color-primary);
      color: var(--ns-color-on-primary);
    }

    .ns-header-categories summary {
      display: flex;
      align-items: center;
      gap: var(--ns-space-8);
      min-height: var(--ns-header-nav-height, var(--ns-space-40));
      padding-inline: var(--ns-space-10);
      cursor: pointer;
      list-style: none;
      text-transform: uppercase;
    }

    .ns-header-categories summary::-webkit-details-marker {
      display: none;
    }

    .ns-header-categories summary svg {
      width: 1.25rem;
      height: 1.25rem;
    }

    .ns-header-categories__panel {
      position: absolute;
      z-index: 40;
      inset-block-start: 100%;
      inset-inline-start: 0;
      width: 16.875rem;
      padding: var(--ns-space-10) var(--ns-space-20) var(--ns-space-20);
      border: 1px solid var(--ns-categories-panel-border);
      border-radius: var(--ns-radius-content-panel, var(--ns-radius-2xl));
      background: var(--ns-categories-panel-background);
      color: var(--ns-categories-panel-foreground);
      box-shadow: 0 0.375rem 1.5rem color-mix(in srgb, var(--ns-categories-panel-foreground) 12%, transparent);
    }

    .ns-header-categories__list {
      display: grid;
      margin: 0;
      padding: 0;
      list-style: none;
    }

    .ns-header-categories__list li {
      border-block-end: 1px solid var(--ns-categories-panel-border);
    }

    .ns-header-categories__link {
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      align-items: center;
      gap: var(--ns-space-10);
      min-height: 2.25rem;
      color: inherit;
      text-decoration: none;
      text-transform: uppercase;
    }

    .ns-header-categories__link--with-icon {
      grid-template-columns: var(--ns-space-20) minmax(0, 1fr) auto;
    }

    .ns-header-categories__title {
      min-width: 0;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }

    .ns-header-categories__chevron svg {
      width: var(--ns-header-menu-arrow-size, 0.7rem);
      color: var(--ns-categories-panel-muted);
      transform: rotate(-90deg);
      transition: transform 160ms cubic-bezier(0.22, 1, 0.36, 1);
    }

    .ns-header-categories__link:is(:hover, :focus-visible) .ns-header-categories__chevron svg {
      transform: translateX(0.1rem) rotate(-90deg);
    }

    @media (prefers-reduced-motion: reduce) {
      .ns-header-categories__chevron svg {
        transition: none;
      }
    }
  }
/* END_SNIPPET:header-categories */

/* START_SNIPPET:header-info-bar (INDEX:315) */
@layer components {
    .ns-header-info-bar {
      position: relative;
      z-index: 20;
      min-height: 2.1875rem;
      background: var(--ns-color-background);
      box-shadow: inset 0 -1px var(--ns-color-border);
      color: var(--ns-color-muted);
      font-size: var(--ns-type-label-size);
      line-height: var(--ns-type-label-line-height);
    }

    .ns-header-info-bar--localization {
      min-height: var(--ns-control-block-size-40);
    }

    .ns-header-info-bar__inner {
      display: flex;
      align-items: center;
      justify-content: space-between;
      width: var(--ns-content-width);
      min-height: 2.1875rem;
      margin-inline: auto;
    }

    .ns-header-info-bar--localization .ns-header-info-bar__inner {
      min-height: var(--ns-control-block-size-40);
    }

    .ns-header-info-bar__cluster,
    .ns-header-info-bar__contact,
    .ns-header-info-bar__socials,
    .ns-header-info-bar__account {
      display: flex;
      align-items: center;
    }

    .ns-header-info-bar__cluster {
      gap: var(--ns-space-20);
    }

    .ns-header-info-bar__cluster--secondary {
      color: var(--ns-color-foreground);
    }

    .ns-header-info-bar a {
      color: inherit;
      text-decoration: none;
    }

    .ns-header-info-bar__account {
      gap: var(--ns-space-4);
    }

    .ns-header-info-bar__account-separator {
      color: var(--ns-color-muted);
    }

    .ns-header-info-bar__contact {
      gap: var(--ns-space-8);
      white-space: nowrap;
    }

    .ns-header-info-bar__contact strong {
      color: var(--ns-color-foreground);
    }

    .ns-header-info-bar__icon,
    .ns-header-info-bar__socials a {
      display: grid;
      place-items: center;
      width: 0.875rem;
      height: 0.875rem;
      flex: 0 0 auto;
    }

    .ns-header-info-bar__icon svg {
      width: 100%;
      height: 100%;
    }

    .ns-header-info-bar__socials {
      --ns-social-icon-size: 0.875rem;

      gap: var(--ns-space-10);
      padding: 0;
      list-style: none;
    }

    .ns-header-info-bar__localization {
      padding-inline-start: var(--ns-space-20);
      border-inline-start: 1px solid var(--ns-color-border);
    }

    .ns-header-info-bar .ns-header-info-bar__localization summary {
      min-height: 2.1875rem;
    }

    @media (max-width: 1024px) {
      .ns-header-info-bar {
        display: none;
      }
    }
  }
/* END_SNIPPET:header-info-bar */

/* START_SNIPPET:header-menu (INDEX:316) */
@layer components {
    .ns-header-nav,
    .ns-header-nav__list {
      min-width: 0;
    }

    .ns-header-nav__list {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      align-content: center;
      gap: var(--ns-header-nav-gap, var(--ns-space-12));
      margin: 0;
      padding: 0;
      list-style: none;
    }

    .ns-header-nav__item {
      position: relative;
      display: flex;
      align-items: center;
      min-height: var(--ns-header-nav-height, var(--ns-space-40));
    }

    .ns-header-nav__link {
      color: inherit;
      text-decoration: none;
    }

    .ns-header-nav__link {
      display: flex;
      align-items: center;
      gap: var(--ns-space-8);
      min-height: inherit;
      font-size: var(--ns-type-navigation-size);
      font-weight: var(--ns-type-weight-interface);
      letter-spacing: 0.05em;
      text-transform: uppercase;
    }

    .ns-desktop-header--search-centered .ns-header-nav__list {
      padding-inline: var(--ns-space-12);
    }

    .ns-desktop-header--search-centered .ns-header-nav__item:is(:hover, :focus-within, [data-ns-open]) {
      z-index: 1;
      background: color-mix(in srgb, var(--ns-header-nav-foreground) 32%, transparent);
      box-shadow:
        0.0625rem 0 color-mix(in srgb, var(--ns-header-nav-foreground) 32%, transparent),
        -0.6875rem 0 color-mix(in srgb, var(--ns-header-nav-foreground) 32%, transparent);
      color: var(--ns-header-nav-foreground);
    }

    .ns-desktop-header--search-centered
      .ns-header-nav__item:is(:hover, :focus-within, [data-ns-open])
      > .ns-header-nav__link {
      color: inherit;
    }

    .ns-header-nav__toggle {
      display: grid;
      place-items: center;
      width: 1.25rem;
      min-height: var(--ns-header-nav-height, var(--ns-space-40));
      padding: 0;
      border: 0;
      background: transparent;
      color: inherit;
      cursor: pointer;
    }

    .ns-header-nav__toggle[hidden] {
      display: none;
    }

    .ns-header-nav__toggle svg {
      width: var(--ns-header-menu-arrow-size, 0.7rem);
      transition: transform 160ms cubic-bezier(0.22, 1, 0.36, 1);
    }

    .ns-header-nav__item:is(:hover, :focus-within, [data-ns-open]) > .ns-header-nav__toggle svg {
      transform: translateY(0.1rem);
    }

    .ns-header-dropdown {
      position: absolute;
      z-index: 20;
      inset: 100% auto auto 0;
      display: none;
      min-width: 14rem;
      padding: var(--ns-space-20);
      border: 1px solid var(--ns-color-border);
      border-radius: var(--ns-radius-content-panel, var(--ns-radius-2xl));
      background: var(--ns-color-background);
      color: var(--ns-color-foreground);
      box-shadow: 0 0.375rem 1.5rem color-mix(in srgb, var(--ns-navigation-shadow-color) 12%, transparent);
      clip-path: inset(0 -1.5rem -1.5rem);
      overflow-y: auto;
      overscroll-behavior-block: contain;
    }

    .ns-header-dropdown__list {
      min-inline-size: 0;
    }

    .ns-header-dropdown__item {
      min-width: 0;
    }

    .ns-header-dropdown__list .ns-header-dropdown__list {
      padding-inline-start: var(--ns-space-16);
    }

    .ns-header-nav__item:is(:hover, :focus-within, [data-ns-open]) > .ns-header-dropdown {
      display: block;
    }

    .ns-header-nav__item[data-ns-has-mega] > .ns-header-dropdown {
      display: none;
    }

    .ns-header-link-label {
      align-self: flex-start;
      margin: var(--ns-space-4) 0 0 var(--ns-space-4);
      background: var(--ns-color-highlight);
      color: var(--ns-color-on-highlight);
    }

    .ns-header-link-label[data-ns-label-tone='highlight'],
    .ns-header-link-label[data-ns-label-tone='accent'] {
      background: var(--ns-color-highlight);
      color: var(--ns-color-on-highlight);
    }

    .ns-header-link-label[data-ns-label-tone='info'] {
      background: var(--ns-color-info);
      color: var(--ns-color-on-info);
    }

    .ns-header-dropdown-host {
      --ns-header-dropdown-motion-distance: clamp(3.6rem, 33.3%, 5.625rem);

      position: absolute;
      z-index: 21;
      inset: 0 auto auto 0;
      overflow: hidden;
      inline-size: var(--ns-dropdown-width);
      block-size: var(--ns-dropdown-height);
      border: 0;
      border-radius: var(--ns-radius-content-panel, var(--ns-radius-2xl));
      background: var(--ns-color-background);
      color: var(--ns-color-foreground);
      box-shadow:
        inset 0 0 0 1px var(--ns-color-border),
        0 0.375rem 1.5rem color-mix(in srgb, var(--ns-navigation-shadow-color) 12%, transparent);
      clip-path: inset(0 -1.5rem -1.5rem);
      contain: layout paint;
      transform: translate3d(var(--ns-dropdown-x), var(--ns-dropdown-y), 0);
    }

    .ns-header-dropdown-host[hidden] {
      display: none;
    }

    .ns-header-dropdown-host > .ns-header-dropdown:not([hidden]) {
      position: absolute;
      inset: 0 auto auto 0;
      display: block;
      inline-size: var(--ns-dropdown-panel-width);
      min-inline-size: 14rem;
      max-inline-size: calc(100vw - 1rem);
      max-block-size: 100%;
      padding: var(--ns-space-20);
      border: 0;
      background: transparent;
      box-shadow: none;
      overflow-y: hidden;
      overflow-wrap: anywhere;
    }

    .ns-header-dropdown-host > .ns-header-dropdown[data-ns-submenu-scroll]:not([hidden]) {
      overflow-y: auto;
    }

    .ns-header-dropdown-host > .ns-header-dropdown[data-ns-dropdown-measuring] {
      inline-size: max-content;
      max-block-size: none;
      overflow-y: visible;
    }

    .ns-header-dropdown-host[data-ns-dropdown-motion='morph'] {
      --ns-header-dropdown-travel: calc(var(--ns-dropdown-to-x) - var(--ns-dropdown-from-x));

      transition-duration: 250ms;
      transition-property: transform, inline-size, block-size;
      transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
    }

    .ns-header-dropdown-host[data-ns-surface-motion='opening'] {
      transform-origin: center top;
      animation: ns-header-dropdown-surface-in 150ms cubic-bezier(0.25, 0.1, 0.25, 1) both;
    }

    .ns-header-dropdown-host[data-ns-surface-motion='closing'] {
      pointer-events: none;
      transform-origin: center top;
      animation: ns-header-dropdown-surface-out 150ms cubic-bezier(0.25, 0.1, 0.25, 1) both;
    }

    .ns-header-dropdown-host > .ns-header-dropdown[data-ns-motion='from-end'] {
      animation: ns-header-dropdown-content-from-end 250ms cubic-bezier(0, 0, 0.2, 1) both;
    }

    .ns-header-dropdown-host > .ns-header-dropdown[data-ns-motion='from-start'] {
      animation: ns-header-dropdown-content-from-start 250ms cubic-bezier(0, 0, 0.2, 1) both;
    }

    .ns-header-dropdown-host > .ns-header-dropdown[data-ns-motion='to-end'] {
      animation: ns-header-dropdown-content-to-end 250ms cubic-bezier(0, 0, 0.2, 1) both;
    }

    .ns-header-dropdown-host > .ns-header-dropdown[data-ns-motion='to-start'] {
      animation: ns-header-dropdown-content-to-start 250ms cubic-bezier(0, 0, 0.2, 1) both;
    }

    .ns-header-dropdown[data-ns-content-motion='entering'] [data-ns-mega-menu-motion-item] {
      animation: ns-header-dropdown-item-enter 400ms cubic-bezier(0.25, 0.1, 0.25, 1) both;
      animation-delay: calc(var(--ns-mega-menu-group-index, 0) * 35ms + var(--ns-mega-menu-item-index, 0) * 25ms);
    }

    @keyframes ns-header-dropdown-surface-in {
      from {
        opacity: 0;
        transform: translate3d(var(--ns-dropdown-x), var(--ns-dropdown-y), 0) perspective(2000px) rotateX(-20deg)
          scale(0.92);
      }

      to {
        opacity: 1;
        transform: translate3d(var(--ns-dropdown-x), var(--ns-dropdown-y), 0) perspective(2000px) rotateX(0deg) scale(1);
      }
    }

    @keyframes ns-header-dropdown-surface-out {
      from {
        opacity: 1;
        transform: translate3d(var(--ns-dropdown-x), var(--ns-dropdown-y), 0) perspective(2000px) rotateX(0deg) scale(1);
      }

      to {
        opacity: 0;
        transform: translate3d(var(--ns-dropdown-x), var(--ns-dropdown-y), 0) perspective(2000px) rotateX(-12deg)
          scale(0.98);
      }
    }

    @keyframes ns-header-dropdown-content-from-end {
      from {
        opacity: 0;
        transform: translateX(calc(var(--ns-header-dropdown-travel) + var(--ns-header-dropdown-motion-distance)));
      }
    }

    @keyframes ns-header-dropdown-content-from-start {
      from {
        opacity: 0;
        transform: translateX(calc(var(--ns-header-dropdown-travel) - var(--ns-header-dropdown-motion-distance)));
      }
    }

    @keyframes ns-header-dropdown-content-to-end {
      to {
        opacity: 0;
        transform: translateX(calc(0px - var(--ns-header-dropdown-travel) + var(--ns-header-dropdown-motion-distance)));
      }
    }

    @keyframes ns-header-dropdown-content-to-start {
      to {
        opacity: 0;
        transform: translateX(calc(0px - var(--ns-header-dropdown-travel) - var(--ns-header-dropdown-motion-distance)));
      }
    }

    @keyframes ns-header-dropdown-item-enter {
      from {
        opacity: 0;
        filter: blur(2px);
        transform: translateY(4px);
      }

      to {
        opacity: 1;
        filter: blur(0);
        transform: translateY(0);
      }
    }

    @media (prefers-reduced-motion: reduce) {
      .ns-header-nav__toggle svg,
      .ns-header-dropdown-host,
      .ns-header-dropdown-host > .ns-header-dropdown,
      .ns-header-dropdown[data-ns-content-motion='entering'] [data-ns-mega-menu-motion-item] {
        opacity: 1;
        filter: none;
        transform: none;
        transition: none;
        animation: none;
      }
    }

    @media (max-width: 1024px) {
      .ns-header-dropdown-host {
        display: none;
      }
    }
  }
/* END_SNIPPET:header-menu */

/* START_SNIPPET:icon (INDEX:318) */
@layer components {
    .ns-icon {
      display: inline-grid;
      flex: 0 0 auto;
      place-items: center;
      width: 1em;
      height: 1em;
      color: inherit;
      line-height: 1;
    }

    .ns-icon > svg {
      display: block;
      width: 100%;
      height: 100%;
    }
  }
/* END_SNIPPET:icon */

/* START_SNIPPET:image (INDEX:322) */
@layer components {
    .ns-image {
      display: block;
      position: relative;
      overflow: hidden;
      width: 100%;
      height: auto;
    }

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

/* START_SNIPPET:listing-sticky-bar (INDEX:332) */
@layer components {
    .ns-listing-sticky-bar__controls {
      display: flex;
      align-items: center;
      gap: var(--ns-space-20);
      min-inline-size: 0;
    }

    .ns-listing-sticky-bar__filter {
      display: none;
      flex: 0 0 auto;
      align-items: center;
      justify-content: center;
      gap: var(--ns-space-12);
      min-block-size: 3rem;
      min-inline-size: 9.5rem;
      padding-inline: var(--ns-space-20);
      color: var(--ns-color-on-primary);
      background: var(--ns-color-primary);
      border: 1px solid var(--ns-color-primary);
      border-radius: var(--ns-radius-button, 0px);
      cursor: pointer;
      text-transform: uppercase;
    }

    .ns-listing-sticky-bar__filter svg {
      inline-size: var(--ns-icon-size-sm);
      block-size: var(--ns-icon-size-sm);
    }

    .ns-listing-sticky-bar__card-view {
      display: inline-flex;
      flex: 0 0 auto;
      align-items: center;
      gap: var(--ns-space-8);
      min-block-size: 2.75rem;
      font-size: var(--ns-type-body-small-size);
      line-height: 1.25;
      cursor: pointer;
    }

    .ns-listing-sticky-bar__sort {
      display: block;
      flex: 0 1 15rem;
      min-inline-size: 11rem;
      inline-size: clamp(11rem, 18vw, 15rem);
    }

    .ns-listing-sticky-bar__select {
      display: block;
      min-inline-size: 0;
      inline-size: 100%;
    }

    .ns-listing-sticky-bar__select .ns-select__trigger {
      min-block-size: 3rem;
      background: var(--ns-color-surface-alt);
    }

    .ns-listing-sticky-bar__status {
      flex: 1 1 auto;
      min-inline-size: 9rem;
      margin: 0;
      color: var(--ns-color-muted);
      font-size: var(--ns-type-body-small-size);
      line-height: 1.25;
      text-align: center;
      white-space: nowrap;
    }

    .ns-listing-sticky-bar .ns-listing-topbar__grid-controls {
      flex: 0 0 auto;
    }

    @media (min-width: 64.0625rem) {
      .ns-listing-sticky-bar__filter--desktop {
        display: inline-flex;
      }
    }

    @media (max-width: 64rem) {
      .ns-listing-sticky-bar__controls {
        display: grid;
        grid-template-areas:
          'filter sort sort'
          'card status layout';
        grid-template-columns: minmax(7.5rem, auto) minmax(0, 1fr) auto;
        gap: var(--ns-space-10) var(--ns-space-12);
      }

      .ns-listing-sticky-bar__filter--mobile {
        display: inline-flex;
        grid-area: filter;
      }

      .ns-listing-sticky-bar__sort {
        grid-area: sort;
        min-inline-size: 0;
        inline-size: 100%;
      }

      .ns-listing-sticky-bar__card-view {
        grid-area: card;
        min-inline-size: 0;
      }

      .ns-listing-sticky-bar__status {
        grid-area: status;
        min-inline-size: 0;
        white-space: normal;
      }

      .ns-listing-sticky-bar .ns-listing-topbar__grid-controls {
        grid-area: layout;
        justify-self: end;
      }

      .ns-listing-sticky-bar__controls--without-filter .ns-listing-sticky-bar__sort {
        grid-column: 1 / -1;
        grid-row: 1;
      }

      .ns-listing-sticky-bar__controls--without-sort .ns-listing-sticky-bar__filter--mobile {
        grid-column: 1 / -1;
      }
    }

    @media (max-width: 47.99rem) {
      .ns-listing-sticky-bar .ns-bottom-surface__inner {
        padding-inline: var(--ns-space-12);
      }

      .ns-listing-sticky-bar__filter {
        min-inline-size: 0;
        padding-inline: var(--ns-space-12);
      }

      .ns-listing-sticky-bar__card-view,
      .ns-listing-sticky-bar__status {
        font-size: var(--ns-type-caption-size);
      }
    }
  }
/* END_SNIPPET:listing-sticky-bar */

/* START_SNIPPET:localization-controls (INDEX:335) */
@layer components {
    .ns-localization,
    .ns-localization form {
      display: block;
      margin: 0;
    }

    .ns-localization--dropdown form {
      display: flex;
      align-items: center;
      gap: var(--ns-space-12);
    }

    .ns-localization__disclosure {
      position: relative;
    }

    .ns-localization__disclosure summary {
      display: flex;
      align-items: center;
      gap: var(--ns-space-4);
      min-height: var(--ns-control-block-size-40);
      color: inherit;
      cursor: pointer;
      list-style: none;
      white-space: nowrap;
    }

    .ns-localization__disclosure summary::-webkit-details-marker {
      display: none;
    }

    .ns-localization__disclosure summary svg {
      width: 0.625rem;
      transition: transform 120ms ease;
    }

    .ns-localization__disclosure[open] summary svg {
      transform: rotate(180deg);
    }

    .ns-localization__menu {
      position: absolute;
      z-index: 50;
      inset-block-start: 100%;
      inset-inline-end: 0;
      display: grid;
      min-width: 10.5625rem;
      padding-block: var(--ns-space-16);
      overflow: hidden auto;
      border-radius: var(--ns-radius-content-panel, var(--ns-radius-2xl));
      background: var(--ns-localization-menu-background);
      color: var(--ns-localization-menu-muted);
      box-shadow: 0 0 0.625rem color-mix(in srgb, var(--ns-localization-menu-foreground) 20%, transparent);
    }

    .ns-localization__menu button {
      width: calc(100% - 1.75rem);
      min-height: 1.25rem;
      margin-inline: var(--ns-space-14);
      padding: 0 var(--ns-space-6);
      border: 0;
      background: transparent;
      color: inherit;
      font: inherit;
      line-height: 1.25rem;
      text-align: start;
      white-space: nowrap;
      cursor: pointer;
    }

    .ns-localization__menu button:is(:hover, :focus-visible, [aria-current='true']) {
      background: var(--ns-localization-menu-surface);
      color: var(--ns-localization-menu-foreground);
    }

    .ns-localization--list form {
      display: grid;
      gap: var(--ns-space-24);
    }

    .ns-localization__group p {
      margin: 0 0 var(--ns-space-12);
      color: var(--ns-color-muted);
      font-size: var(--ns-type-caption-size);
    }

    .ns-localization__list {
      display: grid;
      gap: var(--ns-space-8);
    }

    .ns-localization__list button {
      justify-content: flex-start;
      min-height: var(--ns-control-block-size-32);
      padding: 0;
      border: 0;
      background: transparent;
      color: var(--ns-color-muted);
      font: inherit;
      text-align: start;
      cursor: pointer;
    }

    .ns-localization__list button[aria-current='true'] {
      color: var(--ns-color-foreground);
    }
  }
/* END_SNIPPET:localization-controls */

/* START_SNIPPET:mobile-header-shell (INDEX:338) */
@layer components {
    .ns-mobile-header {
      position: relative;
      display: block;
      border-block-end: 1px solid var(--ns-color-border);
      background: var(--ns-color-background);
      color: var(--ns-color-foreground);
    }

    .ns-mobile-header__bar {
      display: grid;
      grid-template-columns: 1fr auto 1fr;
      align-items: center;
      width: var(--ns-content-width);
      margin-inline: auto;
      min-height: var(--ns-mobile-header-height, var(--ns-space-40));
      padding-inline: max(var(--ns-space-4), var(--ns-safe-area-inset-inline-start))
        max(var(--ns-space-4), var(--ns-safe-area-inset-inline-end));
    }

    .ns-mobile-header[data-ns-header-transparent='true'] {
      border-color: transparent;
      background: transparent;
    }

    .ns-mobile-header__menu-trigger {
      justify-self: start;
    }

    .ns-mobile-header--inline .ns-mobile-header__bar {
      grid-template-columns: auto minmax(0, 1fr) auto;
      column-gap: var(--ns-space-8);
    }

    .ns-mobile-header--inline .ns-mobile-header__logo {
      justify-self: start;
    }

    .ns-mobile-header__logo {
      display: block;
      width: min(var(--ns-mobile-logo-width), 100%);
      color: inherit;
    }

    .ns-mobile-header__logo-image {
      display: block;
      width: 100%;
      max-height: 1.75rem;
      object-fit: contain;
    }

    .ns-mobile-header__shop-name {
      display: block;
      overflow: hidden;
      color: currentcolor;
      font-size: var(--ns-type-navigation-size);
      font-weight: var(--ns-type-weight-heading);
      line-height: 1;
      text-overflow: ellipsis;
      white-space: nowrap;
    }

    .ns-mobile-header__actions {
      display: flex;
      align-items: center;
      justify-content: flex-end;
      justify-self: end;
    }

    .ns-mobile-header__action {
      position: relative;
      display: grid;
      place-items: center;
      width: var(--ns-touch-target-min);
      min-width: var(--ns-touch-target-min);
      height: var(--ns-touch-target-min);
      padding: var(--ns-space-10);
      border: 0;
      background: transparent;
      color: inherit;
      cursor: pointer;
    }

    .ns-mobile-header__action svg {
      display: block;
      width: 1.25rem;
      height: 1.25rem;
    }

    .ns-mobile-header__cart {
      --ns-cart-icon-half-inline-size: 0.625rem;
      --ns-cart-icon-half-block-size: 0.625rem;
      --ns-cart-count-inline-overhang: 0.575rem;
      --ns-cart-count-block-overhang: 0.65rem;
    }

    .ns-mobile-header__cart > svg {
      width: calc(var(--ns-cart-icon-half-inline-size) + var(--ns-cart-icon-half-inline-size));
      height: calc(var(--ns-cart-icon-half-block-size) + var(--ns-cart-icon-half-block-size));
    }

    .ns-mobile-header__cart > [data-ns-cart-count] {
      position: absolute;
      inset-block-start: calc(50% - var(--ns-cart-icon-half-block-size) - var(--ns-cart-count-block-overhang));
      inset-inline-end: calc(50% - var(--ns-cart-icon-half-inline-size) - var(--ns-cart-count-inline-overhang));
      display: grid;
      place-items: center;
      min-width: 1rem;
      height: 1rem;
      padding-inline: var(--ns-space-4);
      border-radius: var(--ns-radius-pill, 999px);
      background: var(--ns-color-primary);
      color: var(--ns-color-on-primary);
      font-size: var(--ns-type-caption-size);
      line-height: 1;
      pointer-events: none;
    }

    @media (min-width: 1025px) {
      .ns-mobile-header {
        display: none;
      }
    }

    @media (max-width: 420px) {
      .ns-mobile-header__action {
        width: 2.25rem;
        min-width: 2.25rem;
      }

      .ns-mobile-header__cart {
        --ns-cart-icon-half-inline-size: 0.5rem;
      }
    }
  }
/* END_SNIPPET:mobile-header-shell */

/* START_SNIPPET:mobile-navigation (INDEX:341) */
@layer components {
    .ns-mobile-navigation,
    .ns-mobile-navigation__viewport {
      --ns-header-menu-arrow-size: 0.7rem;

      display: block;
      min-height: 100%;
    }

    .ns-mobile-navigation__viewport {
      position: relative;
      min-height: 100dvh;
      overflow: hidden;
      background: var(--ns-color-background);
    }

    .ns-mobile-navigation__panel {
      position: absolute;
      inset: 0;
      min-height: 100%;
      overflow: hidden;
      background: var(--ns-color-background);
      transform: translateX(var(--ns-translate-inline-next));
    }

    .ns-mobile-navigation__panel-frame {
      min-height: 100%;
      padding: max(var(--ns-space-64), calc(env(safe-area-inset-top) + var(--ns-space-48))) var(--ns-space-20)
        max(var(--ns-space-24), env(safe-area-inset-bottom));
      overflow: hidden auto;
      overscroll-behavior: contain;
      transform: translateX(-12%);
    }

    .ns-mobile-navigation__panel[data-ns-state='current'] {
      transform: translateX(0);
    }

    .ns-mobile-navigation__panel[data-ns-state='current'] > .ns-mobile-navigation__panel-frame {
      transform: translateX(0);
    }

    .ns-mobile-navigation__panel[data-ns-state='previous'] {
      transform: translateX(var(--ns-translate-inline-previous));
    }

    .ns-mobile-navigation__panel[data-ns-state='previous'] > .ns-mobile-navigation__panel-frame {
      transform: translateX(12%);
    }

    .ns-mobile-navigation[data-ns-mobile-motion='animate'] .ns-mobile-navigation__panel,
    .ns-mobile-navigation[data-ns-mobile-motion='animate'] .ns-mobile-navigation__panel-frame {
      transition: transform 280ms cubic-bezier(0.22, 1, 0.36, 1);
    }

    .ns-mobile-navigation__list {
      display: grid;
      gap: 0;
      margin: 0;
      padding: 0;
      list-style: none;
    }

    .ns-mobile-navigation__item {
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      align-items: center;
      min-height: 2.25rem;
    }

    .ns-mobile-navigation__item a,
    .ns-mobile-navigation__item button,
    .ns-mobile-navigation__back {
      color: var(--ns-color-foreground);
    }

    .ns-mobile-navigation__item a {
      display: flex;
      align-items: center;
      align-self: stretch;
      gap: var(--ns-space-12);
      font-size: var(--ns-type-navigation-size);
      font-weight: var(--ns-type-weight-interface);
      letter-spacing: 0.05em;
      text-decoration: none;
      text-transform: uppercase;
    }

    .ns-mobile-navigation__item button,
    .ns-mobile-navigation__back {
      display: flex;
      align-items: center;
      min-width: var(--ns-touch-target-min);
      min-height: var(--ns-touch-target-min);
      padding: var(--ns-space-8);
      border: 0;
      background: transparent;
      cursor: pointer;
    }

    .ns-mobile-navigation__item button svg {
      width: var(--ns-header-menu-arrow-size);
      transform: rotate(-90deg);
    }

    .ns-mobile-navigation__back {
      gap: var(--ns-space-8);
      width: 100%;
      margin-block-end: var(--ns-space-24);
      border-block-end: 1px solid var(--ns-color-border);
      font-size: var(--ns-type-navigation-size);
      font-weight: var(--ns-type-weight-interface);
      text-align: start;
    }

    .ns-mobile-navigation__back svg {
      width: var(--ns-header-menu-arrow-size);
    }

    .ns-mobile-navigation__item--view-all {
      margin-block-end: var(--ns-space-8);
      border-block-end: 1px solid var(--ns-color-border);
    }

    .ns-mobile-navigation__item--view-all a {
      color: var(--ns-color-muted);
      letter-spacing: normal;
      text-transform: none;
    }

    .ns-mobile-navigation__banners,
    .ns-mobile-navigation__banner-group {
      display: grid;
      gap: var(--ns-space-12);
      min-width: 0;
    }

    .ns-mobile-navigation__banners {
      margin-block-start: var(--ns-space-24);
    }

    .ns-mobile-navigation__secondary {
      margin-block-start: var(--ns-space-32);
      padding-block-start: var(--ns-space-24);
      border-block-start: 1px solid var(--ns-color-border);
    }

    .ns-mobile-navigation__list--secondary .ns-mobile-navigation__item a {
      letter-spacing: normal;
      text-transform: none;
    }

    .ns-mobile-navigation__localization {
      margin: var(--ns-space-32) calc(var(--ns-space-20) * -1) calc(var(--ns-space-24) * -1);
      padding: var(--ns-space-24) var(--ns-space-20) max(var(--ns-space-24), env(safe-area-inset-bottom));
      background: var(--ns-color-surface);
    }

    @media (prefers-reduced-motion: reduce) {
      .ns-mobile-navigation[data-ns-mobile-motion='animate'] .ns-mobile-navigation__panel,
      .ns-mobile-navigation[data-ns-mobile-motion='animate'] .ns-mobile-navigation__panel-frame {
        transition: none;
      }
    }
  }
/* END_SNIPPET:mobile-navigation */

/* START_SNIPPET:overlay (INDEX:346) */
@layer components {
    .ns-overlay {
      display: contents;
      color: var(--ns-color-foreground);
      --ns-overlay-closed-transform: translate3d(0, 25vh, 0);
      --ns-overlay-start-travel: -100%;
      --ns-overlay-end-travel: 100%;
      --ns-overlay-start-inset: 0 auto 0 0;
      --ns-overlay-end-inset: 0 0 0 auto;
      --ns-overlay-panel-duration: 0ms;
      --ns-overlay-backdrop-duration: 0ms;
      --ns-overlay-motion-easing: linear;
      --ns-overlay-backdrop-blur: 32px;
      --ns-overlay-dialog-cursor: auto;
    }

    .ns-overlay:dir(rtl) {
      --ns-overlay-start-travel: 100%;
      --ns-overlay-end-travel: -100%;
      --ns-overlay-start-inset: 0 0 0 auto;
      --ns-overlay-end-inset: 0 auto 0 0;
    }

    .ns-overlay[data-ns-state='opening'] {
      --ns-overlay-panel-duration: 400ms;
      --ns-overlay-backdrop-duration: 600ms;
      --ns-overlay-motion-easing: cubic-bezier(0, 0, 0.2, 1);
    }

    .ns-overlay[data-ns-state='closing'] {
      --ns-overlay-panel-duration: 250ms;
      --ns-overlay-backdrop-duration: 400ms;
      --ns-overlay-motion-easing: cubic-bezier(0.4, 0, 0.5, 1);
    }

    .ns-overlay__dialog {
      position: fixed;
      z-index: var(--ns-overlay-layer, 1000);
      inset: 0;
      width: 100dvw;
      max-width: none;
      height: 100dvh;
      max-height: none;
      margin: 0;
      padding: 0;
      overflow: clip;
      border: 0;
      background: transparent;
      color: inherit;
      cursor: var(--ns-overlay-dialog-cursor, auto);
      pointer-events: auto;
    }

    .ns-overlay__dialog:focus {
      outline: none;
    }

    .ns-overlay__dialog::backdrop {
      background-color: color-mix(
        in srgb,
        var(--ns-overlay-backdrop-color, var(--ns-color-foreground, CanvasText)) var(--ns-overlay-backdrop-opacity, 42%),
        transparent
      );
      -webkit-backdrop-filter: blur(0);
      backdrop-filter: blur(0);
      opacity: 0;
      transition:
        opacity var(--ns-overlay-backdrop-duration) var(--ns-overlay-motion-easing),
        -webkit-backdrop-filter var(--ns-overlay-backdrop-duration) var(--ns-overlay-motion-easing),
        backdrop-filter var(--ns-overlay-backdrop-duration) var(--ns-overlay-motion-easing);
    }

    .ns-overlay[data-ns-state='opening'] .ns-overlay__dialog::backdrop,
    .ns-overlay[data-ns-state='open'] .ns-overlay__dialog::backdrop {
      -webkit-backdrop-filter: blur(var(--ns-overlay-backdrop-blur));
      backdrop-filter: blur(var(--ns-overlay-backdrop-blur));
      opacity: 1;
    }

    .ns-overlay[data-ns-state='closing'] .ns-overlay__dialog {
      pointer-events: none;
    }

    .ns-overlay[data-ns-stack-position='underlay'] .ns-overlay__dialog {
      pointer-events: none;
    }

    .ns-overlay:not([data-ns-stack-position='top']) .ns-overlay__dialog::backdrop {
      -webkit-backdrop-filter: blur(0);
      backdrop-filter: blur(0);
      opacity: 0;
      transition: none;
    }

    .ns-overlay[data-ns-state='closing'][data-ns-backdrop-exit='fade'] .ns-overlay__dialog::backdrop {
      transition:
        opacity var(--ns-overlay-backdrop-duration) var(--ns-overlay-motion-easing),
        -webkit-backdrop-filter var(--ns-overlay-backdrop-duration) var(--ns-overlay-motion-easing),
        backdrop-filter var(--ns-overlay-backdrop-duration) var(--ns-overlay-motion-easing);
    }

    .ns-overlay[data-ns-state='closing'][data-ns-backdrop-exit='keep'] .ns-overlay__dialog::backdrop {
      -webkit-backdrop-filter: blur(var(--ns-overlay-backdrop-blur));
      backdrop-filter: blur(var(--ns-overlay-backdrop-blur));
      opacity: 1;
      transition: none;
    }

    .ns-overlay[data-ns-backdrop='transparent'] .ns-overlay__dialog::backdrop {
      background-color: transparent;
      -webkit-backdrop-filter: blur(0);
      backdrop-filter: blur(0);
      opacity: 0;
      transition: none;
    }

    .ns-overlay[data-ns-backdrop='transparent'][data-ns-dismissible='true'] {
      --ns-overlay-dialog-cursor: pointer;
    }

    .ns-overlay[data-ns-modality='nonmodal'] .ns-overlay__dialog {
      pointer-events: none;
    }

    .ns-overlay[data-ns-modality='nonmodal'] .ns-overlay__panel {
      pointer-events: auto;
    }

    .ns-overlay__panel {
      position: absolute;
      inset: var(--ns-overlay-panel-inset-value);
      display: flex;
      flex-direction: column;
      width: min(var(--ns-overlay-inline-size), 100dvw);
      height: min(var(--ns-overlay-block-size), 100dvh);
      max-width: 100dvw;
      max-height: 100dvh;
      overflow: hidden;
      background: var(--ns-overlay-panel-background, var(--ns-color-background));
      color: var(--ns-overlay-panel-color, var(--ns-color-foreground));
      cursor: auto;
      box-shadow: 0 0.5rem 2rem color-mix(in srgb, var(--ns-color-foreground) 16%, transparent);
      isolation: isolate;
      translate: var(--ns-overlay-panel-translate-value);
      opacity: 0;
      transform: var(--ns-overlay-closed-transform);
      --ns-overlay-closed-transform: var(--ns-overlay-panel-closed-transform-value);
      transition:
        transform var(--ns-overlay-panel-duration) var(--ns-overlay-motion-easing),
        opacity var(--ns-overlay-panel-duration) var(--ns-overlay-motion-easing);
    }

    .ns-overlay[data-ns-state='opening'] .ns-overlay__panel,
    .ns-overlay[data-ns-state='open'] .ns-overlay__panel {
      opacity: 1;
      transform: translate3d(0, 0, 0);
    }

    .ns-overlay[data-ns-state='opening'] .ns-overlay__panel,
    .ns-overlay[data-ns-state='closing'] .ns-overlay__panel {
      will-change: transform, opacity;
    }

    @starting-style {
      .ns-overlay[data-ns-state='opening'] .ns-overlay__panel {
        opacity: 0;
        transform: var(--ns-overlay-closed-transform);
      }

      .ns-overlay[data-ns-state='opening'] .ns-overlay__dialog::backdrop {
        background-color: transparent;
        -webkit-backdrop-filter: blur(0);
        backdrop-filter: blur(0);
      }
    }

    .ns-overlay__body {
      min-height: 0;
      padding: var(--ns-overlay-padding);
      overflow: auto;
      overscroll-behavior: contain;
      touch-action: pan-y;
      -webkit-overflow-scrolling: touch;
    }

    .ns-overlay__close {
      position: absolute;
      z-index: 2;
      inset-block-start: max(var(--ns-overlay-close-block-start, var(--ns-space-12)), env(safe-area-inset-top));
      display: grid;
      place-items: center;
      width: var(--ns-touch-target-min);
      height: var(--ns-touch-target-min);
      padding: var(--ns-space-10);
      border: 0;
      background: transparent;
      color: var(--ns-overlay-close-color, inherit);
      cursor: pointer;
    }

    .ns-overlay[data-ns-close-position='top-left'] .ns-overlay__close {
      inset-inline-start: max(
        var(--ns-overlay-close-inline-start, var(--ns-space-4)),
        var(--ns-safe-area-inset-inline-start)
      );
    }

    .ns-overlay[data-ns-close-position='top-right'] .ns-overlay__close {
      inset-inline-end: max(
        var(--ns-overlay-close-inline-end, var(--ns-space-4)),
        var(--ns-safe-area-inset-inline-end)
      );
    }

    .ns-overlay[data-ns-close-position='top-start'] .ns-overlay__close {
      inset-inline-start: max(
        var(--ns-overlay-close-inline-start, var(--ns-space-4)),
        var(--ns-safe-area-inset-inline-start)
      );
    }

    .ns-overlay[data-ns-close-position='top-end'] .ns-overlay__close {
      inset-inline-end: max(
        var(--ns-overlay-close-inline-end, var(--ns-space-4)),
        var(--ns-safe-area-inset-inline-end)
      );
    }

    .ns-overlay__close svg {
      width: 1.5rem;
      height: 1.5rem;
    }

    @media (min-width: 1025px) {
      .ns-overlay__panel {
        overflow: visible;
      }

      .ns-overlay__close {
        --ns-overlay-close-size: 4.375rem;
        --ns-overlay-close-gap: 2rem;
        --ns-radius-icon-button: var(--ns-radius-pill);
        inset-inline: auto;
        inset-block-start: max(1.5625rem, env(safe-area-inset-top));
        width: var(--ns-overlay-close-size);
        height: var(--ns-overlay-close-size);
        padding: 0;
        border-radius: var(--ns-radius-pill);
        background: var(--ns-overlay-floating-close-background, var(--ns-color-surface-alt));
        color: var(--ns-overlay-floating-close-color, var(--ns-color-foreground));
        transition: background-color 160ms ease;
      }

      .ns-overlay__close:hover {
        background: var(--ns-overlay-floating-close-hover-background, var(--ns-color-surface));
      }

      .ns-overlay[data-ns-placement='top'] .ns-overlay__close,
      .ns-overlay[data-ns-placement='bottom'] .ns-overlay__close {
        background: var(--ns-overlay-panel-background, var(--ns-color-background));
        color: var(--ns-overlay-panel-color, var(--ns-color-foreground));
      }

      .ns-overlay[data-ns-placement='top'] .ns-overlay__close:hover,
      .ns-overlay[data-ns-placement='bottom'] .ns-overlay__close:hover {
        background: color-mix(
          in srgb,
          var(--ns-overlay-panel-color, var(--ns-color-foreground)) 8%,
          var(--ns-overlay-panel-background, var(--ns-color-background))
        );
      }

      .ns-overlay[data-ns-placement='left'] .ns-overlay__close {
        inset-inline: auto;
        right: auto;
        left: min(
          calc(100% + var(--ns-overlay-close-gap)),
          calc(100dvw - var(--ns-overlay-close-size) - max(var(--ns-space-16), var(--ns-safe-area-inset-inline-end)))
        );
      }

      .ns-overlay[data-ns-placement='right'] .ns-overlay__close {
        inset-inline: auto;
        right: min(
          calc(100% + var(--ns-overlay-close-gap)),
          calc(100dvw - var(--ns-overlay-close-size) - max(var(--ns-space-16), var(--ns-safe-area-inset-inline-start)))
        );
        left: auto;
      }

      .ns-overlay[data-ns-placement='start'] .ns-overlay__close {
        inset-inline: auto;
        inset-inline-start: min(
          calc(100% + var(--ns-overlay-close-gap)),
          calc(100dvw - var(--ns-overlay-close-size) - max(var(--ns-space-16), var(--ns-safe-area-inset-inline-end)))
        );
      }

      .ns-overlay[data-ns-placement='end'] .ns-overlay__close {
        inset-inline: auto;
        inset-inline-end: min(
          calc(100% + var(--ns-overlay-close-gap)),
          calc(100dvw - var(--ns-overlay-close-size) - max(var(--ns-space-16), var(--ns-safe-area-inset-inline-start)))
        );
      }

      .ns-overlay[data-ns-placement='center'] .ns-overlay__close {
        inset-inline: auto;
        inset-inline-start: min(
          calc(100% + var(--ns-overlay-close-gap)),
          calc(
            50dvw + 50% - var(--ns-overlay-close-size) - max(var(--ns-space-16), var(--ns-safe-area-inset-inline-end))
          )
        );
      }
    }

    html[data-ns-scroll-locked] {
      overflow: hidden;
      scrollbar-gutter: stable;
    }

    @media (max-width: 1024px) {
      .ns-overlay[data-ns-device='desktop'] {
        display: none;
      }

      .ns-overlay__panel {
        width: min(var(--ns-overlay-mobile-inline-size), 100dvw);
        height: min(var(--ns-overlay-mobile-block-size), 100dvh);
      }

      .ns-overlay__body {
        padding: var(--ns-overlay-mobile-padding, var(--ns-overlay-padding));
      }

      .ns-overlay[data-ns-mobile-placement] .ns-overlay__panel {
        inset: var(--ns-overlay-mobile-panel-inset-value);
        translate: var(--ns-overlay-mobile-panel-translate-value);
        --ns-overlay-closed-transform: var(--ns-overlay-mobile-panel-closed-transform-value);
      }

      .ns-overlay--mobile-navigation {
        --ns-overlay-close-inline-end: var(--ns-space-20);
      }

      @starting-style {
        .ns-overlay[data-ns-state='opening'][data-ns-mobile-placement] .ns-overlay__panel {
          transform: var(--ns-overlay-mobile-panel-closed-transform-value);
        }
      }
    }

    @media (min-width: 1025px) {
      .ns-overlay[data-ns-device='mobile'] {
        display: none;
      }
    }

    @media (prefers-reduced-motion: reduce) {
      .ns-overlay[data-ns-state] {
        --ns-overlay-panel-duration: 0ms;
        --ns-overlay-backdrop-duration: 0ms;
      }
    }
  }
/* END_SNIPPET:overlay */

/* START_SNIPPET:predictive-search-overlay (INDEX:349) */
@layer components {
    .ns-predictive-search {
      display: flex;
      flex-direction: column;
      min-height: 100%;
      padding: max(var(--ns-space-48), env(safe-area-inset-top)) var(--ns-page-gutter)
        max(var(--ns-space-24), env(safe-area-inset-bottom));
      overflow: visible;
      background: var(--ns-color-background);
    }

    .ns-predictive-search__form {
      display: flex;
      flex: 1 1 auto;
      flex-direction: column;
      width: min(60rem, calc(100% - var(--ns-page-gutter) * 2));
      min-height: 0;
      margin-inline: auto;
    }

    .ns-predictive-search[data-ns-initial-visible] .ns-predictive-search__form {
      flex: 0 0 auto;
    }

    .ns-predictive-search__initial {
      flex: 1 1 auto;
      width: min(60rem, calc(100% - var(--ns-page-gutter) * 2));
      min-height: 0;
      margin: var(--ns-space-24) auto 0;
      padding-block-end: var(--ns-space-8);
    }

    .ns-predictive-search__initial > .ns-overlay-composition-row + .ns-overlay-composition-row {
      margin-block-start: var(--ns-space-20);
    }

    .ns-predictive-search__status {
      position: absolute;
      width: 1px;
      height: 1px;
      padding: 0;
      overflow: hidden;
      clip-path: inset(50%);
      white-space: nowrap;
    }

    .ns-predictive-search__label {
      display: block;
      margin-block-end: var(--ns-space-8);
      color: var(--ns-color-muted);
      font-size: var(--ns-type-caption-size);
      line-height: 1.2;
      text-transform: uppercase;
    }

    .ns-predictive-search__field {
      position: relative;
      display: flex;
      align-items: center;
      border-block-end: 1px solid var(--ns-color-border);
    }

    .ns-predictive-search__input {
      width: 100%;
      min-height: var(--ns-control-block-size-48);
      padding: 0 var(--ns-space-48) var(--ns-space-8) 0;
      border: 0;
      border-radius: 0;
      outline-offset: var(--ns-space-4);
      background: transparent;
      color: var(--ns-color-foreground);
      font-size: var(--ns-type-input-size);
      font-weight: var(--ns-type-weight-interface);
    }

    .ns-predictive-search__input:focus,
    .ns-predictive-search__input:focus-visible {
      outline: 0;
    }

    .ns-predictive-search__input::-webkit-search-cancel-button {
      appearance: none;
    }

    .ns-predictive-search__field:focus-within {
      border-block-end-color: var(--ns-color-foreground);
    }

    .ns-predictive-search__submit {
      --ns-radius-icon-button: 0px;

      position: absolute;
      inset-inline-end: 0;
      display: grid;
      place-items: center;
      width: var(--ns-touch-target-min);
      height: var(--ns-touch-target-min);
      padding: var(--ns-space-10);
      border: 0;
      background: transparent;
      color: inherit;
      cursor: pointer;
    }

    .ns-predictive-search__submit svg {
      width: 1.25rem;
    }

    .ns-predictive-search__results {
      min-height: 0;
      padding-block-start: var(--ns-space-32);
    }

    @media (min-width: 1025px) {
      #SearchOverlay[data-ns-auto-height='true'] .ns-overlay__dialog[open] {
        display: grid;
        overflow-x: hidden;
        overflow-y: auto;
        overscroll-behavior: contain;
      }

      #SearchOverlay[data-ns-auto-height='true'] .ns-overlay__panel {
        position: relative;
        inset: auto;
        align-self: start;
        justify-self: stretch;
        width: min(var(--ns-overlay-inline-size), 100%);
        height: auto;
        max-width: 100%;
        max-height: none;
        translate: none;
      }

      #SearchOverlay[data-ns-auto-height='true'] .ns-overlay__body {
        overflow: visible;
        overscroll-behavior: auto;
        touch-action: auto;
      }

      #SearchOverlay .ns-overlay__close {
        --ns-predictive-search-container-edge: max(var(--ns-page-gutter), calc((100dvw - 60rem) / 2));
        inset-inline-end: max(
          var(--ns-page-gutter),
          calc(var(--ns-predictive-search-container-edge) - var(--ns-overlay-close-size) - var(--ns-overlay-close-gap))
        );
      }
    }

    .ns-predictive-search[data-loading] .ns-predictive-search__results {
      opacity: 0.55;
    }

    @media (max-width: 1024px) {
      .ns-predictive-search {
        padding-block-start: max(var(--ns-space-48), env(safe-area-inset-top));
        padding-inline: var(--ns-space-20);
      }

      .ns-predictive-search__label {
        position: absolute;
        width: 1px;
        height: 1px;
        padding: 0;
        overflow: hidden;
        clip-path: inset(50%);
        white-space: nowrap;
      }

      .ns-predictive-search__form {
        width: 100%;
      }

      .ns-predictive-search__initial {
        width: 100%;
      }

      .ns-predictive-search__input {
        font-size: var(--ns-type-input-size);
      }

      .ns-predictive-search__results {
        padding-block-start: var(--ns-space-20);
      }

      #SearchOverlay {
        --ns-overlay-close-inline-end: var(--ns-space-16);
      }
    }

    @media (max-width: 767px) {
      .ns-predictive-search {
        min-height: 100dvh;
      }
    }

    .ns-predictive-search--mobile {
      padding-inline: var(--ns-space-20);
    }
  }
/* END_SNIPPET:predictive-search-overlay */

/* START_SNIPPET:product-sticky-bar (INDEX:369) */
@layer components {
    html {
      scroll-behavior: smooth;
    }

    .ns-product-sticky-bar__inner {
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto minmax(10.5rem, 12rem);
      align-items: center;
      gap: var(--ns-space-16);
    }

    .ns-product-sticky-bar__summary {
      display: grid;
      min-inline-size: 0;
      gap: var(--ns-space-4);
    }

    .ns-product-sticky-bar__heading,
    .ns-product-sticky-bar__options-row,
    .ns-product-sticky-bar__options,
    .ns-product-sticky-bar__option,
    .ns-product-sticky-bar__option dd {
      display: flex;
      align-items: center;
    }

    .ns-product-sticky-bar__heading {
      min-inline-size: 0;
      gap: var(--ns-space-12);
    }

    .ns-product-sticky-bar__title {
      min-inline-size: 0;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }

    .ns-product-sticky-bar__price {
      flex: 0 0 auto;
      font-size: var(--ns-type-body-small-size);
      white-space: nowrap;
    }

    .ns-product-sticky-bar__options-row {
      min-inline-size: 0;
      gap: var(--ns-space-10);
    }

    .ns-product-sticky-bar__options {
      flex-wrap: wrap;
      min-inline-size: 0;
      margin: 0;
      gap: var(--ns-space-4) var(--ns-space-10);
    }

    .ns-product-sticky-bar__option {
      gap: var(--ns-space-4);
      font-size: var(--ns-type-caption-size);
      line-height: var(--ns-type-caption-line-height);
    }

    .ns-product-sticky-bar__option dt {
      color: var(--ns-color-muted);
    }

    .ns-product-sticky-bar__option dd {
      margin: 0;
      gap: var(--ns-space-8);
    }

    .ns-product-sticky-bar__selected-value {
      cursor: default;
    }

    .ns-product-sticky-bar__selected-value:not(.ns-variant-value--swatch) {
      border-color: var(--ns-color-foreground);
      box-shadow: inset 0 0 0 1px var(--ns-color-foreground);
    }

    .ns-product-sticky-bar__selected-value.ns-variant-value--swatch .ns-variant-value__swatch {
      outline: 1px solid var(--ns-color-foreground);
      outline-offset: 2px;
    }

    .ns-product-sticky-bar__change {
      flex: 0 0 auto;
      padding-block: var(--ns-space-4);
      color: currentColor;
      font-size: var(--ns-type-caption-size);
      text-decoration: underline;
      text-underline-offset: 0.2em;
      white-space: nowrap;
    }

    .ns-product-sticky-bar__compare-control {
      display: none;
      align-items: center;
      gap: var(--ns-space-8);
      min-block-size: 2.75rem;
      cursor: pointer;
      font-size: var(--ns-type-body-small-size);
      white-space: nowrap;
    }

    .ns-product-sticky-bar__add {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: var(--ns-space-8);
      min-block-size: 2.75rem;
      padding-inline: var(--ns-space-16);
      border: 1px solid var(--ns-color-primary);
      border-radius: var(--ns-radius-button, 0px);
      color: var(--ns-color-on-primary);
      background: var(--ns-color-primary);
      cursor: pointer;
      text-transform: uppercase;
      white-space: nowrap;
    }

    .ns-product-sticky-bar__add:disabled {
      cursor: not-allowed;
      opacity: 0.55;
    }

    .ns-product-sticky-bar__add-icon {
      display: grid;
      flex: 0 0 auto;
      place-items: center;
      inline-size: var(--ns-icon-size-sm);
      block-size: var(--ns-icon-size-sm);
    }

    .ns-product-sticky-bar__add-icon svg {
      inline-size: 100%;
      block-size: 100%;
    }

    .ns-product-sticky-bar__add-label--mobile {
      display: none;
    }

    .ns-product-sticky-bar__add-label {
      min-inline-size: 0;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }

    .ns-variant-picker-block {
      scroll-margin-block-start: var(--ns-space-80);
    }

    @media (min-width: 768px) {
      .ns-product-sticky-bar__compare-control--desktop:not([hidden]) {
        display: inline-flex;
      }
    }

    @media (min-width: 1024px) {
      .ns-product-sticky-bar__summary {
        display: flex;
        align-items: center;
        gap: var(--ns-space-16);
      }

      .ns-product-sticky-bar__heading {
        flex: 1 1 auto;
      }

      .ns-product-sticky-bar__options-row {
        flex: 0 1 auto;
      }

      .ns-product-sticky-bar__options {
        flex-wrap: nowrap;
      }
    }

    @media (prefers-reduced-motion: reduce) {
      html {
        scroll-behavior: auto;
      }
    }

    @media (max-width: 767px) {
      .ns-product-sticky-bar .ns-bottom-surface__inner {
        padding-inline: var(--ns-space-12);
      }

      .ns-product-sticky-bar__inner {
        grid-template-columns: minmax(0, 1fr) auto auto;
        gap: var(--ns-space-10);
      }

      .ns-product-sticky-bar__heading {
        flex-wrap: wrap;
        gap: 0 var(--ns-space-8);
      }

      .ns-product-sticky-bar__title {
        flex-basis: 100%;
        font-size: var(--ns-type-body-small-size);
      }

      .ns-product-sticky-bar__options-row {
        align-items: flex-start;
        gap: var(--ns-space-8);
      }

      .ns-product-sticky-bar__options {
        gap: var(--ns-space-4) var(--ns-space-8);
      }

      .ns-product-sticky-bar__change {
        padding-block: var(--ns-space-8);
      }

      .ns-product-sticky-bar__compare-control--mobile:not([hidden]) {
        display: inline-flex;
      }

      .ns-product-sticky-bar__add {
        min-inline-size: 5.25rem;
        padding-inline: var(--ns-space-12);
      }

      .ns-product-sticky-bar__add-label--desktop {
        display: none;
      }

      .ns-product-sticky-bar__add-label--mobile {
        display: inline;
      }
    }
  }
/* END_SNIPPET:product-sticky-bar */

/* START_SNIPPET:quantity-selector (INDEX:370) */
@layer components {
    .ns-quantity-selector {
      display: grid;
      grid-template-columns: minmax(0, 1fr) 2.25rem 2.25rem;
      gap: var(--ns-space-10);
      inline-size: 100%;
      min-block-size: 2.1875rem;
      border: 0;
    }

    .ns-quantity-selector :is(button, input) {
      min-inline-size: 0;
      border: 1px solid var(--ns-color-border);
      background: transparent;
      color: inherit;
      text-align: center;
    }

    .ns-quantity-selector input {
      border-radius: var(--ns-radius-compact, var(--ns-radius-lg));
      padding-inline: var(--ns-space-12);
      text-align: start;
    }

    .ns-quantity-selector button {
      border-radius: var(--ns-radius-icon-button, var(--ns-radius-xl));
    }

    .ns-quantity-selector :is(button, input):focus-visible {
      z-index: 1;
      outline: 2px solid var(--ns-color-accent);
      outline-offset: 2px;
    }
  }
/* END_SNIPPET:quantity-selector */

/* START_SNIPPET:section-header-layout (INDEX:379) */
@layer components {
    .ns-section-header {
      display: flex;
      grid-column: 1 / -1;
      justify-content: var(--ns-section-header-outer-alignment, center);
      inline-size: 100%;
      min-inline-size: 0;
      margin-block-start: var(--ns-section-header-margin-start, 0);
      margin-block-end: var(--ns-section-header-margin-end, var(--ns-space-40));
      color: inherit;
      text-align: var(--ns-section-header-text-alignment, center);
    }

    .ns-section-header__inner {
      display: flex;
      flex-direction: var(--ns-section-header-direction, column);
      align-items: var(--ns-section-header-cross-alignment, center);
      justify-content: var(--ns-section-header-main-alignment, center);
      gap: var(--ns-section-header-gap, var(--ns-space-12));
      inline-size: var(--ns-section-header-width, 100%);
      max-inline-size: min(100%, var(--ns-section-header-max-width, 1200px));
    }

    .ns-section-header__inner > * {
      flex: 0 1 auto;
      max-inline-size: 100%;
    }

    .ns-section-header--embedded .ns-section-header__title {
      margin: 0;
      color: var(--ns-color-heading);
      font-size: var(--ns-type-medium-size);
      line-height: var(--ns-type-medium-line-height);
    }

    .ns-section-header--embedded :is(.ns-rte, .ns-rte > :first-child) {
      margin-block-start: 0;
    }

    .ns-section-header--embedded .ns-rte > :last-child {
      margin-block-end: 0;
    }
  }
/* END_SNIPPET:section-header-layout */

/* START_SNIPPET:select (INDEX:383) */
@layer components {
    .ns-select {
      position: relative;
      display: inline-grid;
      grid-template-columns: minmax(0, 1fr) auto;
      align-items: center;
      min-inline-size: 0;
      color: inherit;
    }

    .ns-select__value,
    .ns-select__menu {
      display: none;
    }

    .ns-select__control {
      grid-area: 1 / 1 / 2 / 3;
      inline-size: 100%;
      min-block-size: 2.75rem;
      border: 0;
      border-radius: 0;
      padding: 0;
      padding-inline-end: var(--ns-space-24);
      appearance: none;
      background: transparent;
      color: inherit;
      font: inherit;
      line-height: inherit;
      cursor: pointer;
    }

    .ns-select__control:focus-visible {
      outline: 2px solid currentColor;
      outline-offset: 3px;
    }

    .ns-select__control:disabled {
      cursor: not-allowed;
      opacity: 0.55;
    }

    .ns-select:has(> .ns-select__control[hidden]) {
      display: none;
    }

    .ns-select__icon {
      z-index: 1;
      grid-area: 1 / 2;
      inline-size: 0.875rem;
      block-size: 0.875rem;
      pointer-events: none;
    }

    .ns-select__icon svg {
      display: block;
      inline-size: 100%;
      block-size: 100%;
    }

    .ns-select[data-ns-select-enhanced] {
      cursor: pointer;
    }

    .ns-select[data-ns-select-enhanced]:focus-visible {
      outline: 2px solid currentColor;
      outline-offset: 3px;
    }

    .ns-select[data-ns-select-enhanced]:has(> .ns-select__control:disabled) {
      cursor: not-allowed;
      opacity: 0.55;
    }

    .ns-select[data-ns-select-enhanced] > .ns-select__control {
      position: absolute;
      inline-size: 1px;
      block-size: 1px;
      min-block-size: 0;
      overflow: hidden;
      clip-path: inset(50%);
      opacity: 0;
      pointer-events: none;
    }

    .ns-select[data-ns-select-enhanced] > .ns-select__value {
      display: block;
      grid-area: 1 / 1;
      min-inline-size: 0;
      padding-inline-end: var(--ns-space-24);
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }

    .ns-select__menu[popover] {
      --ns-select-surface-rotate: -20deg;

      position: fixed;
      inset: auto;
      display: none;
      grid-auto-flow: row;
      align-content: start;
      min-inline-size: 12rem;
      max-inline-size: calc(100vw - 1rem);
      margin: 0;
      border: 0;
      border-radius: var(--ns-radius-content-panel, var(--ns-radius-2xl));
      padding: var(--ns-space-10) 0;
      overflow: auto;
      background: var(--ns-color-background);
      color: var(--ns-color-muted);
      box-shadow: 0 0.375rem 1.5rem color-mix(in srgb, var(--ns-navigation-shadow-color) 12%, transparent);
      overscroll-behavior: contain;
    }

    .ns-select__menu[popover]:popover-open {
      display: grid;
      transform-origin: center top;
      animation: ns-select-surface-in 150ms cubic-bezier(0.25, 0.1, 0.25, 1) both;
    }

    .ns-select__menu[popover][data-ns-select-placement='top'] {
      --ns-select-surface-rotate: 20deg;
    }

    .ns-select__menu[popover][data-ns-select-placement='top']:popover-open {
      transform-origin: center bottom;
    }

    .ns-select__option {
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      gap: var(--ns-space-12);
      align-items: center;
      inline-size: 100%;
      min-block-size: 2.5rem;
      border: 0;
      padding: var(--ns-space-8) var(--ns-space-16);
      background: transparent;
      color: inherit;
      font: inherit;
      line-height: 1.25;
      text-align: start;
      cursor: pointer;
    }

    .ns-select__option:is(:hover, :focus-visible),
    .ns-select__option[aria-selected='true'] {
      background: var(--ns-color-surface);
      color: var(--ns-color-foreground);
    }

    .ns-select__option:focus-visible {
      outline: 2px solid currentColor;
      outline-offset: -3px;
    }

    .ns-select__option:disabled {
      cursor: not-allowed;
      opacity: 0.45;
    }

    .ns-select__option::after {
      content: '✓';
      opacity: 0;
    }

    .ns-select__option[aria-selected='true']::after {
      opacity: 1;
    }

    @keyframes ns-select-surface-in {
      from {
        opacity: 0;
        transform: perspective(2000px) rotateX(var(--ns-select-surface-rotate)) scale(0.92);
      }

      to {
        opacity: 1;
        transform: perspective(2000px) rotateX(0deg) scale(1);
      }
    }

    @media (prefers-reduced-motion: reduce) {
      .ns-select__menu[popover]:popover-open {
        animation: none;
      }
    }
  }
/* END_SNIPPET:select */

/* START_SNIPPET:submenu-backdrop (INDEX:387) */
@layer components {
    .ns-submenu-backdrop {
      position: fixed;
      z-index: 940;
      inset: var(--ns-submenu-backdrop-top, 0) 0 0;
      display: block;
      overflow: hidden;
      opacity: 0;
      pointer-events: none;
      contain: paint;
      transition: opacity 150ms cubic-bezier(0.25, 0.1, 0.25, 1);
    }

    .ns-submenu-backdrop[hidden] {
      display: none;
    }

    .ns-submenu-backdrop[data-ns-submenu-backdrop-state='open'] {
      opacity: 1;
    }

    .ns-submenu-backdrop[data-ns-submenu-backdrop-activation='click']:not([data-ns-submenu-backdrop-state='closed']) {
      pointer-events: auto;
    }

    .ns-submenu-backdrop__media,
    .ns-submenu-backdrop__scrim {
      position: absolute;
      inset: 0;
      pointer-events: none;
    }

    .ns-submenu-backdrop__media {
      inset: -8px;
    }

    .ns-submenu-backdrop__image-shell,
    .ns-submenu-backdrop__image-coverage,
    .ns-submenu-backdrop__image-motion,
    .ns-submenu-backdrop__image-motion > img {
      position: absolute;
      inset: 0;
      display: block;
      inline-size: 100%;
      block-size: 100%;
      pointer-events: none;
    }

    .ns-submenu-backdrop__image-shell {
      opacity: 0;
      transition: opacity 180ms cubic-bezier(0.25, 0.6, 0.35, 1);
    }

    .ns-submenu-backdrop__image-shell[data-ns-submenu-backdrop-image-state='active'] {
      opacity: 1;
    }

    .ns-submenu-backdrop__image-coverage {
      transform: scale(1.08);
      transform-origin: center;
    }

    .ns-submenu-backdrop__image-motion > img {
      object-fit: cover;
    }

    .ns-submenu-backdrop__scrim {
      background: color-mix(in srgb, var(--ns-navigation-shadow-color) 18%, transparent);
    }

    .ns-submenu-backdrop[data-ns-submenu-backdrop-blur='true'] .ns-submenu-backdrop__image-motion > img {
      filter: blur(4px);
    }

    @supports ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
      .ns-submenu-backdrop[data-ns-submenu-backdrop-blur='true'] {
        -webkit-backdrop-filter: blur(4px);
        backdrop-filter: blur(4px);
      }
    }

    @media (prefers-reduced-motion: reduce) {
      .ns-submenu-backdrop,
      .ns-submenu-backdrop__image-shell {
        transition: none;
      }

      .ns-submenu-backdrop__image-motion {
        transform: none;
      }
    }

    @media (max-width: 1024px) {
      .ns-submenu-backdrop {
        display: none;
      }
    }
  }
/* END_SNIPPET:submenu-backdrop */