/**
 * RSA Property Listing Cards
 *
 * Shared visual system for the approved Standard and Featured cards.
 *
 * @package RSA_Property_Core
 * @since 1.9.0
 */

/* -------------------------------------------------------------------------
   Design tokens
   ------------------------------------------------------------------------- */

:root {
	--rsa-card-navy: #13233f;
	--rsa-card-navy-2: #1c2f50;
	--rsa-card-red: #e30613;
	--rsa-card-red-hover: #c9000d;
	--rsa-card-text: #1d2736;
	--rsa-card-muted: #6f7884;
	--rsa-card-border: #e4e7eb;
	--rsa-card-border-dark: #d6dbe1;
	--rsa-card-surface: #ffffff;
	--rsa-card-surface-soft: #f7f8fa;
	--rsa-card-success: #138a55;
	--rsa-card-shadow: 0 10px 30px rgba(18, 35, 63, 0.08);
	--rsa-card-shadow-hover: 0 14px 34px rgba(18, 35, 63, 0.13);
	--rsa-card-radius: 14px;
	--rsa-card-transition: 180ms ease;
}

/* -------------------------------------------------------------------------
   Global card foundation
   ------------------------------------------------------------------------- */

.rsa-listing-card,
.rsa-listing-card *,
.rsa-listing-card *::before,
.rsa-listing-card *::after {
	box-sizing: border-box;
}

.rsa-listing-card {
	font-family: inherit;
	color: var(--rsa-card-text);
}

/*
 * Houzez places each result directly inside a Bootstrap .row. Neutralize the
 * row gutter on RSA cards so the approved media/body grid reaches the card
 * border instead of inheriting a 12px white inset on both sides.
 */
.row > .rsa-listing-card {
	padding-right: 0;
	padding-left: 0;
}

/* -------------------------------------------------------------------------
   STANDARD CARD
   Approved canonical compact listing card
   ------------------------------------------------------------------------- */

.rsa-standard-card {
	display: grid;
	grid-template-columns: minmax(0, 39%) minmax(0, 61%);
	width: 100%;
	max-width: 100%;
	min-height: 330px;
	background: var(--rsa-card-surface);
	border: 1px solid var(--rsa-card-border);
	border-radius: var(--rsa-card-radius);
	overflow: hidden;
	box-shadow: var(--rsa-card-shadow);
	transition:
		box-shadow var(--rsa-card-transition),
		transform var(--rsa-card-transition),
		border-color var(--rsa-card-transition);
}

.rsa-standard-card:hover {
	border-color: var(--rsa-card-border-dark);
	box-shadow: var(--rsa-card-shadow-hover);
}

/* -------------------------------------------------------------------------
   Media
   ------------------------------------------------------------------------- */

.rsa-standard-card__media {
	position: relative;
	min-width: 0;
	min-height: 330px;
	overflow: hidden;
	background: #e9edf1;
}

.rsa-standard-card__image-link {
	display: block;
	width: 100%;
	height: 100%;
}

.rsa-standard-card__image {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 330px;
	object-fit: cover;
	object-position: center;
	transition: transform 350ms ease;
}

.rsa-standard-card:hover .rsa-standard-card__image {
	transform: scale(1.015);
}

.rsa-standard-card__image--placeholder {
	background: #e9edf1;
}

.rsa-standard-card__media-controls {
	position: absolute;
	right: 16px;
	bottom: 16px;
	display: flex;
	align-items: center;
	gap: 8px;
	z-index: 2;
}

.rsa-standard-card__media-pill,
.rsa-standard-card__media-icon {
	min-height: 31px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 5px;
	padding: 6px 10px;
	border: 1px solid rgba(255, 255, 255, 0.44);
	border-radius: 7px;
	color: #fff;
	background: rgba(15, 28, 48, 0.82);
	backdrop-filter: blur(5px);
	-webkit-backdrop-filter: blur(5px);
	font-size: 12px;
	line-height: 1;
	font-weight: 700;
}

.rsa-standard-card__media-icon {
	width: 31px;
	padding: 6px;
}

.rsa-standard-card__media-icon--360 {
	width: auto;
	padding-inline: 8px;
}

.rsa-standard-card__media-pill svg,
.rsa-standard-card__media-icon svg {
	width: 15px;
	height: 15px;
	fill: currentColor;
}

/* -------------------------------------------------------------------------
   Body
   ------------------------------------------------------------------------- */

.rsa-standard-card__body {
	display: flex;
	flex-direction: column;
	min-width: 0;
	padding: 21px 24px 0;
	background: var(--rsa-card-surface);
}

/* -------------------------------------------------------------------------
   Top / price / location
   ------------------------------------------------------------------------- */

.rsa-standard-card__top {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 16px;
}

.rsa-standard-card__price-block {
	min-width: 0;
	flex: 1;
}

.rsa-standard-card__price-row {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
}

.rsa-standard-card__price {
	color: var(--rsa-card-navy);
	font-size: 24px;
	line-height: 1.1;
	font-weight: 800;
	letter-spacing: -0.02em;
}

.rsa-standard-card__classification {
	display: inline-flex;
	align-items: center;
	min-height: 25px;
	padding: 5px 9px;
	border-radius: 5px;
	color: #fff;
	background: var(--rsa-card-red);
	font-size: 10px;
	line-height: 1;
	font-weight: 800;
	letter-spacing: 0.05em;
	text-transform: uppercase;
}

.rsa-standard-card__location {
	margin-top: 6px;
	color: var(--rsa-card-muted);
	font-size: 13px;
	line-height: 1.35;
	font-weight: 500;
}

.rsa-standard-card__favorite {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--rsa-card-navy);
	opacity: 0.86;
	cursor: default;
}

.rsa-standard-card__favorite svg {
	width: 22px;
	height: 22px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.8;
}

/* -------------------------------------------------------------------------
   Property specs
   ------------------------------------------------------------------------- */

.rsa-standard-card__specs {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	margin-top: 17px;
	border-top: 1px solid var(--rsa-card-border);
	border-bottom: 1px solid var(--rsa-card-border);
}

.rsa-standard-card__spec {
	position: relative;
	min-width: 0;
	padding: 11px 9px 10px;
	text-align: center;
}

.rsa-standard-card__spec:not(:last-child)::after {
	content: "";
	position: absolute;
	right: 0;
	top: 10px;
	bottom: 10px;
	width: 1px;
	background: var(--rsa-card-border);
}

.rsa-standard-card__spec-label {
	display: block;
	margin-bottom: 3px;
	color: var(--rsa-card-muted);
	font-size: 10px;
	line-height: 1.1;
	font-weight: 600;
}

.rsa-standard-card__spec strong {
	display: block;
	overflow: hidden;
	color: var(--rsa-card-navy);
	font-size: 13px;
	line-height: 1.15;
	font-weight: 800;
	white-space: nowrap;
	text-overflow: ellipsis;
}

/* -------------------------------------------------------------------------
   Agent
   ------------------------------------------------------------------------- */

.rsa-standard-card__identity {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 15px 0 13px;
	border-bottom: 1px solid var(--rsa-card-border);
}

.rsa-standard-card__agent {
	display: flex;
	align-items: center;
	min-width: 0;
	gap: 10px;
}

.rsa-standard-card__agent > a {
	display: flex;
	flex: 0 0 auto;
}

.rsa-standard-card__agent-photo {
	width: 43px;
	height: 43px;
	flex: 0 0 43px;
	border-radius: 50%;
	object-fit: cover;
	object-position: center;
	border: 2px solid #fff;
	box-shadow: 0 0 0 1px var(--rsa-card-border);
}

.rsa-standard-card__agent-details {
	min-width: 0;
}

.rsa-standard-card__agent-name {
	overflow: hidden;
	color: var(--rsa-card-navy);
	font-size: 12px;
	line-height: 1.25;
	font-weight: 800;
	white-space: nowrap;
	text-overflow: ellipsis;
}

.rsa-standard-card__agent-meta {
	margin-top: 2px;
	color: var(--rsa-card-muted);
	font-size: 9px;
	line-height: 1.2;
	font-weight: 500;
}

/* -------------------------------------------------------------------------
   Agent contact buttons
   ------------------------------------------------------------------------- */

.rsa-standard-card__contact-actions {
	display: flex;
	align-items: center;
	gap: 7px;
	flex: 0 0 auto;
}

.rsa-standard-card__contact {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 31px;
	height: 31px;
	border: 1px solid var(--rsa-card-border-dark);
	border-radius: 6px;
	background: #fff;
	color: var(--rsa-card-navy);
	text-decoration: none;
	transition:
		color var(--rsa-card-transition),
		border-color var(--rsa-card-transition),
		background var(--rsa-card-transition);
}

.rsa-standard-card__contact:hover {
	border-color: var(--rsa-card-red);
	color: var(--rsa-card-red);
	background: #fffafa;
}

.rsa-standard-card__contact svg {
	width: 15px;
	height: 15px;
	fill: currentColor;
}

.rsa-standard-card__contact--whatsapp {
	color: #238c56;
	font-size: 9px;
	font-weight: 900;
}

/* -------------------------------------------------------------------------
   Agency / CTA
   ------------------------------------------------------------------------- */

.rsa-standard-card__agency-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	padding: 13px 0;
}

.rsa-standard-card__agency {
	display: flex;
	align-items: center;
	min-width: 0;
	gap: 10px;
}

.rsa-standard-card__agency-logo {
	width: 42px;
	height: 42px;
	flex: 0 0 42px;
	object-fit: contain;
	object-position: center;
	border-radius: 5px;
	background: #fff;
}

.rsa-standard-card__agency-copy {
	min-width: 0;
}

.rsa-standard-card__agency-name {
	max-width: 220px;
	overflow: hidden;
	color: var(--rsa-card-navy);
	font-size: 11px;
	line-height: 1.2;
	font-weight: 800;
	white-space: nowrap;
	text-overflow: ellipsis;
}

.rsa-standard-card__verified {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	margin-top: 3px;
	color: var(--rsa-card-success);
	font-size: 9px;
	line-height: 1.15;
	font-weight: 700;
}

.rsa-standard-card__verified-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 13px;
	height: 13px;
	border-radius: 50%;
	background: var(--rsa-card-success);
	color: #fff;
	font-size: 8px;
	font-weight: 900;
}

.rsa-standard-card__view {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 108px;
	min-height: 35px;
	padding: 9px 15px;
	border: 1px solid var(--rsa-card-red);
	border-radius: 5px;
	background: var(--rsa-card-red);
	color: #fff !important;
	font-size: 10px;
	line-height: 1;
	font-weight: 800;
	letter-spacing: 0.035em;
	text-decoration: none !important;
	text-transform: uppercase;
	transition:
		background var(--rsa-card-transition),
		border-color var(--rsa-card-transition),
		transform var(--rsa-card-transition);
}

.rsa-standard-card__view:hover {
	border-color: var(--rsa-card-red-hover);
	background: var(--rsa-card-red-hover);
	color: #fff !important;
	transform: translateY(-1px);
}

/* -------------------------------------------------------------------------
   Bottom metadata
   ------------------------------------------------------------------------- */

.rsa-standard-card__footer {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px 18px;
	margin-top: auto;
	margin-inline: -24px;
	padding: 9px 24px 10px;
	border-top: 1px solid var(--rsa-card-border);
	background: var(--rsa-card-surface-soft);
}

.rsa-standard-card__footer-item {
	color: var(--rsa-card-muted);
	font-size: 9px;
	line-height: 1.2;
}

.rsa-standard-card__footer-item strong {
	color: var(--rsa-card-text);
	font-weight: 700;
}

/* -------------------------------------------------------------------------
   Desktop width protection
   ------------------------------------------------------------------------- */

@media (min-width: 1100px) {

	.rsa-standard-card {
		min-height: 330px;
	}

	.rsa-standard-card__body {
		min-height: 330px;
	}

}

/* -------------------------------------------------------------------------
   Tablet
   ------------------------------------------------------------------------- */

@media (max-width: 991px) {

	.rsa-standard-card {
		grid-template-columns: minmax(0, 42%) minmax(0, 58%);
	}

	.rsa-standard-card__body {
		padding-inline: 18px;
	}

	.rsa-standard-card__footer {
		margin-inline: -18px;
		padding-inline: 18px;
	}

	.rsa-standard-card__specs {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.rsa-standard-card__spec:nth-child(3n)::after {
		display: none;
	}

	.rsa-standard-card__price {
		font-size: 21px;
	}

	.rsa-standard-card__agency-name {
		max-width: 150px;
	}

}

/* -------------------------------------------------------------------------
   Mobile
   ------------------------------------------------------------------------- */

@media (max-width: 767px) {

	.rsa-standard-card {
		display: block;
		min-height: 0;
	}

	.rsa-standard-card__media {
		min-height: 235px;
		height: 235px;
	}

	.rsa-standard-card__image {
		min-height: 235px;
		height: 235px;
	}

	.rsa-standard-card__body {
		padding: 18px 18px 0;
	}

	.rsa-standard-card__price {
		font-size: 22px;
	}

	.rsa-standard-card__specs {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.rsa-standard-card__identity {
		align-items: flex-start;
	}

	.rsa-standard-card__agency-row {
		align-items: stretch;
		flex-direction: column;
	}

	.rsa-standard-card__view {
		width: 100%;
		min-height: 40px;
	}

	.rsa-standard-card__footer {
		margin-inline: -18px;
		padding-inline: 18px;
	}

}

/* -------------------------------------------------------------------------
   Small mobile
   ------------------------------------------------------------------------- */

@media (max-width: 479px) {

	.rsa-standard-card {
		border-radius: 11px;
	}

	.rsa-standard-card__media {
		min-height: 210px;
		height: 210px;
	}

	.rsa-standard-card__image {
		min-height: 210px;
		height: 210px;
	}

	.rsa-standard-card__top {
		gap: 8px;
	}

	.rsa-standard-card__specs {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.rsa-standard-card__spec:nth-child(3n)::after {
		display: block;
	}

	.rsa-standard-card__spec:nth-child(2n)::after {
		display: none;
	}

	.rsa-standard-card__identity {
		flex-direction: column;
	}

	.rsa-standard-card__contact-actions {
		width: 100%;
	}

	.rsa-standard-card__contact {
		flex: 1 1 0;
		width: auto;
	}

}

/* -------------------------------------------------------------------------
   FEATURED CARD
   Approved premium horizontal listing card
   ------------------------------------------------------------------------- */

.rsa-featured-card {
	width: 100%;
	max-width: 100%;
	margin-top: 24px;
	padding: 0;
	overflow: hidden;
	border: 1px solid var(--rsa-card-border);
	border-radius: var(--rsa-card-radius);
	background: var(--rsa-card-surface);
	box-shadow: var(--rsa-card-shadow);
}

.rsa-featured-card__main {
	display: grid;
	grid-template-columns: minmax(0, 50%) minmax(0, 50%);
	min-height: 430px;
}

.rsa-featured-card__media {
	position: relative;
	min-width: 0;
	min-height: 430px;
	overflow: hidden;
	background: #e9edf1;
}

.rsa-featured-card__image-link,
.rsa-featured-card__image {
	display: block;
	width: 100%;
	height: 100%;
}

.rsa-featured-card__image {
	min-height: 430px;
	object-fit: cover;
	object-position: center;
	transition: transform 350ms ease;
}

.rsa-featured-card:hover .rsa-featured-card__image {
	transform: scale(1.012);
}

.rsa-featured-card__image--placeholder {
	background: #e9edf1;
}

.rsa-featured-card__image-count {
	position: absolute;
	top: 18px;
	left: 18px;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-height: 38px;
	padding: 8px 13px;
	border: 1px solid rgba(255,255,255,.4);
	border-radius: 7px;
	background: rgba(15,28,48,.84);
	color: #fff;
	font-size: 14px;
	font-weight: 800;
	line-height: 1;
}

.rsa-featured-card__image-count svg {
	width: 19px;
	height: 19px;
	fill: currentColor;
}

.rsa-featured-card__media-actions {
	position: absolute;
	right: 20px;
	bottom: 20px;
	display: flex;
	gap: 12px;
}

.rsa-featured-card__media-actions span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	border: 1px solid var(--rsa-card-border);
	border-radius: 8px;
	background: rgba(255,255,255,.95);
	color: var(--rsa-card-navy);
	font-size: 11px;
	font-weight: 900;
	box-shadow: 0 4px 14px rgba(18,35,63,.12);
}

.rsa-featured-card__media-actions svg {
	width: 21px;
	height: 21px;
	fill: currentColor;
}

.rsa-featured-card__content {
	display: flex;
	flex-direction: column;
	min-width: 0;
	padding: 28px 30px 25px;
}

.rsa-featured-card__badges {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	min-height: 28px;
}

.rsa-featured-card__badges span {
	display: inline-flex;
	align-items: center;
	min-height: 28px;
	padding: 7px 11px;
	border-radius: 5px;
	color: #fff;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: .045em;
	line-height: 1;
	text-transform: uppercase;
}

.rsa-featured-card__badge--featured {
	background: var(--rsa-card-red);
}

.rsa-featured-card__badge--premium {
	background: var(--rsa-card-navy);
}

.rsa-featured-card__badge--classification {
	background: var(--rsa-card-navy-2);
}

.rsa-featured-card__heading {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 18px;
	margin-top: 18px;
}

.rsa-featured-card__heading h3 {
	margin: 0;
	max-width: 440px;
	color: var(--rsa-card-navy);
	font-size: 27px;
	font-weight: 800;
	letter-spacing: -.025em;
	line-height: 1.14;
}

.rsa-featured-card__heading h3 a {
	color: inherit;
	text-decoration: none;
}

.rsa-featured-card__heading button {
	flex: 0 0 auto;
	width: 40px;
	height: 40px;
	padding: 7px;
	border: 0;
	background: transparent;
	color: var(--rsa-card-navy);
	opacity: .9;
}

.rsa-featured-card__heading button svg {
	width: 25px;
	height: 25px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.8;
}

.rsa-featured-card__location {
	display: flex;
	align-items: center;
	gap: 9px;
	margin-top: 12px;
	color: var(--rsa-card-text);
	font-size: 13px;
	font-weight: 600;
	line-height: 1.35;
}

.rsa-featured-card__location b {
	width: 10px;
	height: 10px;
	border: 3px solid var(--rsa-card-red);
	border-radius: 50%;
}

.rsa-featured-card__specs {
	display: grid;
	grid-template-columns: repeat(5, minmax(0,1fr));
	margin-top: 24px;
	padding: 15px 0;
	border-top: 1px solid var(--rsa-card-border);
	border-bottom: 1px solid var(--rsa-card-border);
}

.rsa-featured-card__specs > div {
	position: relative;
	min-width: 0;
	padding: 0 8px;
	text-align: center;
}

.rsa-featured-card__specs > div:not(:last-child)::after {
	content: "";
	position: absolute;
	top: 2px;
	right: 0;
	bottom: 2px;
	width: 1px;
	background: var(--rsa-card-border);
}

.rsa-featured-card__specs strong,
.rsa-featured-card__specs span {
	display: block;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}

.rsa-featured-card__specs strong {
	color: var(--rsa-card-navy);
	font-size: 15px;
	font-weight: 800;
	line-height: 1.15;
}

.rsa-featured-card__specs span {
	margin-top: 5px;
	color: var(--rsa-card-muted);
	font-size: 9px;
	font-weight: 600;
	line-height: 1.15;
}

.rsa-featured-card__price-row {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 20px;
	margin-top: auto;
	padding-top: 22px;
}

.rsa-featured-card__price {
	display: block;
	color: var(--rsa-card-navy);
	font-size: 30px;
	font-weight: 800;
	letter-spacing: -.025em;
	line-height: 1;
}

.rsa-featured-card__price-note {
	display: block;
	margin-top: 8px;
	color: var(--rsa-card-muted);
	font-size: 12px;
	font-weight: 600;
}

.rsa-featured-card__view {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 18px;
	min-width: 168px;
	min-height: 48px;
	padding: 12px 18px;
	border: 1px solid var(--rsa-card-red);
	border-radius: 6px;
	background: var(--rsa-card-red);
	color: #fff !important;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .035em;
	text-decoration: none !important;
	text-transform: uppercase;
}

.rsa-featured-card__view:hover {
	border-color: var(--rsa-card-red-hover);
	background: var(--rsa-card-red-hover);
}

.rsa-featured-card__view span {
	font-size: 21px;
	font-weight: 400;
	line-height: 1;
}

.rsa-featured-card__identity {
	display: grid;
	grid-template-columns: minmax(0,50%) minmax(0,50%);
	min-height: 112px;
	border-top: 1px solid var(--rsa-card-border);
}

.rsa-featured-card__agent,
.rsa-featured-card__agency {
	display: flex;
	align-items: center;
	min-width: 0;
	padding: 20px 28px;
}

.rsa-featured-card__agent {
	gap: 13px;
	border-right: 1px solid var(--rsa-card-border);
}

.rsa-featured-card__agent img {
	width: 58px;
	height: 58px;
	border-radius: 50%;
	object-fit: cover;
	border: 2px solid #fff;
	box-shadow: 0 0 0 1px var(--rsa-card-border);
}

.rsa-featured-card__agent > div,
.rsa-featured-card__agency > div {
	min-width: 0;
}

.rsa-featured-card__agent > div span,
.rsa-featured-card__agent > div strong,
.rsa-featured-card__agent > div small,
.rsa-featured-card__agency > div strong,
.rsa-featured-card__agency > div span {
	display: block;
}

.rsa-featured-card__agent > div span,
.rsa-featured-card__agent > div small {
	color: var(--rsa-card-muted);
	font-size: 9px;
	line-height: 1.2;
}

.rsa-featured-card__agent > div strong {
	overflow: hidden;
	margin: 4px 0;
	color: var(--rsa-card-navy);
	font-size: 13px;
	font-weight: 800;
	white-space: nowrap;
	text-overflow: ellipsis;
}

.rsa-featured-card__agent nav {
	display: flex;
	gap: 8px;
	margin-left: auto;
}

.rsa-featured-card__agent nav a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	border: 1px solid var(--rsa-card-border-dark);
	border-radius: 50%;
	background: #fff;
	color: var(--rsa-card-navy);
	font-size: 8px;
	font-weight: 900;
	text-decoration: none;
}

.rsa-featured-card__agency {
	gap: 15px;
}

.rsa-featured-card__agency img {
	width: 66px;
	height: 54px;
	object-fit: contain;
}

.rsa-featured-card__agency > div strong {
	max-width: 310px;
	overflow: hidden;
	color: var(--rsa-card-navy);
	font-size: 12px;
	font-weight: 800;
	white-space: nowrap;
	text-overflow: ellipsis;
}

.rsa-featured-card__agency > div span {
	margin-top: 8px;
	color: var(--rsa-card-navy);
	font-size: 9px;
	font-weight: 800;
	letter-spacing: .025em;
	text-transform: uppercase;
}

.rsa-featured-card__agency > div span b {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 18px;
	height: 18px;
	margin-right: 7px;
	border-radius: 5px;
	background: var(--rsa-card-navy);
	color: #fff;
}

.rsa-featured-card__footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	min-height: 45px;
	padding: 11px 28px;
	border-top: 1px solid var(--rsa-card-border);
	background: var(--rsa-card-surface-soft);
}

.rsa-featured-card__footer span {
	color: var(--rsa-card-muted);
	font-size: 9px;
}

.rsa-featured-card__footer strong {
	color: var(--rsa-card-text);
	font-weight: 700;
}

@media (max-width: 991px) {
	.rsa-featured-card__main {
		grid-template-columns: minmax(0,44%) minmax(0,56%);
	}
	.rsa-featured-card__content {
		padding: 24px 22px;
	}
	.rsa-featured-card__heading h3 {
		font-size: 23px;
	}
	.rsa-featured-card__specs {
		grid-template-columns: repeat(3,minmax(0,1fr));
	}
	.rsa-featured-card__price {
		font-size: 25px;
	}
	.rsa-featured-card__view {
		min-width: 138px;
	}
	.rsa-featured-card__agent,
	.rsa-featured-card__agency {
		padding-inline: 20px;
	}
}

@media (max-width: 767px) {
	.rsa-featured-card__main,
	.rsa-featured-card__identity {
		display: block;
	}
	.rsa-featured-card__media {
		min-height: 270px;
		height: 270px;
	}
	.rsa-featured-card__image {
		min-height: 270px;
	}
	.rsa-featured-card__content {
		min-height: 380px;
	}
	.rsa-featured-card__agent {
		border-right: 0;
		border-bottom: 1px solid var(--rsa-card-border);
	}
	.rsa-featured-card__footer {
		align-items: flex-start;
		flex-direction: column;
	}
}

@media (max-width: 479px) {
	.rsa-featured-card__content {
		min-height: 0;
		padding: 20px 18px;
	}
	.rsa-featured-card__heading h3 {
		font-size: 21px;
	}
	.rsa-featured-card__specs {
		grid-template-columns: repeat(2,minmax(0,1fr));
	}
	.rsa-featured-card__specs > div {
		padding: 9px 6px;
	}
	.rsa-featured-card__price-row {
		align-items: stretch;
		flex-direction: column;
	}
	.rsa-featured-card__view {
		width: 100%;
	}
	.rsa-featured-card__agent,
	.rsa-featured-card__agency {
		padding: 18px;
	}
	.rsa-featured-card__agent nav {
		gap: 5px;
	}
	.rsa-featured-card__agent nav a {
		width: 31px;
		height: 31px;
	}
}


/* -------------------------------------------------------------------------
   APPROVED CARD PROPORTIONS - desktop refinement
   ------------------------------------------------------------------------- */

@media (min-width: 992px) {
	.rsa-standard-v2,
	.rsa-featured-card {
		width: calc(100% - 32px);
		max-width: calc(100% - 32px);
	}

	.rsa-featured-card__main {
		min-height: 380px;
	}

	.rsa-featured-card__media,
	.rsa-featured-card__image {
		min-height: 380px;
	}

	.rsa-featured-card__content {
		padding: 24px 26px 21px;
	}

	.rsa-featured-card__heading {
		margin-top: 14px;
	}

	.rsa-featured-card__heading h3 {
		font-size: 25px;
	}

	.rsa-featured-card__specs {
		margin-top: 18px;
		padding: 13px 0;
	}

	.rsa-featured-card__price-row {
		padding-top: 17px;
	}

	.rsa-featured-card__price {
		font-size: 28px;
	}

	.rsa-featured-card__identity {
		min-height: 100px;
	}

	.rsa-featured-card__agent,
	.rsa-featured-card__agency {
		padding: 16px 24px;
	}

	.rsa-featured-card__agent img {
		width: 54px;
		height: 54px;
	}

	.rsa-featured-card__footer {
		min-height: 42px;
		padding: 10px 24px;
	}
}

/* -------------------------------------------------------------------------
   STANDARD V2 - approved full-width identity band
   ------------------------------------------------------------------------- */

.rsa-standard-v2 {
	display: block;
	min-height: 0;
	background: var(--rsa-card-surface);
}

.rsa-standard-v2__main {
	display: grid;
	grid-template-columns: minmax(0,42%) minmax(0,58%);
	min-height: 270px;
}

.rsa-standard-v2__media {
	position: relative;
	min-width: 0;
	min-height: 270px;
	overflow: hidden;
	background: var(--rsa-card-image-surface, #e9edf1);
}

.rsa-standard-v2__media > a,
.rsa-standard-v2__media img,
.rsa-standard-v2__placeholder {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 270px;
}

.rsa-standard-v2__media img {
	object-fit: cover;
	object-position: center;
	transition: transform 350ms ease;
}

.rsa-standard-v2:hover .rsa-standard-v2__media img {
	transform: scale(1.012);
}

.rsa-standard-v2__count {
	position: absolute;
	top: 16px;
	left: 16px;
	display: inline-flex;
	align-items: center;
	gap: 7px;
	min-height: 36px;
	padding: 8px 12px;
	border: 1px solid rgba(255,255,255,.4);
	border-radius: 7px;
	background: rgba(15,28,48,.84);
	color: #fff;
	font-size: 13px;
	font-weight: 800;
	line-height: 1;
}

.rsa-standard-v2__count svg {
	width: 18px;
	height: 18px;
	fill: currentColor;
}

.rsa-standard-v2__media-actions {
	position: absolute;
	right: 17px;
	bottom: 17px;
	display: flex;
	gap: 10px;
}

.rsa-standard-v2__media-actions span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 43px;
	height: 43px;
	border: 1px solid var(--rsa-card-border);
	border-radius: 7px;
	background: rgba(255,255,255,.96);
	color: var(--rsa-card-navy);
	font-size: 10px;
	font-weight: 900;
	box-shadow: 0 4px 14px rgba(18,35,63,.12);
}

.rsa-standard-v2__media-actions svg {
	width: 19px;
	height: 19px;
	fill: currentColor;
}

.rsa-standard-v2__content {
	display: flex;
	flex-direction: column;
	min-width: 0;
	padding: 24px 28px;
}

.rsa-standard-v2__price-row {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 16px;
}

.rsa-standard-v2__price-row > div {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
	min-width: 0;
}

.rsa-standard-v2__price-row > div > strong {
	color: var(--rsa-card-navy);
	font-size: 29px;
	font-weight: 800;
	letter-spacing: -.025em;
	line-height: 1;
}

.rsa-standard-v2__price-row > div > span {
	padding: 6px 9px;
	border-radius: 5px;
	background: var(--rsa-card-red);
	color: #fff;
	font-size: 9px;
	font-weight: 800;
	letter-spacing: .045em;
	text-transform: uppercase;
}

.rsa-standard-v2__price-row button {
	flex: 0 0 auto;
	width: 38px;
	height: 38px;
	padding: 6px;
	border: 0;
	background: transparent;
	color: var(--rsa-card-navy);
}

.rsa-standard-v2__price-row button svg {
	width: 25px;
	height: 25px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.8;
}

.rsa-standard-v2__location {
	display: flex;
	align-items: center;
	gap: 9px;
	margin-top: 13px;
	color: var(--rsa-card-text);
	font-size: 13px;
	font-weight: 700;
}

.rsa-standard-v2__location b {
	width: 10px;
	height: 10px;
	border: 3px solid var(--rsa-card-red);
	border-radius: 50%;
}

.rsa-standard-v2__specs {
	display: grid;
	grid-template-columns: repeat(5,minmax(0,1fr));
	margin-top: auto;
	padding: 17px 0 8px;
}

.rsa-standard-v2__specs > div {
	position: relative;
	min-width: 0;
	padding: 0 7px;
	text-align: center;
}

.rsa-standard-v2__specs > div:not(:last-child)::after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	width: 1px;
	background: var(--rsa-card-border);
}

.rsa-standard-v2__specs strong,
.rsa-standard-v2__specs span {
	display: block;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}

.rsa-standard-v2__specs strong {
	color: var(--rsa-card-navy);
	font-size: 14px;
	font-weight: 800;
}

.rsa-standard-v2__specs span {
	margin-top: 5px;
	color: var(--rsa-card-muted);
	font-size: 9px;
	font-weight: 600;
}

.rsa-standard-v2__identity {
	display: grid;
	grid-template-columns: minmax(0,42%) minmax(0,35%) minmax(135px,23%);
	align-items: center;
	min-height: 130px;
	border-top: 1px solid var(--rsa-card-border);
}

.rsa-standard-v2__agent,
.rsa-standard-v2__agency {
	display: flex;
	align-items: center;
	min-width: 0;
	height: 100%;
	padding: 18px 24px;
}

.rsa-standard-v2__agent {
	gap: 13px;
}

.rsa-standard-v2__agent img {
	width: 58px;
	height: 58px;
	border-radius: 50%;
	object-fit: cover;
	border: 2px solid #fff;
	box-shadow: 0 0 0 1px var(--rsa-card-border);
}

.rsa-standard-v2__agent > div,
.rsa-standard-v2__agency > div {
	min-width: 0;
}

.rsa-standard-v2__agent > div span,
.rsa-standard-v2__agent > div strong,
.rsa-standard-v2__agent > div small,
.rsa-standard-v2__agency strong,
.rsa-standard-v2__agency span {
	display: block;
}

.rsa-standard-v2__agent > div span,
.rsa-standard-v2__agent > div small {
	color: var(--rsa-card-muted);
	font-size: 9px;
	line-height: 1.2;
}

.rsa-standard-v2__agent > div strong {
	overflow: hidden;
	margin: 4px 0;
	color: var(--rsa-card-navy);
	font-size: 13px;
	font-weight: 800;
	white-space: nowrap;
	text-overflow: ellipsis;
}

.rsa-standard-v2__agent nav {
	display: flex;
	gap: 7px;
	margin-left: auto;
}

.rsa-standard-v2__agent nav a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	border: 1px solid var(--rsa-card-border-dark);
	border-radius: 50%;
	background: #fff;
	color: var(--rsa-card-navy);
	font-size: 8px;
	font-weight: 900;
	text-decoration: none;
}

.rsa-standard-v2__agency {
	gap: 12px;
	border-left: 1px solid var(--rsa-card-border);
}

.rsa-standard-v2__agency img {
	width: 60px;
	height: 50px;
	object-fit: contain;
}

.rsa-standard-v2__agency strong {
	max-width: 210px;
	overflow: hidden;
	color: var(--rsa-card-navy);
	font-size: 11px;
	font-weight: 800;
	white-space: nowrap;
	text-overflow: ellipsis;
}

.rsa-standard-v2__agency span {
	margin-top: 7px;
	color: var(--rsa-card-navy);
	font-size: 8px;
	font-weight: 800;
	text-transform: uppercase;
}

.rsa-standard-v2__agency span b {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 16px;
	height: 16px;
	margin-right: 6px;
	border-radius: 4px;
	background: var(--rsa-card-navy);
	color: #fff;
}

.rsa-standard-v2__view {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	min-width: 135px;
	min-height: 43px;
	margin: 0 20px 0 12px;
	padding: 11px 14px;
	border-radius: 6px;
	background: var(--rsa-card-red);
	color: #fff !important;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: .035em;
	text-decoration: none !important;
	text-transform: uppercase;
}

.rsa-standard-v2__view span {
	font-size: 18px;
}

.rsa-standard-v2__footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	min-height: 42px;
	padding: 10px 24px;
	border-top: 1px solid var(--rsa-card-border);
	background: var(--rsa-card-surface-soft);
}

.rsa-standard-v2__footer span {
	color: var(--rsa-card-muted);
	font-size: 9px;
}

.rsa-standard-v2__footer strong {
	color: var(--rsa-card-text);
}

@media (max-width: 991px) {
	.rsa-standard-v2__main {
		grid-template-columns: minmax(0,44%) minmax(0,56%);
	}
	.rsa-standard-v2__identity {
		grid-template-columns: 1fr 1fr;
	}
	.rsa-standard-v2__view {
		grid-column: 1 / -1;
		width: calc(100% - 36px);
		margin: 0 18px 18px;
	}
}

@media (max-width: 767px) {
	.rsa-standard-v2__main,
	.rsa-standard-v2__identity {
		display: block;
	}
	.rsa-standard-v2__media,
	.rsa-standard-v2__media > a,
	.rsa-standard-v2__media img,
	.rsa-standard-v2__placeholder {
		min-height: 235px;
		height: 235px;
	}
	.rsa-standard-v2__content {
		min-height: 280px;
		padding: 20px 18px;
	}
	.rsa-standard-v2__specs {
		grid-template-columns: repeat(3,minmax(0,1fr));
		margin-top: 22px;
	}
	.rsa-standard-v2__agent,
	.rsa-standard-v2__agency {
		min-height: 96px;
		padding: 18px;
	}
	.rsa-standard-v2__agency {
		border-top: 1px solid var(--rsa-card-border);
		border-left: 0;
	}
}

@media (max-width: 479px) {
	.rsa-standard-v2__price-row > div > strong {
		font-size: 24px;
	}
	.rsa-standard-v2__specs {
		grid-template-columns: repeat(2,minmax(0,1fr));
	}
	.rsa-standard-v2__agent {
		align-items: flex-start;
		flex-wrap: wrap;
	}
	.rsa-standard-v2__agent nav {
		width: 100%;
		margin-left: 0;
	}
	.rsa-standard-v2__agent nav a {
		flex: 1 1 0;
		border-radius: 6px;
	}
}


/* Desktop cards reduced by 20% from the approved refined composition. */
@media (min-width: 992px) {
	.row > .rsa-standard-v2,
	.row > .rsa-featured-card {
		width: calc(80% - 25.6px);
		max-width: calc(80% - 25.6px);
		margin-right: calc(20% + 25.6px);
	}

	.rsa-standard-v2__main,
	.rsa-standard-v2__media,
	.rsa-standard-v2__media > a,
	.rsa-standard-v2__media img,
	.rsa-standard-v2__placeholder {
		height: 216px;
		min-height: 216px;
	}

	.rsa-standard-v2__content {
		height: 216px;
		padding: 19px 22px;
	}

	.rsa-standard-v2__price-row > div > strong {
		font-size: 23px;
	}

	.rsa-standard-v2__location {
		margin-top: 10px;
		font-size: 10px;
	}

	.rsa-standard-v2__specs {
		padding: 13px 0 6px;
	}

	.rsa-standard-v2__specs strong {
		font-size: 11px;
	}

	.rsa-standard-v2__identity {
		height: 96px;
		min-height: 96px;
	}

	.rsa-standard-v2__agent,
	.rsa-standard-v2__agency {
		padding: 14px 19px;
	}

	.rsa-standard-v2__agent img {
		width: 46px;
		height: 46px;
	}

	.rsa-standard-v2__agency img {
		width: 48px;
		height: 40px;
	}

	.rsa-standard-v2__view {
		min-width: 108px;
		min-height: 35px;
		margin-inline: 10px 16px;
		padding: 8px 11px;
		font-size: 8px;
	}

	.rsa-standard-v2__footer,
	.rsa-featured-card__footer {
		min-height: 34px;
		height: 34px;
		padding: 7px 19px;
	}

	.rsa-featured-card__main,
	.rsa-featured-card__media,
	.rsa-featured-card__image {
		height: 304px;
		min-height: 304px;
	}

	.rsa-featured-card__content {
		height: 304px;
		padding: 19px 21px 17px;
		overflow: hidden;
	}

	.rsa-featured-card__badges span {
		min-height: 22px;
		padding: 5px 9px;
		font-size: 8px;
	}

	.rsa-featured-card__heading {
		margin-top: 11px;
	}

	.rsa-featured-card__heading h3 {
		font-size: 20px;
	}

	.rsa-featured-card__location {
		margin-top: 9px;
		font-size: 10px;
	}

	.rsa-featured-card__specs {
		margin-top: 14px;
		padding: 10px 0;
	}

	.rsa-featured-card__specs strong {
		font-size: 12px;
	}

	.rsa-featured-card__price-row {
		padding-top: 13px;
	}

	.rsa-featured-card__price {
		font-size: 22px;
	}

	.rsa-featured-card__view {
		min-width: 134px;
		min-height: 38px;
		padding: 9px 14px;
		font-size: 9px;
	}

	.rsa-featured-card__identity {
		height: 80px;
		min-height: 80px;
	}

	.rsa-featured-card__agent,
	.rsa-featured-card__agency {
		padding: 12px 19px;
	}

	.rsa-featured-card__agent img {
		width: 43px;
		height: 43px;
	}

	.rsa-featured-card__agency img {
		width: 53px;
		height: 43px;
	}
}

.rsa-standard-v2__identity--agency-only {
	grid-template-columns: minmax(0,77%) minmax(108px,23%);
}

.rsa-standard-v2__identity--agency-only .rsa-standard-v2__agent {
	display: none;
}

.rsa-standard-v2__identity--agency-only .rsa-standard-v2__agency {
	border-left: 0;
}

.rsa-featured-card__identity--agency-only {
	display: block;
}

.rsa-featured-card__identity--agency-only .rsa-featured-card__agent {
	display: none;
}

.rsa-featured-card__identity--agency-only .rsa-featured-card__agency {
	width: 100%;
	height: 100%;
}


@media (min-width: 992px) {
	.row > .rsa-standard-v2,
	.row > .rsa-featured-card {
		width: calc(80% - 25.6px);
		max-width: calc(80% - 25.6px);
		margin-right: calc(20% + 25.6px);
	}

	.rsa-standard-v2__main,
	.rsa-standard-v2__media,
	.rsa-standard-v2__media > a,
	.rsa-standard-v2__media img,
	.rsa-standard-v2__placeholder {
		height: 216px;
		min-height: 216px;
	}

	.rsa-standard-v2__content {
		height: 216px;
		overflow: hidden;
	}

	.rsa-standard-v2__identity {
		min-height: 96px;
		height: 96px;
	}
}


/* Final legibility, ordering and Standard height refinement. */
@media (min-width: 992px) {
	.rsa-standard-v2__main,
	.rsa-standard-v2__media,
	.rsa-standard-v2__media > a,
	.rsa-standard-v2__media img,
	.rsa-standard-v2__placeholder {
		height: 194px;
		min-height: 194px;
	}

	.rsa-standard-v2__content {
		height: 194px;
		padding: 17px 20px;
	}

	.rsa-standard-v2__identity {
		height: 86px;
		min-height: 86px;
		grid-template-columns: minmax(0,35%) minmax(0,42%) minmax(108px,23%);
	}

	.rsa-standard-v2__footer {
		height: 31px;
		min-height: 31px;
		padding: 5px 17px;
	}

	.rsa-standard-v2__agent,
	.rsa-standard-v2__agency {
		padding: 11px 16px;
	}

	.rsa-standard-v2__agent img {
		width: 44px;
		height: 44px;
	}

	.rsa-standard-v2__agency img {
		width: 47px;
		height: 39px;
	}
}

.rsa-standard-v2__agency,
.rsa-featured-card__agency {
	order: 1;
}

.rsa-standard-v2__agent,
.rsa-featured-card__agent {
	order: 2;
}

.rsa-standard-v2__view {
	order: 3;
}

.rsa-standard-v2__agency {
	border-left: 0;
	border-right: 1px solid var(--rsa-card-border);
}

.rsa-featured-card__agency {
	border-right: 1px solid var(--rsa-card-border);
}

.rsa-featured-card__agent {
	border-right: 0;
}

.rsa-standard-v2__identity--agency-only {
	grid-template-columns: minmax(0,77%) minmax(108px,23%);
}

.rsa-standard-v2__identity--agency-only .rsa-standard-v2__agency,
.rsa-featured-card__identity--agency-only .rsa-featured-card__agency {
	border-right: 0;
}

.rsa-standard-v2__price-row > div > strong {
	font-size: 25px;
}

.rsa-standard-v2__location,
.rsa-featured-card__location {
	font-size: 12px;
}

.rsa-standard-v2__specs strong {
	font-size: 13px;
}

.rsa-standard-v2__specs span,
.rsa-featured-card__specs span {
	font-size: 10px;
}

.rsa-featured-card__specs strong {
	font-size: 14px;
}

.rsa-standard-v2__agent > div span,
.rsa-standard-v2__agent > div small,
.rsa-featured-card__agent > div span,
.rsa-featured-card__agent > div small {
	font-size: 10px;
}

.rsa-standard-v2__agent > div strong,
.rsa-featured-card__agent > div strong {
	font-size: 13px;
}

.rsa-standard-v2__agency strong,
.rsa-featured-card__agency > div strong {
	font-size: 12px;
}

.rsa-standard-v2__agency span,
.rsa-featured-card__agency > div span {
	font-size: 10px;
}

.rsa-standard-v2__footer span,
.rsa-featured-card__footer span {
	font-size: 11px;
	line-height: 1.25;
}

.rsa-standard-v2__count,
.rsa-featured-card__image-count {
	font-size: 14px;
}

.rsa-standard-v2__count svg,
.rsa-featured-card__image-count svg {
	width: 20px;
	height: 20px;
}

.rsa-standard-v2__media-actions span,
.rsa-featured-card__media-actions span {
	width: 47px;
	height: 47px;
	font-size: 11px;
}

.rsa-standard-v2__media-actions svg,
.rsa-featured-card__media-actions svg {
	width: 22px;
	height: 22px;
}

.rsa-standard-v2__agent nav a,
.rsa-featured-card__agent nav a {
	width: 38px;
	height: 38px;
	font-size: 9px;
}

.rsa-standard-v2__price-row button,
.rsa-featured-card__heading button {
	width: 44px;
	height: 44px;
	padding: 7px;
	cursor: pointer;
}

.rsa-standard-v2__price-row button svg,
.rsa-featured-card__heading button svg {
	width: 29px;
	height: 29px;
}

.rsa-standard-v2__media-actions:empty,
.rsa-featured-card__media-actions:empty {
	display: none;
}


/* Card gallery navigation. */
.rsa-card-gallery__controls {
	position: absolute;
	inset: 50% 10px auto;
	display: flex;
	justify-content: space-between;
	pointer-events: none;
	transform: translateY(-50%);
	z-index: 4;
}

.rsa-card-gallery__nav {
	align-items: center;
	background: rgba(7, 20, 49, 0.82);
	border: 1px solid rgba(255, 255, 255, 0.72);
	border-radius: 50%;
	box-shadow: 0 2px 10px rgba(7, 20, 49, 0.22);
	color: #fff;
	cursor: pointer;
	display: flex;
	font: inherit;
	height: 36px;
	justify-content: center;
	padding: 0;
	pointer-events: auto;
	transition: background-color 160ms ease, transform 160ms ease;
	width: 36px;
}

.rsa-card-gallery__nav span {
	font-size: 30px;
	font-weight: 300;
	line-height: 1;
	margin-top: -2px;
}

.rsa-card-gallery__nav:hover,
.rsa-card-gallery__nav:focus-visible {
	background: #d80012;
	transform: scale(1.06);
}

.rsa-card-gallery__nav:focus-visible {
	outline: 2px solid #fff;
	outline-offset: 2px;
}

@media (max-width: 767px) {
	.rsa-card-gallery__controls {
		inset-inline: 8px;
	}

	.rsa-card-gallery__nav {
		height: 40px;
		width: 40px;
	}
}


/* Featured Premium reference layout - RSA red edition. */
.rsa-featured-card {
	position: relative;
}

.rsa-featured-card__main {
	grid-template-columns: minmax(0, 68%) minmax(0, 32%);
}

.rsa-featured-card__content {
	display: flex;
	flex-direction: column;
	padding: 24px 22px 20px;
}

.rsa-featured-card__price-row {
	order: -2;
	display: block;
	margin: 32px 0 0;
	padding: 0 0 18px;
	border-bottom: 1px solid var(--rsa-card-border);
}

.rsa-featured-card__price-row::before {
	content: "Asking Price";
	display: block;
	margin-bottom: 8px;
	color: var(--rsa-card-muted);
	font-size: 12px;
	font-weight: 500;
}

.rsa-featured-card__heading {
	position: absolute;
	top: 18px;
	right: 18px;
	z-index: 5;
	margin: 0;
}

.rsa-featured-card__heading h3 {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
}

.rsa-featured-card__heading button {
	border: 1px solid var(--rsa-card-border);
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 4px 14px rgba(18,35,63,.12);
}

.rsa-featured-card__location {
	order: -1;
	margin: 0;
	padding: 16px 0;
	border-bottom: 1px solid var(--rsa-card-border);
	font-size: 14px;
	font-weight: 700;
}

.rsa-featured-card__location b {
	border-color: var(--rsa-card-red);
}

.rsa-featured-card__specs {
	display: flex;
	flex-direction: column;
	margin: 0;
	padding: 13px 0 0;
	border: 0;
}

.rsa-featured-card__specs > div {
	display: flex;
	align-items: baseline;
	gap: 6px;
	padding: 5px 0;
	text-align: left;
}

.rsa-featured-card__specs > div:not(:last-child)::after {
	display: none;
}

.rsa-featured-card__specs strong,
.rsa-featured-card__specs span {
	display: inline;
	margin: 0;
	font-size: 12px;
}

.rsa-featured-card__specs strong {
	font-size: 14px;
}

.rsa-featured-card__badges {
	display: flex;
	gap: 8px;
	min-height: 0;
	padding: 11px 18px;
	border-top: 1px solid var(--rsa-card-border);
	border-bottom: 1px solid var(--rsa-card-border);
	background: #fff;
}

.rsa-featured-card__badges span,
.rsa-featured-card__badges .rsa-featured-card__badge--premium,
.rsa-featured-card__badges .rsa-featured-card__badge--classification {
	min-height: 25px;
	padding: 7px 11px;
	border: 1px solid rgba(227,6,19,.25);
	border-radius: 5px;
	background: var(--rsa-card-accent-wash, #fffafa);
	color: var(--rsa-card-red);
	font-size: 9px;
}

.rsa-featured-card__badges .rsa-featured-card__badge--featured {
	position: absolute;
	top: 0;
	left: 20px;
	z-index: 5;
	min-height: 50px;
	padding: 16px 18px 18px;
	border: 0;
	border-radius: 0 0 5px 5px;
	background: var(--rsa-card-red);
	color: #fff;
	font-size: 12px;
	clip-path: polygon(0 0,100% 0,100% 100%,50% 84%,0 100%);
}

.rsa-featured-card__identity {
	grid-template-columns: minmax(0,34%) minmax(0,42%) minmax(145px,24%);
	min-height: 92px;
	border-top: 0;
}

.rsa-featured-card__agency,
.rsa-featured-card__agent {
	padding: 14px 18px;
}

.rsa-featured-card__view {
	order: 3;
	align-self: center;
	min-width: 132px;
	margin: 0 16px 0 10px;
	background: var(--rsa-card-red);
	border-color: var(--rsa-card-red);
}

.rsa-featured-card__media-actions span {
	color: var(--rsa-card-red);
}

.rsa-featured-card__identity--agency-only {
	display: grid;
	grid-template-columns: minmax(0,76%) minmax(145px,24%);
}

.rsa-featured-card__identity--agency-only .rsa-featured-card__view {
	grid-column: 2;
}

@media (min-width: 992px) {
	.rsa-featured-card__main,
	.rsa-featured-card__media,
	.rsa-featured-card__image {
		height: 310px;
		min-height: 310px;
	}

	.rsa-featured-card__content {
		height: 310px;
		padding: 22px 20px 16px;
	}

	.rsa-featured-card__price {
		font-size: 25px;
	}

	.rsa-featured-card__identity {
		height: 92px;
		min-height: 92px;
	}
}

@media (max-width: 767px) {
	.rsa-featured-card__main {
		display: block;
	}

	.rsa-featured-card__content {
		height: auto;
		min-height: 330px;
	}

	.rsa-featured-card__identity,
	.rsa-featured-card__identity--agency-only {
		display: block;
	}

	.rsa-featured-card__view {
		width: calc(100% - 36px);
		margin: 0 18px 18px;
	}
}


/* Late 2026 Featured Card reference fidelity pass. */
.rsa-featured-card{--rsa-featured-gold:#c89d32;--rsa-featured-gold-dark:#a77d1d;--rsa-featured-ink:#07182c;--rsa-featured-green:#4da75b;border-radius:14px;box-shadow:0 10px 28px rgba(7,24,44,.16)}
.rsa-featured-card__main{grid-template-columns:minmax(0,72%) minmax(0,28%)}
.rsa-featured-card__badges{padding:11px 18px;gap:9px}
.rsa-featured-card__badges span,.rsa-featured-card__badges .rsa-featured-card__badge--premium,.rsa-featured-card__badges .rsa-featured-card__badge--classification{border-color:rgba(200,157,50,.38);background:#faf7ef;color:#8b691c}
.rsa-featured-card__badges .rsa-featured-card__badge--featured{top:0;left:20px;min-height:58px;padding:17px 20px 22px;border:0;background:linear-gradient(135deg,#d7ad45,#b78a24);color:#fff;font-size:12px}
.rsa-featured-card__content{padding:24px 20px 18px}
.rsa-featured-card__price-row{margin-top:32px;padding-bottom:18px}
.rsa-featured-card__price-row:before{font-size:11px;color:#384351}
.rsa-featured-card__price{font-size:26px;color:var(--rsa-featured-ink)}
.rsa-featured-card__location{font-size:13px;color:var(--rsa-featured-ink)}
.rsa-featured-card__location b{border-color:var(--rsa-featured-gold)}
.rsa-featured-card__specs strong{color:var(--rsa-featured-ink)}
.rsa-featured-card__specs span{color:var(--rsa-featured-gold-dark)}
.rsa-featured-reference__agency-overlay{position:absolute;top:72px;left:18px;z-index:5;display:flex;align-items:center;justify-content:center;width:118px;height:96px;padding:12px;border-radius:8px;background:rgba(5,23,42,.94);box-shadow:0 7px 18px rgba(4,15,28,.25)}
.rsa-featured-reference__agency-overlay img{width:100%;height:100%;object-fit:contain;filter:none}
.rsa-featured-reference__verified{position:absolute;top:18px;right:18px;z-index:5;display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:7px;background:rgba(5,23,42,.93);color:#fff;font-size:10px;font-weight:800;text-transform:uppercase}
.rsa-featured-reference__verified span{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border:2px solid var(--rsa-featured-gold);border-radius:5px;color:var(--rsa-featured-gold)}
.rsa-featured-card__image-count{top:auto;bottom:14px;left:18px;background:rgba(255,255,255,.94);border-color:#fff;color:var(--rsa-featured-ink)}
.rsa-featured-card__media-actions span{width:auto;min-width:62px;padding:0 14px;border-radius:24px;color:var(--rsa-featured-ink);font-size:10px}
.rsa-featured-card__heading button{border-color:#edf0f2;background:#fff;color:var(--rsa-featured-ink)}
.rsa-featured-card__identity{grid-template-columns:minmax(0,37%) minmax(0,30%) minmax(0,20%) minmax(105px,13%);min-height:112px}
.rsa-featured-card__agent{order:1;border-right:1px solid var(--rsa-card-border)}
.rsa-featured-card__agency{order:2;border-right:1px solid var(--rsa-card-border)}
.rsa-featured-card__view{display:none}
.rsa-featured-reference__match{order:3;position:relative;align-self:center;min-height:76px;margin:10px;padding:12px 44px 10px 14px;border-radius:7px;background:#faf7ef}
.rsa-featured-reference__match span,.rsa-featured-reference__match strong,.rsa-featured-reference__match small{display:block}
.rsa-featured-reference__match span{font-size:10px;color:var(--rsa-featured-ink)}
.rsa-featured-reference__match strong{margin:4px 0;color:var(--rsa-featured-green);font-size:20px}
.rsa-featured-reference__match small{color:#4f5863;font-size:8px;line-height:1.25}
.rsa-featured-reference__match b{position:absolute;right:10px;top:16px;display:flex;align-items:center;justify-content:center;width:42px;height:42px;border:5px solid var(--rsa-featured-green);border-radius:50%;color:var(--rsa-featured-gold);font-size:20px}
.rsa-featured-reference__footer{display:flex;align-items:center;min-height:58px;padding:9px 16px;background:var(--rsa-featured-ink);color:#fff}
.rsa-featured-reference__features{display:flex;align-items:center;gap:17px;min-width:0;margin-right:auto;overflow:hidden}
.rsa-featured-reference__features span{display:flex;align-items:center;gap:6px;white-space:nowrap;font-size:9px}
.rsa-featured-reference__features b{color:var(--rsa-featured-gold);font-size:14px}
.rsa-featured-reference__details,.rsa-featured-reference__booking{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:40px;padding:9px 16px;border:1px solid var(--rsa-featured-gold);border-radius:6px;color:#fff!important;font-size:9px;font-weight:700;text-decoration:none!important;text-transform:uppercase}
.rsa-featured-reference__details{margin-left:12px;background:linear-gradient(135deg,#d4aa43,#b98824)}
.rsa-featured-reference__booking{min-width:126px;margin-left:8px;background:transparent}
.rsa-featured-card__identity--agency-only{display:grid;grid-template-columns:minmax(0,45%) minmax(0,35%) minmax(105px,20%)}
.rsa-featured-card__identity--agency-only .rsa-featured-card__agency{order:1}
.rsa-featured-card__identity--agency-only .rsa-featured-reference__match{order:2}
@media(min-width:992px){.rsa-featured-card__main,.rsa-featured-card__media,.rsa-featured-card__image{height:304px;min-height:304px}.rsa-featured-card__content{height:304px}.rsa-featured-card__identity{height:112px;min-height:112px}}
@media(max-width:767px){.rsa-featured-reference__agency-overlay{width:96px;height:76px}.rsa-featured-reference__verified{font-size:9px}.rsa-featured-card__identity,.rsa-featured-card__identity--agency-only{display:block}.rsa-featured-reference__match{margin:14px 18px}.rsa-featured-reference__footer{flex-wrap:wrap;gap:8px}.rsa-featured-reference__features{width:100%;padding:5px 0;overflow:auto}.rsa-featured-reference__details,.rsa-featured-reference__booking{flex:1;margin:0}}

.rsa-featured-card,
.rsa-featured-card button,
.rsa-featured-card a {
	font-family: Arial, Helvetica, sans-serif;
}


/* Requested Featured card refinements. */
.rsa-featured-reference__agency-overlay,
.rsa-featured-card__badge--premium,
.rsa-featured-reference__details,
.rsa-featured-reference__booking {
	display: none !important;
}

.rsa-featured-card__identity {
	grid-template-columns: minmax(0,40%) minmax(0,35%) minmax(145px,25%);
}

.rsa-featured-reference__match--view {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 13px;
	min-height: 52px;
	margin: 14px;
	padding: 12px 16px;
	border: 1px solid var(--rsa-featured-gold);
	border-radius: 6px;
	background: linear-gradient(135deg,#d4aa43,#b98824);
	color: #fff !important;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .035em;
	text-decoration: none !important;
	text-transform: uppercase;
}

.rsa-featured-reference__match--view b {
	position: static;
	display: inline;
	width: auto;
	height: auto;
	border: 0;
	border-radius: 0;
	color: #fff;
	font-size: 18px;
}

.rsa-featured-reference__footer {
	min-height: 58px;
	padding: 9px 18px;
}

.rsa-featured-reference__features {
	display: grid;
	grid-template-columns: repeat(4,minmax(0,1fr));
	gap: 14px;
	width: 100%;
	margin: 0;
}

.rsa-featured-reference__features span {
	justify-content: center;
	overflow: hidden;
	text-overflow: ellipsis;
}

.rsa-featured-card__identity--agency-only {
	grid-template-columns: minmax(0,70%) minmax(145px,30%);
}

@media(max-width:767px) {
	.rsa-featured-reference__features {
		grid-template-columns: repeat(2,minmax(0,1fr));
	}

	.rsa-featured-reference__features span {
		justify-content: flex-start;
	}
}


/* Featured price label and primary action refinement. */
.rsa-featured-card__price-row::before {
	display: none;
	content: none;
}

.rsa-featured-card__price-row {
	margin-top: 43px;
}

.rsa-featured-reference__match--view {
	border-color: var(--rsa-card-red);
	background: var(--rsa-card-red);
}

.rsa-featured-reference__match--view:hover,
.rsa-featured-reference__match--view:focus-visible {
	border-color: var(--rsa-card-red-hover);
	background: var(--rsa-card-red-hover);
}


/* Compact Featured card: overlay badges and six-amenity band. */
.rsa-featured-card {
	position: relative;
}

.rsa-featured-card__badges {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 6;
	width: 0;
	height: 0;
	min-height: 0;
	padding: 0;
	border: 0;
	background: transparent;
}

.rsa-featured-card__badges > span:not(.rsa-featured-card__badge--featured) {
	display: none;
}

.rsa-featured-card__badges .rsa-featured-card__badge--featured {
	top: 0;
	left: 20px;
}

.rsa-featured-reference__features {
	grid-template-columns: repeat(6,minmax(0,1fr));
	gap: 8px;
}

.rsa-featured-reference__features span {
	font-size: 8px;
}

@media(max-width:767px) {
	.rsa-featured-reference__features {
		grid-template-columns: repeat(2,minmax(0,1fr));
	}
}


@media(min-width:992px) {
	.rsa-featured-card__main,
	.rsa-featured-card__media,
	.rsa-featured-card__image {
		height: 280px;
		min-height: 280px;
	}

	.rsa-featured-card__content {
		height: 280px;
		padding-top: 18px;
		padding-bottom: 14px;
	}

	.rsa-featured-card__price-row {
		margin-top: 38px;
	}
}


/* Featured price and favourite share one compact row. */
.rsa-featured-card__heading {
	display: none;
}

.rsa-featured-card__price-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
}

.rsa-featured-card__price-row > div {
	min-width: 0;
	flex: 1 1 auto;
}

.rsa-featured-card__price {
	font-size: clamp(18px,2.15vw,22px);
	line-height: 1.05;
	white-space: nowrap;
}

.rsa-featured-card__price-row > button {
	flex: 0 0 40px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	padding: 7px;
	border: 1px solid var(--rsa-card-border);
	border-radius: 50%;
	background: #fff;
	color: var(--rsa-featured-ink);
	box-shadow: 0 4px 14px rgba(18,35,63,.12);
	cursor: pointer;
}

.rsa-featured-card__price-row > button svg {
	width: 26px;
	height: 26px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.8;
}

.rsa-featured-card__price {
	font-size: 18px;
	letter-spacing: -.015em;
}

.rsa-featured-card__price {
	font-size: 16.5px;
}


/* Featured identity order: agency, agent, primary action. */
.rsa-featured-card__identity {
	grid-template-columns: minmax(0,35%) minmax(0,40%) minmax(145px,25%);
}

.rsa-featured-card__agency {
	order: 1;
	border-right: 1px solid var(--rsa-card-border);
}

.rsa-featured-card__agent {
	order: 2;
	border-right: 1px solid var(--rsa-card-border);
}

.rsa-featured-reference__match--view {
	order: 3;
}

.rsa-featured-card__identity--agency-only {
	grid-template-columns: minmax(0,70%) minmax(145px,30%);
}

.rsa-featured-card__identity--agency-only .rsa-featured-card__agency {
	border-right: 1px solid var(--rsa-card-border);
}


/* Match both upper gallery corners on Standard and Featured cards. */
.rsa-standard-v2__media,
.rsa-standard-v2__media > a,
.rsa-standard-v2__media img,
.rsa-standard-v2__placeholder,
.rsa-featured-card__media,
.rsa-featured-card__image-link,
.rsa-featured-card__image,
.rsa-featured-card__image--placeholder {
	border-top-left-radius: var(--rsa-card-radius);
	border-top-right-radius: var(--rsa-card-radius);
}


/* RSA STANDARD FINAL EXTRACTED */
.rsa-standard-final,.rsa-standard-final *{box-sizing:border-box}.rsa-standard-final{--n:#071a3d;--t:#1f2938;--m:#657184;--l:#e4e9ef;display:grid;grid-template-columns:minmax(0,40%) minmax(0,60%);width:100%;max-width:100%;min-width:0;min-height:286px;overflow:hidden;background:#fff;border:1px solid #e1e6ec;border-radius:18px;box-shadow:0 4px 16px rgba(14,31,53,.08);color:var(--t);font-family:inherit}.rsa-standard-final>*{min-width:0}.rsa-standard-final__media{position:relative;min-width:0;overflow:hidden;background:#e9edf1}.rsa-standard-final__media>a,.rsa-standard-final__media>img,.rsa-standard-final__placeholder{display:block;width:100%;height:100%;min-height:286px}.rsa-standard-final__media img{width:100%;max-width:100%;height:100%;object-fit:cover;object-position:center}.rsa-standard-final__labels{position:absolute;top:12px;left:12px;z-index:4;display:flex;flex-wrap:wrap;gap:6px;max-width:calc(100% - 72px)}.rsa-standard-final__label{display:inline-flex;align-items:center;min-height:29px;padding:6px 9px;border-radius:5px;background:#E30613;color:#fff;font-size:13px;font-weight:700;line-height:1.15;box-shadow:0 2px 7px rgba(19,35,63,.14)}.rsa-standard-final__favorite{position:absolute;top:13px;right:13px;z-index:3;display:grid;place-items:center;width:38px;height:38px;padding:0;border:1px solid rgba(7,26,61,.08);border-radius:50%;background:#fff;color:var(--n);box-shadow:0 2px 8px rgba(7,26,61,.1)}.rsa-standard-final__favorite svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8}.rsa-standard-final__count{position:absolute;right:14px;bottom:14px;z-index:3;display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border-radius:6px;background:rgba(0,0,0,.72);color:#fff;font-size:12px;font-weight:700}.rsa-standard-final__count svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8}.rsa-standard-final__content{display:flex;flex-direction:column;min-width:0;padding:17px 20px 15px}.rsa-standard-final__top{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;min-width:0}.rsa-standard-final__location{display:flex;align-items:center;gap:7px;min-width:0;color:var(--m);font-size:12px;line-height:1.35}.rsa-standard-final__location svg{flex:0 0 15px;width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8}.rsa-standard-final__location span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rsa-standard-final__price{flex:0 0 auto;color:var(--n);font-size:20px;font-weight:800;line-height:1.1;white-space:nowrap}.rsa-standard-final__title{margin:13px 0 0;color:var(--n);font-size:19px;font-weight:800;line-height:1.2;letter-spacing:-.01em;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.rsa-standard-final__title a{color:inherit;text-decoration:none}.rsa-standard-final__specs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:14px;padding:11px 0;border-bottom:1px solid var(--l)}.rsa-standard-final__spec{display:grid;grid-template-columns:25px minmax(0,1fr);grid-template-rows:auto auto;column-gap:6px;align-items:center;min-width:0;padding:0 9px;border-right:1px solid var(--l)}.rsa-standard-final__spec:first-child{padding-left:0}.rsa-standard-final__spec:last-child{padding-right:0;border-right:0}.rsa-standard-final__spec svg{grid-row:1/3;width:23px;height:23px;fill:none;stroke:var(--n);stroke-width:1.5}.rsa-standard-final__spec strong{overflow:hidden;color:var(--n);font-size:14px;font-weight:800;line-height:1.1;text-overflow:ellipsis;white-space:nowrap}.rsa-standard-final__spec span{margin-top:2px;color:var(--t);font-size:10px;line-height:1.1;white-space:nowrap}.rsa-standard-final__description{margin:12px 0 0;color:#263143;font-size:12px;line-height:1.48;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.rsa-standard-final__identity{display:flex;align-items:center;gap:12px;min-width:0;margin-top:auto;padding-top:12px;border-top:1px solid var(--l)}.rsa-standard-final__agency,.rsa-standard-final__agent{display:flex;align-items:center;min-width:0}.rsa-standard-final__agency-logo{display:block;width:auto;height:40px;max-width:92px;object-fit:contain;object-position:left center;background:transparent;border:0;border-radius:0}.rsa-standard-final__divider{width:1px;height:40px;background:var(--l)}.rsa-standard-final__agent{gap:9px}.rsa-standard-final__agent-photo{display:block;flex:0 0 38px;width:38px;height:38px;border-radius:50%;object-fit:cover}.rsa-standard-final__copy{min-width:0}.rsa-standard-final__copy strong,.rsa-standard-final__copy span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rsa-standard-final__copy strong{color:var(--n);font-size:12px;font-weight:800;line-height:1.25}.rsa-standard-final__copy span{margin-top:2px;color:#344055;font-size:10px;line-height:1.25}@media(min-width:1200px){.rsa-standard-final{height:286px;min-height:286px;max-height:286px}.rsa-standard-final__media,.rsa-standard-final__media>a,.rsa-standard-final__media>img,.rsa-standard-final__placeholder{height:286px!important;min-height:286px!important;max-height:286px!important}.rsa-standard-final__content{height:286px;min-height:0;overflow:hidden}}@media(max-width:1199.98px) and (min-width:768px){.rsa-standard-final{height:274px;min-height:274px;max-height:274px}.rsa-standard-final__media,.rsa-standard-final__media>a,.rsa-standard-final__media>img,.rsa-standard-final__placeholder{height:274px!important;min-height:274px!important;max-height:274px!important}.rsa-standard-final__content{height:274px;min-height:0;overflow:hidden}.rsa-standard-final{grid-template-columns:minmax(0,39%) minmax(0,61%);min-height:274px}.rsa-standard-final__media>a,.rsa-standard-final__media>img,.rsa-standard-final__placeholder{min-height:274px}.rsa-standard-final__content{padding:15px 16px 13px}.rsa-standard-final__price{font-size:18px}.rsa-standard-final__title{margin-top:11px;font-size:17px}.rsa-standard-final__spec{grid-template-columns:21px minmax(0,1fr);column-gap:5px;padding:0 6px}.rsa-standard-final__spec svg{width:20px;height:20px}.rsa-standard-final__description{-webkit-line-clamp:2}}@media(max-width:767.98px){.rsa-standard-final{display:block;min-height:0;border-radius:15px}.rsa-standard-final__media{aspect-ratio:16/10}.rsa-standard-final__media>a,.rsa-standard-final__media>img,.rsa-standard-final__placeholder{min-height:0}.rsa-standard-final__content{padding:16px}.rsa-standard-final__price{font-size:18px}.rsa-standard-final__title{font-size:18px}.rsa-standard-final__specs{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:10px}.rsa-standard-final__spec{border-right:0;padding:0}.rsa-standard-final__description{-webkit-line-clamp:2}}
/* RSA mobile results card refinement — stacked media-first composition. */
@media(max-width:767.98px){
.rsa-standard-final{display:block;min-height:0;border-radius:14px;box-shadow:0 4px 14px rgba(19,35,63,.07)}
.rsa-standard-final__media{width:100%;height:auto;min-height:0;aspect-ratio:16/9;border-radius:14px 14px 0 0}
.rsa-standard-final__media>a,.rsa-standard-final__media>img,.rsa-standard-final__placeholder{width:100%;height:100%;min-height:0}
.rsa-standard-final__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.rsa-standard-final__favorite{top:12px;right:12px;width:42px;height:42px}
.rsa-standard-final__count{right:12px;bottom:12px;padding:7px 10px;font-size:13px}
.rsa-standard-final__labels{top:12px;left:12px}
.rsa-standard-final__content{height:auto;min-height:0;padding:15px 16px 16px;overflow:visible}
.rsa-standard-final__top{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px}
.rsa-standard-final__location{font-size:13px;line-height:1.35}
.rsa-standard-final__location svg{width:17px;height:17px;flex-basis:17px}
.rsa-standard-final__price{font-size:20px;line-height:1.1}
.rsa-standard-final__title{margin-top:10px;font-size:18px;line-height:1.2}
.rsa-standard-final__specs{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:13px;padding:11px 0;row-gap:0}
.rsa-standard-final__spec{grid-template-columns:22px minmax(0,1fr);column-gap:5px;padding:0 7px;border-right:1px solid var(--l)}
.rsa-standard-final__spec:first-child{padding-left:0}
.rsa-standard-final__spec:last-child{padding-right:0;border-right:0}
.rsa-standard-final__spec svg{width:21px;height:21px}
.rsa-standard-final__spec strong{font-size:14px}
.rsa-standard-final__spec span{font-size:12px}
.rsa-standard-final__description{margin-top:11px;font-size:13px;line-height:1.42;-webkit-line-clamp:2}
.rsa-standard-final__identity{gap:10px;margin-top:12px;padding-top:12px}
.rsa-standard-final__agency-logo{width:auto;height:38px;max-width:86px}
.rsa-standard-final__divider{height:34px}
.rsa-standard-final__agent{gap:8px}
.rsa-standard-final__agent-photo{flex-basis:38px;width:38px;height:38px}
.rsa-standard-final__copy strong{font-size:13px}
.rsa-standard-final__copy span{font-size:12px}
}
@media(max-width:390px){
.rsa-standard-final__top{grid-template-columns:1fr;gap:7px}
.rsa-standard-final__price{grid-row:1;font-size:19px}
.rsa-standard-final__location{grid-row:2}
.rsa-standard-final__specs{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:10px}
.rsa-standard-final__spec:nth-child(2n){border-right:0}
.rsa-standard-final__spec:nth-child(3){padding-left:0}
.rsa-standard-final__identity{align-items:flex-start;flex-wrap:wrap}
}


/* RSA FEATURED FINAL EXTRACTED */
/* Keep the Featured card content-driven inside Houzez list rows. */
.rsa-featured-final{height:auto!important;max-height:none!important;min-height:0!important;overflow:hidden!important;align-self:flex-start!important}
.rsa-featured-final__header,.rsa-featured-final__gallery,.rsa-featured-final__body,.rsa-featured-final__footer{position:relative!important;float:none!important;clear:both!important;width:100%!important;max-height:none!important}
.rsa-featured-final__body{display:block!important;height:auto!important;min-height:148px!important;overflow:visible!important;visibility:visible!important;opacity:1!important}
@media(min-width:768px){.rsa-featured-final__gallery{height:292px!important;min-height:292px!important;max-height:292px!important}.rsa-featured-final__body{min-height:158px!important}}
@media(max-width:1199.98px) and (min-width:768px){.rsa-featured-final__gallery{height:258px!important;min-height:258px!important;max-height:258px!important}}
@media(max-width:767.98px){.rsa-featured-final__gallery{height:auto!important;min-height:0!important;max-height:none!important}.rsa-featured-final__body{min-height:0!important;overflow:visible!important}}
.rsa-featured-final,.rsa-featured-final *{box-sizing:border-box}.rsa-featured-final{--n:#13233F;--n2:#1C2F50;--t:#1D2736;--m:#6F7884;--b:#E4E7EB;display:block;width:100%;max-width:100%;min-width:0;overflow:hidden;background:#fff;border:1px solid #E4E7EB;border-radius:14px;box-shadow:0 6px 18px rgba(19,35,63,.10);color:var(--t);font-family:Inter,Arial,sans-serif;cursor:pointer}.rsa-featured-final a{color:inherit;text-decoration:none}.rsa-featured-final__header{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:72px;padding:10px 18px;background:linear-gradient(90deg,var(--n),#0b1f45);color:#fff}.rsa-featured-final__agent-head{display:flex;align-items:center;min-width:0;gap:12px}.rsa-featured-final__agent-photo{width:54px;height:54px;flex:0 0 54px;border:2px solid #fff;border-radius:50%;object-fit:cover;background:#fff}.rsa-featured-final__agent-name{min-width:0;font-size:16px;font-weight:800;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rsa-featured-final__agency-mark{display:flex;align-items:center;justify-content:flex-end;min-width:0;max-width:42%}.rsa-featured-final__agency-mark img{display:block;max-width:190px;max-height:46px;width:auto;height:auto;object-fit:contain}.rsa-featured-final__agency-name{font-size:15px;font-weight:800;line-height:1.1;text-align:right}.rsa-featured-final__gallery{display:grid;grid-template-columns:minmax(0,68%) minmax(0,32%);height:292px;background:#E9EDF1}.rsa-featured-final__gallery--single{grid-template-columns:1fr}.rsa-featured-final__main-image,.rsa-featured-final__side-image{position:relative;min-width:0;overflow:hidden;background:#E9EDF1}.rsa-featured-final__main-image{border-right:2px solid #fff}.rsa-featured-final__side{display:grid;grid-template-rows:1fr 1fr;min-width:0}.rsa-featured-final__side--one{grid-template-rows:1fr}.rsa-featured-final__side-image:first-child{border-bottom:2px solid #fff}.rsa-featured-final__gallery>*{height:100%!important;min-height:0!important}.rsa-featured-final__main-image,.rsa-featured-final__side,.rsa-featured-final__side-image{height:100%!important;min-height:0!important}.rsa-featured-final__side{overflow:hidden!important}.rsa-featured-final__main-image>a,.rsa-featured-final__side-image>a{display:block!important;width:100%!important;height:100%!important;min-height:0!important;overflow:hidden!important}.rsa-featured-final__gallery img{display:block;width:100%!important;max-width:100%!important;height:100%!important;min-height:0!important;object-fit:cover;object-position:center}.rsa-featured-final__more{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.28);color:#fff;font-size:34px;font-weight:800}.rsa-featured-final__body{padding:18px 20px 16px}.rsa-featured-final__primary{display:grid;grid-template-columns:minmax(0,1fr) minmax(175px,190px);gap:18px;align-items:start}.rsa-featured-final__actions{min-width:0}.rsa-featured-final__price{max-width:100%;font-size:clamp(18px,1.8vw,22px);white-space:normal;overflow-wrap:anywhere;text-align:right}.rsa-featured-final__title{margin:0;color:var(--n);font-size:20px;font-weight:800;line-height:1.15;letter-spacing:-.01em}.rsa-featured-final__description{margin:7px 0 0;color:#344055;font-size:12px;line-height:1.5;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.rsa-featured-final__actions{text-align:right}.rsa-featured-final__favorite{display:grid;place-items:center;width:40px;height:40px;margin-left:auto;padding:0;border:0;background:transparent;color:var(--n);cursor:pointer}.rsa-featured-final__favorite svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.7}.rsa-featured-final__price{margin-top:8px;color:var(--n);font-size:22px;font-weight:800;line-height:1.1;white-space:nowrap}.rsa-featured-final__footer{display:flex;align-items:center;gap:12px;min-width:0;margin-top:16px;padding-top:14px;border-top:1px solid var(--b)}.rsa-featured-final__stats{display:flex;align-items:center;gap:0;min-width:0;flex:1 1 auto}.rsa-featured-final__stat{display:flex;align-items:center;gap:7px;min-width:0;padding:0 13px;border-right:1px solid var(--b)}.rsa-featured-final__stat:first-child{padding-left:0}.rsa-featured-final__stat:last-child{border-right:0}.rsa-featured-final__stat svg{width:24px;height:24px;flex:0 0 24px;fill:none;stroke:#596679;stroke-width:1.5}.rsa-featured-final__stat-copy{min-width:0}.rsa-featured-final__stat strong,.rsa-featured-final__stat span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rsa-featured-final__stat strong{color:var(--n);font-size:13px;font-weight:800;line-height:1.1}.rsa-featured-final__stat span{margin-top:2px;color:#445066;font-size:9px;line-height:1.1}.rsa-featured-final__promoted{margin-left:auto;flex:0 0 auto;color:var(--n);font-size:12px;font-weight:600;text-align:right;white-space:nowrap}.rsa-featured-final__labels{position:absolute;top:12px;left:12px;z-index:4;display:flex;flex-wrap:wrap;gap:6px;max-width:calc(100% - 24px)}.rsa-featured-final__label{display:inline-flex;align-items:center;min-height:29px;padding:6px 9px;border-radius:5px;background:#E30613;color:#fff;font-size:13px;font-weight:700;line-height:1.15;box-shadow:0 2px 7px rgba(19,35,63,.14)}.rsa-featured-final__photo-count{position:absolute;right:12px;bottom:12px;display:inline-flex;align-items:center;gap:6px;padding:6px 9px;border-radius:5px;background:rgba(0,0,0,.72);color:#fff;font-size:11px;font-weight:700}.rsa-featured-final__photo-count svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8}@media(max-width:1199.98px) and (min-width:768px){.rsa-featured-final__header{min-height:66px;padding:9px 15px}.rsa-featured-final__agent-photo{width:48px;height:48px;flex-basis:48px}.rsa-featured-final__agency-mark img{max-width:160px;max-height:42px}.rsa-featured-final__gallery{height:258px}.rsa-featured-final__body{padding:16px 17px 14px}.rsa-featured-final__primary{grid-template-columns:minmax(0,1fr) minmax(150px,165px);gap:14px}.rsa-featured-final__title{font-size:18px}.rsa-featured-final__price{font-size:19px}.rsa-featured-final__stat{padding:0 9px;gap:5px}.rsa-featured-final__stat svg{width:21px;height:21px;flex-basis:21px}.rsa-featured-final__stat strong{font-size:12px}.rsa-featured-final__promoted{font-size:11px}}@media(max-width:767.98px){.rsa-featured-final{border-radius:14px}.rsa-featured-final__header{min-height:62px;padding:8px 12px}.rsa-featured-final__agent-photo{width:44px;height:44px;flex-basis:44px}.rsa-featured-final__agent-name{font-size:14px}.rsa-featured-final__agency-mark img{max-width:120px;max-height:38px}.rsa-featured-final__gallery{grid-template-columns:1fr;height:auto}.rsa-featured-final__main-image{aspect-ratio:16/10;border-right:0}.rsa-featured-final__side{display:none}.rsa-featured-final__body{padding:15px}.rsa-featured-final__primary{grid-template-columns:minmax(0,1fr) 110px;gap:12px}.rsa-featured-final__title{font-size:18px}.rsa-featured-final__price{font-size:18px}.rsa-featured-final__footer{align-items:flex-end;flex-wrap:wrap}.rsa-featured-final__stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;row-gap:10px}.rsa-featured-final__stat{border-right:0;padding:0}.rsa-featured-final__promoted{width:100%;text-align:right}.rsa-featured-final__description{-webkit-line-clamp:2}}
/* Agency-authentic featured-card identity band. */
.rsa-featured-final__header{background:var(--agency-band-bg,var(--n))!important;color:var(--agency-band-text,#fff)!important}
.rsa-featured-final__header{padding:0 18px}
.rsa-featured-final__brand-head{display:flex;align-items:center;align-self:stretch;height:72px;min-width:0;flex:1 1 auto;overflow:hidden}
.rsa-featured-final__brand-link{display:flex;align-items:center;height:100%;min-width:0;max-width:100%}
.rsa-featured-final__brand-logo{display:block;width:auto;height:95%;max-width:280px;max-height:68px;object-fit:contain;object-position:left center;background:transparent;border:0;border-radius:6px;padding:5px}
.rsa-featured-final__brand-name{display:block;max-width:100%;font-size:16px;font-weight:800;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rsa-featured-final__agent-mark{display:flex;align-items:center;justify-content:flex-end;flex:0 0 auto;margin-left:auto}
.rsa-featured-final__agent-mark a{display:flex;align-items:center}
.rsa-featured-final__agent-mark .rsa-featured-final__agent-photo{display:block;width:54px;height:54px;max-width:54px;max-height:54px;flex:0 0 54px;border:2px solid currentColor;border-radius:50%;object-fit:cover;background:#fff}
@media(max-width:1199.98px) and (min-width:768px){.rsa-featured-final__header{padding:0 15px}.rsa-featured-final__brand-head{height:66px}.rsa-featured-final__brand-logo{max-width:260px;max-height:63px}.rsa-featured-final__agent-mark .rsa-featured-final__agent-photo{width:48px;height:48px;max-width:48px;max-height:48px;flex-basis:48px}}
@media(max-width:767.98px){.rsa-featured-final__header{padding:0 12px}.rsa-featured-final__brand-head{height:62px}.rsa-featured-final__brand-logo{max-width:min(220px,62vw);max-height:59px}.rsa-featured-final__brand-name{font-size:14px}.rsa-featured-final__agent-mark .rsa-featured-final__agent-photo{width:44px;height:44px;max-width:44px;max-height:44px;flex-basis:44px}}

/* Dynamic transaction labels shared by Search, Agency and Agent listing cards. */
.rsa-standard-final__transaction,.rsa-featured-final__transaction{display:inline-flex;align-items:center;min-height:29px;padding:6px 10px;border-radius:5px;color:#fff;font-size:13px;font-weight:800;line-height:1.15;letter-spacing:.01em;box-shadow:0 2px 7px rgba(19,35,63,.14)}
.rsa-standard-final__transaction--sale,.rsa-featured-final__transaction--sale{background:#E30613}
.rsa-standard-final__transaction--rent,.rsa-featured-final__transaction--rent{background:#304ACB}
