/* Slider container */
.slick-slider {
  /* Positioning and layout */
  position: relative;
  display: block;
  box-sizing: border-box;

  /* User selection prevention */
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;

  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

/* Slider list container */
.slick-list {
  /* Positioning and layout */
  position: relative;
  display: block;
  overflow: hidden;

  /* Styling and layout */
  margin: 0;
  padding: 0;
}

/* Highlight styling when list is focused */
.slick-list:focus {
  outline: none;
}

/* Dragging styling */
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

/* Slider track and list shared styles */
.slick-slider .slick-track,
.slick-slider .slick-list {
  /* 3D transform for better performance */
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

/* Slider track styles */
.slick-track {
  /* Positioning and layout */
  position: relative;
  top: 0;
  left: 0;

  /* Styling and layout */
  display: block;
  margin-left: auto;
  margin-right: auto;
}

/* Pseudo-elements for clearing floats */
.slick-track:before,
.slick-track:after {
  display: table;

  content: '';
}

.slick-track:after {
  clear: both;
}

/* Loading state for the slider track */
.slick-loading .slick-track {
  visibility: hidden;
}

/* Slider slide styles */
.slick-slide {
  /* Hidden by default, displayed when needed */
  display: none;
  float: left;

  /* Size and layout */
  height: 100%;
  min-height: 1px;
}

/* RTL support for slides */
[dir='rtl'] .slick-slide {
  float: right;

