/* Homepage only: two mobile rows with a visible next column; roomy desktop rails. */
.kp-home .kp-rail-shell { margin: 0 -12px; min-width: 0; }
.kp-home .listings_slider[data-rail-track] {
  --home-rail-columns: 2;
  --home-rail-rows: 2;
  --home-rail-gap: 12px;
  --home-rail-peek: 28px;
  display: grid;
  grid-auto-flow: column;
  grid-template-rows: repeat(var(--home-rail-rows), minmax(0, 1fr));
  grid-auto-columns: calc((100% - var(--home-rail-peek) - (var(--home-rail-columns) - 1) * var(--home-rail-gap)) / var(--home-rail-columns));
  gap: 20px var(--home-rail-gap);
  box-sizing: border-box;
  width: 100%; min-width: 0;
  margin: 0; padding: 16px 12px 24px;
  overflow-x: auto;
  scroll-padding-inline: 12px;
  scroll-snap-type: x mandatory;
  overscroll-behavior-x: contain;
}
.kp-home .listings_slider[data-rail-count="1"] { --home-rail-rows: 1; }
.kp-home .listings_slider[data-rail-track] > .listing_item { width: auto; max-width: none; min-width: 0; }
.kp-home .listings_slider[data-rail-track].is-dragging { scroll-snap-type: none; }
.kp-home .kp-rail-shell::before, .kp-home .kp-rail-shell::after { top: 12px; bottom: 20px; }
@media (max-width: 767px) {
  .kp-home .kp-home-rail .kp-listing-card { border-radius: 14px; }
  .kp-home .kp-home-rail .kp-listing-cover { border-radius: 13px 13px 0 0; }
  .kp-home .kp-home-rail .kp-listing-body { padding: 10px; }
  .kp-home .kp-home-rail .kp-listing-name { font-size: 14px; line-height: 1.3; min-height: 2.6em; max-height: 2.6em; overflow-wrap: anywhere; }
  .kp-home .kp-home-rail .kp-listing-meta { font-size: 11px !important; line-height: 1.5 !important; }
  .kp-home .kp-home-rail .kp-listing-meta > span:not(.kp-meta-dot) { display: block; overflow: hidden; text-overflow: ellipsis; }
  .kp-home .kp-home-rail .kp-meta-dot { display: none; }
  .kp-home .kp-home-rail .kp-listing-status { top: 7px; left: 7px; padding: 3px 7px; font-size: 10px; }
  .kp-home .listing_item_more_btn { min-height: 0; padding: 16px 10px; border-radius: 14px; font-size: 13px; }
  .kp-home .listing_item_more_btn small { font-size: 11px; }
  .kp-home .kp-rail-end-icon { width: 36px; height: 36px; font-size: 18px; }
}
@media (max-width: 359px) {
  .kp-home .listings_slider[data-rail-track] { --home-rail-columns: 1; --home-rail-peek: 44px; }
  .kp-home .kp-home-rail .kp-listing-name { font-size: 16px; }
}
@media (min-width: 768px) {
  .kp-home .listings_slider[data-rail-track] { --home-rail-rows: 1; --home-rail-gap: 24px; --home-rail-peek: 64px; }
}
@media (min-width: 1100px) {
  .kp-home .listings_slider[data-rail-track] { --home-rail-columns: 3; --home-rail-peek: 72px; }
}
