


  .sn-slider {
    --gap: calc(40 * var(--px));
    user-select: none;
  }
  
  .sn-slider-track {
    width: 100%;
    position: relative;
		overflow: hidden;
		overflow-x: scroll;
		-ms-overflow-style: none;
		scrollbar-width: none;
		-webkit-overflow-scrolling: touch;
  }
  
	.sn-slider-track::-webkit-scrollbar {
		display: none;
	}
  
  
  
  
  .sn-slider-slides {
    display: flex;
    flex-flow: row nowrap;
    width: max-content;
    padding-left: var(--page-padding-left);
    padding-right: var(--page-padding-right);
    gap: 0px var(--gap);
  }
  
  .sn-slider-slide {
    width: max(312px, calc(540 * var(--px)));
    scroll-margin-inline-start: var(--page-padding-left);
  }
  
  .sn-slider:not(.is-scrolling) .sn-slider-slide {
    scroll-snap-align: start;
  }
  
  .sn-slider:not(.is-scrolling) .sn-slider-track {
    scroll-snap-type: x mandatory;
  }
  
  
  
  
  .sn-slider-progress {
    position: relative;
    height: 14px;
    pointer-events: none;
  }
  
  .sn-slider-progress span {
    display: block;
    position: absolute;
    left: 0;
    height: 100%;
    width: var(--progress, 0%);
    background: var(--base-color-black);
  }
  
  
  


  
  .sn-slider-wrap {
    position: relative;
    --transition-duration: 1000;
  }
  
  .sn-slider:not(.sn-slider-ghost) {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    overflow: hidden;
  }
  
  .sn-slider:not(.sn-slider-ghost) .sn-slider-track {
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 0;
    transform: translateX(var(--sn-slider-scroll-left, 0px));
    width: auto;
    will-change: transform;
    transition: transform calc(var(--transition-duration, 0) * 1ms) var(--ttf-5);
  }
  
  @media (hover: none) {
    .sn-slider:not(.sn-slider-ghost) .sn-slider-track {
      transition: none;
    }
  }
  
  .sn-slider-wrap.is-wheeling .sn-slider:not(.sn-slider-ghost) .sn-slider-track {
    --transition-duration: 500;
    transition: transform calc(var(--transition-duration, 0) * 1ms) var(--ttf-5);
  }
  
  .sn-slider-ghost {
    position: relative;
    z-index: 2;
    opacity: 0;
  }