/* ==========================================================================
   Inmuebles page (template-inmuebles.php) — combined listings + operation filter
   ========================================================================== */

/* Content container full width so the hero can bleed */
body.gai-listing-page .site-content > .ast-container {
	max-width: 100% !important;
	padding-inline: 0 !important;
}

/* Operation tabs: use the design search-tabs style, add spacing */
.gai-listing-page #gai-op-tabs {
	margin-bottom: 36px;
}

/* ==========================================================================
   Hero with photo background — compact, consistent with Comprar / Alquilar.
   ========================================================================== */
body.gai-listing-page .listing-hero {
	background-color: var(--ink);
	background-image:
		linear-gradient(90deg, rgba(24, 24, 25, 0.97) 0%, rgba(24, 24, 25, 0.9) 42%, rgba(24, 24, 25, 0.5) 78%, rgba(24, 24, 25, 0.22) 100%),
		url("../images/hero-comprar.jpg");
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	display: flex;
	align-items: center;
	min-height: clamp(360px, 46vh, 470px);
	padding-block: clamp(40px, 5vw, 68px);
}
body.gai-listing-page .listing-hero > div {
	max-width: 820px;
}
body.gai-listing-page .listing-hero h1 {
	margin-bottom: 24px;
	font-size: clamp(2rem, 3.8vw, 3.05rem);
}
body.gai-listing-page .listing-hero p:not(.eyebrow) {
	max-width: 620px;
	color: #c8c4c2;
}

/* Rebuilt prototype card fills its grid cell and keeps equal heights */
.gai-listing-grid .property-card {
	height: 100%;
}
.gai-listing-grid .property-card .property-info {
	display: flex;
	flex-direction: column;
	flex: 1 1 auto;
}
.gai-listing-grid .property-card .property-bottom {
	margin-top: auto;
}

/* ==========================================================================
   Restyle the plugin's [LAmbos] cards into the prototype property grid
   ========================================================================== */
.gai-listing-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
}

/* Results header (count + sort) spans the full width above the cards */
.gai-listing-grid > .row:not(.property-item) {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	grid-column: 1 / -1;
	margin: 0 0 8px;
}
.gai-listing-grid > .row:not(.property-item) > [class*="col-"] {
	width: auto !important;
	float: none !important;
	flex: none !important;
	padding: 0 !important;
}
.gai-listing-grid .text-numpropiedades-listado {
	color: var(--muted);
	font-size: 0.9rem;
	font-weight: 700;
}
.gai-listing-grid .order {
	margin-right: 8px;
	color: var(--muted);
	font-size: 0.8rem;
}
.gai-listing-grid .select-filtros {
	width: auto;
	min-height: 42px;
	padding: 8px 34px 8px 12px;
	border: 1px solid var(--line);
	border-radius: 0;
	background: #fff;
	color: var(--ink);
	font-family: "Manrope", Arial, sans-serif;
	font-size: 0.82rem;
	cursor: pointer;
}

/* Hide any stray search wrapper the shortcode might emit */
.gai-listing-grid .search-wrapper2,
.gai-listing-grid .search2,
.gai-listing-grid .advance-search-form,
.gai-listing-grid > p {
	display: none !important;
}

/* Property cards are direct columns: plain grid items */
.gai-listing-grid > .col-md-4 {
	width: auto !important;
	max-width: none !important;
	float: none !important;
	flex: none !important;
	padding: 0 !important;
	margin: 0 !important;
}

/* Pagination (single page on this setup) */
.gai-listing-grid > form {
	display: none !important;
}

/* The card box */
.gai-listing-grid .property-item {
	display: block !important;
	overflow: hidden;
	border: 1px solid var(--line);
	background: #fff;
	height: 100%;
	margin: 0 !important;
	transition: transform 0.25s, box-shadow 0.25s;
}
.gai-listing-grid .property-item:hover {
	transform: translateY(-5px);
	box-shadow: var(--shadow);
}

/* First image only, fixed ratio */
.gai-listing-grid .property-mini-carousel {
	position: relative;
	aspect-ratio: 4 / 3;
	overflow: hidden;
	background: var(--cream);
	margin: 0;
}
.gai-listing-grid .property-mini-carousel .item {
	position: absolute;
	inset: 0;
	width: 100% !important;
	height: 100% !important;
	margin: 0;
	padding: 0;
}
.gai-listing-grid .property-mini-carousel .item:not(.active) {
	display: none !important;
}
.gai-listing-grid .property-mini-carousel .imagen {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover;
}

/* Hide video tag, favourite heart and click overlay */
.gai-listing-grid .info-tags,
.gai-listing-grid .featured-mark-heart-inactive,
.gai-listing-grid .img-click-layer {
	display: none !important;
}

/* Reference + internal rows keep normal flow */
.gai-listing-grid .property-item .row {
	margin: 0 !important;
}
.gai-listing-grid .ref p {
	margin: 0;
	padding: 10px 14px 0;
	color: var(--muted);
	font-size: 0.68rem;
	font-weight: 800;
	text-transform: uppercase;
}

/* Type + city */
.gai-listing-grid .info-plus {
	padding: 4px 14px;
}
.gai-listing-grid .info-plus .type {
	color: var(--berry);
	font-size: 0.72rem;
	font-weight: 800;
	text-transform: uppercase;
}
.gai-listing-grid .info-plus .ciudad {
	color: var(--muted);
	font-size: 0.78rem;
}

/* Beds / baths */
.gai-listing-grid .info-property {
	display: inline-block;
	padding: 6px 14px 0 0;
	color: var(--muted);
	font-size: 0.8rem;
}

/* Price */
.gai-listing-grid .ajustes-precio {
	margin-top: 12px;
	padding: 14px;
	border-top: 1px solid var(--line);
}
.gai-listing-grid .precio-listado {
	display: block;
	color: var(--ink) !important;
	font-size: 1.15rem;
	font-weight: 800;
	text-decoration: none;
}
.gai-listing-grid .precio-listado:hover {
	color: var(--berry) !important;
}

/* Responsive */
@media (max-width: 860px) {
	.gai-listing-grid {
		grid-template-columns: 1fr 1fr;
	}
}
@media (max-width: 900px) {
	body.gai-listing-page .listing-hero {
		background-image:
			linear-gradient(180deg, rgba(24, 24, 25, 0.9) 0%, rgba(24, 24, 25, 0.8) 60%, rgba(24, 24, 25, 0.55) 100%),
			url("../images/hero-comprar.jpg");
		min-height: 0;
		padding-block: clamp(48px, 8vw, 72px);
	}
	body.gai-listing-page .listing-hero h1 {
		font-size: clamp(1.7rem, 6vw, 2.3rem);
	}
}
@media (max-width: 600px) {
	.gai-listing-grid {
		grid-template-columns: 1fr;
	}
}
