/* Rural Stay — property listing cards (hotel-list.php) */
.strip.list_view.property-list.rs-village-card {
  position: relative;
  margin-bottom: 28px;
  min-height: 0 !important;
  border: 1px solid #e8eaef;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
  overflow: hidden;
  transition: all 0.35s ease;
}

.strip.list_view.property-list.rs-village-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 15px 40px rgba(0, 0, 0, 0.08);
}

.rs-village-card a.rs-card-link,
.rs-village-card a.rs-card-link:link,
.rs-village-card a.rs-card-link:visited,
.rs-village-card a.rs-card-link:hover,
.rs-village-card a.rs-card-link:active,
.rs-village-card a.rs-card-link:focus {
  display: block;
  color: inherit;
  text-decoration: none;
  cursor: pointer;
}

.rs-village-card a.rs-card-link *,
.rs-village-card a.rs-card-link:hover *,
.rs-village-card a.rs-card-link:focus * {
  text-decoration: none !important;
}

.rs-village-card a.rs-card-link .rs-card-title {
  color: #111 !important;
}

.rs-village-card a.rs-card-link:hover .rs-card-title,
.rs-village-card a.rs-card-link:focus .rs-card-title {
  color: #111 !important;
}

.rs-village-card a.rs-card-link .rs-card-location {
  color: #6b7280 !important;
}

.rs-village-card a.rs-card-link:hover .rs-card-location {
  color: #6b7280 !important;
}

.rs-village-card a.rs-card-link .rs-property-type {
  color: #2d5a27 !important;
}

.rs-village-card a.rs-card-link .rs-card-description,
.rs-village-card a.rs-card-link .rs-card-description p {
  color: #4a5568 !important;
}

.rs-village-card .rs-card-row {
  align-items: stretch;
  margin: 0;
}

.rs-village-card .rs-card-media {
  display: flex;
  flex-direction: column;
  background: #fff;
}

.rs-village-card .rs-card-media figure {
  margin: 0;
  height: 220px;
  min-height: 210px;
  max-height: 220px;
  overflow: hidden;
  flex-shrink: 0;
}

/* Experience tags — white area below property image */
.rs-village-card .rs-experience-tags {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 8px;
  padding: 12px 14px 14px;
  min-height: 0;
}

.rs-village-card .rs-experience-tags-row {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  width: 100%;
}

.rs-village-card .rs-experience-tags-row--single {
  justify-content: center;
}

.rs-village-card .rs-experience-tag {
  flex: 0 1 calc(50% - 4px);
  max-width: calc(50% - 4px);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  box-sizing: border-box;
  padding: 5px 10px;
  font-size: 0.68rem;
  font-weight: 500;
  line-height: 1.35;
  color: #3d4654;
  background: rgba(245, 247, 250, 0.95);
  border: 1px solid #e4e8ef;
  border-radius: 999px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  transition: all 0.3s ease;
}

.rs-village-card .rs-experience-tags-row--single .rs-experience-tag {
  flex: 0 1 auto;
  max-width: 92%;
}

.rs-village-card .rs-experience-tag:hover {
  transform: translateY(-4px);
  box-shadow: 0 6px 15px rgba(0, 0, 0, 0.08);
}

.strip.list_view.rs-village-card .rs-card-media figure {
  min-height: 210px !important;
  max-height: 220px !important;
}

.rs-village-card .rs-card-image,
.strip.list_view.rs-village-card figure .rs-card-image {
  display: block;
  width: 100% !important;
  height: 220px !important;
  min-height: 210px !important;
  max-height: 220px !important;
  object-fit: cover;
  transition: transform 0.35s ease;
}

.rs-village-card:hover .rs-card-image {
  transform: scale(1.04);
}

.rs-village-card .read_more {
  display: none !important;
}

.rs-village-card .rs-card-content {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 220px;
  min-width: 0;
  padding: 0;
}

.rs-village-card .rs-card-body-inner {
  padding: 28px 30px 16px;
  flex: 1;
  min-width: 0;
  overflow: hidden;
}

.rs-village-card .rs-card-title {
  font-size: 1.3rem;
  font-weight: 600;
  line-height: 1.3;
  margin: 0 0 14px;
  color: #111;
  letter-spacing: -0.02em;
}

.rs-village-card .rs-property-type {
  display: inline-block;
  font-size: 0.7rem;
  font-weight: 600;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  color: #8a7a2f !important;
  background: #fffbe6 !important;
  border-radius: 999px;
  padding: 5px 12px;
  margin-bottom: 14px;
}

.rs-village-card .rs-card-location {
  font-size: 0.92rem;
  color: #6b7280;
  margin: 0 0 16px;
  line-height: 1.5;
}

.rs-village-card .rs-card-description {
  font-size: 14px;
  line-height: 1.65;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
  max-height: 6.6em;
  color: #4a5568;
  margin: 16px 0 0;
  word-break: break-word;
}

.rs-village-card .rs-card-description p {
  font-size: 14px !important;
  line-height: 1.65 !important;
  color: #4a5568 !important;
  margin: 0 !important;
  font-family: Poppins, Helvetica, sans-serif !important;
}

.rs-village-card .rs-card-footer {
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: start;
  column-gap: 28px;
  padding: 18px 30px 24px;
  margin-top: auto;
  border-top: 1px solid #eef0f4;
}

.rs-village-card .rs-explore-cta {
  grid-column: 1;
  display: inline-flex !important;
  align-items: center;
  gap: 8px;
  background: linear-gradient(135deg, #081f7a 0%, #0c2d8f 100%) !important;
  color: #fff !important;
  border: none !important;
  border-radius: 10px;
  font-size: 0.94rem;
  font-weight: 600;
  padding: 12px 20px;
  line-height: 1.2;
  white-space: nowrap;
  box-shadow: 0 4px 14px rgba(8, 31, 122, 0.22);
  margin-top: 2px;
  position: relative;
  top: 0;
}

.rs-village-card a.rs-card-link:hover .rs-explore-cta,
.rs-village-card a.rs-card-link:focus .rs-explore-cta {
  color: #fff !important;
  background: linear-gradient(135deg, #081f7a 0%, #0c2d8f 100%) !important;
}

.rs-village-card .rs-cta-arrow {
  color: #fff !important;
  transition: transform 0.35s ease;
}

.rs-village-card:hover .rs-cta-arrow {
  transform: translateX(3px);
}

.rs-village-card .rs-price-block {
  grid-column: 2;
  justify-self: end;
  text-align: right;
  min-width: 0;
}

.rs-village-card .rs-price-main,
.rs-village-card .rs-price-sub {
  margin: 0;
  padding: 0;
}

.rs-village-card .rs-price-main {
  line-height: 1.45;
}

.rs-village-card .rs-price-was {
  display: inline-block;
  font-size: 0.82rem;
  color: #b0b5bd;
  margin-right: 8px;
}

.rs-village-card .rs-price-was strike {
  text-decoration: line-through;
  color: #b0b5bd;
}

.rs-village-card .rs-price-from {
  font-size: 0.88rem;
  color: #6b7280;
  font-weight: 400;
}

.rs-village-card .rs-price-block strong,
.rs-village-card .rs-price-from strong {
  background: none !important;
  color: #111 !important;
  padding: 0 !important;
  border-radius: 0 !important;
  display: inline !important;
  font-size: 1.28rem !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
}

.rs-village-card a.rs-card-link:hover .rs-price-from strong {
  color: #111 !important;
}

.rs-village-card .rs-price-taxes {
  display: block;
  font-size: 0.78rem;
  color: #9ca3af;
  margin-top: 4px;
}

.rs-village-card .rs-price-sub {
  display: block;
  font-size: 0.8rem;
  color: #9ca3af;
  margin-top: 4px;
}

@media (max-width: 767px) {
  .rs-village-card .rs-card-media figure {
    height: 200px;
    min-height: 190px;
    max-height: 200px;
  }

  .rs-village-card .rs-card-image {
    height: 200px !important;
    min-height: 190px !important;
    max-height: 200px !important;
  }

  .rs-village-card .rs-experience-tags {
    padding: 10px 12px 12px;
    gap: 6px;
  }

  .rs-village-card .rs-experience-tag {
    font-size: 0.62rem;
    padding: 4px 8px;
  }

  .rs-village-card .rs-card-body-inner {
    padding: 22px 20px 14px;
  }

  .rs-village-card .rs-card-footer {
    grid-template-columns: 1fr;
    row-gap: 14px;
    padding: 16px 20px 22px;
  }

  .rs-village-card .rs-explore-cta {
    justify-content: center;
    width: 100%;
  }

  .rs-village-card .rs-price-block {
    justify-self: stretch;
    text-align: left;
  }
}

.rs-price-was{
font-size:14px;
color:#9aa0ad;
position:relative;
display:inline-block;
margin-right:4px;
}

/* create strike line manually */

.rs-price-was::after{
content:"";
position:absolute;
left:0;
top:50%;
width:100%;
height:1.5px;
background:#9aa0ad;
transform:translateY(-50%);
}

/* Current price (₹1699/night) */

.rs-price-current{
font-size:28px;   /* slightly bigger */
font-weight:700;
color:#1b3fa8;    /* RSI blue */
display:inline-flex;
align-items:baseline;
gap:2px;
}

/* /night */

.rs-price-current small{
font-size:14px;
font-weight:500;
color:#55627a;
}

/* Starting from */

.rs-price-label{
font-size:14px;
color:#555;
margin-right:2px;
}

/* BEAUTIFUL MOBILE PRICE EXPERIENCE */

@media (max-width:768px){

/* remove Explore button completely */

.rs-explore-cta,
.rs-card-footer .rs-explore-cta{
display:none !important;
}

/* footer */

.rs-card-footer{
display:block !important;
padding-top:14px !important;
border-top:none !important;
}

/* price area */

.rs-price-block{

display:flex;
justify-content:flex-end;
align-items:flex-end;
width:100%;

padding-right:8px;
}

/* remove taxes and explorers */

.rs-price-taxes,
.rs-price-sub{
display:none !important;
}

/* pricing row */

.rs-price-line{

.rs-price-line{

display:flex !important;
justify-content:flex-end !important;
align-items:center !important;

flex-wrap:nowrap !important;

white-space:nowrap !important;

gap:6px;
}

/* starting from */

.rs-price-label{

font-size:10px;

letter-spacing:1px;

text-transform:uppercase;

color:#7c8494;

white-space:nowrap !important;

flex-shrink:0;
}

/* old price */

.rs-price-was{

display:inline-block;

font-size:13px;

color:#b8bcc7;

text-decoration:line-through;

white-space:nowrap !important;

flex-shrink:0;

opacity:.75;
}


/* Dynamic strike line */

.rs-price-was::after{

content:"";

position:absolute;

left:0;
right:0;

top:50%;

height:1.5px;

background:#b8bcc7;

transform:translateY(-50%);
}

/* hero price */

.rs-price-current{

display:inline-flex;

align-items:baseline;

font-size:40px !important;

font-weight:800 !important;

color:#1841B5 !important;

line-height:1;

white-space:nowrap !important;
}

/* /night */

.rs-price-current small{

margin-left:5px;

font-size:14px;

font-weight:500;

color:#61697a;
}

/* / night spacing */

.rs-price-current small{

font-size:14px;

font-weight:500;

color:#61697a;

margin-left:6px; /* gap added */

margin-right: 6px;

letter-spacing:0;
}
