.gr-search-results-page .entry-title:empty,
.gr-search-results-page .page-title:empty,
.gr-search-results-page .wp-block-post-title:empty{
	display:none !important;
	margin:0 !important;
	padding:0 !important;
}

/* Useful zero-results state: intentionally lightweight and independent of cards/map. */
.gr-search-empty-state{
	box-sizing:border-box;
	width:min(720px,100%);
	margin:42px auto 80px;
	padding:48px 42px;
	border:1px solid #e3e7ea;
	border-radius:24px;
	background:#fff;
	color:#111827;
	text-align:center;
	box-shadow:0 14px 36px rgba(17,24,39,.06);
}
.gr-search-empty-icon{
	display:grid;
	width:54px;
	height:54px;
	margin:0 auto 20px;
	border-radius:50%;
	background:#e7f7f9;
	color:#049daf;
	place-items:center;
}
.gr-search-empty-icon svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.8}
.gr-search-empty-state h2{margin:0;color:#111827;font-size:28px;line-height:1.2;font-weight:600;letter-spacing:-.03em}
.gr-search-empty-state p{max-width:560px;margin:13px auto 0;color:#687282;font-size:15px;line-height:1.6}
.gr-search-empty-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px;margin-top:26px}
.gr-search-empty-actions button,
.gr-search-empty-related,
.gr-search-empty-link{display:inline-flex;min-height:44px;align-items:center;justify-content:center;padding:0 20px;border:1px solid #04acbf;border-radius:999px;background:#04acbf;color:#fff;font:600 14px/1 Manrope,system-ui,sans-serif;text-decoration:none;cursor:pointer}
.gr-search-empty-actions .gr-search-empty-secondary,.gr-search-empty-related{border-color:#dce1e5;background:#fff;color:#172033}
.gr-search-empty-link{border-color:transparent;background:transparent;color:#078e9e;text-decoration:underline;text-underline-offset:3px}

@media(max-width:900px){
	.gr-search-empty-state{margin:24px 0 56px;padding:34px 20px;border-radius:20px}
	.gr-search-empty-state h2{font-size:23px}
	.gr-search-empty-state p{font-size:14px}
	.gr-search-empty-actions{display:grid;grid-template-columns:1fr;margin-top:22px}
	.gr-search-empty-actions button,.gr-search-empty-related,.gr-search-empty-link{width:100%;box-sizing:border-box}
}

body .mphb_sc_search_results-wrapper{
	--gr-sr-accent:#04acbf;
	--gr-sr-ink:#111827;
	--gr-sr-body:#374151;
	--gr-sr-muted:#6b7280;
	--gr-sr-line:#e4e7eb;
	width:100%;
	max-width:1880px;
	margin:0 auto;
	padding:38px 34px 72px;
	color:var(--gr-sr-ink);
	font-family:Manrope,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}

/* Keep MotoPress logic alive but remove all of its result UI. */
body .mphb_sc_search_results-wrapper > .mphb_sc_search_results-info,
body .mphb_sc_search_results-wrapper > .mphb-recommendation-title,
body .mphb_sc_search_results-wrapper > .mphb-recommendation,
body .mphb_sc_search_results-wrapper > .mphb-reservation-cart,
body .mphb_sc_search_results-wrapper > .mphb-room-type,
body .mphb_sc_search_results-wrapper > br{
	display:none !important;
}

/* Header */
.gr-search-head{
	display:flex;
	align-items:flex-end;
	justify-content:space-between;
	gap:32px;
	margin:0 0 28px;
}

.gr-search-head-copy h1{
	margin:0;
	color:var(--gr-sr-ink);
	font-size:27px;
	font-weight:500;
	line-height:1.2;
	letter-spacing:-.025em;
}

.gr-search-head-copy p{
	margin:7px 0 0;
	color:#7a8390;
	font-size:14px;
	line-height:1.45;
}

.gr-search-summary{
	display:flex;
	align-items:center;
	justify-content:flex-end;
	flex-wrap:wrap;
	gap:10px;
}

.gr-search-summary-item,
.gr-search-map-toggle{
	display:inline-flex;
	align-items:center;
	gap:9px;
	min-height:46px;
	padding:10px 17px;
	border:1px solid #dfe3e7;
	border-radius:55px;
	background:#fff;
	color:#222936;
	font:500 13px/1.15 Manrope,system-ui,sans-serif;
	box-shadow:none;
}

.gr-search-summary svg,
.gr-search-card svg,
.gr-search-map-toolbar svg{
	width:18px;
	height:18px;
	flex:0 0 auto;
	fill:none;
	stroke:currentColor;
	stroke-width:1.7;
	stroke-linecap:round;
	stroke-linejoin:round;
}

.gr-search-map-toggle{
	cursor:pointer;
}

.gr-search-map-toggle:hover{
	border-color:#cfd5da;
	background:#fafafa;
}

/* Main split */
.gr-search-layout{
	display:grid;
	grid-template-columns:minmax(0, 1.28fr) minmax(390px, .92fr);
	gap:28px;
	align-items:start;
}

.gr-search-list{
	min-width:0;
	display:flex;
	flex-direction:column;
	gap:22px;
}

/* Fully custom GR result card */
.gr-search-card{
	position:relative;
	display:grid;
	grid-template-columns:minmax(280px, 45%) minmax(0, 1fr);
	min-height:286px;
	overflow:hidden;
	border:1px solid var(--gr-sr-line);
	border-radius:28px;
	background:#fff;
	transition:border-color .18s ease, box-shadow .18s ease;
}

.gr-search-card:hover{
	border-color:#d3d9de;
}

.gr-search-card.is-map-active{
	border-color:#8fd7df;
	box-shadow:0 0 0 1px rgba(4,172,191,.12);
}

.gr-search-card-media{
	display:block;
	min-width:0;
	height:100%;
	padding:16px;
	text-decoration:none;
}

.gr-search-card-image,
.gr-search-card-image-placeholder{
	display:block;
	width:100%;
	height:100%;
	min-height:254px;
	border-radius:22px;
	object-fit:cover;
	background:#f0f2f3;
}

.gr-search-card-content{
	min-width:0;
	display:flex;
	flex-direction:column;
	justify-content:space-between;
	padding:28px 28px 24px 8px;
}

.gr-search-card-location{
	display:flex;
	align-items:center;
	gap:8px;
	margin:0 0 14px;
	color:#737d89;
	font-size:13px;
	line-height:1.35;
}

.gr-search-card-location svg{
	width:17px;
	height:17px;
	color:var(--gr-sr-accent);
	stroke-width:2;
}

.gr-search-card-title{
	margin:0;
	font-size:22px;
	font-weight:500;
	line-height:1.22;
	letter-spacing:-.025em;
}

.gr-search-card-title a{
	color:var(--gr-sr-ink);
	text-decoration:none;
}

.gr-search-card-secondary{
	display:flex;
	align-items:center;
	flex-wrap:wrap;
	gap:7px;
	margin-top:10px;
	color:#69727e;
	font-size:13px;
	line-height:1.4;
}

.gr-search-card-dot{
	color:#a3aab2;
}

.gr-search-card-highlights{
	display:grid;
	grid-template-columns:repeat(3,minmax(0,1fr));
	gap:12px;
	margin-top:26px;
}

.gr-search-highlight{
	display:flex;
	align-items:flex-start;
	gap:10px;
	min-width:0;
	color:#111827;
}

.gr-search-highlight svg{
	width:21px;
	height:21px;
	margin-top:1px;
	color:#111827;
}

.gr-search-highlight span{
	display:flex;
	flex-direction:column;
	min-width:0;
}

.gr-search-highlight strong{
	color:#202733;
	font-size:13px;
	font-weight:500;
	line-height:1.3;
}

.gr-search-highlight small{
	margin-top:3px;
	color:#7b8490;
	font-size:11px;
	font-weight:400;
	line-height:1.25;
}

.gr-search-card-bottom{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:18px;
	margin-top:24px;
	padding-top:17px;
	border-top:1px solid #e8eaed;
}

.gr-search-rating{
	display:flex;
	align-items:center;
	gap:5px;
	min-height:24px;
	color:#111827;
	font-size:13px;
}

.gr-search-rating svg{
	width:19px;
	height:19px;
	color:var(--gr-sr-accent);
	stroke-width:1.8;
}

.gr-search-rating strong{
	font-size:15px;
	font-weight:500;
}

.gr-search-rating span{
	color:#7a8390;
	font-size:11px;
	white-space:nowrap;
}

.gr-search-card-price{
	display:flex;
	align-items:baseline;
	justify-content:flex-end;
	gap:5px;
	color:#111827;
	text-decoration:none;
	text-align:right;
	white-space:nowrap;
}

.gr-search-card-price strong{
	color:#087f8d;
	font-size:18px;
	font-weight:600;
	line-height:1.2;
}

.gr-search-card-price span{
	color:#4b5563;
	font-size:12px;
	font-weight:400;
}

/* Map */
.gr-search-map-panel{
	position:sticky;
	top:20px;
	height:calc(100vh - 40px);
	min-height:560px;
	overflow:hidden;
	border:1px solid var(--gr-sr-line);
	border-radius:28px;
	background:
		linear-gradient(145deg,rgba(217,245,236,.83),rgba(193,232,240,.90)),
		#d6eef0;
}

.gr-search-map-toolbar{
	display:none;
}

.gr-search-map{
	width:100%;
	height:100%;
}

.gr-search-map-loading{
	display:flex;
	align-items:flex-end;
	justify-content:flex-start;
	height:100%;
	padding:0 34px 54px;
	color:#64707c;
	font-size:13px;
	line-height:1.5;
}

.gr-search-map-loading::before{
	content:"";
	position:absolute;
	inset:0;
	pointer-events:none;
	background:
		linear-gradient(31deg,transparent 45%,rgba(255,255,255,.62) 46%,rgba(255,255,255,.62) 48%,transparent 49%),
		linear-gradient(-37deg,transparent 58%,rgba(255,255,255,.42) 59%,rgba(255,255,255,.42) 61%,transparent 62%);
	opacity:.75;
}

.gr-search-map-loading{
	position:relative;
	z-index:1;
}

.gr-price-pin{
	position:absolute;
	transform:translate(-50%,-100%);
	cursor:pointer;
	user-select:none;
}

.gr-price-pin-button{
	display:flex;
	align-items:center;
	justify-content:center;
	min-width:76px;
	height:35px;
	padding:0 12px;
	border:1px solid rgba(17,24,39,.12);
	border-radius:55px;
	background:#fff;
	color:#111827;
	font:600 12px/1 Manrope,system-ui,sans-serif;
	text-decoration:none;
	box-sizing:border-box;
	white-space:nowrap;
	box-shadow:0 2px 9px rgba(17,24,39,.16);
	transition:transform .15s ease,background .15s ease,color .15s ease;
}

.gr-price-pin:hover .gr-price-pin-button,
.gr-price-pin.is-active .gr-price-pin-button{
	transform:scale(1.05);
	background:#04acbf;
	color:#fff;
	border-color:#04acbf;
}

.gr-map-info{
	max-width:220px;
	font-family:Manrope,system-ui,sans-serif;
}

.gr-map-info strong{
	display:block;
	color:#111827;
	font-size:14px;
	font-weight:500;
	line-height:1.3;
}

.gr-map-info span{
	display:block;
	margin-top:4px;
	color:#6b7280;
	font-size:11px;
	line-height:1.35;
}

@media (max-width:1150px){
	.gr-search-layout{
		grid-template-columns:minmax(0,1.1fr) minmax(340px,.8fr);
		gap:20px;
	}

	.gr-search-card{
		grid-template-columns:minmax(230px,43%) minmax(0,1fr);
	}

	.gr-search-card-content{
		padding-right:22px;
	}
}

@media (max-width:920px){
	body .mphb_sc_search_results-wrapper{
		padding:28px 18px 90px;
	}

	.gr-search-head{
		align-items:flex-start;
		flex-direction:column;
		gap:16px;
	}

	.gr-search-summary{
		justify-content:flex-start;
	}

	.gr-search-layout{
		display:block;
	}

	.gr-search-map-panel{
		position:fixed;
		z-index:99999;
		inset:0;
		width:100%;
		height:100dvh;
		min-height:0;
		border:0;
		border-radius:0;
		opacity:0;
		visibility:hidden;
		transform:translateY(12px);
		transition:opacity .18s ease,transform .18s ease,visibility .18s ease;
	}

	body.gr-search-map-open{
		overflow:hidden;
	}

	body.gr-search-map-open .gr-search-map-panel{
		opacity:1;
		visibility:visible;
		transform:none;
	}

	.gr-search-map-toolbar{
		position:absolute;
		z-index:3;
		top:14px;
		left:14px;
		right:14px;
		display:flex;
		align-items:center;
		justify-content:space-between;
		min-height:48px;
		padding:8px 10px 8px 16px;
		border-radius:55px;
		background:#fff;
		box-shadow:0 4px 18px rgba(17,24,39,.14);
	}

	.gr-search-map-toolbar strong{
		font-size:14px;
		font-weight:500;
	}

	.gr-search-map-close{
		display:flex;
		align-items:center;
		justify-content:center;
		width:36px;
		height:36px;
		padding:0;
		border:0;
		border-radius:50%;
		background:#f4f5f6;
		color:#111827;
	}

	.gr-search-map-close svg{
		width:18px;
		height:18px;
	}

	.gr-search-map{
		height:100%;
	}
}

@media (max-width:700px){
	body .mphb_sc_search_results-wrapper{
		padding-left:16px;
		padding-right:16px;
	}

	.gr-search-head-copy h1{
		font-size:26px;
	}

	.gr-search-summary{
		width:100%;
		gap:7px;
	}

	.gr-search-summary-item,
	.gr-search-map-toggle{
		min-height:40px;
		padding:8px 12px;
		font-size:12px;
	}

	.gr-search-list{
		gap:22px;
	}

	.gr-search-card{
		display:block;
		min-height:0;
		overflow:hidden;
		border-radius:24px;
	}

	.gr-search-card-media{
		height:235px;
		padding:10px 10px 0;
	}

	.gr-search-card-image,
	.gr-search-card-image-placeholder{
		height:225px;
		min-height:0;
		border-radius:19px;
	}

	.gr-search-card-content{
		padding:18px 18px 17px;
	}

	.gr-search-card-location{
		margin-bottom:9px;
		font-size:12px;
	}

	.gr-search-card-title{
		font-size:20px;
	}

	.gr-search-card-secondary{
		margin-top:7px;
		font-size:12px;
	}

	.gr-search-card-highlights{
		gap:10px;
		margin-top:19px;
	}

	.gr-search-highlight{
		gap:7px;
	}

	.gr-search-highlight svg{
		width:19px;
		height:19px;
	}

	.gr-search-highlight strong{
		font-size:12px;
	}

	.gr-search-highlight small{
		font-size:10px;
	}

	.gr-search-card-bottom{
		margin-top:18px;
		padding-top:14px;
	}

	.gr-search-card-price strong{
		font-size:16px;
	}
}

@media (max-width:430px){
	.gr-search-card-highlights{
		grid-template-columns:repeat(2,minmax(0,1fr));
	}

	.gr-search-card-bottom{
		align-items:flex-end;
	}

	.gr-search-card-price{
		flex-direction:column;
		align-items:flex-end;
		gap:2px;
	}
}


.gr-search-head{
	margin-bottom:24px;
}

.gr-search-head-copy h1{
	font-size:26px;
	letter-spacing:-.03em;
}

.gr-search-head-copy p{
	margin-top:5px;
	color:#838b95;
	font-size:13px;
}

.gr-search-summary{
	gap:8px;
}

.gr-search-summary-item,
.gr-search-map-toggle{
	min-height:40px;
	padding:9px 15px;
	border-color:#e3e6e9;
	color:#48505b;
	font-size:12px;
	font-weight:500;
}

.gr-search-card{
	min-height:266px;
	border-color:#e7e9ec;
	border-radius:25px;
}

.gr-search-card-media{
	padding:13px;
}

.gr-search-card-image,
.gr-search-card-image-placeholder{
	min-height:240px;
	border-radius:19px;
}

.gr-search-card-content{
	padding:23px 25px 20px 5px;
}

.gr-search-card-location{
	display:block;
	margin:0 0 8px;
	color:#818995;
	font-size:11.5px;
	font-weight:400;
	line-height:1.4;
}

.gr-search-card-title{
	font-size:20px;
	line-height:1.22;
	letter-spacing:-.025em;
}

.gr-search-card-secondary{
	margin-top:7px;
	gap:6px;
	color:#707884;
	font-size:11.5px;
	line-height:1.4;
}

.gr-search-card-facts-line{
	display:flex;
	align-items:center;
	flex-wrap:wrap;
	gap:7px;
	margin-top:17px;
	color:#414955;
	font-size:11.5px;
	font-weight:400;
	line-height:1.4;
}

.gr-search-card-secondary .gr-search-card-dot,
.gr-search-card-facts-line .gr-search-card-dot{
	color:#b1b7bd;
}

.gr-search-card-bottom{
	margin-top:18px;
	padding-top:13px;
	border-top-color:#eceef0;
}

.gr-search-rating{
	gap:4px;
}

.gr-search-rating svg{
	width:16px;
	height:16px;
}

.gr-search-rating strong{
	font-size:13.5px;
	font-weight:500;
}

.gr-search-rating span{
	color:#8c939c;
	font-size:10.5px;
}

.gr-search-card-price{
	gap:4px;
}

.gr-search-card-price strong{
	color:#087f8d;
	font-size:16.5px;
	font-weight:600;
}

.gr-search-card-price span{
	color:#68707a;
	font-size:10.5px;
}

.gr-search-map-panel{
	border-radius:25px;
}

/* Old icon-grid classes remain harmless for backwards compatibility. */
.gr-search-card-highlights,
.gr-search-highlight{
	display:none !important;
}

@media (max-width:700px){
	.gr-search-card{
		border-radius:22px;
	}

	.gr-search-card-content{
		padding:15px 17px 15px;
	}

	.gr-search-card-location{
		margin-bottom:6px;
		font-size:11px;
	}

	.gr-search-card-title{
		font-size:19px;
	}

	.gr-search-card-secondary,
	.gr-search-card-facts-line{
		font-size:11px;
	}

	.gr-search-card-facts-line{
		margin-top:12px;
	}

	.gr-search-card-bottom{
		margin-top:14px;
		padding-top:11px;
	}
}


.gr-search-card{
	grid-template-columns:minmax(270px,42%) minmax(0,1fr);
	min-height:250px;
}

.gr-search-card-media{
	padding:12px;
}

.gr-search-card-image,
.gr-search-card-image-placeholder{
	min-height:226px;
}

.gr-search-card-content{
	position:relative;
	display:grid;
	grid-template-columns:minmax(0,1fr) 150px;
	grid-template-rows:auto 1fr;
	column-gap:20px;
	padding:22px 22px 18px 6px;
}

.gr-search-card-main{
	grid-column:1;
	grid-row:1 / span 2;
	min-width:0;
	display:flex;
	flex-direction:column;
}

.gr-search-card-location{
	margin-bottom:7px;
	font-size:11px;
}

.gr-search-card-title{
	font-size:20px;
	line-height:1.18;
}

.gr-search-card-secondary{
	margin-top:7px;
	font-size:11px;
}

.gr-search-card-facts-line{
	margin-top:14px;
	font-size:11px;
	color:#525a65;
}

.gr-search-card-side{
	grid-column:2;
	grid-row:1 / span 2;
	display:flex;
	flex-direction:column;
	justify-content:space-between;
	align-items:stretch;
	min-width:0;
	padding-left:18px;
	border-left:1px solid #eceef0;
}

.gr-search-rating-box{
	display:flex;
	align-items:flex-start;
	justify-content:flex-end;
	gap:8px;
	min-height:38px;
}

.gr-search-rating-copy{
	display:flex;
	flex-direction:column;
	align-items:flex-end;
	padding-top:3px;
}

.gr-search-rating-copy span{
	color:#8a919b;
	font-size:10px;
	line-height:1.25;
	white-space:nowrap;
}

.gr-search-rating-score{
	display:flex;
	align-items:center;
	justify-content:center;
	gap:4px;
	min-width:57px;
	height:34px;
	padding:0 8px;
	border-radius:11px;
	background:#f2fbfc;
	color:#087f8d;
}

.gr-search-rating-score svg{
	width:14px;
	height:14px;
	color:#04acbf;
}

.gr-search-rating-score strong{
	color:#0a6f7a;
	font-size:14px;
	font-weight:600;
	line-height:1;
}

.gr-search-card-booking{
	display:flex;
	flex-direction:column;
	align-items:flex-end;
	gap:7px;
	margin-top:18px;
	text-align:right;
}

.gr-search-card-stay{
	color:#737b86;
	font-size:10px;
	line-height:1.35;
}

.gr-search-card-price{
	display:flex;
	flex-direction:column;
	align-items:flex-end;
	gap:2px;
}

.gr-search-card-price strong{
	color:#111827;
	font-size:20px;
	font-weight:600;
	line-height:1.1;
}

.gr-search-card-price span{
	color:#8a919b;
	font-size:9.5px;
	line-height:1.2;
}

.gr-search-card-cta{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-height:36px;
	padding:8px 14px;
	border-radius:55px;
	background:#04acbf;
	color:#fff;
	font-size:11px;
	font-weight:500;
	line-height:1;
	text-decoration:none;
	white-space:nowrap;
	transition:opacity .15s ease;
}

.gr-search-card-cta:hover{
	color:#fff;
	opacity:.9;
}

/* The old full-width bottom row is no longer rendered. */
.gr-search-card-bottom{
	display:none !important;
}

@media (max-width:1150px){
	.gr-search-card{
		grid-template-columns:minmax(230px,40%) minmax(0,1fr);
	}

	.gr-search-card-content{
		grid-template-columns:minmax(0,1fr) 138px;
		column-gap:16px;
	}

	.gr-search-card-side{
		padding-left:14px;
	}
}

@media (max-width:900px){
	.gr-search-card{
		display:block;
	}

	.gr-search-card-content{
		display:grid;
		grid-template-columns:minmax(0,1fr) auto;
		grid-template-rows:auto auto;
		column-gap:14px;
		padding:16px 17px 16px;
	}

	.gr-search-card-main{
		grid-column:1 / -1;
		grid-row:1;
	}

	.gr-search-card-side{
		grid-column:1 / -1;
		grid-row:2;
		display:grid;
		grid-template-columns:1fr auto;
		align-items:end;
		gap:12px;
		margin-top:14px;
		padding:12px 0 0;
		border-left:0;
		border-top:1px solid #eceef0;
	}

	.gr-search-rating-box{
		justify-content:flex-start;
		align-items:center;
	}

	.gr-search-rating-copy{
		align-items:flex-start;
		order:2;
	}

	.gr-search-card-booking{
		align-items:flex-end;
		margin-top:0;
	}

	.gr-search-card-stay{
		display:none;
	}

	.gr-search-card-cta{
		min-height:34px;
		padding:8px 13px;
	}
}

@media (max-width:430px){
	.gr-search-card-side{
		grid-template-columns:1fr;
	}

	.gr-search-rating-box{
		justify-content:flex-start;
	}

	.gr-search-card-booking{
		align-items:flex-start;
		text-align:left;
	}

	.gr-search-card-price{
		align-items:flex-start;
	}
}


.gr-search-card-v2{
	grid-template-columns:minmax(310px,44%) minmax(0,1fr);
	min-height:292px;
	border-radius:28px;
	border-color:#e4e7ea;
	background:#fff;
	box-shadow:0 5px 22px rgba(17,24,39,.045);
}

.gr-search-card-v2:hover{
	border-color:#d6dce1;
	box-shadow:0 8px 28px rgba(17,24,39,.06);
}

.gr-search-card-v2 .gr-search-card-media{
	padding:14px;
	height:100%;
}

.gr-search-card-v2 .gr-search-card-image,
.gr-search-card-v2 .gr-search-card-image-placeholder{
	min-height:264px;
	height:100%;
	border-radius:22px;
}

.gr-search-card-v2 .gr-search-card-content{
	display:grid;
	grid-template-columns:minmax(0,1fr) 178px;
	grid-template-rows:1fr;
	column-gap:26px;
	padding:28px 24px 24px 10px;
}

.gr-search-card-v2 .gr-search-card-main{
	display:flex;
	flex-direction:column;
	min-width:0;
}

.gr-search-card-v2 .gr-search-card-location{
	margin:0 0 22px;
	color:#77818e;
	font-size:12px;
	font-weight:400;
	line-height:1.55;
}

.gr-search-card-v2 .gr-search-card-title{
	margin:0;
	font-size:21px;
	font-weight:500;
	line-height:1.22;
	letter-spacing:-.025em;
}

.gr-search-card-v2 .gr-search-card-beach{
	align-self:flex-start;
	margin-top:13px;
	padding:7px 14px;
	border-radius:55px;
	background:#f1fafb;
	color:#078393;
	font-size:12px;
	font-weight:500;
	line-height:1.2;
}

.gr-search-card-v2 .gr-search-card-secondary{
	margin-top:16px;
	color:#707986;
	font-size:12px;
	line-height:1.4;
}

.gr-search-card-v2 .gr-search-card-specs{
	display:flex;
	align-items:center;
	gap:14px;
	margin-top:auto;
	padding-top:25px;
	border-top:1px solid #eceef0;
	color:#5d6672;
	font-size:12px;
	line-height:1.35;
}

.gr-search-card-v2 .gr-search-card-spec-divider{
	width:1px;
	height:22px;
	background:#e3e6e9;
}

.gr-search-card-v2 .gr-search-card-side{
	display:flex;
	flex-direction:column;
	justify-content:space-between;
	align-items:stretch;
	padding-left:24px;
	border-left:1px solid #e8eaed;
}

.gr-search-card-v2 .gr-search-rating-box{
	display:flex;
	justify-content:flex-end;
	min-height:42px;
}

.gr-search-card-v2 .gr-search-rating-score{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	gap:7px;
	min-width:80px;
	height:42px;
	padding:0 14px;
	border-radius:14px;
	background:#f0f9fa;
	color:#087f8d;
}

.gr-search-card-v2 .gr-search-rating-score svg{
	width:17px;
	height:17px;
	color:#04acbf;
	fill:#04acbf;
	stroke:#04acbf;
}

.gr-search-card-v2 .gr-search-rating-score strong{
	color:#111827;
	font-size:18px;
	font-weight:600;
	line-height:1;
}

.gr-search-card-v2 .gr-search-card-booking{
	display:flex;
	flex-direction:column;
	align-items:flex-end;
	gap:9px;
	margin-top:26px;
	text-align:right;
}

.gr-search-card-v2 .gr-search-card-stay{
	color:#7b8490;
	font-size:11px;
	line-height:1.4;
}

.gr-search-card-v2 .gr-search-card-price{
	display:flex;
	flex-direction:column;
	align-items:flex-end;
	gap:3px;
}

.gr-search-card-v2 .gr-search-card-price strong{
	color:#111827;
	font-size:26px;
	font-weight:600;
	line-height:1;
	letter-spacing:-.025em;
}

.gr-search-card-v2 .gr-search-card-price span{
	color:#7f8791;
	font-size:11px;
	line-height:1.2;
}

.gr-search-card-v2 .gr-search-card-cta{
	display:inline-flex;
	align-items:center;
	justify-content:space-between;
	gap:14px;
	min-width:158px;
	min-height:44px;
	margin-top:18px;
	padding:10px 16px 10px 18px;
	border:1px solid #04acbf;
	border-radius:55px;
	background:#fff;
	color:#078393;
	font-size:12px;
	font-weight:500;
	line-height:1;
	text-decoration:none;
}

.gr-search-card-v2 .gr-search-card-cta:hover{
	background:#f4fbfc;
	color:#078393;
	opacity:1;
}

.gr-search-card-v2 .gr-search-card-arrow{
	font-size:18px;
	line-height:1;
	transform:translateY(-1px);
}

@media (max-width:1180px){
	.gr-search-card-v2{
		grid-template-columns:minmax(260px,41%) minmax(0,1fr);
	}

	.gr-search-card-v2 .gr-search-card-content{
		grid-template-columns:minmax(0,1fr) 160px;
		column-gap:20px;
		padding-right:20px;
	}

	.gr-search-card-v2 .gr-search-card-side{
		padding-left:18px;
	}

	.gr-search-card-v2 .gr-search-card-price strong{
		font-size:23px;
	}
}

@media (max-width:900px){
	.gr-search-card-v2{
		display:block;
		min-height:0;
		border-radius:24px;
	}

	.gr-search-card-v2 .gr-search-card-media{
		height:240px;
		padding:10px 10px 0;
	}

	.gr-search-card-v2 .gr-search-card-image,
	.gr-search-card-v2 .gr-search-card-image-placeholder{
		min-height:230px;
		height:230px;
		border-radius:20px;
	}

	.gr-search-card-v2 .gr-search-card-content{
		display:block;
		padding:18px 18px 17px;
	}

	.gr-search-card-v2 .gr-search-card-location{
		margin-bottom:10px;
	}

	.gr-search-card-v2 .gr-search-card-title{
		font-size:20px;
	}

	.gr-search-card-v2 .gr-search-card-specs{
		margin-top:18px;
		padding-top:15px;
	}

	.gr-search-card-v2 .gr-search-card-side{
		display:grid;
		grid-template-columns:auto 1fr;
		gap:14px;
		align-items:end;
		margin-top:16px;
		padding:15px 0 0;
		border-left:0;
		border-top:1px solid #eceef0;
	}

	.gr-search-card-v2 .gr-search-rating-box{
		justify-content:flex-start;
		align-self:start;
	}

	.gr-search-card-v2 .gr-search-card-booking{
		align-items:flex-end;
		margin-top:0;
	}

	.gr-search-card-v2 .gr-search-card-price strong{
		font-size:22px;
	}

	.gr-search-card-v2 .gr-search-card-cta{
		min-width:146px;
		min-height:40px;
		margin-top:8px;
	}
}

@media (max-width:430px){
	.gr-search-card-v2 .gr-search-card-side{
		grid-template-columns:1fr;
	}

	.gr-search-card-v2 .gr-search-card-booking{
		align-items:flex-start;
		text-align:left;
	}

	.gr-search-card-v2 .gr-search-card-price{
		align-items:flex-start;
	}

	.gr-search-card-v2 .gr-search-card-cta{
		width:100%;
	}
}


@media (min-width:901px){
	.gr-search-card-v2{
		grid-template-columns:minmax(280px,42%) minmax(0,1fr);
		min-height:270px;
	}

	.gr-search-card-v2 .gr-search-card-media{
		padding:12px;
	}

	.gr-search-card-v2 .gr-search-card-image,
	.gr-search-card-v2 .gr-search-card-image-placeholder{
		min-height:246px;
		border-radius:21px;
	}

	.gr-search-card-v2 .gr-search-card-content{
		grid-template-columns:minmax(215px,1fr) 150px;
		column-gap:20px;
		padding:24px 18px 20px 12px;
	}

	.gr-search-card-v2 .gr-search-card-location{
		margin-bottom:14px;
		font-size:11px;
		line-height:1.45;
	}

	.gr-search-card-v2 .gr-search-card-title{
		font-size:19px;
		line-height:1.2;
		letter-spacing:-.02em;
	}

	.gr-search-card-v2 .gr-search-card-beach{
		margin-top:10px;
		padding:6px 11px;
		font-size:11px;
		white-space:normal;
	}

	.gr-search-card-v2 .gr-search-card-secondary{
		margin-top:13px;
		font-size:11px;
	}

	.gr-search-card-v2 .gr-search-card-specs{
		gap:11px;
		padding-top:17px;
		font-size:11px;
	}

	.gr-search-card-v2 .gr-search-card-spec-divider{
		height:18px;
	}

	.gr-search-card-v2 .gr-search-card-side{
		padding-left:18px;
	}

	.gr-search-card-v2 .gr-search-rating-box{
		min-height:36px;
	}

	.gr-search-card-v2 .gr-search-rating-score{
		min-width:68px;
		height:36px;
		padding:0 11px;
		border-radius:12px;
	}

	.gr-search-card-v2 .gr-search-rating-score svg{
		width:14px;
		height:14px;
	}

	.gr-search-card-v2 .gr-search-rating-score strong{
		font-size:16px;
	}

	.gr-search-card-v2 .gr-search-card-booking{
		gap:6px;
		margin-top:18px;
	}

	.gr-search-card-v2 .gr-search-card-stay{
		font-size:10px;
		white-space:nowrap;
	}

	.gr-search-card-v2 .gr-search-card-price strong{
		font-size:23px;
	}

	.gr-search-card-v2 .gr-search-card-price span{
		font-size:10px;
	}

	.gr-search-card-v2 .gr-search-card-cta{
		min-width:0;
		width:138px;
		min-height:38px;
		margin-top:12px;
		padding:8px 12px 8px 14px;
		gap:8px;
		font-size:11px;
	}

	.gr-search-card-v2 .gr-search-card-arrow{
		font-size:15px;
	}
}

@media (min-width:901px) and (max-width:1180px){
	.gr-search-card-v2{
		grid-template-columns:minmax(250px,40%) minmax(0,1fr);
	}

	.gr-search-card-v2 .gr-search-card-content{
		grid-template-columns:minmax(190px,1fr) 136px;
		column-gap:16px;
		padding-right:15px;
	}

	.gr-search-card-v2 .gr-search-card-side{
		padding-left:14px;
	}

	.gr-search-card-v2 .gr-search-card-cta{
		width:126px;
		padding-left:12px;
		padding-right:10px;
		font-size:10.5px;
	}
}


@media (min-width:901px){
	.gr-search-card-v2{
		grid-template-columns:minmax(245px,40%) minmax(0,60%);
		overflow:hidden;
	}

	.gr-search-card-v2 .gr-search-card-content{
		grid-template-columns:minmax(0,1fr) minmax(118px,136px);
		column-gap:16px;
		min-width:0;
		overflow:hidden;
		padding-right:14px;
	}

	.gr-search-card-v2 .gr-search-card-main,
	.gr-search-card-v2 .gr-search-card-side,
	.gr-search-card-v2 .gr-search-card-booking{
		min-width:0;
	}

	.gr-search-card-v2 .gr-search-card-side{
		width:100%;
		padding-left:14px;
		box-sizing:border-box;
		overflow:hidden;
	}

	.gr-search-card-v2 .gr-search-card-stay{
		max-width:100%;
		white-space:normal;
		text-align:right;
	}

	.gr-search-card-v2 .gr-search-card-price{
		max-width:100%;
	}

	.gr-search-card-v2 .gr-search-card-price strong{
		max-width:100%;
		font-size:21px;
		white-space:nowrap;
	}

	.gr-search-card-v2 .gr-search-card-cta{
		width:100%;
		max-width:136px;
		min-width:0;
		min-height:36px;
		padding:7px 10px 7px 12px;
		box-sizing:border-box;
		white-space:nowrap;
		font-size:10px;
	}

	.gr-search-card-v2 .gr-search-card-arrow{
		flex:0 0 auto;
		font-size:14px;
	}
}

@media (min-width:901px) and (max-width:1180px){
	.gr-search-card-v2{
		grid-template-columns:minmax(230px,39%) minmax(0,61%);
	}

	.gr-search-card-v2 .gr-search-card-content{
		grid-template-columns:minmax(0,1fr) 120px;
		column-gap:12px;
		padding-left:10px;
		padding-right:10px;
	}

	.gr-search-card-v2 .gr-search-card-side{
		padding-left:10px;
	}

	.gr-search-card-v2 .gr-search-card-cta{
		max-width:120px;
		padding-left:9px;
		padding-right:8px;
		font-size:9.5px;
	}
}


@media (min-width:901px){
	.gr-search-card-v2{
		grid-template-columns:minmax(255px,39%) minmax(0,61%);
		min-height:262px;
		border-radius:27px;
	}

	.gr-search-card-v2 .gr-search-card-media{
		padding:11px;
	}

	.gr-search-card-v2 .gr-search-card-image,
	.gr-search-card-v2 .gr-search-card-image-placeholder{
		min-height:240px;
		border-radius:20px;
	}

	.gr-search-card-v2 .gr-search-card-content{
		grid-template-columns:minmax(0,1fr) 132px;
		column-gap:17px;
		padding:22px 13px 18px 11px;
	}

	.gr-search-card-v2 .gr-search-card-location{
		margin-bottom:12px;
		color:#7c8591;
		font-size:10.5px;
		line-height:1.42;
	}

	.gr-search-card-v2 .gr-search-card-title{
		font-size:18px;
		font-weight:500;
		line-height:1.18;
		letter-spacing:-.018em;
	}

	.gr-search-card-v2 .gr-search-card-beach{
		margin-top:10px;
		padding:6px 11px;
		font-size:10.5px;
		line-height:1.15;
	}

	.gr-search-card-v2 .gr-search-card-secondary{
		margin-top:12px;
		font-size:10.5px;
		line-height:1.35;
	}

	.gr-search-card-v2 .gr-search-card-specs{
		gap:10px;
		padding-top:15px;
		font-size:10.5px;
		line-height:1.3;
	}

	.gr-search-card-v2 .gr-search-card-side{
		padding-left:13px;
	}

	.gr-search-card-v2 .gr-search-rating-score{
		min-width:64px;
		height:34px;
		padding:0 10px;
		border-radius:11px;
		gap:5px;
	}

	.gr-search-card-v2 .gr-search-rating-score svg{
		width:13px;
		height:13px;
	}

	.gr-search-card-v2 .gr-search-rating-score strong{
		font-size:15px;
	}

	.gr-search-card-v2 .gr-search-card-stay{
		font-size:9.5px;
	}

	.gr-search-card-v2 .gr-search-card-price strong{
		font-size:20px;
	}

	.gr-search-card-v2 .gr-search-card-price span{
		font-size:9.5px;
	}

	.gr-search-card-v2 .gr-search-card-cta{
		max-width:126px;
		min-height:34px;
		margin-top:10px;
		padding:7px 9px 7px 11px;
		border-radius:55px;
		font-size:9.5px;
	}

	.gr-search-card-v2 .gr-search-card-arrow{
		font-size:13px;
	}
}

@media (min-width:901px) and (max-width:1180px){
	.gr-search-card-v2{
		grid-template-columns:minmax(235px,38%) minmax(0,62%);
	}

	.gr-search-card-v2 .gr-search-card-content{
		grid-template-columns:minmax(0,1fr) 118px;
		column-gap:12px;
		padding-right:9px;
	}

	.gr-search-card-v2 .gr-search-card-side{
		padding-left:10px;
	}

	.gr-search-card-v2 .gr-search-card-title{
		font-size:17px;
	}

	.gr-search-card-v2 .gr-search-card-cta{
		max-width:112px;
		padding-left:9px;
		padding-right:8px;
		font-size:9px;
	}
}


@media (min-width:901px){
	.gr-search-card-v2{
		border-radius:22px;
	}

	.gr-search-card-v2 .gr-search-card-image,
	.gr-search-card-v2 .gr-search-card-image-placeholder{
		border-radius:16px;
	}

	.gr-search-card-v2 .gr-search-card-title{
		font-size:19px;
		line-height:1.2;
	}

	.gr-search-card-v2 .gr-search-card-secondary{
		font-size:12px;
		line-height:1.4;
	}

	.gr-search-card-v2 .gr-search-card-specs{
		font-size:12px;
		line-height:1.35;
		padding-top:17px;
	}

	.gr-search-card-v2 .gr-search-card-beach{
		border-radius:14px;
		font-size:11px;
		padding:6px 11px;
	}

	.gr-search-card-v2 .gr-search-rating-score{
		min-width:0;
		height:34px;
		padding:0 10px;
		border-radius:11px;
		gap:5px;
		white-space:nowrap;
	}

	.gr-search-card-v2 .gr-search-rating-score strong{
		font-size:14.5px;
	}

	.gr-search-card-v2 .gr-search-rating-count{
		color:#6f7782;
		font-size:10.5px;
		font-weight:400;
		line-height:1;
	}

	.gr-search-card-v2 .gr-search-card-cta{
		border-radius:14px;
	}

	.gr-search-card-v2 .gr-search-card-price strong{
		font-size:21px;
	}
}

@media (max-width:900px){
	.gr-search-card-v2{
		border-radius:20px;
	}

	.gr-search-card-v2 .gr-search-card-image,
	.gr-search-card-v2 .gr-search-card-image-placeholder{
		border-radius:15px;
	}

	.gr-search-card-v2 .gr-search-card-beach{
		border-radius:13px;
	}

	.gr-search-card-v2 .gr-search-card-cta{
		border-radius:14px;
	}

	.gr-search-card-v2 .gr-search-card-secondary,
	.gr-search-card-v2 .gr-search-card-specs{
		font-size:12px;
	}
}


.gr-price-pin{
	z-index:10;
}

.gr-price-pin.is-active{
	z-index:9999 !important;
}

.gr-price-pin.is-active .gr-price-pin-button{
	position:relative;
	z-index:2;
	transform:scale(1.08);
	border-color:#04acbf;
	background:#04acbf;
	color:#fff;
	box-shadow:0 5px 16px rgba(17,24,39,.22);
}

.gr-search-card.is-map-active{
	border-color:#8fd7df;
	box-shadow:0 0 0 1px rgba(4,172,191,.10);
}


.gr-search-card-v2 .gr-search-card-badges{
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	gap:7px;
	margin-top:13px;
}

.gr-search-card-v2 .gr-search-card-badges .gr-search-card-beach{
	margin-top:0;
}

.gr-search-card-v2 .gr-search-card-pet{
	display:inline-flex;
	align-items:center;
	gap:5px;
	padding:7px 12px;
	border:1px solid #dfe7e9;
	border-radius:14px;
	background:#fff;
	color:#374151;
	font-size:12px;
	font-weight:500;
	line-height:1.2;
	white-space:nowrap;
}

.gr-search-card-v2 .gr-search-card-pet svg{
	width:14px;
	height:14px;
	flex:0 0 14px;
	fill:none;
	stroke:currentColor;
	stroke-width:1.65;
	stroke-linecap:round;
	stroke-linejoin:round;
}

@media (max-width:1100px){
	.gr-search-card-v2 .gr-search-card-badges{
		margin-top:10px;
		gap:6px;
	}

	.gr-search-card-v2 .gr-search-card-pet{
		padding:6px 10px;
		font-size:11px;
	}
}

@media (max-width:640px){
	.gr-search-card-v2 .gr-search-card-pet{
		border-radius:13px;
		font-size:11px;
		padding:6px 10px;
	}
}


/* Laptop / standard desktop: preserve the proportions users already know. */
@media (min-width:921px){
	body .mphb_sc_search_results-wrapper{
		width:100%;
		padding-left:clamp(28px,2.25vw,46px);
		padding-right:clamp(28px,2.25vw,46px);
	}

	.gr-search-layout{
		grid-template-columns:minmax(0,1.22fr) minmax(390px,.98fr);
		gap:clamp(22px,1.7vw,32px);
	}
}

/* 1440+ desktops: both list and map expand instead of leaving white bands. */
@media (min-width:1440px){
	body .mphb_sc_search_results-wrapper{
		padding-left:clamp(34px,2.4vw,52px);
		padding-right:clamp(34px,2.4vw,52px);
		padding-top:42px;
	}

	.gr-search-layout{
		grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);
		gap:clamp(26px,1.8vw,36px);
	}

	.gr-search-card{
		grid-template-columns:minmax(300px,43%) minmax(0,1fr);
	}

	.gr-search-card-media{
		padding:16px;
	}

	.gr-search-card-content{
		padding-right:30px;
	}

	.gr-search-map-panel{
		min-height:620px;
	}
}

/* Large monitors: close to a 50/50 marketplace layout. */
@media (min-width:1720px){
	body .mphb_sc_search_results-wrapper{
		max-width:1880px;
		padding-left:clamp(42px,2.6vw,58px);
		padding-right:clamp(42px,2.6vw,58px);
		padding-bottom:84px;
	}

	.gr-search-layout{
		grid-template-columns:minmax(0,1fr) minmax(0,1fr);
		gap:clamp(30px,1.8vw,40px);
	}

	.gr-search-list{
		gap:24px;
	}

	.gr-search-card{
		grid-template-columns:minmax(320px,42%) minmax(0,1fr);
		min-height:300px;
	}

	.gr-search-card-image,
	.gr-search-card-image-placeholder{
		min-height:268px;
	}

	.gr-search-card-content{
		padding:30px 30px 26px 10px;
	}

	.gr-search-map-panel{
		top:24px;
		height:calc(100vh - 48px);
		min-height:660px;
	}
}

/* 1920+ keeps modest outer margins rather than a narrow centered island. */
@media (min-width:1920px){
	body .mphb_sc_search_results-wrapper{
		max-width:1920px;
	}
}


@media (min-width:1440px){
	/* The results page can be rendered through an Elementor boxed page
	   container. Expand only that top-level content container; headers,
	   footers and every other Elementor page retain their own widths. */
	body.gr-search-results-page article.gr-entry--elementor > .elementor > .e-con-boxed > .e-con-inner{
		width:100%;
		max-width:var(--gr-content-wide,1520px);
	}

	body.gr-search-results-page .mphb_sc_search_results-wrapper{
		width:100%;
		max-width:var(--gr-content-wide,1520px);
	}
}
