.rail {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(280px, 31%);
  gap: 16px;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scroll-snap-type: inline mandatory;
  scrollbar-width: thin;
  padding: 8px 2px 20px;
  margin-top: 18px;
  -webkit-overflow-scrolling: touch;
}

.card {
  scroll-snap-align: start;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 220px;
  padding: 24px;
  border: 1px solid rgba(211, 163, 84, 0.24);
  background: rgba(255, 255, 255, 0.035);
  border-radius: 8px;
}

.rail::-webkit-scrollbar {
  height: 8px;
}

.rail::-webkit-scrollbar-track {
  background: rgba(255, 255, 255, 0.04);
  border-radius: 999px;
}

.rail::-webkit-scrollbar-thumb {
  background: rgba(211, 163, 84, 0.45);
  border-radius: 999px;
}

@media (max-width: 760px) {
  .rail {
    grid-auto-columns: 86%;
    gap: 14px;
    padding-right: 10%;
  }

  .card {
    min-height: 230px;
    padding: 21px;
  }
}

@media (max-width: 420px) {
  .rail {
    grid-auto-columns: 88%;
  }
}
