/*
 * TWA property-card typography.
 * One shared final layer for theme listings, Half Map, map overlays,
 * broker profiles and the Shorts/favourites property surfaces.
 */

:root{
  --twa-property-card-title-font:Georgia,"Times New Roman",serif;
  --twa-property-card-price-dark:#6b5125;
}

/* Native WP Residence cards and search cards. */
html body .listing_wrapper .property_listing .property-unit-information-wrapper h4,
html body .listing_wrapper .property_listing .property-unit-information-wrapper h4>a,
html body .listing_wrapper .property_listing h4,
html body .listing_wrapper .property_listing h4>a,
html body .property_listing .property_listing_details_title,
html body .property_listing .property_listing_details_title>a,
html body .property_listing .listing_unit_title,
html body .property_listing .listing_unit_title>a,
html body .property_listing_blog>h4,
html body .property_listing_blog>h4 .blog_unit_title{
  font-family:var(--twa-property-card-title-font)!important;
}

html body .listing_wrapper .property_listing .property-unit-information-wrapper h4>a,
html body .listing_wrapper .property_listing h4>a,
html body.half_map_body #google_map_prop_list_sidebar .property_listing.property_unit_type8 h4>a.twa-half-map-title-restored,
html body.wpresidence_half_map_body_class #google_map_prop_list_sidebar .property_listing.property_unit_type8 h4>a.twa-half-map-title-restored,
html body .property_listing .property_listing_details_title>a,
html body .property_listing .listing_unit_title>a,
html body .property_listing_blog>h4 .blog_unit_title{
  display:-webkit-box!important;
  overflow:hidden!important;
  max-height:2.5em!important;
  white-space:normal!important;
  text-overflow:clip!important;
  text-wrap:pretty!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  line-clamp:2!important;
  line-height:1.25!important;
}

/* Custom map card. Higher specificity wins over the runtime map stylesheet. */
html body .twa-v73-card .twa-v73-title{
  display:-webkit-box!important;
  overflow:hidden!important;
  max-height:2.5em!important;
  font-family:var(--twa-property-card-title-font)!important;
  white-space:normal!important;
  text-wrap:pretty!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  line-clamp:2!important;
  line-height:1.25!important;
}

/* Public broker portfolio cards. */
html body .twa-broker-public-page .bp-property-card h3,
html body .twa-broker-public-page .bp-property-card h3>a{
  font-family:var(--twa-property-card-title-font)!important;
}
html body .twa-broker-public-page .bp-property-card h3>a{
  display:-webkit-box!important;
  overflow:hidden!important;
  max-height:2.5em!important;
  white-space:normal!important;
  text-wrap:pretty!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  line-clamp:2!important;
  line-height:1.25!important;
}

/* Property cards rendered by Shorts, search and favourites. */
html body .twa-shorts-widget .twa-search-property>div:not(.twa-search-property-media)>strong,
html body .twa-shorts-widget .twa-liked-property-content>strong,
html body .twa-search-property>div:not(.twa-search-property-media)>strong,
html body .twa-liked-property-content>strong{
  display:-webkit-box!important;
  overflow:hidden!important;
  max-height:2.5em!important;
  font-family:var(--twa-property-card-title-font)!important;
  white-space:normal!important;
  text-wrap:pretty!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  line-clamp:2!important;
  line-height:1.25!important;
}

/* One editorial price family across every public property-card surface. */
html body .listing_wrapper .listing_unit_price_wrapper,
html body .listing_wrapper .property_unit_price,
html body .listing_wrapper .property_price,
html body .listing_wrapper .property-price,
html body .property_listing .price_unit,
html body .property_listing .price_unit_wrapper,
html body .property_listing .property_listing_details_price,
html body .property_listing_blog .twa-search-result-price,
html body .twa-v73-card .twa-v73-price,
html body .twa-broker-public-page .bp-property-card__price,
html body .twa-broker-property__content>strong,
html body .twa-shorts-widget .twa-search-property-foot>b,
html body .twa-shorts-widget .twa-liked-property-content>footer>b,
html body .twa-search-property-foot>b,
html body .twa-liked-property-content>footer>b,
html body .twa-condo__listing-card p>strong{
  color:var(--twa-property-card-price-dark)!important;
  font-family:var(--twa-property-card-title-font)!important;
  font-style:normal!important;
  font-weight:500!important;
  font-variant-numeric:tabular-nums!important;
  letter-spacing:-.018em!important;
  line-height:1.15!important;
}

html body .listing_wrapper .listing_unit_price_wrapper,
html body .listing_wrapper .property_unit_price,
html body .listing_wrapper .property_price,
html body .listing_wrapper .property-price,
html body .property_listing .price_unit,
html body .property_listing .price_unit_wrapper,
html body .property_listing .property_listing_details_price,
html body .property_listing_blog .twa-search-result-price,
html body .twa-broker-property__content>strong,
html body .twa-shorts-widget .twa-search-property-foot>b,
html body .twa-shorts-widget .twa-liked-property-content>footer>b,
html body .twa-search-property-foot>b,
html body .twa-liked-property-content>footer>b,
html body .twa-condo__listing-card p>strong{
  font-size:clamp(18px,1.25vw,20px)!important;
}

html body .twa-v73-card .twa-v73-price{
  font-size:20px!important;
}

html body .twa-broker-public-page .bp-property-card__price{
  font-size:24px!important;
}

@supports not (-webkit-line-clamp:2){
  html body .listing_wrapper .property_listing h4>a,
  html body .property_listing_blog>h4 .blog_unit_title,
  html body .twa-v73-card .twa-v73-title,
  html body .twa-broker-public-page .bp-property-card h3>a,
  html body .twa-search-property>div:not(.twa-search-property-media)>strong,
  html body .twa-liked-property-content>strong{
    display:block!important;
    max-height:2.5em!important;
  }
}
