.betty-content-rail-shell {
  width: 100vw;
  max-width: 100vw;
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
  padding-left: 40px;
  padding-right: 40px;
  box-sizing: border-box;
}

.betty-content-rail {
  --rail-content-width: 1200px;
  --rail-arrow-space: 44px;

  display: flex;
  align-items: center;
  width: 100%;
  max-width: calc(var(--rail-content-width) + (var(--rail-arrow-space) * 2));
  margin-left: auto;
  margin-right: auto;
}

.betty-content-rail__arrow {
  flex: 0 0 var(--rail-arrow-space);
  width: var(--rail-arrow-space);
}

.betty-content-rail__arrow[hidden] {
  display: inline-flex !important;
  visibility: hidden;
  pointer-events: none;
}

.betty-content-rail__arrow--prev {
  transform: rotate(180deg) !important;
}

.betty-content-rail__arrow--next {
  transform: none !important;
}

.betty-content-rail__viewport {
  flex: 0 1 var(--rail-content-width);
  width: var(--rail-content-width);
  max-width: var(--rail-content-width);
  min-width: 0;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-behavior: smooth;
  scrollbar-width: none;
  -ms-overflow-style: none;
  container-type: inline-size;
}

.betty-content-rail__viewport::-webkit-scrollbar {
  display: none;
}

.betty-content-rail__track {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: stretch;
  gap: var(--betty-gap);
  width: max-content;
}

.betty-content-rail__card {
  flex: 0 0 calc((100cqw - (var(--betty-gap) * 2)) / 3);
  width: calc((100cqw - (var(--betty-gap) * 2)) / 3);
  min-width: calc((100cqw - (var(--betty-gap) * 2)) / 3);
  max-width: calc((100cqw - (var(--betty-gap) * 2)) / 3);
  height: auto;
}

.betty-content-rail.is-at-start .betty-content-rail__arrow--prev,
.betty-content-rail.is-at-end .betty-content-rail__arrow--next,
.betty-content-rail__arrow:disabled {
  opacity: 0.4;
  pointer-events: none;
}

@media (max-width: 768px) {
  .betty-content-rail-shell {
    padding-left: 20px;
    padding-right: 20px;
  }

  .betty-content-rail {
    gap: var(--space-200);
  }
}