/* Rehabs Today Engine v1.2.3 managed-page corrections */
.rtde-provider-button {
  background:#fff !important;
  color:#0d2b55 !important;
  border:1px solid #dbe5ef !important;
  box-shadow:none !important;
}
.rtde-provider-button:hover { border-color:#2aa7a1 !important; color:#0d2b55 !important; }

/* Restore the original location-template image treatment. */
.sn-img-block {
  position:relative;
  overflow:hidden;
  border-radius:16px;
  background:#eef3f7;
  aspect-ratio:16 / 9;
}
.sn-img-block img,
.rtde-faq-media .sn-img-block img {
  width:100%;
  height:auto;
  display:block;
  border-radius:16px;
}

/* Facility cards: equal heights with action buttons anchored to the bottom. */
.sn-grid-3 { align-items:stretch; }
.sn-card-step {
  display:flex;
  flex-direction:column;
  height:100%;
  background:#fff;
  border-radius:16px;
  padding:36px 28px;
  box-shadow:0 4px 20px rgba(0,0,0,.07);
}
.sn-card-step > .sn-btn-group {
  margin-top:auto;
  padding-top:22px;
  width:100%;
}
.sn-card-step > .sn-btn-group .sn-btn { flex:1 1 0; }

/* Nearby cities: restored location-page card language. */
.rt-related-cities-section .sn-section-header { max-width:760px; margin-left:auto; margin-right:auto; }
.rt-related-cities-intro { max-width:580px; margin:10px auto 0; text-align:center; }
.rt-related-cities-grid {
  margin-top:36px;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:20px;
  align-items:stretch;
}
.sn-city-card.rt-related-city-card {
  display:block;
  min-width:0;
  height:100%;
  overflow:hidden;
  background:#fff;
  border:1px solid #e5ebf1;
  border-radius:12px;
  color:inherit;
  text-decoration:none;
  box-shadow:0 2px 12px rgba(0,0,0,.06);
  transition:box-shadow .2s ease,transform .2s ease,border-color .2s ease;
}
.sn-city-card.rt-related-city-card:hover {
  transform:translateY(-3px);
  border-color:#cbd9e6;
  box-shadow:0 8px 24px rgba(13,43,85,.10);
  text-decoration:none;
}
.rt-related-city-card .sn-city-card-body {
  display:flex;
  flex-direction:column;
  height:100%;
  padding:0;
  text-align:left;
}
.rt-related-city-card .sn-city-card-img {
  width:100%;
  aspect-ratio:16 / 9;
  overflow:hidden;
  background:#c8d8e8;
  border-radius:12px 12px 0 0;
}
.rt-related-city-card .sn-city-card-img img {
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center;
  transition:transform .25s ease;
}
.rt-related-city-card:hover .sn-city-card-img img { transform:scale(1.025); }
.rt-related-city-card .sn-city-card-copy {
  display:flex;
  flex-direction:column;
  flex:1 1 auto;
  padding:18px 20px 20px;
}
.rt-related-city-card .sn-city-name {
  margin:0 0 6px;
  color:#0d2b55;
  font-size:16px;
  font-weight:700;
  line-height:1.3;
}
.rt-related-city-card .sn-city-meta {
  margin:0 0 14px;
  color:#8a96a8;
  font-size:13px;
  line-height:1.5;
}
.rt-related-city-card .sn-city-link {
  display:inline-flex;
  margin-top:auto;
  color:#e8821a;
  font-size:14px;
  font-weight:700;
}
.rt-related-city-card:hover .sn-city-link { text-decoration:underline; }

.rtde-faq-media .rt-sidebar-card img { display:block; }

@media (max-width:1020px) {
  .rt-related-cities-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:900px) {
  .rtde-faq-media { position:relative !important; top:0 !important; width:100% !important; }
}
@media (max-width:620px) {
  .rt-related-cities-grid { grid-template-columns:1fr; }
  .sn-card-step > .sn-btn-group { flex-direction:column; }
  .sn-card-step > .sn-btn-group .sn-btn { width:100%; }
}
