/* Schedule / transport photo treatment — richer photos, readable text (2026-07-12) */

.route-card--photo .route-card-bg::before {
  filter: brightness(0.96) saturate(1.08) contrast(1.04);
}

/* Мягкая вуаль по карточке: фото сверху, к низу — в белый */
.route-card--photo .route-card-bg::after {
  background: linear-gradient(
    165deg,
    rgba(255, 255, 255, 0.32) 0%,
    rgba(255, 255, 255, 0.58) 30%,
    rgba(255, 255, 255, 0.86) 65%,
    rgba(255, 255, 255, 0.96) 100%
  );
}

/* Подсветка текста: белый градиент под всей текстовой зоной */
.route-card--photo .route-card-content::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background: linear-gradient(
    180deg,
    rgba(255, 255, 255, 0.48) 0%,
    rgba(255, 255, 255, 0.76) 20%,
    rgba(255, 255, 255, 0.9) 45%,
    rgba(255, 255, 255, 0.97) 72%,
    #ffffff 100%
  );
  box-shadow: inset 0 12px 32px rgba(255, 255, 255, 0.45);
}

.route-card--photo .route-station-from,
.route-card--photo .route-station-to {
  text-shadow:
    0 0 18px rgba(255, 255, 255, 0.95),
    0 1px 3px rgba(255, 255, 255, 0.85);
}

.route-card--photo .route-stat-value,
.route-card--photo .route-view-btn {
  text-shadow: 0 0 12px rgba(255, 255, 255, 0.8);
}

.route-card--photo .route-stat-label,
.route-card--photo .route-distance,
.route-card--photo .route-stops-preview,
.route-card--photo .route-stops-preview span {
  color: #475569 !important;
}

.route-card--photo:hover .route-card-bg::before {
  filter: brightness(1) saturate(1.1) contrast(1.05);
}

.trains-hero__banner::after,
.buses-hero__banner::after {
  background: linear-gradient(
    180deg,
    rgba(15, 23, 42, 0.18) 0%,
    rgba(15, 23, 42, 0.44) 100%
  ) !important;
}

.td-hero__visual::before {
  background: linear-gradient(
    135deg,
    rgba(15, 23, 42, 0.48) 0%,
    rgba(15, 23, 42, 0.22) 45%,
    rgba(15, 23, 42, 0.58) 100%
  ) !important;
}

.tsh-carousel__slide img {
  filter: brightness(0.97) saturate(1.06) contrast(1.03);
}
