:root {
	--alg-brand: #E29C29;
	--alg-gold: #E29C29;
	--alg-black: #000000;
	--alg-white: #FFFFFF;
	--alg-ink: #151515;
	--alg-muted: #555555;
	--alg-border: rgba(0, 0, 0, .14);
	--alg-soft-gold: #f8eedb;
	--alg-display-font: "Didot", "Bodoni 72", "Bodoni MT", "Times New Roman", serif;
	--alg-body-font: "Zabal", "Avenir Next", "Montserrat", "Segoe UI", Arial, sans-serif;
	--alg-shadow: 0 18px 48px rgba(0, 0, 0, .12);
}

.alg-container {
	width: 100%;
	max-width: 1180px;
	margin: 0 auto;
	padding: 0 20px;
	box-sizing: border-box;
	--alg-container-pad: 20px;
}

.alg-hero,
.alg-section,
.alg-property {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	overflow-x: clip;
}

html.alg-menu-root,
body.alg-site {
	max-width: 100%;
	overflow-x: clip;
}

@supports not (overflow-x: clip) {
	html.alg-menu-root,
	body.alg-site {
		overflow-x: hidden;
	}
}

.alg-site {
	background: #fff;
	color: #000000;
}

.alg-site-header {
	position: sticky;
	top: 0;
	z-index: 1000;
	background: rgba(255, 255, 255, .96);
	border-bottom: 1px solid #e9dcc4;
	backdrop-filter: blur(16px);
}

.alg-site-header__inner {
	min-height: 78px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
}

.alg-brand {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	color: #000000;
	text-decoration: none !important;
	min-width: max-content;
}

.alg-brand img {
	max-width: 180px;
	max-height: 52px;
	width: auto;
	height: auto;
}

.alg-brand__mark {
	width: 42px;
	height: 42px;
	border-radius: 8px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: var(--alg-brand, #E29C29);
	color: #fff;
	font-weight: 900;
}

.alg-brand strong,
.alg-brand small {
	display: block;
	line-height: 1.1;
	letter-spacing: 0;
}

.alg-brand small {
	color: #555555;
	font-size: 12px;
	margin-top: 3px;
}

.alg-header-menu {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 18px;
	flex: 1 1 auto;
	min-width: 0;
}

.alg-header-menu__head,
.alg-menu-toggle,
.alg-menu-backdrop,
.alg-menu-close {
	display: none !important;
}

.alg-main-nav {
	display: flex;
	justify-content: center;
	gap: 4px;
	flex-wrap: wrap;
}

.alg-main-nav a {
	color: #151515;
	text-decoration: none !important;
	font-weight: 800;
	font-size: 14px;
	padding: 10px 9px;
	border-radius: 6px;
}

.alg-main-nav a:hover {
	background: #f8eedb;
	color: var(--alg-brand, #E29C29);
}

.alg-header-actions {
	display: flex;
	align-items: center;
	gap: 10px;
	flex: 0 0 auto;
}

.alg-header-cta {
	min-height: 40px;
	padding: 9px 13px;
}

body.alg-menu-open {
	overflow: hidden;
}

.alg-site-footer {
	background: #000000;
	color: #d2c1a4;
	padding: 48px 0 22px;
}

.alg-site-footer h2,
.alg-site-footer h3 {
	color: #fff;
	letter-spacing: 0;
	margin-top: 0;
}

.alg-site-footer a {
	color: #e9dcc4;
	text-decoration: none;
}

.alg-site-footer a:hover {
	color: #fff;
}

.alg-site-footer__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.5fr) minmax(180px, .8fr) minmax(240px, 1fr);
	gap: 32px;
}

.alg-site-footer ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 8px;
}

.alg-site-footer__bottom {
	margin-top: 34px;
	padding-top: 20px;
	border-top: 1px solid rgba(226, 232, 240, .18);
	display: flex;
	justify-content: space-between;
	gap: 16px;
	flex-wrap: wrap;
	font-size: 14px;
}

.alg-site-footer__bottom span:last-child {
	display: inline-flex;
	gap: 16px;
}

.alg-section {
	padding: 56px 0;
}

.alg-section--flush {
	padding-bottom: 0;
}

.alg-hero {
	background: linear-gradient(120deg, #000000, #23201b);
	color: #fff;
	padding: 72px 0 48px;
}

.alg-hero__content {
	max-width: 740px;
	margin-bottom: 28px;
}

.alg-hero h1,
.alg-property h1 {
	font-size: clamp(36px, 6vw, 68px);
	line-height: 1;
	margin: 0 0 16px;
	letter-spacing: 0;
}

.alg-eyebrow {
	text-transform: uppercase;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0;
	opacity: .8;
}

.alg-search {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 14px;
	align-items: end;
	background: #fff;
	color: #000000;
	border: 1px solid #e9dcc4;
	border-radius: 8px;
	padding: 18px;
	box-shadow: 0 18px 50px rgba(15, 23, 42, .12);
	margin-bottom: 28px;
}

.alg-search--compact {
	grid-template-columns: repeat(5, minmax(0, 1fr));
}

.alg-search--home {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 16px;
	align-items: end;
	max-width: 980px;
	margin: 0;
	padding: 18px;
	border-radius: 8px;
	box-shadow: 0 18px 50px rgba(15, 23, 42, .14);
}

.alg-search__tabs {
	grid-column: 1 / -1;
	display: flex;
	gap: 24px;
	border-bottom: 1px solid #e9dcc4;
	padding-bottom: 10px;
}

.alg-search__tab {
	display: inline-flex !important;
	align-items: center;
	gap: 8px;
	cursor: pointer;
	font-size: 17px !important;
	font-weight: 800 !important;
}

.alg-search__tab input {
	position: absolute;
	width: 1px !important;
	min-width: 1px;
	height: 1px;
	padding: 0;
	margin: 0;
	opacity: 0;
	pointer-events: none;
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
}

.alg-search__tab span {
	padding: 6px 0;
	border-bottom: 3px solid transparent;
}

.alg-search__tab input:checked + span {
	color: var(--alg-brand, #E29C29);
	border-bottom-color: currentColor;
}

.alg-search__location--home span {
	font-size: 16px;
}

.alg-search__location--home input {
	min-height: 56px;
	border-radius: 999px;
	font-size: 17px;
}

.alg-search__submit {
	min-width: 112px;
	min-height: 56px;
	border-radius: 999px;
}

.alg-consultation {
	max-width: 980px;
	margin-top: 14px;
	padding: 18px;
	border-radius: 8px;
	background: #000000;
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
}

.alg-consultation strong {
	font-size: 20px;
	line-height: 1.25;
}

.alg-search label,
.alg-form label,
.alg-settings-grid label {
	display: grid;
	gap: 6px;
	font-weight: 700;
	font-size: 13px;
}

.alg-search input,
.alg-search select,
.alg-form input,
.alg-form textarea,
.alg-settings-grid input,
.alg-settings-grid textarea {
	width: 100%;
	border: 1px solid #d2c1a4;
	border-radius: 6px;
	padding: 11px 12px;
	font: inherit;
	background: #fff;
	color: #000000;
}

.alg-search__amenities {
	grid-column: 1 / -1;
	border: 1px solid #e9dcc4;
	border-radius: 8px;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
	gap: 12px 14px;
	padding: 12px;
}

.alg-search__amenities legend {
	font-weight: 800;
	padding: 0 6px;
}

.alg-search__amenities label {
	display: grid;
	grid-template-columns: 16px minmax(0, 1fr);
	gap: 8px;
	align-items: start;
	font-weight: 700;
	font-size: 13px;
	line-height: 1.2;
	min-width: 0;
}

.alg-search__amenities span {
	min-width: 0;
	overflow-wrap: anywhere;
}

.alg-search input[type="checkbox"] {
	width: 16px !important;
	min-width: 16px;
	height: 16px;
	padding: 0;
	margin: 1px 0 0;
	accent-color: var(--alg-brand, #E29C29);
}

.alg-search__actions,
.alg-actions {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
	align-items: center;
}

.alg-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 11px 16px;
	border-radius: 6px;
	background: var(--alg-brand, #E29C29);
	color: #fff !important;
	border: 1px solid var(--alg-brand, #E29C29);
	text-decoration: none !important;
	font: inherit;
	font-size: 15px;
	line-height: 1.2;
	font-weight: 800;
	cursor: pointer;
	text-indent: 0;
	box-shadow: none;
	opacity: 1;
	appearance: none;
	-webkit-appearance: none;
	white-space: nowrap;
}

.alg-search button.alg-button[type="submit"] {
	background: var(--alg-brand, #E29C29) !important;
	border-color: var(--alg-brand, #E29C29) !important;
	color: #fff !important;
	min-width: 92px;
}

.alg-button--ghost {
	background: #fff;
	color: #000000 !important;
	border-color: #d2c1a4;
}

.alg-search__actions .alg-button--ghost {
	background: #fff !important;
	border-color: #d2c1a4 !important;
	color: #000000 !important;
}

.alg-button--whatsapp {
	background: #000000;
	border-color: #000000;
}

.alg-button--call {
	background: #000000;
	border-color: #000000;
}

.alg-listing-grid,
.alg-agent-grid {
	display: grid;
	grid-template-columns: repeat(var(--alg-listing-columns, 3), minmax(0, 1fr));
	gap: 22px;
}

.alg-listing-grid--small {
	--alg-listing-columns: 4;
}

.alg-agent-card,
.alg-panel,
.alg-form {
	border: 1px solid #e9dcc4;
	border-radius: 8px;
	background: #fff;
	overflow: hidden;
}

.alg-card__media {
	display: block;
	aspect-ratio: 16 / 10;
	background: #e9dcc4;
	overflow: hidden;
}

.alg-card__media img,
.alg-property__gallery img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.alg-card__placeholder {
	width: 100%;
	aspect-ratio: 16 / 10;
	background: linear-gradient(135deg, #e9dcc4, #fffaf2);
}

.alg-panel,
.alg-form,
.alg-agent-card {
	padding: 18px;
}

.alg-agent-stats {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.alg-card h3 {
	margin: 0 0 6px;
	font-size: 18px;
	line-height: 1.25;
	letter-spacing: -.01em;
}

.alg-card h3 a {
	color: #151515;
	text-decoration: none;
}

.alg-price {
	color: var(--alg-brand, #E29C29);
	font-weight: 900;
	margin: 0 0 6px;
}

.alg-price--large {
	font-size: 28px;
}

.alg-location,
.alg-agent-role {
	color: #555555;
	margin: 0 0 10px;
}

.alg-agent-stats span {
	background: #f8eedb;
	border-radius: 999px;
	padding: 6px 10px;
	font-size: 13px;
	font-weight: 700;
	color: #151515;
}

.alg-badge {
	display: inline-flex;
	background: var(--badge-color, #000000);
	color: #fff;
	border-radius: 999px;
	padding: 6px 10px;
	font-size: 12px;
	font-weight: 800;
}

.alg-badge--featured {
	background: #E29C29;
}

.alg-badge--rooftop {
	align-items: center;
	gap: 4px;
}

.alg-badge--rooftop .alg-icon {
	width: 14px;
	height: 14px;
}

.alg-section-heading,
.alg-property__header {
	display: flex;
	justify-content: space-between;
	gap: 18px;
	align-items: flex-start;
	margin-bottom: 20px;
}

.alg-mode-shortcuts {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 14px;
}

.alg-mode-shortcuts a:not(.alg-mode-shortcut) {
	padding: 22px;
	border-radius: 8px;
	background: #fffaf2;
	border: 1px solid #e9dcc4;
	text-decoration: none;
	font-size: 24px;
	font-weight: 900;
	color: #000000;
}

.alg-cta-band {
	background: #fffaf2;
}

.alg-property__gallery {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 6px;
	background: #000000;
}

.alg-property__gallery a {
	aspect-ratio: 16 / 10;
	display: block;
	overflow: hidden;
}

.alg-property__gallery a:first-child {
	grid-column: span 2;
	grid-row: span 2;
}

.alg-property__main {
	padding-top: 34px;
}

.alg-property__content {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 340px;
	gap: 24px;
	margin-top: 24px;
	align-items: start;
}

.alg-property__content main {
	display: grid;
	gap: 18px;
}

.alg-actions-panel {
	display: grid;
	gap: 10px;
}

.alg-amenities {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
	list-style: none;
	padding: 0;
	margin: 0;
}

.alg-amenities li {
	background: #fffaf2;
	border: 1px solid #e9dcc4;
	border-radius: 6px;
	padding: 10px 12px;
}

.alg-map {
	min-height: 360px;
	border-radius: 8px;
	overflow: hidden;
	border: 1px solid #e9dcc4;
	background: #e9dcc4;
}

.alg-map--search {
	min-height: 560px;
}

.alg-agent-card {
	display: grid;
	grid-template-columns: 88px minmax(0, 1fr);
	gap: 16px;
	align-items: start;
}

.alg-agent-photo {
	width: 88px;
	height: 88px;
	border-radius: 50%;
	object-fit: cover;
	background: #e9dcc4;
}

.alg-agent-profile {
	display: grid;
	grid-template-columns: 180px minmax(0, 1fr);
	gap: 28px;
	align-items: start;
	margin-bottom: 32px;
}

.alg-agent-profile .alg-agent-photo {
	width: 180px;
	height: 180px;
}

.alg-contact-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 420px;
	gap: 28px;
	align-items: start;
}

.alg-form {
	display: grid;
	gap: 14px;
}

.alg-notice,
.alg-empty {
	background: #ecfdf5;
	border: 1px solid #bbf7d0;
	border-radius: 8px;
	padding: 14px;
	color: #14532d;
}

.alg-pagination {
	margin-top: 28px;
	display: flex;
	gap: 8px;
	justify-content: center;
}

.alg-pagination .page-numbers {
	padding: 8px 12px;
	border: 1px solid #d2c1a4;
	border-radius: 6px;
	text-decoration: none;
}

.alg-pagination .current {
	background: var(--alg-brand, #E29C29);
	color: #fff;
	border-color: var(--alg-brand, #E29C29);
}

.alg-mobile-sticky {
	display: none;
}

.alg-map-popup {
	width: 210px;
}

.alg-map-popup img {
	width: 100%;
	aspect-ratio: 16 / 10;
	object-fit: cover;
	border-radius: 6px;
	margin-bottom: 8px;
}

.alg-map-popup h3 {
	font-size: 16px;
	margin: 0 0 6px;
}

@media (max-width: 980px) {
	.alg-site-header__inner {
		min-height: 68px;
	}

	.alg-menu-toggle {
		display: inline-flex !important;
		align-items: center;
		gap: 9px;
		min-height: 42px;
		padding: 9px 12px;
		border: 1px solid #d2c1a4;
		border-radius: 8px;
		background: #fff;
		color: #000000;
		font: inherit;
		font-weight: 900;
		cursor: pointer;
	}

	.alg-menu-toggle__bars {
		width: 20px;
		display: grid;
		gap: 4px;
	}

	.alg-menu-toggle__bars span {
		display: block;
		height: 2px;
		border-radius: 999px;
		background: #000000;
		transition: transform .2s ease, opacity .2s ease;
	}

	.alg-site-header.is-open .alg-menu-toggle__bars span:nth-child(1) {
		transform: translateY(6px) rotate(45deg);
	}

	.alg-site-header.is-open .alg-menu-toggle__bars span:nth-child(2) {
		opacity: 0;
	}

	.alg-site-header.is-open .alg-menu-toggle__bars span:nth-child(3) {
		transform: translateY(-6px) rotate(-45deg);
	}

	.alg-menu-backdrop {
		position: fixed;
		inset: 0;
		z-index: 998;
		display: block !important;
		background: rgba(15, 23, 42, .46);
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
		transition: opacity .2s ease, visibility 0s linear .2s;
	}

	.alg-site-header.is-open .alg-menu-backdrop {
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
		transition-delay: 0s;
	}

	.alg-header-menu {
		position: fixed;
		top: 0;
		right: 0;
		z-index: 999;
		width: min(88vw, 390px);
		height: 100vh;
		height: 100dvh;
		box-sizing: border-box;
		display: flex;
		flex-direction: column;
		align-items: stretch;
		justify-content: flex-start;
		gap: 18px;
		background: #fff;
		box-shadow: none;
		padding: 20px;
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
		transform: translate3d(0, 0, 0);
		transition: transform .24s ease, opacity .2s ease, visibility 0s linear .24s, box-shadow .2s ease;
		overflow-y: auto;
	}

	.alg-site-header.is-open .alg-header-menu {
		box-shadow: -24px 0 70px rgba(15, 23, 42, .24);
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
		transform: translate3d(0, 0, 0);
		transition-delay: 0s;
	}

	.alg-header-menu__head {
		display: flex !important;
		align-items: center;
		justify-content: space-between;
		padding-bottom: 14px;
		border-bottom: 1px solid #e9dcc4;
		font-size: 20px;
	}

	.alg-menu-close {
		display: inline-flex !important;
		align-items: center;
		justify-content: center;
		width: 40px;
		height: 40px;
		border: 1px solid #d2c1a4;
		border-radius: 8px;
		background: #fff;
		color: #000000;
		font-size: 28px;
		line-height: 1;
		cursor: pointer;
	}

	.alg-main-nav {
		display: grid;
		justify-content: stretch;
		gap: 6px;
	}

	.alg-main-nav a {
		display: flex;
		align-items: center;
		min-height: 48px;
		padding: 12px 14px;
		border-radius: 8px;
		background: #fffaf2;
		font-size: 17px;
	}

	.alg-header-actions {
		display: grid;
		grid-template-columns: 1fr;
		margin-top: auto;
		padding-top: 16px;
		border-top: 1px solid #e9dcc4;
	}

	.alg-header-actions .alg-button {
		width: 100%;
	}

	.alg-site-footer__grid {
		grid-template-columns: 1fr 1fr;
	}

	.alg-search,
	.alg-search--home,
	.alg-search--compact,
	.alg-listing-grid,
	.alg-listing-grid--small,
	.alg-contact-layout {
		grid-template-columns: 1fr 1fr;
	}

	.alg-property__content {
		grid-template-columns: 1fr;
	}

	.alg-property__content aside {
		grid-column: auto;
	}
}

@media (max-width: 680px) {
	.alg-site-header__inner {
		min-height: 64px;
	}

	.alg-brand {
		min-width: 0;
	}

	.alg-brand small {
		display: none;
	}

	.alg-brand strong {
		font-size: 15px;
	}

	.alg-brand__mark {
		width: 38px;
		height: 38px;
	}

	.alg-menu-toggle__text {
		display: none;
	}

	.alg-menu-toggle {
		width: 42px;
		justify-content: center;
		padding: 9px;
	}

	.alg-site-footer__grid,
	.alg-site-footer__bottom {
		display: grid;
		grid-template-columns: 1fr;
	}

	.alg-container {
		padding: 0 16px;
	}

	.alg-section {
		padding: 38px 0;
	}

	.alg-hero {
		padding: 48px 0 34px;
	}

	.alg-search,
	.alg-search--home,
	.alg-search--compact,
	.alg-contact-layout,
	.alg-mode-shortcuts,
	.alg-agent-grid,
	.alg-agent-profile {
		grid-template-columns: 1fr;
	}

	.alg-listing-grid,
	.alg-listing-grid--small {
		grid-template-columns: 1fr;
		gap: 16px;
	}

	.alg-listing-grid .alg-card__body {
		padding: 14px 16px 16px;
	}

	.alg-listing-grid .alg-card h3 {
		font-size: 17px;
		margin: 0 0 4px;
	}

	.alg-listing-grid .alg-card__facts {
		margin-bottom: 10px;
	}

	.alg-search--home {
		padding: 16px;
	}

	.alg-search__tabs {
		gap: 18px;
		overflow-x: auto;
	}

	.alg-search__submit {
		width: 100%;
	}

	.alg-consultation {
		display: grid;
		grid-template-columns: 1fr;
	}

	.alg-section-heading,
	.alg-property__header {
		display: block;
	}

	.alg-property__gallery {
		grid-template-columns: 1fr 1fr;
	}

	.alg-property__gallery a:first-child {
		grid-column: 1 / -1;
	}

	.alg-amenities {
		grid-template-columns: 1fr;
	}

	.alg-map,
	.alg-map--search {
		min-height: 320px;
	}

	.alg-agent-profile .alg-agent-photo {
		width: 132px;
		height: 132px;
	}

	.alg-mobile-sticky {
		position: fixed;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 999;
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 8px;
		background: #fff;
		border-top: 1px solid #e9dcc4;
		padding: 10px;
	}

body.single-alg_property {
		padding-bottom: 78px;
	}
}

/* Theme inheritance layer: keep ALG layout, let the active theme control visual tone. */
.alg-hero,
.alg-section,
.alg-property,
.alg-search,
.alg-form,
.alg-card,
.alg-agent-card,
.alg-panel,
.alg-contact-layout,
.alg-agent-profile,
.alg-mode-shortcuts a,
.alg-consultation {
	font-family: inherit;
	color: inherit;
}

.alg-hero,
.alg-cta-band,
.alg-consultation {
	background: transparent;
	color: inherit;
}

.alg-search,
.alg-form,
.alg-card,
.alg-agent-card,
.alg-panel,
.alg-mode-shortcuts a {
	background: transparent;
	border-color: rgba(127, 127, 127, .28);
	border-color: color-mix(in srgb, currentColor 22%, transparent);
	box-shadow: none;
}

.alg-search input,
.alg-search select,
.alg-form input,
.alg-form textarea,
.alg-settings-grid input,
.alg-settings-grid textarea {
	background: transparent;
	color: inherit;
	border-color: rgba(127, 127, 127, .32);
	border-color: color-mix(in srgb, currentColor 28%, transparent);
}

.alg-card h3 a,
.alg-mode-shortcuts a {
	color: inherit;
}

.alg-location,
.alg-agent-role,
.alg-eyebrow {
	color: inherit;
	opacity: .72;
}

.alg-price {
	color: var(--alg-brand);
}

.alg-button,
.alg-search__actions .alg-button--ghost {
	background: transparent;
	border-color: currentColor;
	color: inherit !important;
}

.alg-search button.alg-button[type="submit"],
.alg-search__submit,
.alg-button--call {
	background: var(--alg-brand) !important;
	border-color: var(--alg-brand) !important;
	color: #fff !important;
}

.alg-button--whatsapp {
	background: #000000;
	border-color: #000000;
	color: #fff !important;
}

/* Reference-inspired UI refresh. These rules keep typography inherited but give ALG shortcodes stronger product surfaces. */
.alg-hero--search-hub {
	position: relative;
	isolation: isolate;
	padding: clamp(72px, 10vw, 138px) 0 72px;
	background:
		linear-gradient(120deg, rgba(0, 0, 0, .78), rgba(226, 156, 41, .42)),
		linear-gradient(135deg, color-mix(in srgb, var(--alg-brand) 55%, #000000), #000000);
	color: #fff;
	overflow: hidden;
}

.alg-hero--search-hub::after {
	content: "";
	position: absolute;
	inset: auto 0 -46px 0;
	height: 120px;
	background: Canvas;
	border-radius: 50% 50% 0 0 / 100% 100% 0 0;
	z-index: -1;
}

.alg-hero--search-hub .alg-hero__content {
	margin: 0 auto 28px;
	text-align: center;
}

.alg-hero--search-hub .alg-eyebrow,
.alg-hero--search-hub .alg-hero__content p {
	color: inherit;
	opacity: .92;
}

.alg-hero--search-hub .alg-search-shell {
	margin: 0 auto;
}

.alg-search-shell {
	width: 100%;
	max-width: 980px;
	border-radius: 10px;
	background: #fff;
	color: #000000;
	box-shadow: 0 24px 70px rgba(15, 23, 42, .2);
	overflow: hidden;
}

.alg-search-shell .alg-search {
	margin: 0;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	background: #fff;
	color: #000000;
}

.alg-search--home {
	grid-template-columns: minmax(0, 1fr) 58px;
	padding: 22px;
}

.alg-search--filters {
	border-radius: 10px;
	box-shadow: 0 14px 42px rgba(15, 23, 42, .08);
}

.alg-search__tabs--filters {
	grid-column: 1 / -1;
	margin: 0 0 12px;
}

.alg-search--with-tabs.alg-search--filters {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px 16px;
}

.alg-search--with-tabs.alg-search--filters .alg-search__tabs--filters {
	grid-column: 1 / -1;
}

.alg-home .alg-listing-grid--carousel .alg-card__footer--single,
.alg-home .alg-listing-grid--peek .alg-card__footer--single {
	min-height: 0;
}

.alg-home .alg-listing-grid--carousel .alg-card__footer--bookable,
.alg-home .alg-listing-grid--peek .alg-card__footer--bookable {
	gap: 8px;
}

.alg-search__tabs {
	align-items: center;
	gap: 28px;
	margin: -4px 0 4px;
}

.alg-search__location--home span {
	margin-bottom: 6px;
	color: #000000;
}

.alg-search__location--home input {
	border-radius: 999px;
	padding-left: 22px;
	background: #fff;
	color: #000000;
}

.alg-search__submit {
	position: relative;
	width: 58px;
	min-width: 58px;
	height: 58px;
	min-height: 58px;
	padding: 0;
	border-radius: 50%;
	font-size: 0;
}

.alg-search button.alg-button.alg-search__submit[type="submit"] {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	flex: 0 0 58px;
	width: 58px !important;
	min-width: 58px !important;
	max-width: 58px !important;
	height: 58px !important;
	min-height: 58px !important;
	max-height: 58px !important;
	padding: 0 !important;
	border-radius: 50% !important;
	font-size: 0 !important;
	line-height: 0 !important;
	text-indent: 0 !important;
	white-space: nowrap;
	overflow: hidden;
	appearance: none;
	-webkit-appearance: none;
}

.alg-search button.alg-button.alg-search__submit[type="submit"] span {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
	white-space: nowrap;
	border: 0;
}

.alg-search__submit::before {
	content: "";
	width: 18px;
	height: 18px;
	border: 3px solid currentColor;
	border-radius: 50%;
}

.alg-search__submit::after {
	content: "";
	position: absolute;
	width: 11px;
	height: 3px;
	background: currentColor;
	transform: translate(11px, 12px) rotate(45deg);
	border-radius: 99px;
}

.alg-consultation {
	max-width: none;
	margin: 0;
	border-radius: 0;
	background: color-mix(in srgb, var(--alg-brand) 18%, #000000);
	color: #fff;
	padding: 20px 24px;
}

.alg-consultation div {
	display: grid;
	gap: 5px;
}

.alg-consultation span {
	opacity: .78;
	font-size: 14px;
}

.alg-home-split {
	display: grid;
	grid-template-columns: minmax(0, .95fr) minmax(280px, 1fr);
	gap: clamp(28px, 6vw, 80px);
	align-items: center;
}

.alg-home-split h2,
.alg-location-showcase h2 {
	margin-top: 0;
}

.alg-home-split__visual,
.alg-location-showcase__panel {
	min-height: 240px;
	border-radius: 10px;
	padding: clamp(24px, 5vw, 46px);
	background:
		linear-gradient(120deg, rgba(0, 0, 0, .06), rgba(226, 156, 41, .2)),
		color-mix(in srgb, var(--alg-brand) 12%, Canvas);
	border: 1px solid rgba(127, 127, 127, .22);
	display: grid;
	align-content: end;
	gap: 8px;
	overflow: hidden;
}

.alg-home-split__visual span {
	font-size: 13px;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0;
	opacity: .72;
}

.alg-home-split__visual strong {
	font-size: clamp(24px, 4vw, 42px);
	line-height: 1.05;
	max-width: 520px;
}

.alg-mode-shortcuts a:not(.alg-mode-shortcut) {
	display: grid;
	gap: 8px;
	min-height: 156px;
	align-content: end;
	position: relative;
	overflow: hidden;
	background: color-mix(in srgb, var(--alg-brand) 7%, Canvas);
	border-radius: 10px;
}

.alg-mode-shortcuts a:not(.alg-mode-shortcut)::before {
	content: "\2192";
	position: absolute;
	inset: 16px 16px auto auto;
	width: 54px;
	height: 54px;
	border-radius: 50%;
	background: color-mix(in srgb, var(--alg-brand) 24%, transparent);
	color: var(--alg-brand);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 24px;
	font-weight: 900;
	line-height: 1;
	pointer-events: none;
}

.alg-mode-shortcuts span {
	font-size: clamp(24px, 3vw, 34px);
	line-height: 1;
}

.alg-mode-shortcuts small {
	font-size: 14px;
	font-weight: 600;
	line-height: 1.4;
	opacity: .72;
}

.alg-location-showcase__panel {
	background:
		linear-gradient(90deg, rgba(2, 6, 23, .76), rgba(2, 6, 23, .18)),
		linear-gradient(135deg, color-mix(in srgb, var(--alg-brand) 38%, #151515), #151515);
	color: #fff;
	align-content: space-between;
}

.alg-location-pills {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.alg-location-pills a {
	color: #fff;
	border: 1px solid rgba(255, 255, 255, .72);
	border-radius: 999px;
	padding: 7px 13px;
	text-decoration: none;
	font-weight: 800;
	font-size: 13px;
}

.alg-insight-band {
	background:
		linear-gradient(135deg, rgba(226, 156, 41, .12), rgba(226, 156, 41, 0)),
		transparent;
}

.alg-insight-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 22px;
}

.alg-insight-card {
	min-height: 230px;
	border: 1px solid rgba(127, 127, 127, .22);
	border-radius: 10px;
	padding: 26px;
	display: grid;
	align-content: space-between;
	gap: 18px;
	background: Canvas;
	color: CanvasText;
	box-shadow: 0 16px 42px rgba(15, 23, 42, .07);
}

.alg-insight-card:nth-child(even) {
	background: color-mix(in srgb, var(--alg-brand) 20%, #000000);
	color: #fff;
}

.alg-insight-card h3 {
	margin: 0;
}

.alg-insight-card p {
	margin: 0;
	opacity: .78;
}

.alg-insight-card a {
	justify-self: start;
	color: inherit;
	border: 1px solid currentColor;
	border-radius: 999px;
	padding: 8px 14px;
	text-decoration: none;
	font-weight: 800;
}

.alg-listing-grid {
	align-items: stretch;
}

/* ── Premium property card ─────────────────────────────── */
.alg-card {
	display: flex;
	flex-direction: column;
	border-radius: 14px;
	background: #fff;
	color: #151515;
	border: 1px solid rgba(226, 156, 41, .14);
	box-shadow: 0 4px 20px rgba(15, 23, 42, .07), 0 1px 4px rgba(15, 23, 42, .04);
	overflow: hidden;
	transition: transform .22s cubic-bezier(.34, 1.2, .64, 1), box-shadow .22s ease;
}

.alg-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 18px 52px rgba(15, 23, 42, .13), 0 2px 8px rgba(15, 23, 42, .06);
}

/* Image */
.alg-card__media {
	position: relative;
	display: block;
	aspect-ratio: 16 / 10;
	overflow: hidden;
	background: #f0ebe0;
	flex-shrink: 0;
}

.alg-card__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform .42s ease;
}

.alg-card:hover .alg-card__media img {
	transform: scale(1.04);
}

.alg-media-watermark {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 20px;
	pointer-events: none;
	z-index: 1;
}

.alg-media-watermark__logo {
	width: clamp(120px, 54%, 220px);
	max-width: 220px;
	height: auto;
	display: block;
	opacity: .18;
	filter: grayscale(1) brightness(0) invert(1);
}

.alg-media-watermark--list .alg-media-watermark__logo {
	width: clamp(110px, 52%, 210px);
	max-width: 210px;
}

.alg-media-watermark--gallery .alg-media-watermark__logo {
	width: clamp(160px, 42%, 320px);
	max-width: 320px;
	opacity: .15;
}

.alg-media-watermark__text {
	max-width: 82%;
	font-family: var(--alg-display-font);
	font-size: clamp(30px, 6vw, 54px);
	font-weight: 700;
	line-height: .92;
	letter-spacing: .06em;
	text-transform: uppercase;
	text-align: center;
	color: rgba(255, 255, 255, .22);
	text-shadow: 0 2px 18px rgba(0, 0, 0, .24);
}

.alg-media-watermark--list .alg-media-watermark__text {
	font-size: clamp(24px, 5vw, 42px);
}

.alg-media-watermark--gallery .alg-media-watermark__text {
	font-size: clamp(34px, 5vw, 64px);
}

.alg-card__media::after {
	content: "";
	position: absolute;
	inset: auto 0 0;
	height: 40%;
	background: linear-gradient(0deg, rgba(2, 6, 23, .45), transparent);
	pointer-events: none;
	z-index: 2;
}

/* Featured badge overlaid on image */
.alg-card__featured {
	position: absolute;
	top: 12px;
	left: 12px;
	z-index: 3;
	background: var(--alg-brand, #E29C29);
	color: #fff;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: .06em;
	text-transform: uppercase;
	border-radius: 6px;
	padding: 4px 9px;
	line-height: 1.2;
}

/* Status pill — top-right on image */
.alg-card__status {
	position: absolute;
	top: 12px;
	right: 12px;
	z-index: 3;
	background: var(--badge-color, var(--alg-black));
	color: #fff;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: .05em;
	text-transform: uppercase;
	border-radius: 6px;
	padding: 4px 9px;
	line-height: 1.2;
	box-shadow: 0 4px 14px rgba(0, 0, 0, .18);
}

/* Stacked badges when featured + status both present */
.alg-card__badge-col {
	position: absolute;
	top: 12px;
	right: 12px;
	z-index: 3;
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 5px;
	max-width: calc(100% - 24px);
}

.alg-card__badge-col .alg-card__featured,
.alg-card__badge-col .alg-card__status {
	position: static;
	top: auto;
	left: auto;
	right: auto;
	box-shadow: 0 4px 14px rgba(0, 0, 0, .18);
}

/* Mode pill on image (bottom-left) */
.alg-card__mode-badge--media {
	position: absolute;
	bottom: 14px;
	left: 14px;
	z-index: 3;
	background: var(--badge-color, var(--alg-black));
	color: #fff;
	box-shadow: 0 4px 14px rgba(0, 0, 0, .2);
}

/* Card body */
.alg-card__body {
	display: flex;
	flex-direction: column;
	flex: 1 1 auto;
	padding: 16px 18px 18px;
	gap: 0;
}

/* Title */
.alg-card h3 {
	margin: 0 0 3px;
	font-size: 17px;
	font-weight: 800;
	line-height: 1.25;
	letter-spacing: -.015em;
}

.alg-card h3 a {
	color: #151515;
	text-decoration: none;
}

.alg-card h3 a:hover {
	color: var(--alg-brand, #E29C29);
}

/* Prominent price (PropertyPro-style hierarchy: title → price → location) */
.alg-card__price {
	margin: 0 0 6px;
	font-family: var(--alg-display-font);
	font-size: clamp(19px, 2.6vw, 24px);
	font-weight: 800;
	line-height: 1.1;
	color: var(--alg-ink, #151515);
	letter-spacing: -.02em;
}

/* Location */
.alg-card .alg-location {
	display: flex;
	align-items: center;
	gap: 5px;
	color: #666;
	font-size: 13px;
	font-weight: 600;
	margin: 0 0 8px;
}

.alg-card .alg-location .alg-icon {
	width: 14px;
	height: 14px;
	color: var(--alg-brand, #E29C29);
	flex-shrink: 0;
}

/* Inline facts row (matches detail page — no pills) */
.alg-card__facts {
	margin: 0 0 12px;
	gap: 4px 14px;
}

.alg-card__facts .alg-fact {
	font-size: 12.5px;
	font-weight: 700;
	color: #444;
}

.alg-card__facts .alg-fact .alg-icon {
	width: 14px;
	height: 14px;
}

/* Legacy amenities pills — kept for older markup */
.alg-card__amenities {
	display: flex;
	gap: 8px;
	flex-wrap: wrap;
	margin-bottom: 12px;
}

.alg-card__amenities span {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	background: #f8f5f0;
	border: 1px solid #ede8df;
	border-radius: 8px;
	padding: 6px 11px;
	font-size: 13px;
	font-weight: 700;
	color: #333;
}

.alg-card__amenities .alg-icon {
	width: 14px;
	height: 14px;
	color: var(--alg-brand, #E29C29);
}

/* Footer */
.alg-card__footer {
	display: flex;
	align-items: center;
	justify-content: stretch;
	gap: 10px;
	margin-top: auto;
	padding-top: 10px;
	border-top: 1px solid #f0ebe0;
}

.alg-card__footer--bookable .alg-card__book,
.alg-card__footer--bookable .alg-card__details {
	flex: 1 1 0;
	min-width: 0;
	text-align: center;
}

.alg-card__footer--bookable .alg-card__book {
	padding-inline: 12px;
	font-size: 13px;
}

.alg-card__footer--single .alg-card__details {
	width: 100%;
}

.alg-card__footer-meta {
	display: flex;
	flex-direction: column;
	gap: 4px;
	min-width: 0;
}

/* Mode/status badge in footer (legacy list views) */
.alg-card__mode-badge {
	display: inline-flex;
	align-items: center;
	padding: 3px 9px;
	font-size: 10.5px;
	font-weight: 800;
	letter-spacing: .06em;
	text-transform: uppercase;
	border-radius: 5px;
	align-self: flex-start;
	background: var(--badge-color, var(--alg-black));
	color: #fff;
}

/* Price (inline / legacy) */
.alg-card .alg-price {
	font-size: 18px;
	font-weight: 900;
	color: #151515;
	line-height: 1.2;
	margin: 0;
}

/* View Details button */
.alg-card__details {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	padding: 10px 16px;
	border-radius: 8px;
	background: var(--alg-brand, #E29C29);
	color: #fff !important;
	font-size: 12.5px;
	font-weight: 800;
	letter-spacing: .02em;
	text-decoration: none !important;
	border: none;
	white-space: nowrap;
	transition: background .18s ease, transform .14s ease;
	flex-shrink: 0;
}

.alg-card__details:hover {
	background: color-mix(in srgb, var(--alg-brand, #E29C29) 85%, #000);
	transform: translateY(-1px);
}

.alg-badge--soft {
	background: color-mix(in srgb, var(--alg-brand) 12%, Canvas);
	color: currentColor;
	border: 1px solid rgba(127, 127, 127, .22);
}

.alg-card__quick {
	border: 1px solid currentColor;
	border-radius: 999px;
	padding: 7px 12px;
	font-size: 13px;
	font-weight: 900;
	text-decoration: none;
}

.alg-property__gallery {
	border-radius: 0 0 10px 10px;
	overflow: hidden;
}

.alg-property__header {
	padding-bottom: 22px;
	border-bottom: 1px solid rgba(127, 127, 127, .18);
}

.alg-detail-bar {
	margin: 16px 0 4px;
}

.alg-panel,
.alg-agent-card {
	border-radius: 10px;
	background: Canvas;
	color: CanvasText;
	box-shadow: 0 14px 38px rgba(15, 23, 42, .07);
}

.alg-actions-panel {
	position: sticky;
	top: 24px;
}

.alg-actions-panel h2 {
	margin: 0;
	font-size: 24px;
}

.alg-actions-panel p {
	margin: 0;
}

.alg-agent-card h3 {
	margin-top: 0;
}

.alg-agent-card h3 a {
	color: inherit;
	text-decoration: none;
}

@media (max-width: 980px) {
	.alg-home-split,
	.alg-insight-grid {
		grid-template-columns: 1fr 1fr;
	}

	.alg-actions-panel {
		position: static;
	}
}

@media (max-width: 680px) {
	.alg-hero--search-hub {
		padding: 54px 0 42px;
	}

	.alg-hero--search-hub .alg-hero__content {
		text-align: left;
	}

	.alg-search-shell {
		border-radius: 8px;
	}

	.alg-search--home {
		grid-template-columns: 1fr 54px;
		padding: 18px;
	}

	.alg-search__location--home {
		min-width: 0;
	}

	.alg-search__submit {
		width: 54px;
		min-width: 54px;
		height: 54px;
		min-height: 54px;
		align-self: end;
	}

	.alg-search button.alg-button.alg-search__submit[type="submit"] {
		flex-basis: 54px;
		width: 54px !important;
		min-width: 54px !important;
		max-width: 54px !important;
		height: 54px !important;
		min-height: 54px !important;
		max-height: 54px !important;
	}

	.alg-consultation,
	.alg-home-split,
	.alg-insight-grid {
		grid-template-columns: 1fr;
	}

	.alg-home-split__visual,
	.alg-location-showcase__panel,
	.alg-insight-card {
		min-height: 190px;
	}

	.alg-mode-shortcuts a {
		min-height: 118px;
	}

	.alg-card__footer--bookable {
		flex-direction: column;
		align-items: stretch;
		gap: 8px;
		padding-top: 8px;
	}

	.alg-card__media {
		aspect-ratio: 2 / 1;
	}

	.alg-card__body {
		padding: 14px 16px 16px;
	}

	.alg-card__price {
		font-size: clamp(18px, 5vw, 22px);
	}

	.alg-card__facts {
		margin-bottom: 8px;
	}

	.alg-card__details {
		display: flex;
		width: 100%;
		justify-content: center;
	}

	.alg-card__quick {
		display: inline-flex;
		align-items: center;
	}

	/* Detail-page desktop enquiry panel is redundant on mobile (covered by the floating sticky bar). */
	.alg-actions-panel--enquire {
		display: none;
	}
}

/* ALG brand guide alignment: black, gold, white, Didot primary, Zabal secondary. */
body.alg-site,
.alg-hero,
.alg-section,
.alg-property,
.alg-search,
.alg-form,
.alg-card,
.alg-agent-card,
.alg-panel,
.alg-site-header,
.alg-site-footer {
	font-family: var(--alg-body-font);
	color: var(--alg-black);
	letter-spacing: 0;
}

body.alg-site {
	background: var(--alg-white);
}

.alg-site :is(h1, h2, h3),
.alg-hero h1,
.alg-property h1,
.alg-brand strong,
.alg-mode-shortcuts span,
.alg-home-split__visual strong {
	font-family: var(--alg-display-font);
	font-weight: 700;
	letter-spacing: 0;
}

.alg-site :is(h1, h2, h3),
.alg-card h3 a,
.alg-mode-shortcuts a,
.alg-agent-card h3 a {
	color: var(--alg-black);
}

.alg-site-header {
	background: rgba(255, 255, 255, .97);
	border-bottom-color: var(--alg-border);
	backdrop-filter: blur(14px);
}

.alg-brand,
.alg-main-nav a,
.alg-menu-toggle,
.alg-menu-close {
	color: var(--alg-black);
}

.alg-brand__mark {
	background: var(--alg-black);
	color: var(--alg-brand);
	border: 2px solid var(--alg-brand);
	border-radius: 8px;
}

.alg-brand small,
.alg-location,
.alg-agent-role {
	color: var(--alg-muted);
}

.alg-main-nav a:hover,
.alg-main-nav a:focus-visible {
	background: var(--alg-soft-gold);
	color: var(--alg-black);
}

.alg-hero {
	background: var(--alg-black);
	color: var(--alg-white);
}

.alg-hero--search-hub {
	background:
		linear-gradient(120deg, rgba(0, 0, 0, .88), rgba(0, 0, 0, .68)),
		linear-gradient(135deg, var(--alg-black), #23201b);
	color: var(--alg-white);
}

.alg-hero--search-hub::after {
	background: var(--alg-white);
}

.alg-hero h1,
.alg-hero h2,
.alg-hero h3,
.alg-hero--search-hub .alg-hero__content p {
	color: var(--alg-white);
}

.alg-eyebrow,
.alg-price {
	color: var(--alg-brand);
	opacity: 1;
}

.alg-eyebrow {
	font-family: var(--alg-body-font);
	font-weight: 800;
}

.alg-search-shell,
.alg-search,
.alg-form,
.alg-card,
.alg-agent-card,
.alg-panel,
.alg-mode-shortcuts a,
.alg-home-split__visual,
.alg-location-showcase__panel,
.alg-insight-card {
	background: var(--alg-white);
	border-color: var(--alg-border);
	border-radius: 8px;
	box-shadow: var(--alg-shadow);
}

.alg-search-shell {
	border: 1px solid rgba(226, 156, 41, .34);
	overflow: hidden;
}

.alg-search input,
.alg-search select,
.alg-form input,
.alg-form textarea,
.alg-settings-grid input,
.alg-settings-grid textarea {
	background: var(--alg-white);
	color: var(--alg-black);
	border-color: rgba(0, 0, 0, .22);
	border-radius: 6px;
}

.alg-search input:focus,
.alg-search select:focus,
.alg-form input:focus,
.alg-form textarea:focus {
	border-color: var(--alg-brand);
	outline: 2px solid rgba(226, 156, 41, .22);
	outline-offset: 1px;
}

.alg-search__tab input:checked + span {
	color: var(--alg-black);
	border-bottom-color: var(--alg-brand);
}

.alg-button,
.alg-search button.alg-button[type="submit"],
.alg-search__submit {
	background: var(--alg-brand) !important;
	border-color: var(--alg-brand) !important;
	color: var(--alg-black) !important;
	font-family: var(--alg-body-font);
	font-weight: 800;
}

.alg-button:hover,
.alg-button:focus-visible {
	background: var(--alg-black) !important;
	border-color: var(--alg-black) !important;
	color: var(--alg-white) !important;
}

.alg-button--ghost,
.alg-search__actions .alg-button--ghost {
	background: var(--alg-white) !important;
	border-color: var(--alg-black) !important;
	color: var(--alg-black) !important;
}

.alg-button--whatsapp,
.alg-button--call {
	background: var(--alg-black) !important;
	border-color: var(--alg-black) !important;
	color: var(--alg-white) !important;
}

.alg-button--whatsapp:hover,
.alg-button--call:hover,
.alg-button--whatsapp:focus-visible,
.alg-button--call:focus-visible {
	background: var(--alg-brand) !important;
	border-color: var(--alg-brand) !important;
	color: var(--alg-black) !important;
}

.alg-consultation,
.alg-location-showcase__panel,
.alg-insight-card:nth-child(even),
.alg-site-footer {
	background: var(--alg-black);
	color: var(--alg-white);
}

.alg-consultation strong,
.alg-location-showcase__panel h2,
.alg-insight-card:nth-child(even) h3,
.alg-site-footer h2,
.alg-site-footer h3 {
	color: var(--alg-brand);
}

.alg-site-footer {
	border-top: 5px solid var(--alg-brand);
}

.alg-site-footer a,
.alg-site-footer p,
.alg-site-footer__bottom {
	color: rgba(255, 255, 255, .82);
}

.alg-site-footer a:hover,
.alg-site-footer a:focus-visible {
	color: var(--alg-brand);
}

.alg-home-split__visual,
.alg-mode-shortcuts a,
.alg-insight-band {
	background: var(--alg-soft-gold);
}

.alg-home-split__visual {
	border-left: 6px solid var(--alg-brand);
	box-shadow: none;
}

.alg-mode-shortcuts a::before {
	background: var(--alg-black);
	color: var(--alg-brand);
}

.alg-card {
	box-shadow: 0 14px 34px rgba(0, 0, 0, .08);
}

.alg-card:hover {
	box-shadow: 0 18px 44px rgba(0, 0, 0, .13);
}

.alg-card__placeholder {
	background: linear-gradient(135deg, var(--alg-soft-gold), var(--alg-white));
}

.alg-card__amenities span,
.alg-agent-stats span,
.alg-amenities li,
.alg-badge--soft {
	background: var(--alg-soft-gold) !important;
	color: var(--alg-black) !important;
	border: 1px solid rgba(226, 156, 41, .24);
}

.alg-badge {
	background: var(--alg-black);
	color: var(--alg-white);
}

.alg-badge--featured {
	background: var(--alg-brand);
	color: var(--alg-black);
}

.alg-card__featured {
	background: var(--alg-brand) !important;
	color: var(--alg-white) !important;
}

.alg-card__quick,
.alg-insight-card a,
.alg-location-pills a {
	border-color: currentColor;
	color: inherit;
}

.alg-card__quick:hover,
.alg-insight-card a:hover,
.alg-location-pills a:hover {
	background: var(--alg-brand);
	color: var(--alg-black);
}

.alg-map {
	background: var(--alg-soft-gold);
	border-color: var(--alg-border);
}

.alg-mobile-sticky {
	background: var(--alg-white);
	border-top-color: var(--alg-brand);
}

.alg-reservation-panel {
	scroll-margin-top: 96px;
}

.alg-reservation-panel .alg-notice {
	display: grid;
	gap: 8px;
	background: var(--alg-soft-gold);
	border-color: rgba(226, 156, 41, .4);
	color: var(--alg-black);
}

.alg-reservation-panel .alg-notice--error {
	background: #fef2f2;
	border-color: #fecaca;
	color: #7f1d1d;
}

.alg-reservation-form input[readonly] {
	background: var(--alg-soft-gold);
	font-weight: 800;
}

.alg-button--reserve {
	background: var(--alg-brand) !important;
	border-color: var(--alg-brand) !important;
	color: var(--alg-black) !important;
}

.alg-mobile-sticky--reserve {
	grid-template-columns: 1fr;
}

@media (max-width: 980px) {
	.alg-header-menu {
		background: var(--alg-white);
		color: var(--alg-black);
	}

	.alg-main-nav a {
		background: var(--alg-soft-gold);
	}

	.alg-menu-toggle__bars span {
		background: var(--alg-black);
	}
}

/* =====================================================================
   PropertyPro-style flow overhaul (kept on ALG black/gold/white brand).
   This layer styles the new components and refines the shared ones.
   ===================================================================== */
:root {
	--alg-radius: 12px;
	--alg-radius-sm: 8px;
	--alg-tint: #fbf5ea;
	--alg-card-shadow: 0 14px 34px rgba(0, 0, 0, .08);
	--alg-card-shadow-hover: 0 20px 48px rgba(0, 0, 0, .14);
}

.alg-icon {
	width: 18px;
	height: 18px;
	display: inline-block;
	flex: none;
	vertical-align: middle;
}

.alg-section--alt {
	background: var(--alg-tint);
}

.alg-section-heading {
	align-items: flex-end;
}

.alg-section-heading > div {
	display: grid;
	gap: 4px;
}

.alg-section-heading h2 {
	margin: 0;
}

.alg-section-heading__link {
	flex: none;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	text-decoration: none;
	font-weight: 800;
	color: var(--alg-black);
	border-bottom: 2px solid var(--alg-brand);
	padding-bottom: 2px;
	white-space: nowrap;
	transition: color .2s ease, border-color .2s ease;
}

.alg-section-heading__link::after {
	content: "\2192";
	font-size: 1.05em;
	line-height: 1;
	transition: transform .22s ease;
}

.alg-section-heading__link:hover {
	color: var(--alg-brand);
}

.alg-section-heading__link:hover::after {
	transform: translateX(3px);
}

.alg-section-heading--center {
	justify-content: center;
	text-align: center;
}

.alg-page-head {
	max-width: 720px;
	margin-bottom: 26px;
	display: grid;
	gap: 8px;
}

.alg-page-head h1 {
	margin: 0;
}

.alg-page-head p {
	margin: 0;
	color: var(--alg-muted);
}

.alg-seo-text {
	background: var(--alg-tint);
}

.alg-seo-text h2 {
	margin-top: 0;
}

.alg-seo-text p {
	max-width: 880px;
	color: var(--alg-muted);
	line-height: 1.75;
}

/* ---- Breadcrumb ---- */
.alg-breadcrumb {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px;
	margin: 0 0 16px;
	font-size: 13px;
	font-weight: 700;
	color: var(--alg-muted);
}

.alg-breadcrumb a {
	color: var(--alg-muted);
	text-decoration: none;
}

.alg-breadcrumb a:hover {
	color: var(--alg-brand);
}

.alg-breadcrumb__sep {
	opacity: .5;
}

.alg-breadcrumb__current {
	color: var(--alg-black);
}

/* ---- Mode switch ---- */
.alg-mode-switch {
	display: inline-flex;
	flex-wrap: wrap;
	gap: 4px;
	margin: 0 0 18px;
	padding: 5px;
	background: var(--alg-soft-gold);
	border: 1px solid var(--alg-border);
	border-radius: 999px;
	max-width: 100%;
}

.alg-mode-switch__item {
	padding: 8px 18px;
	border-radius: 999px;
	text-decoration: none;
	font-weight: 800;
	font-size: 14px;
	color: var(--alg-ink);
	white-space: nowrap;
}

.alg-mode-switch__item:hover {
	color: var(--alg-brand);
}

.alg-mode-switch__item.is-active {
	background: var(--alg-black);
	color: var(--alg-white);
}

/* ---- Category tiles ---- */
.alg-category-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
	gap: 16px;
}

.alg-category-tile {
	display: grid;
	gap: 10px;
	align-content: start;
	padding: 22px;
	border: 1px solid var(--alg-border);
	border-radius: var(--alg-radius);
	background: var(--alg-white);
	text-decoration: none;
	color: var(--alg-black);
	box-shadow: var(--alg-card-shadow);
	transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.alg-category-tile:hover {
	transform: translateY(-3px);
	border-color: var(--alg-brand);
	box-shadow: var(--alg-card-shadow-hover);
}

.alg-category-tile__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 54px;
	height: 54px;
	border-radius: 14px;
	background: var(--alg-soft-gold);
	color: var(--alg-brand);
}

.alg-category-tile__icon .alg-icon {
	width: 26px;
	height: 26px;
}

.alg-category-tile__name {
	font-family: var(--alg-display-font);
	font-weight: 700;
	font-size: 19px;
}

.alg-category-tile__count {
	color: var(--alg-muted);
	font-size: 13px;
	font-weight: 700;
}

/* ---- Filter bar / drawer ---- */
.alg-filter-bar {
	position: relative;
	margin: 0 0 8px;
}

.alg-filter-toggle,
.alg-filter-bar__head,
.alg-filter-backdrop,
.alg-filter-close {
	display: none;
}

.alg-filter-bar__panel {
	display: block;
}

.alg-filter-bar.alg-filter-ready .alg-filter-toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 44px;
	padding: 10px 16px;
	border: 1px solid var(--alg-border);
	border-radius: var(--alg-radius-sm);
	background: var(--alg-white);
	color: var(--alg-black);
	font: inherit;
	font-weight: 800;
	cursor: pointer;
	box-shadow: var(--alg-card-shadow);
}

.alg-filter-bar.alg-filter-ready .alg-filter-toggle .alg-icon {
	width: 18px;
	height: 18px;
}

.alg-filter-bar.alg-filter-ready .alg-filter-bar__panel {
	display: none;
	margin-top: 12px;
}

.alg-filter-bar.alg-filter-ready.is-open .alg-filter-bar__panel {
	display: block;
}

.alg-search--filters {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	gap: 12px;
	margin: 0;
	padding: 14px;
	background: var(--alg-white);
	border: 1px solid var(--alg-border);
	border-radius: var(--alg-radius);
	box-shadow: var(--alg-card-shadow);
}

.alg-search--filters > label {
	flex: 1 1 150px;
	min-width: 0;
}

.alg-search--filters .alg-search__location {
	flex: 1.4 1 200px;
}

.alg-search--filters .alg-search__amenities {
	flex-basis: 100%;
}

.alg-search--filters .alg-search__actions {
	flex: 1 1 auto;
	justify-content: flex-end;
}

.alg-filter-more {
	margin-top: 12px;
	background: transparent;
	border: 0;
	padding: 4px 0;
	font: inherit;
	font-weight: 800;
	color: var(--alg-brand);
	cursor: pointer;
	text-decoration: underline;
}

@media (min-width: 981px) {
	.alg-filter-bar .alg-search__amenities {
		display: none;
	}

	.alg-filter-bar.is-expanded .alg-search__amenities {
		display: grid;
	}
}

/* ---- Results header ---- */
.alg-results__header {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 16px;
	flex-wrap: wrap;
	margin: 20px 0 22px;
}

.alg-results__count h1 {
	margin: 0;
	font-size: clamp(24px, 3.4vw, 34px);
	line-height: 1.1;
}

.alg-results__summary {
	margin: 6px 0 0;
	color: var(--alg-muted);
	font-weight: 700;
}

.alg-results__tools {
	display: flex;
	align-items: center;
	gap: 12px;
	flex-wrap: wrap;
}

.alg-sort {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 0;
}

.alg-sort__label {
	font-size: 13px;
	font-weight: 800;
	color: var(--alg-muted);
}

.alg-sort select {
	width: auto;
	border: 1px solid var(--alg-border);
	border-radius: var(--alg-radius-sm);
	padding: 9px 12px;
	background: var(--alg-white);
	color: var(--alg-black);
	font: inherit;
	font-weight: 700;
}

.alg-sort__submit {
	min-height: 40px;
	padding: 8px 14px;
}

.alg-view-toggle {
	display: inline-flex;
	border: 1px solid var(--alg-border);
	border-radius: var(--alg-radius-sm);
	overflow: hidden;
	background: var(--alg-white);
}

.alg-view-toggle__btn {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	border: 0;
	background: transparent;
	padding: 9px 13px;
	font: inherit;
	font-weight: 800;
	font-size: 14px;
	color: var(--alg-muted);
	cursor: pointer;
}

.alg-view-toggle__btn + .alg-view-toggle__btn {
	border-left: 1px solid var(--alg-border);
}

.alg-view-toggle__btn .alg-icon {
	width: 17px;
	height: 17px;
}

.alg-view-toggle__btn.is-active {
	background: var(--alg-black);
	color: var(--alg-white);
}

.alg-view-panel[hidden],
.alg-sort__submit[hidden],
.alg-results [hidden] {
	display: none !important;
}

.alg-results-map {
	min-height: 600px;
}

.alg-empty--results {
	display: grid;
	gap: 14px;
	justify-items: center;
	text-align: center;
	padding: 48px 20px;
}

.alg-empty--results .alg-button {
	justify-self: center;
}

/* ---- List-view cards ---- */
.alg-list {
	display: grid;
	gap: 18px;
}

.alg-list-card {
	display: grid;
	grid-template-columns: 320px minmax(0, 1fr);
	background: var(--alg-white);
	border: 1px solid var(--alg-border);
	border-radius: var(--alg-radius);
	overflow: hidden;
	box-shadow: var(--alg-card-shadow);
	transition: box-shadow .18s ease, transform .18s ease;
}

.alg-list-card:hover {
	box-shadow: var(--alg-card-shadow-hover);
	transform: translateY(-2px);
}

.alg-list-card__media {
	position: relative;
	display: block;
	aspect-ratio: 4 / 3;
	background: var(--alg-soft-gold);
	overflow: hidden;
}

.alg-list-card__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.alg-list-card__status {
	position: absolute;
	left: 12px;
	top: 12px;
	z-index: 2;
}

.alg-list-card__featured {
	position: absolute;
	left: 12px;
	bottom: 12px;
	z-index: 2;
}

.alg-list-card__photos {
	position: absolute;
	right: 12px;
	bottom: 12px;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	gap: 5px;
	background: rgba(0, 0, 0, .72);
	color: #fff;
	border-radius: 999px;
	padding: 4px 10px;
	font-size: 12px;
	font-weight: 800;
}

.alg-list-card__photos .alg-icon {
	width: 14px;
	height: 14px;
}

.alg-list-card__body {
	display: flex;
	flex-direction: column;
	gap: 8px;
	padding: 18px 20px;
}

.alg-list-card__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
}

.alg-list-card .alg-price {
	font-size: 22px;
	margin: 0;
}

.alg-list-card__title {
	margin: 0;
	font-size: 21px;
	line-height: 1.2;
}

.alg-list-card__title a {
	color: var(--alg-black);
	text-decoration: none;
}

.alg-list-card__title a:hover {
	color: var(--alg-brand);
}

.alg-list-card__desc {
	margin: 2px 0 0;
	color: var(--alg-muted);
	line-height: 1.55;
}

.alg-list-card__foot {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	flex-wrap: wrap;
	margin-top: auto;
	padding-top: 14px;
	border-top: 1px solid var(--alg-border);
}

.alg-list-card__agent {
	margin: 0;
	font-size: 13px;
	font-weight: 700;
	color: var(--alg-muted);
}

.alg-list-card__agent a {
	color: var(--alg-black);
	font-weight: 800;
	text-decoration: none;
}

.alg-list-card__agent a:hover {
	color: var(--alg-brand);
}

.alg-list-card__id {
	font-size: 13px;
	font-weight: 800;
	color: var(--alg-muted);
}

.alg-list-card__actions {
	display: flex;
	gap: 8px;
	flex-wrap: wrap;
}

.alg-list-card__actions--bookable .alg-button {
	flex: 1 1 8rem;
	min-width: 0;
	min-height: 40px;
	padding: 8px 14px;
	font-size: 14px;
}

.alg-list-card__actions--single {
	justify-content: flex-end;
	flex: 0 0 auto;
}

.alg-list-card__actions--single .alg-button {
	flex: 0 1 auto;
	min-height: 40px;
	padding: 8px 14px;
	font-size: 14px;
}

/* ---- Fact rows + location with icon ---- */
.alg-facts {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 18px;
	margin: 2px 0;
}

.alg-fact {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-weight: 700;
	font-size: 14px;
	color: var(--alg-ink);
}

.alg-fact .alg-icon {
	color: var(--alg-brand);
	width: 18px;
	height: 18px;
}

.alg-detail-bar .alg-facts {
	margin: 0;
	gap: 10px 20px;
}

.alg-detail-bar .alg-fact {
	font-size: 15px;
}

.alg-fact--id {
	color: var(--alg-muted);
	font-weight: 700;
	letter-spacing: 0.01em;
}

.alg-location {
	display: flex;
	align-items: center;
	gap: 6px;
}

.alg-location .alg-icon {
	width: 16px;
	height: 16px;
	color: var(--alg-brand);
}

.alg-location span {
	min-width: 0;
}

/* ---- Property detail header / layout ---- */
.alg-property__main {
	padding-top: 24px;
	padding-bottom: 44px;
}

.alg-property__header {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 20px;
	margin-bottom: 18px;
	padding-bottom: 0;
	border-bottom: 0;
}

.alg-property__badges {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 10px;
}

.alg-property__heading h1 {
	margin: 0 0 8px;
	font-size: clamp(28px, 4vw, 46px);
	line-height: 1.05;
}

.alg-property__price {
	text-align: right;
	flex: none;
}

.alg-property__price .alg-price--large {
	margin: 0;
}

.alg-property__pid {
	display: inline-block;
	margin-top: 6px;
	font-size: 13px;
	font-weight: 700;
	color: var(--alg-muted);
}

.alg-property__content {
	grid-template-columns: minmax(0, 1fr) 360px;
	gap: 28px;
}

.alg-property__sidebar {
	display: grid;
	gap: 18px;
	position: sticky;
	top: 18px;
	align-self: start;
}

.alg-property__sidebar .alg-actions-panel {
	position: static;
	top: auto;
}

/* ---- Gallery ---- */
.alg-gallery {
	display: grid;
	gap: 10px;
	margin: 18px 0 8px;
}

.alg-gallery__main {
	position: relative;
	display: block;
	width: 100%;
	padding: 0;
	border: 0;
	margin: 0;
	border-radius: var(--alg-radius);
	overflow: hidden;
	background: var(--alg-soft-gold);
	aspect-ratio: 16 / 9;
	cursor: zoom-in;
}

.alg-gallery__main img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.alg-gallery__count {
	position: absolute;
	left: 14px;
	bottom: 14px;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	background: rgba(0, 0, 0, .72);
	color: #fff;
	border-radius: 999px;
	padding: 7px 13px;
	font-size: 13px;
	font-weight: 800;
}

.alg-gallery__count .alg-icon {
	width: 16px;
	height: 16px;
}

.alg-gallery__zoom {
	position: absolute;
	right: 14px;
	top: 14px;
	z-index: 2;
	width: 42px;
	height: 42px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: rgba(0, 0, 0, .6);
	color: #fff;
	border-radius: 10px;
}

.alg-gallery__zoom .alg-icon {
	width: 20px;
	height: 20px;
}

.alg-gallery__thumbs {
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: 10px;
}

.alg-gallery__thumb {
	position: relative;
	padding: 0;
	margin: 0;
	border: 2px solid transparent;
	border-radius: var(--alg-radius-sm);
	overflow: hidden;
	cursor: pointer;
	aspect-ratio: 4 / 3;
	background: var(--alg-soft-gold);
}

.alg-gallery__thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.alg-gallery__thumb.is-active {
	border-color: var(--alg-brand);
}

.alg-gallery__more {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(0, 0, 0, .58);
	color: #fff;
	font-weight: 800;
	font-size: 18px;
}

/* ---- Lightbox ---- */
.alg-lightbox {
	position: fixed;
	inset: 0;
	z-index: 100000;
	display: none;
	align-items: center;
	justify-content: center;
	background: rgba(0, 0, 0, .92);
}

.alg-lightbox.alg-lightbox--needs-watermark::after {
	content: "";
	position: absolute;
	inset: 0;
	background-image: var(--alg-watermark-image, none);
	background-repeat: no-repeat;
	background-position: center;
	background-size: clamp(220px, 48vw, 460px) auto;
	opacity: .15;
	filter: grayscale(1) brightness(0) invert(1);
	pointer-events: none;
	z-index: 2;
}

.alg-lightbox.is-open {
	display: flex;
}

body.alg-lightbox-open {
	overflow: hidden;
}

.alg-lightbox__img {
	position: relative;
	z-index: 1;
	max-width: 92vw;
	max-height: 84vh;
	object-fit: contain;
	border-radius: 6px;
	box-shadow: 0 20px 60px rgba(0, 0, 0, .5);
}

.alg-lightbox__btn {
	position: absolute;
	z-index: 3;
	width: 50px;
	height: 50px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: rgba(255, 255, 255, .14);
	color: #fff;
	border: 0;
	border-radius: 50%;
	cursor: pointer;
	transition: background .15s ease, color .15s ease;
}

.alg-lightbox__btn:hover {
	background: var(--alg-brand);
	color: var(--alg-black);
}

.alg-lightbox__btn .alg-icon {
	width: 24px;
	height: 24px;
}

.alg-lightbox__close {
	top: 18px;
	right: 18px;
}

.alg-lightbox__prev {
	left: 18px;
	top: 50%;
	transform: translateY(-50%);
}

.alg-lightbox__next {
	right: 18px;
	top: 50%;
	transform: translateY(-50%);
}

.alg-lightbox__counter {
	position: absolute;
	bottom: 22px;
	left: 50%;
	z-index: 3;
	transform: translateX(-50%);
	color: #fff;
	font-weight: 800;
	letter-spacing: .04em;
}

/* ---- Amenities as a feature checklist ---- */
.alg-amenities {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px 20px;
}

.alg-amenities li {
	display: flex;
	align-items: center;
	gap: 10px;
	background: transparent !important;
	border: 0 !important;
	border-radius: 0;
	padding: 4px 0;
	font-weight: 700;
}

.alg-amenities li .alg-icon {
	width: 20px;
	height: 20px;
	color: var(--alg-brand);
}

/* ---- Property spec list ---- */
.alg-spec-list {
	display: grid;
	gap: 0;
	margin: 0;
}

.alg-spec-list__row {
	display: grid;
	grid-template-columns: 40% minmax(0, 1fr);
	gap: 12px;
	padding: 11px 0;
	border-bottom: 1px solid var(--alg-border);
}

.alg-spec-list__row:last-child {
	border-bottom: 0;
}

.alg-spec-list dt {
	margin: 0;
	color: var(--alg-muted);
	font-weight: 700;
}

.alg-spec-list dd {
	margin: 0;
	color: var(--alg-black);
	font-weight: 800;
}

/* ---- Mobile filter drawer (only once JS marks it ready) ---- */
@media (max-width: 980px) {
	.alg-filter-bar.alg-filter-ready .alg-filter-toggle {
		width: 100%;
		min-height: 48px;
		padding: 11px 16px;
	}

	.alg-filter-bar.alg-filter-ready .alg-filter-bar__panel {
		display: block;
		position: fixed;
		top: 0;
		right: 0;
		z-index: 1001;
		width: min(92vw, 420px);
		height: 100vh;
		height: 100dvh;
		box-sizing: border-box;
		padding: 18px;
		overflow-y: auto;
		background: var(--alg-white);
		margin-top: 0;
		transform: translateX(100%);
		transition: transform .25s ease;
	}

	.alg-filter-bar.alg-filter-ready.is-open .alg-filter-bar__panel {
		transform: translateX(0);
		box-shadow: -24px 0 70px rgba(0, 0, 0, .3);
	}

	.alg-filter-bar.alg-filter-ready .alg-filter-bar__head {
		display: flex;
		align-items: center;
		justify-content: space-between;
		padding-bottom: 14px;
		margin-bottom: 14px;
		border-bottom: 1px solid var(--alg-border);
		font-size: 20px;
	}

	.alg-filter-bar.alg-filter-ready .alg-filter-close {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 40px;
		height: 40px;
		border: 1px solid var(--alg-border);
		border-radius: var(--alg-radius-sm);
		background: var(--alg-white);
		color: var(--alg-black);
		cursor: pointer;
	}

	.alg-filter-bar.alg-filter-ready .alg-filter-backdrop {
		display: block;
		position: fixed;
		inset: 0;
		z-index: 1000;
		background: rgba(0, 0, 0, .5);
		opacity: 0;
		visibility: hidden;
		transition: opacity .2s ease, visibility 0s linear .2s;
	}

	.alg-filter-bar.alg-filter-ready.is-open .alg-filter-backdrop {
		opacity: 1;
		visibility: visible;
		transition-delay: 0s;
	}

	.alg-filter-bar.alg-filter-ready .alg-search--filters {
		display: grid;
		grid-template-columns: 1fr 1fr;
		border: 0;
		box-shadow: none;
		padding: 0;
	}

	.alg-filter-bar.alg-filter-ready .alg-search--filters > label,
	.alg-filter-bar.alg-filter-ready .alg-search--filters .alg-search__location,
	.alg-filter-bar.alg-filter-ready .alg-search--filters .alg-search__actions {
		flex: none;
		grid-column: 1 / -1;
	}

	.alg-filter-bar.alg-filter-ready .alg-filter-more {
		display: none;
	}

	body.alg-filter-open {
		overflow: hidden;
	}
}

/* ---- Responsive component tuning ---- */
@media (max-width: 980px) {
	.alg-property__content {
		grid-template-columns: 1fr;
	}

	.alg-property__sidebar {
		position: static;
	}

	.alg-list-card {
		grid-template-columns: 250px minmax(0, 1fr);
	}

	.alg-gallery__thumbs {
		grid-template-columns: repeat(5, minmax(0, 1fr));
	}
}

@media (max-width: 720px) {
	.alg-list-card {
		grid-template-columns: 1fr;
	}

	.alg-list-card__media {
		aspect-ratio: 16 / 10;
	}

	.alg-list-card__foot {
		flex-direction: column;
		align-items: stretch;
	}

	.alg-list-card__actions--bookable,
	.alg-list-card__actions--single {
		width: 100%;
		min-width: 0;
	}

	.alg-list-card__actions--single {
		justify-content: stretch;
	}

	.alg-list-card__actions--single .alg-button {
		width: 100%;
	}

	.alg-results__header {
		align-items: stretch;
	}

	.alg-results__tools {
		justify-content: space-between;
	}

	.alg-property__header {
		flex-direction: column;
	}

	.alg-property__price {
		text-align: left;
	}

	.alg-amenities {
		grid-template-columns: 1fr;
	}

	.alg-spec-list__row {
		grid-template-columns: 1fr;
		gap: 2px;
	}

	.alg-gallery__main {
		aspect-ratio: 4 / 3;
	}

	.alg-gallery__thumbs {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}

	.alg-lightbox__prev {
		left: 8px;
	}

	.alg-lightbox__next {
		right: 8px;
	}
}

@media (max-width: 480px) {
	.alg-view-toggle__btn span {
		display: none;
	}

	.alg-view-toggle__btn {
		padding: 9px 11px;
	}
}

/* =====================================================================
   Premium homepage motion (scoped to .alg-home only).
   Progressive enhancement: pre-reveal hidden state is applied ONLY when
   JS adds .alg-anim to the [data-alg-home] root, so no-JS users always
   see fully visible content. All motion is disabled under
   prefers-reduced-motion: reduce.
   ===================================================================== */

/* ---- Scroll reveal system ---- */
/* Reveal uses the independent `translate` property so element hover
   `transform` effects never conflict with the entrance animation. */
.alg-home.alg-anim [data-alg-reveal] {
	opacity: 0;
	translate: 0 28px;
	transition:
		opacity .7s cubic-bezier(.22, .61, .36, 1),
		translate .7s cubic-bezier(.22, .61, .36, 1),
		transform .35s cubic-bezier(.22, .61, .36, 1),
		box-shadow .35s ease,
		color .3s ease,
		border-color .3s ease,
		background-color .3s ease,
		filter .35s ease;
	transition-delay: calc(var(--alg-i, 0) * 85ms);
}

.alg-home.alg-anim [data-alg-reveal].is-visible {
	opacity: 1;
	translate: 0 0;
}

/* ---- Hover micro-interaction transitions (used with or without JS) ---- */
.alg-home .alg-card,
.alg-home .alg-category-tile,
.alg-home .alg-location-pills a,
.alg-home .alg-insight-card,
.alg-home .alg-insight-card a {
	transition:
		transform .35s cubic-bezier(.22, .61, .36, 1),
		box-shadow .35s ease,
		color .3s ease,
		border-color .3s ease,
		background-color .3s ease,
		filter .35s ease;
}

/* ---- Hero: animated gradient, drifting glow, parallax ---- */
.alg-home .alg-hero__fx {
	position: absolute;
	inset: 0;
	z-index: -1;
	overflow: hidden;
	pointer-events: none;
	will-change: transform;
}

.alg-home .alg-hero__aurora {
	position: absolute;
	inset: -25%;
	background:
		radial-gradient(42% 55% at 18% 24%, rgba(226, 156, 41, .55), transparent 60%),
		radial-gradient(45% 50% at 84% 16%, rgba(226, 156, 41, .30), transparent 62%),
		radial-gradient(60% 65% at 72% 92%, rgba(0, 0, 0, .55), transparent 70%);
	background-size: 200% 200%;
	opacity: .85;
	animation: alg-hero-aurora 24s ease-in-out infinite alternate;
}

.alg-home .alg-hero__glow {
	position: absolute;
	top: -14%;
	left: 50%;
	width: min(760px, 95%);
	height: 540px;
	background: radial-gradient(closest-side, rgba(248, 238, 219, .45), rgba(226, 156, 41, .15) 46%, transparent 72%);
	transform: translate3d(calc(-50% + (var(--alg-px, 0) * 1px)), calc(var(--alg-py, 0) * 1px), 0);
	transition: transform .45s cubic-bezier(.22, .61, .36, 1);
	will-change: transform;
}

.alg-home .alg-hero--search-hub h1 {
	text-shadow: 0 2px 34px rgba(0, 0, 0, .28);
}

@keyframes alg-hero-aurora {
	0%   { background-position: 0% 0%; transform: scale(1); }
	100% { background-position: 100% 100%; transform: scale(1.14); }
}

/* ---- Property / listing cards: lift, image zoom, shadow bloom, shine ---- */
.alg-home .alg-card__media {
	position: relative;
}

.alg-home .alg-card__media img {
	transition: transform .55s cubic-bezier(.22, .61, .36, 1);
}

.alg-home .alg-card__media::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 2;
	background: linear-gradient(115deg, transparent 38%, rgba(255, 255, 255, .42) 50%, transparent 62%);
	transform: translateX(-120%);
	transition: transform .85s cubic-bezier(.22, .61, .36, 1);
	pointer-events: none;
}

.alg-home .alg-card:hover {
	transform: translateY(-8px);
	box-shadow: 0 30px 70px rgba(0, 0, 0, .18);
}

.alg-home .alg-card:hover .alg-card__media img {
	transform: scale(1.07);
	will-change: transform;
}

.alg-home .alg-card:hover .alg-card__media::before {
	transform: translateX(120%);
}

/* ---- Category tiles: lift, icon nudge, gold accent ---- */
.alg-home .alg-category-tile__icon {
	transition:
		transform .4s cubic-bezier(.34, 1.56, .64, 1),
		background-color .3s ease,
		color .3s ease;
}

.alg-home .alg-category-tile:hover {
	transform: translateY(-6px);
}

.alg-home .alg-category-tile:hover .alg-category-tile__icon {
	transform: translateY(-2px) scale(1.08) rotate(-4deg);
	background: var(--alg-brand);
	color: #fff;
}

.alg-home .alg-category-tile__name {
	transition: color .3s ease;
}

.alg-home .alg-category-tile:hover .alg-category-tile__name {
	color: var(--alg-brand);
}

/* ---- Location pills: gold fill sweep + lift ---- */
.alg-home .alg-location-pills a {
	position: relative;
	overflow: hidden;
	z-index: 0;
}

.alg-home .alg-location-pills a::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background: var(--alg-brand);
	transform: scaleX(0);
	transform-origin: left center;
	transition: transform .4s cubic-bezier(.22, .61, .36, 1);
}

.alg-home .alg-location-pills a:hover,
.alg-home .alg-location-pills a:focus-visible {
	color: #000;
	border-color: var(--alg-brand);
	transform: translateY(-2px);
}

.alg-home .alg-location-pills a:hover::before,
.alg-home .alg-location-pills a:focus-visible::before {
	transform: scaleX(1);
}

/* ---- Insight cards: lift + animated arrow ---- */
.alg-home .alg-insight-card:hover {
	transform: translateY(-6px);
	box-shadow: 0 26px 60px rgba(0, 0, 0, .16);
}

.alg-home .alg-insight-card a {
	display: inline-flex;
	align-items: center;
	gap: 8px;
}

.alg-home .alg-insight-card a::after {
	content: "\2192";
	transition: transform .3s ease;
}

.alg-home .alg-insight-card a:hover::after {
	transform: translateX(5px);
}

/* ---- Section heading: drawn-in gold divider ---- */
.alg-home .alg-section-heading h2 {
	position: relative;
}

.alg-home.alg-anim .alg-section-heading h2::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: -10px;
	width: 64px;
	height: 3px;
	background: var(--alg-brand);
	transform: scaleX(0);
	transform-origin: left center;
	transition: transform .7s cubic-bezier(.22, .61, .36, 1) .2s;
}

.alg-home.alg-anim .alg-section-heading.is-visible h2::after {
	transform: scaleX(1);
}

.alg-home .alg-section-heading--center h2::after {
	left: 50%;
	transform: translateX(-50%) scaleX(0);
	transform-origin: center;
}

.alg-home.alg-anim .alg-section-heading--center.is-visible h2::after {
	transform: translateX(-50%) scaleX(1);
}

/* ---- Stats / trust band (count-up) ---- */
.alg-home .alg-stats-band {
	background:
		linear-gradient(120deg, #000 0%, #1b1813 52%, color-mix(in srgb, var(--alg-brand) 30%, #000) 122%);
	color: #fff;
}

.alg-home .alg-stats {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: clamp(18px, 4vw, 40px);
	align-items: center;
}

.alg-home .alg-stat {
	position: relative;
	display: grid;
	gap: 8px;
	text-align: center;
}

.alg-home .alg-stat + .alg-stat::before {
	content: "";
	position: absolute;
	left: calc(-1 * clamp(9px, 2vw, 20px));
	top: 50%;
	width: 1px;
	height: 56px;
	transform: translateY(-50%);
	background: linear-gradient(transparent, rgba(226, 156, 41, .65), transparent);
}

.alg-home .alg-stat__num {
	font-family: var(--alg-display-font);
	font-weight: 700;
	font-size: clamp(34px, 5vw, 56px);
	line-height: 1;
	color: var(--alg-brand);
	font-variant-numeric: tabular-nums;
}

.alg-home .alg-stat__label {
	font-size: 14px;
	font-weight: 700;
	letter-spacing: .04em;
	text-transform: uppercase;
	opacity: .82;
}

@media (max-width: 680px) {
	.alg-home .alg-stats {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 30px 18px;
	}

	.alg-home .alg-stat + .alg-stat::before {
		display: none;
	}
}

/* ---- Accessibility: honour reduced-motion (instant, static content) ---- */
@media (prefers-reduced-motion: reduce) {
	.alg-home [data-alg-reveal] {
		opacity: 1 !important;
		translate: none !important;
		transform: none !important;
		transition: none !important;
	}

	.alg-home .alg-hero__aurora {
		animation: none !important;
	}

	.alg-home .alg-hero__fx {
		transform: none !important;
	}

	.alg-home .alg-hero__glow {
		transform: translate3d(-50%, 0, 0) !important;
		transition: none !important;
	}

	.alg-home .alg-card,
	.alg-home .alg-category-tile,
	.alg-home .alg-location-pills a,
	.alg-home .alg-insight-card,
	.alg-home .alg-card__media img,
	.alg-home .alg-category-tile__icon {
		transition: none !important;
	}

	.alg-home .alg-card:hover,
	.alg-home .alg-category-tile:hover,
	.alg-home .alg-location-pills a:hover,
	.alg-home .alg-insight-card:hover,
	.alg-home .alg-card:hover .alg-card__media img,
	.alg-home .alg-category-tile:hover .alg-category-tile__icon {
		transform: none !important;
	}

	.alg-home .alg-card__media::before {
		display: none !important;
	}

	.alg-home .alg-location-pills a::before,
	.alg-home .alg-insight-card a::after {
		transition: none !important;
	}

	.alg-home .alg-insight-card a:hover::after {
		transform: none !important;
	}

	.alg-home.alg-anim .alg-section-heading h2::after {
		transition: none !important;
		transform: scaleX(1) !important;
	}

	.alg-home.alg-anim .alg-section-heading--center h2::after {
		transform: translateX(-50%) scaleX(1) !important;
	}
}

/* =====================================================================
   Homepage luxury refresh (v1.4.5) — scoped to .alg-home only.
   Higher specificity than Elementor canvas globals where needed.
   ===================================================================== */

.alg-home {
	--alg-home-cream: #fbf7f0;
	--alg-home-ink: #121212;
	--alg-home-gold-soft: rgba(226, 156, 41, .16);
}

body .alg-home .alg-hero h1,
body .alg-home .alg-section h2,
body .alg-home .alg-section h3 {
	font-family: var(--alg-display-font);
	font-weight: 700;
	color: inherit;
}

body .alg-home .alg-button {
	border-radius: 999px;
	min-height: 48px;
	padding: 12px 22px;
}

/* ---- Hero layout & atmosphere ---- */
.alg-home .alg-hero--search-hub {
	padding: clamp(84px, 11vw, 148px) 0 clamp(72px, 10vw, 108px);
	background:
		radial-gradient(120% 90% at 50% -10%, rgba(226, 156, 41, .28), transparent 58%),
		linear-gradient(145deg, rgba(0, 0, 0, .92) 0%, rgba(18, 18, 18, .88) 48%, rgba(0, 0, 0, .94) 100%);
	overflow: visible;
}

/* Full-bleed wave replaces the rigid ::after semi-circle on the homepage hero. */
.alg-home .alg-hero--search-hub::after {
	display: none;
}

.alg-home .alg-hero-wave {
	position: relative;
	z-index: 2;
	width: 100vw;
	max-width: none;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	margin-top: clamp(12px, 3vw, 24px);
	line-height: 0;
	pointer-events: none;
}

.alg-home .alg-hero-wave svg {
	display: block;
	width: 100%;
	height: clamp(44px, 10vw, 68px);
}

.alg-home .alg-hero__inner {
	display: grid;
	gap: clamp(28px, 5vw, 54px);
	align-items: end;
}

.alg-home .alg-hero__content {
	max-width: 760px;
	margin: 0 auto;
	text-align: center;
}

.alg-home .alg-hero__badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto 12px;
	padding: 8px 16px;
	border-radius: 999px;
	border: 1px solid rgba(226, 156, 41, .45);
	background: rgba(226, 156, 41, .12);
	color: #f8eedb;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.alg-home .alg-hero__location {
	margin: 0 0 10px;
	color: var(--alg-brand);
	opacity: 1;
}

.alg-home .alg-hero__lede {
	max-width: 640px;
	margin: 0 auto 22px;
	font-size: clamp(16px, 2.2vw, 19px);
	line-height: 1.65;
	color: rgba(255, 255, 255, .88);
}

.alg-home .alg-hero__actions {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 12px;
	margin-bottom: 18px;
}

.alg-home .alg-hero__actions .alg-button--ghost {
	background: transparent !important;
	border-color: rgba(255, 255, 255, .72) !important;
	color: #fff !important;
}

.alg-home .alg-hero__actions .alg-button--ghost:hover,
.alg-home .alg-hero__actions .alg-button--ghost:focus-visible {
	background: var(--alg-brand) !important;
	border-color: var(--alg-brand) !important;
	color: var(--alg-black) !important;
}

.alg-home .alg-hero__trust {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 10px 18px;
}

.alg-home .alg-hero__trust li {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 13px;
	font-weight: 700;
	color: rgba(255, 255, 255, .86);
}

.alg-home .alg-hero__trust .alg-icon {
	width: 16px;
	height: 16px;
	color: var(--alg-brand);
}

.alg-home .alg-hero__search {
	width: min(100%, 980px);
	margin: 0 auto;
}

.alg-home .alg-hero__grain {
	position: absolute;
	inset: 0;
	opacity: .08;
	background-image:
		radial-gradient(circle at 20% 20%, rgba(255, 255, 255, .35) 0 1px, transparent 1px),
		radial-gradient(circle at 80% 40%, rgba(255, 255, 255, .25) 0 1px, transparent 1px);
	background-size: 4px 4px, 5px 5px;
	mix-blend-mode: soft-light;
}

/* ---- Hero search shell ---- */
.alg-home .alg-search-shell--home {
	border-radius: 18px;
	box-shadow:
		0 28px 80px rgba(0, 0, 0, .34),
		0 0 0 1px rgba(226, 156, 41, .22);
	transform: translateY(8px);
}

.alg-home .alg-search-shell .alg-search--home {
	padding: 24px;
}

.alg-home [data-alg-search-tabs] {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	grid-column: 1 / -1;
	padding: 5px;
	margin: 0 0 14px;
	border-radius: 999px;
	border: 0;
	border-bottom: 0;
	background: var(--alg-home-cream);
	border: 1px solid rgba(226, 156, 41, .24);
}

.alg-home [data-alg-search-tabs]::before {
	content: "";
	position: absolute;
	top: 5px;
	left: var(--alg-tab-x, 5px);
	width: var(--alg-tab-w, 72px);
	height: calc(100% - 10px);
	border-radius: 999px;
	background: var(--alg-black);
	transition:
		left .35s cubic-bezier(.22, .61, .36, 1),
		width .35s cubic-bezier(.22, .61, .36, 1);
	z-index: 0;
}

.alg-home [data-alg-search-tabs] .alg-search__tab {
	position: relative;
	z-index: 1;
	margin: 0;
}

.alg-home [data-alg-search-tabs] .alg-search__tab span {
	padding: 10px 18px;
	border-bottom: 0;
	border-radius: 999px;
	color: var(--alg-black);
	transition: color .25s ease;
}

.alg-home [data-alg-search-tabs] .alg-search__tab input:checked + span {
	color: #fff;
}

.alg-home .alg-consultation {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	gap: 16px;
	background:
		linear-gradient(120deg, rgba(0, 0, 0, .92), rgba(226, 156, 41, .32));
}

/* ---- Mode shortcuts band ---- */
.alg-home .alg-home-modes {
	padding-top: clamp(28px, 5vw, 40px);
	padding-bottom: clamp(36px, 6vw, 48px);
	margin-top: 0;
	background: #fff;
	position: relative;
	z-index: 1;
}

.alg-home .alg-home-modes .alg-mode-shortcuts {
	gap: 18px;
}

.alg-home .alg-home-modes .alg-mode-shortcuts a,
.alg-home .alg-home-modes .alg-mode-shortcut {
	min-height: 168px;
	padding: 26px;
	border-radius: 16px;
	background: linear-gradient(160deg, #fff 0%, var(--alg-home-cream) 100%);
	border: 1px solid rgba(226, 156, 41, .22);
	box-shadow: 0 16px 40px rgba(0, 0, 0, .08);
	transition:
		transform .35s cubic-bezier(.22, .61, .36, 1),
		box-shadow .35s ease,
		border-color .3s ease;
}

.alg-home .alg-home-modes .alg-mode-shortcuts a:hover,
.alg-home .alg-home-modes .alg-mode-shortcut:hover {
	transform: translateY(-6px);
	border-color: var(--alg-brand);
	box-shadow: 0 24px 56px rgba(0, 0, 0, .14);
}

.alg-home .alg-home-modes .alg-mode-shortcut::after {
	inset: 18px 18px auto auto;
	background: var(--alg-brand);
	color: var(--alg-black);
}

/* ---- Featured carousel ---- */
.alg-home .alg-featured-carousel {
	position: relative;
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	gap: 12px;
	align-items: center;
}

.alg-home .alg-featured-carousel__viewport {
	overflow-x: auto;
	overflow-y: hidden;
	scroll-snap-type: x mandatory;
	scroll-behavior: smooth;
	scrollbar-width: none;
	-ms-overflow-style: none;
	padding: 6px 2px 12px;
	container-type: inline-size;
	container-name: alg-peek;
	--alg-peek-gap: 14px;
	--alg-peek-visible: 1.18;
}

.alg-home .alg-featured-carousel__viewport::-webkit-scrollbar {
	display: none;
}

.alg-home .alg-listing-grid--carousel {
	display: flex;
	flex-wrap: nowrap;
	align-items: flex-start;
	gap: var(--alg-peek-gap, 14px);
	width: max-content;
	min-width: 100%;
}

.alg-home .alg-listing-grid--carousel .alg-card {
	flex: 0 0 calc((100cqw - var(--alg-peek-gap)) / var(--alg-peek-visible));
	max-width: calc((100cqw - var(--alg-peek-gap)) / var(--alg-peek-visible));
	align-self: flex-start;
	height: auto;
	scroll-snap-align: start;
}

.alg-home .alg-featured-carousel__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 46px;
	height: 46px;
	border-radius: 50%;
	border: 1px solid rgba(0, 0, 0, .12);
	background: #fff;
	color: var(--alg-black);
	box-shadow: 0 10px 24px rgba(0, 0, 0, .1);
	cursor: pointer;
	transition:
		transform .25s ease,
		background-color .25s ease,
		border-color .25s ease,
		color .25s ease;
}

.alg-home .alg-featured-carousel__btn:hover,
.alg-home .alg-featured-carousel__btn:focus-visible {
	transform: translateY(-2px);
	background: var(--alg-brand);
	border-color: var(--alg-brand);
	color: var(--alg-black);
}

.alg-home .alg-featured-carousel__btn .alg-icon {
	width: 20px;
	height: 20px;
}

.alg-home .alg-featured-carousel__btn[hidden] {
	display: none;
}

/* ---- Categories & sections ---- */
.alg-home .alg-categories {
	background: linear-gradient(180deg, #fff 0%, var(--alg-home-cream) 100%);
	padding-top: clamp(48px, 7vw, 72px);
}

.alg-home .alg-section-heading {
	align-items: flex-end;
	margin-bottom: clamp(24px, 4vw, 32px);
}

.alg-home .alg-section-heading > div {
	padding-bottom: 4px;
}

.alg-home .alg-section-heading h2 {
	padding-bottom: 16px;
}

.alg-home .alg-section-heading__link {
	margin-top: 2px;
	padding-bottom: 4px;
}

.alg-home .alg-section {
	padding: clamp(56px, 8vw, 88px) 0;
}

.alg-home .alg-category-tile {
	border-radius: 16px;
	background: linear-gradient(180deg, #fff, var(--alg-home-cream));
}

.alg-home .alg-location-showcase__panel {
	border-radius: 18px;
	min-height: 280px;
}

.alg-home .alg-home-assist__list {
	list-style: none;
	margin: 0 0 22px;
	padding: 0;
	display: grid;
	gap: 10px;
}

.alg-home .alg-home-assist__list li {
	display: grid;
	grid-template-columns: 18px minmax(0, 1fr);
	gap: 10px;
	align-items: start;
	font-weight: 700;
	color: var(--alg-muted);
}

.alg-home .alg-home-assist__list .alg-icon {
	width: 18px;
	height: 18px;
	color: var(--alg-brand);
	margin-top: 2px;
}

.alg-home .alg-insight-card__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	border-radius: 14px;
	background: var(--alg-home-gold-soft);
	color: var(--alg-brand);
}

.alg-home .alg-insight-card__icon .alg-icon {
	width: 24px;
	height: 24px;
}

.alg-home .alg-insight-card:nth-child(even) .alg-insight-card__icon {
	background: rgba(255, 255, 255, .14);
	color: #fff;
}

.alg-home .alg-seo-text {
	border-top: 1px solid rgba(226, 156, 41, .18);
}

@media (min-width: 980px) {
	.alg-home .alg-hero__inner {
		grid-template-columns: minmax(0, 1.05fr) minmax(360px, .95fr);
		gap: clamp(32px, 4vw, 56px);
	}

	.alg-home .alg-hero__content {
		margin: 0;
		text-align: left;
	}

	.alg-home .alg-hero__badge,
	.alg-home .alg-hero__actions,
	.alg-home .alg-hero__trust {
		justify-content: flex-start;
		margin-left: 0;
		margin-right: 0;
	}

	.alg-home .alg-hero__lede {
		margin-left: 0;
		margin-right: 0;
	}

	.alg-home .alg-hero__search {
		margin: 0;
		align-self: center;
	}

	.alg-home .alg-search-shell--home {
		transform: translateY(0);
	}
}

@media (max-width: 760px) {
	.alg-home .alg-featured-carousel {
		grid-template-columns: minmax(0, 1fr);
	}

	.alg-home .alg-featured-carousel__btn {
		display: none;
	}

	.alg-home .alg-hero--search-hub {
		padding-bottom: clamp(56px, 12vw, 72px);
	}

	.alg-home .alg-hero-wave {
		margin-top: clamp(16px, 4vw, 28px);
	}

	.alg-home .alg-hero-wave svg {
		height: clamp(40px, 11vw, 56px);
	}

	.alg-home .alg-search-shell--home {
		transform: none;
		margin-bottom: 4px;
	}

	.alg-home .alg-home-modes {
		padding-top: clamp(20px, 5vw, 32px);
	}

	.alg-home .alg-home-modes .alg-mode-shortcuts a,
	.alg-home .alg-home-modes .alg-mode-shortcut {
		min-height: 148px;
	}

	.alg-home .alg-categories {
		padding-top: clamp(40px, 8vw, 56px);
	}

	.alg-home .alg-section-heading {
		display: grid;
		gap: 14px;
		margin-bottom: 28px;
		padding-top: 6px;
		padding-bottom: 8px;
	}

	.alg-home .alg-section-heading > div {
		padding-bottom: 0;
	}

	.alg-home .alg-section-heading h2 {
		padding-bottom: 18px;
	}

	.alg-home .alg-section-heading__link {
		justify-self: start;
		margin-top: 0;
	}

	.alg-home .alg-consultation {
		grid-template-columns: 1fr;
		text-align: center;
		margin-top: 12px;
	}

	.alg-home .alg-consultation .alg-button {
		justify-self: center;
	}

	.alg-home [data-alg-search-tabs] {
		width: 100%;
		justify-content: space-between;
	}

	.alg-home [data-alg-search-tabs] .alg-search__tab span {
		padding-inline: 12px;
		font-size: 15px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.alg-home [data-alg-search-tabs]::before {
		transition: none !important;
	}

	.alg-home .alg-featured-carousel__viewport {
		scroll-behavior: auto;
	}

	.alg-home .alg-search-shell--home {
		transform: none !important;
	}
}

/* =====================================================================
   PropertyPro-inspired refresh (v1.4.6) — home + shared cards.
   Preserves v1.4.5 hero wave, section spacing, amenity filtering.
   ===================================================================== */

/* ---- Search shell title ---- */
.alg-search-shell__title {
	margin: 0;
	padding: 18px 24px 0;
	font-family: var(--alg-display-font);
	font-size: clamp(18px, 2.4vw, 22px);
	font-weight: 700;
	color: var(--alg-ink);
	line-height: 1.2;
}

.alg-home .alg-search-shell__title {
	color: var(--alg-black);
}

/* ---- Mode shortcut cards (Buy / Rent / Book) ---- */
.alg-mode-shortcut {
	display: grid;
	gap: 8px;
	min-height: 156px;
	align-content: end;
	position: relative;
	overflow: hidden;
	padding: 22px;
	border-radius: 8px;
	background: color-mix(in srgb, var(--alg-brand) 7%, Canvas);
	border: 1px solid #e9dcc4;
	text-decoration: none;
	color: #000;
}

.alg-mode-shortcut__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 46px;
	height: 46px;
	border-radius: 12px;
	background: color-mix(in srgb, var(--alg-brand) 16%, #fff);
	color: var(--alg-brand);
	margin-bottom: 4px;
	transition: background-color .25s ease, color .25s ease, transform .25s ease;
}

.alg-mode-shortcut__icon .alg-icon {
	width: 22px;
	height: 22px;
}

.alg-mode-shortcut__title {
	font-size: clamp(24px, 3vw, 34px);
	font-weight: 900;
	line-height: 1;
}

.alg-mode-shortcut__text {
	font-size: 14px;
	font-weight: 600;
	line-height: 1.4;
	opacity: .72;
}

.alg-mode-shortcut::after {
	content: "\2192";
	position: absolute;
	inset: 16px 16px auto auto;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: color-mix(in srgb, var(--alg-brand) 24%, transparent);
	color: var(--alg-brand);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 22px;
	font-weight: 900;
	line-height: 1;
	pointer-events: none;
	transition: transform .25s ease, background-color .25s ease;
}

.alg-mode-shortcut:hover {
	border-color: var(--alg-brand);
}

.alg-mode-shortcut:hover .alg-mode-shortcut__icon {
	background: var(--alg-brand);
	color: var(--alg-black);
	transform: translateY(-2px);
}

.alg-mode-shortcut:hover::after {
	transform: translate(2px, -2px);
	background: var(--alg-brand);
	color: var(--alg-black);
}

.alg-home .alg-home-modes .alg-mode-shortcut {
	min-height: 168px;
	padding: 26px;
	border-radius: 16px;
	background: linear-gradient(160deg, #fff 0%, var(--alg-home-cream) 100%);
	border: 1px solid rgba(226, 156, 41, .22);
	box-shadow: 0 16px 40px rgba(0, 0, 0, .08);
	transition:
		transform .35s cubic-bezier(.22, .61, .36, 1),
		box-shadow .35s ease,
		border-color .3s ease;
}

.alg-home .alg-home-modes .alg-mode-shortcut:hover {
	transform: translateY(-6px);
	border-color: var(--alg-brand);
	box-shadow: 0 24px 56px rgba(0, 0, 0, .14);
}

.alg-home .alg-home-modes .alg-mode-shortcut::after {
	inset: 18px 18px auto auto;
	background: var(--alg-brand);
	color: var(--alg-black);
}

/* ---- Stats / trust intro ---- */
.alg-home .alg-stats-band__intro {
	max-width: 640px;
	margin: 0 auto clamp(28px, 5vw, 40px);
	text-align: center;
}

.alg-home .alg-stats-band__intro .alg-eyebrow {
	color: var(--alg-brand);
	opacity: 1;
}

.alg-home .alg-stats-band__lede {
	margin: 8px 0 0;
	font-size: clamp(15px, 2vw, 17px);
	line-height: 1.6;
	color: rgba(255, 255, 255, .84);
}

/* ---- Mobile: search-first hero, full-bleed carousel ---- */
@media (max-width: 979px) {
	.alg-home .alg-hero__inner {
		display: flex;
		flex-direction: column;
	}

	.alg-home .alg-hero__search {
		order: -1;
		width: 100%;
		margin-bottom: clamp(20px, 4vw, 28px);
	}

	.alg-home .alg-hero__content {
		order: 0;
	}

	.alg-home .alg-hero__badge {
		margin-left: auto;
		margin-right: auto;
	}
}

@media (max-width: 760px) {
	.alg-home .alg-home-featured > .alg-container {
		padding-left: 0;
		padding-right: 0;
	}

	.alg-home .alg-home-featured .alg-section-heading,
	.alg-home .alg-home-featured .alg-featured-carousel__btn {
		padding-inline: 20px;
	}

	.alg-home .alg-featured-carousel__viewport {
		padding-inline: 20px;
		scroll-padding-inline: 20px;
	}

	.alg-home .alg-home-modes .alg-mode-shortcut {
		min-height: 148px;
	}

	.alg-mode-shortcuts {
		grid-template-columns: 1fr;
		gap: 12px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.alg-mode-shortcut,
	.alg-mode-shortcut__icon,
	.alg-mode-shortcut::after,
	.alg-section-heading__link::after {
		transition: none !important;
	}

	.alg-mode-shortcut:hover,
	.alg-mode-shortcut:hover .alg-mode-shortcut__icon,
	.alg-mode-shortcut:hover::after,
	.alg-section-heading__link:hover::after {
		transform: none !important;
	}

	.alg-home .alg-home-modes .alg-mode-shortcut:hover {
		transform: none !important;
	}
}

/* =====================================================================
   Theme isolation: resist Hello Elementor / Elementor kit globals.
   Mirrors dashboard.css reset + high-specificity reinforcement.
   Scoped to body.alg-site (ALG canvas pages). Enqueued at priority 999.
   ===================================================================== */

body.alg-site {
	isolation: isolate;
	font-family: var(--alg-body-font);
	color: var(--alg-black);
	background: var(--alg-white);
}

body.alg-site *,
body.alg-site *::before,
body.alg-site *::after {
	box-sizing: border-box;
}

body.alg-site :is(h1, h2, h3, h4, h5, h6, p, label, legend, span, th, td, li, dt, dd) {
	font-family: inherit;
}

body.alg-site ul,
body.alg-site ol {
	list-style: none;
	margin: 0;
	padding: 0;
}

body.alg-site a {
	color: inherit;
	text-decoration: none;
}

body.alg-site button,
body.alg-site [type="button"],
body.alg-site [type="submit"],
body.alg-site [type="reset"] {
	appearance: none;
	-webkit-appearance: none;
	box-sizing: border-box;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin: 0;
	padding: 0;
	border: none;
	border-radius: 0;
	background: transparent;
	color: inherit;
	font: inherit;
	font-weight: inherit;
	font-size: inherit;
	line-height: inherit;
	letter-spacing: inherit;
	text-transform: none;
	text-decoration: none;
	text-align: inherit;
	text-indent: 0;
	box-shadow: none;
	opacity: 1;
	cursor: pointer;
	vertical-align: baseline;
	white-space: normal;
}

body.alg-site input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="file"]),
body.alg-site select,
body.alg-site textarea {
	appearance: none;
	-webkit-appearance: none;
	box-sizing: border-box;
	margin: 0;
	padding: 0;
	border: none;
	border-radius: 0;
	background: transparent;
	color: inherit;
	font: inherit;
	line-height: inherit;
	letter-spacing: inherit;
	box-shadow: none;
	opacity: 1;
	vertical-align: baseline;
}

body.alg-site input[type="checkbox"],
body.alg-site input[type="radio"] {
	appearance: auto;
	-webkit-appearance: auto;
	margin: 0;
	padding: 0;
	font: inherit;
	cursor: pointer;
}

/* Headings — beat Elementor global typography */
body.alg-site .alg-property :is(h1, h2, h3),
body.alg-site .alg-section :is(h1, h2, h3),
body.alg-site .alg-panel :is(h1, h2, h3),
body.alg-site .alg-site-header :is(h1, h2, h3),
body.alg-site .alg-site-footer :is(h1, h2, h3) {
	font-family: var(--alg-display-font);
	font-weight: 700;
	letter-spacing: 0;
	color: var(--alg-black);
	margin-top: 0;
}

body.alg-site .alg-hero :is(h1, h2, h3),
body.alg-site .alg-hero p {
	color: var(--alg-white);
}

/* Links inside ALG components */
body.alg-site .alg-breadcrumb a,
body.alg-site .alg-card h3 a,
body.alg-site .alg-list-card__title a,
body.alg-site .alg-main-nav a,
body.alg-site .alg-agent-card h3 a {
	color: var(--alg-black);
	text-decoration: none;
}

body.alg-site .alg-breadcrumb a:hover,
body.alg-site .alg-card h3 a:hover,
body.alg-site .alg-list-card__title a:hover,
body.alg-site .alg-main-nav a:hover,
body.alg-site .alg-agent-card h3 a:hover {
	color: var(--alg-brand);
}

body.alg-site .alg-site-footer a {
	color: rgba(255, 255, 255, .82);
}

body.alg-site .alg-site-footer a:hover,
body.alg-site .alg-site-footer a:focus-visible {
	color: var(--alg-brand);
}

/* Buttons — override Hello Elementor button { border: 1px solid #c36 } etc. */
body.alg-site a.alg-button,
body.alg-site button.alg-button,
body.alg-site .alg-button {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 44px;
	padding: 11px 16px !important;
	border-radius: 6px !important;
	background: var(--alg-brand) !important;
	color: var(--alg-black) !important;
	border: 1px solid var(--alg-brand) !important;
	font-family: var(--alg-body-font) !important;
	font-size: 15px !important;
	font-weight: 800 !important;
	line-height: 1.2 !important;
	text-decoration: none !important;
	text-transform: none !important;
	text-indent: 0 !important;
	box-shadow: none !important;
	opacity: 1 !important;
	cursor: pointer;
	white-space: nowrap;
}

body.alg-site a.alg-button:hover,
body.alg-site a.alg-button:focus-visible,
body.alg-site button.alg-button:hover,
body.alg-site button.alg-button:focus-visible,
body.alg-site .alg-button:hover,
body.alg-site .alg-button:focus-visible {
	background: var(--alg-black) !important;
	border-color: var(--alg-black) !important;
	color: var(--alg-white) !important;
}

body.alg-site a.alg-button--ghost,
body.alg-site button.alg-button--ghost,
body.alg-site .alg-button--ghost {
	background: var(--alg-white) !important;
	border-color: var(--alg-black) !important;
	color: var(--alg-black) !important;
}

body.alg-site a.alg-button--whatsapp,
body.alg-site a.alg-button--call,
body.alg-site button.alg-button--whatsapp,
body.alg-site button.alg-button--call,
body.alg-site .alg-button--whatsapp,
body.alg-site .alg-button--call {
	background: var(--alg-black) !important;
	border-color: var(--alg-black) !important;
	color: var(--alg-white) !important;
}

body.alg-site a.alg-button--whatsapp:hover,
body.alg-site a.alg-button--call:hover,
body.alg-site a.alg-button--whatsapp:focus-visible,
body.alg-site a.alg-button--call:focus-visible,
body.alg-site button.alg-button--whatsapp:hover,
body.alg-site button.alg-button--call:hover,
body.alg-site .alg-button--whatsapp:hover,
body.alg-site .alg-button--call:hover {
	background: var(--alg-brand) !important;
	border-color: var(--alg-brand) !important;
	color: var(--alg-black) !important;
}

body.alg-site a.alg-button--reserve,
body.alg-site button.alg-button--reserve,
body.alg-site .alg-button--reserve {
	background: var(--alg-brand) !important;
	border-color: var(--alg-brand) !important;
	color: var(--alg-black) !important;
}

body.alg-site a.alg-card__details {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100%;
	padding: 10px 16px !important;
	border-radius: 8px !important;
	background: var(--alg-brand) !important;
	color: #fff !important;
	border: none !important;
	font-family: var(--alg-display-font) !important;
	font-size: 12.5px !important;
	font-weight: 800 !important;
	text-decoration: none !important;
}

/* Listing card facts — plain icon + text, no pills */
body.alg-site .alg-card .alg-card__facts {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 14px;
	margin: 0 0 10px;
}

body.alg-site .alg-card .alg-card__facts .alg-fact {
	display: inline-flex !important;
	align-items: center;
	gap: 5px;
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	padding: 0 !important;
	box-shadow: none !important;
	font-family: var(--alg-body-font);
	font-size: 12.5px;
	font-weight: 700;
	color: var(--alg-ink);
}

body.alg-site .alg-card .alg-card__facts .alg-fact .alg-icon {
	color: var(--alg-brand);
	width: 14px;
	height: 14px;
	flex: none;
}

body.alg-site .alg-card__price {
	font-family: var(--alg-display-font) !important;
	font-weight: 800 !important;
	color: var(--alg-black) !important;
}

body.alg-site .alg-card h3 {
	font-family: var(--alg-display-font);
	font-weight: 800;
}

/* Sticky mobile actions — full-width contact buttons */
body.alg-site .alg-mobile-sticky a.alg-button,
body.alg-site .alg-mobile-sticky button.alg-button {
	width: 100%;
	min-height: 48px !important;
	padding: 12px 14px !important;
	border-radius: 8px !important;
	font-size: 14px !important;
}

/* Property detail facts row — plain text + icons, no pills */
body.alg-site .alg-property .alg-detail-bar .alg-facts {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 20px;
	margin: 0;
	padding: 14px 0;
	border-top: 1px solid var(--alg-border);
	border-bottom: 1px solid var(--alg-border);
}

body.alg-site .alg-property .alg-detail-bar .alg-fact {
	display: inline-flex !important;
	align-items: center;
	gap: 6px;
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	padding: 0 !important;
	box-shadow: none !important;
	font-family: var(--alg-body-font);
	font-size: 15px;
	font-weight: 700;
	color: var(--alg-ink);
}

body.alg-site .alg-property .alg-detail-bar .alg-fact .alg-icon {
	color: var(--alg-brand);
	width: 18px;
	height: 18px;
	flex: none;
}

body.alg-site .alg-property .alg-detail-bar .alg-fact--id {
	color: var(--alg-muted);
}

/* Property spec table */
body.alg-site .alg-property .alg-spec-list {
	display: grid;
	gap: 0;
	margin: 0;
	padding: 0;
	list-style: none;
}

body.alg-site .alg-property .alg-spec-list__row {
	display: grid;
	grid-template-columns: 40% minmax(0, 1fr);
	gap: 12px;
	padding: 11px 0;
	border-bottom: 1px solid var(--alg-border);
}

body.alg-site .alg-property .alg-spec-list dt {
	margin: 0;
	padding: 0;
	background: transparent !important;
	border: 0 !important;
	color: var(--alg-muted);
	font-weight: 700;
}

body.alg-site .alg-property .alg-spec-list dd {
	margin: 0;
	padding: 0;
	background: transparent !important;
	border: 0 !important;
	color: var(--alg-black);
	font-weight: 800;
}

/* Amenities checklist — no boxed pills */
body.alg-site .alg-property .alg-amenities li {
	display: flex;
	align-items: center;
	gap: 10px;
	background: transparent !important;
	border: 0 !important;
	border-radius: 0;
	padding: 4px 0;
	font-weight: 700;
}

/* Form controls */
body.alg-site .alg-search input,
body.alg-site .alg-search select,
body.alg-site .alg-form input,
body.alg-site .alg-form textarea,
body.alg-site .alg-form select {
	width: 100%;
	border: 1px solid rgba(0, 0, 0, .22) !important;
	border-radius: 6px !important;
	padding: 11px 12px !important;
	background: var(--alg-white) !important;
	color: var(--alg-black) !important;
	font-family: var(--alg-body-font);
	font-size: inherit;
}

/* Gallery / lightbox / filter controls */
body.alg-site .alg-gallery__main,
body.alg-site .alg-gallery__thumb,
body.alg-site .alg-lightbox__btn,
body.alg-site .alg-filter-toggle,
body.alg-site .alg-filter-close,
body.alg-site .alg-menu-toggle,
body.alg-site .alg-menu-close,
body.alg-site .alg-view-toggle__btn,
body.alg-site .alg-featured-carousel__btn {
	border: none;
	background: transparent;
	color: inherit;
	font: inherit;
	cursor: pointer;
}

body.alg-site .alg-filter-toggle,
body.alg-site .alg-menu-toggle {
	border: 1px solid var(--alg-border) !important;
	background: var(--alg-white) !important;
	color: var(--alg-black) !important;
}

@media (max-width: 720px) {
	body.alg-site .alg-property .alg-spec-list__row {
		grid-template-columns: 1fr;
		gap: 2px;
	}
}

/* =====================================================================
   Peek carousels (v1.4.9) — 1 / 2 / 3 cards + next-slide peek.
   Mobile ~1.18 visible, tablet ~2.15, desktop featured ~3.15.
   ===================================================================== */

@media (min-width: 768px) {
	.alg-home .alg-featured-carousel__viewport,
	.alg-home .alg-listing-grid--peek-wrap,
	.alg-results .alg-view-panel--grid > .alg-listing-grid {
		--alg-peek-visible: 2.15;
	}
}

@media (min-width: 1200px) {
	.alg-home .alg-featured-carousel__viewport {
		--alg-peek-visible: 3.15;
	}
}

/* Home mode sections: horizontal peek scroll below desktop grid */
@media (max-width: 980px) {
	.alg-home .alg-listing-grid--peek {
		display: flex;
		flex-wrap: nowrap;
		align-items: flex-start;
		gap: var(--alg-peek-gap, 14px);
		width: max-content;
		min-width: 100%;
		overflow: visible;
	}

	.alg-home .alg-section:has(.alg-listing-grid--peek) > .alg-container {
		overflow: hidden;
	}

	.alg-home .alg-listing-grid--peek-wrap {
		overflow-x: auto;
		overflow-y: hidden;
		scroll-snap-type: x mandatory;
		scroll-behavior: smooth;
		scrollbar-width: none;
		-ms-overflow-style: none;
		padding: 4px 0 10px;
		margin-inline: calc(var(--alg-container-pad, 20px) * -1);
		padding-inline: var(--alg-container-pad, 20px);
		scroll-padding-inline: var(--alg-container-pad, 20px);
		container-type: inline-size;
		container-name: alg-peek;
		--alg-peek-gap: 14px;
		--alg-peek-visible: 1.18;
	}

	.alg-home .alg-listing-grid--peek-wrap::-webkit-scrollbar {
		display: none;
	}

	.alg-home .alg-listing-grid--peek .alg-card {
		flex: 0 0 calc((100cqw - var(--alg-peek-gap)) / var(--alg-peek-visible));
		max-width: calc((100cqw - var(--alg-peek-gap)) / var(--alg-peek-visible));
		align-self: flex-start;
		height: auto;
		scroll-snap-align: start;
	}
}

/* Directory grid view: peek row on tablet/mobile (replaces single full-width column) */
@media (max-width: 980px) {
	.alg-results .alg-view-panel--grid {
		overflow: hidden;
	}

	.alg-results .alg-view-panel--grid > .alg-listing-grid {
		display: flex;
		flex-wrap: nowrap;
		align-items: stretch;
		gap: var(--alg-peek-gap, 14px);
		width: max-content;
		min-width: 100%;
		overflow-x: auto;
		overflow-y: hidden;
		scroll-snap-type: x mandatory;
		scroll-behavior: smooth;
		scrollbar-width: none;
		-ms-overflow-style: none;
		margin-inline: calc(var(--alg-container-pad, 20px) * -1);
		padding: 4px var(--alg-container-pad, 20px) 10px;
		scroll-padding-inline: var(--alg-container-pad, 20px);
		container-type: inline-size;
		container-name: alg-peek;
		--alg-peek-gap: 14px;
		--alg-peek-visible: 1.18;
	}

	.alg-results .alg-view-panel--grid > .alg-listing-grid::-webkit-scrollbar {
		display: none;
	}

	.alg-results .alg-view-panel--grid > .alg-listing-grid > .alg-card {
		flex: 0 0 calc((100cqw - var(--alg-peek-gap)) / var(--alg-peek-visible));
		max-width: calc((100cqw - var(--alg-peek-gap)) / var(--alg-peek-visible));
		scroll-snap-align: start;
	}
}

/* Compact peek cards — image, title, price, location, facts, footer */
.alg-home .alg-listing-grid--peek .alg-card,
.alg-home .alg-listing-grid--carousel .alg-card {
	border-radius: 16px;
}

.alg-home .alg-listing-grid--peek .alg-card__media,
.alg-home .alg-listing-grid--carousel .alg-card__media {
	aspect-ratio: 4 / 3;
	border-radius: 16px 16px 0 0;
}

.alg-home .alg-listing-grid--peek .alg-card__body,
.alg-home .alg-listing-grid--carousel .alg-card__body {
	padding: 12px 14px 14px;
}

.alg-home .alg-listing-grid--peek .alg-card h3,
.alg-home .alg-listing-grid--carousel .alg-card h3 {
	font-size: 15px;
	margin: 0 0 2px;
	line-height: 1.2;
}

.alg-home .alg-listing-grid--peek .alg-card__price,
.alg-home .alg-listing-grid--carousel .alg-card__price {
	font-size: clamp(17px, 4.5vw, 20px);
	margin: 0 0 4px;
}

.alg-home .alg-listing-grid--peek .alg-card .alg-location,
.alg-home .alg-listing-grid--carousel .alg-card .alg-location {
	font-size: 12px;
	margin: 0 0 4px;
}

.alg-home .alg-listing-grid--peek .alg-card__facts,
.alg-home .alg-listing-grid--carousel .alg-card__facts {
	margin: 0 0 8px;
	gap: 2px 10px;
}

.alg-home .alg-listing-grid--peek .alg-card__facts .alg-fact,
.alg-home .alg-listing-grid--carousel .alg-card__facts .alg-fact {
	font-size: 11.5px;
}

.alg-home .alg-listing-grid--peek .alg-card__footer,
.alg-home .alg-listing-grid--carousel .alg-card__footer {
	padding-top: 8px;
	margin-top: auto;
}

.alg-home .alg-listing-grid--peek .alg-card__details,
.alg-home .alg-listing-grid--carousel .alg-card__details {
	padding: 8px 12px !important;
	font-size: 12px !important;
}

@media (max-width: 980px) {
	.alg-results .alg-view-panel--grid > .alg-listing-grid > .alg-card {
		border-radius: 16px;
	}

	.alg-results .alg-view-panel--grid > .alg-listing-grid > .alg-card .alg-card__media {
		aspect-ratio: 4 / 3;
		border-radius: 16px 16px 0 0;
	}

	.alg-results .alg-view-panel--grid > .alg-listing-grid > .alg-card .alg-card__body {
		padding: 12px 14px 14px;
	}

	.alg-results .alg-view-panel--grid > .alg-listing-grid > .alg-card h3 {
		font-size: 15px;
		margin: 0 0 2px;
		line-height: 1.2;
	}

	.alg-results .alg-view-panel--grid > .alg-listing-grid > .alg-card .alg-card__price {
		font-size: clamp(17px, 4.5vw, 20px);
		margin: 0 0 4px;
	}

	.alg-results .alg-view-panel--grid > .alg-listing-grid > .alg-card .alg-location {
		font-size: 12px;
		margin: 0 0 4px;
	}

	.alg-results .alg-view-panel--grid > .alg-listing-grid > .alg-card .alg-card__facts {
		margin: 0 0 8px;
		gap: 2px 10px;
	}

	.alg-results .alg-view-panel--grid > .alg-listing-grid > .alg-card .alg-card__facts .alg-fact {
		font-size: 11.5px;
	}

	.alg-results .alg-view-panel--grid > .alg-listing-grid > .alg-card .alg-card__footer {
		padding-top: 8px;
		margin-top: auto;
	}

	.alg-results .alg-view-panel--grid > .alg-listing-grid > .alg-card .alg-card__details {
		padding: 8px 12px !important;
		font-size: 12px !important;
	}
}

@media (max-width: 680px) {
	.alg-container {
		--alg-container-pad: 16px;
	}

	/* Static grids (not peek tracks): single column, compact cards */
	.alg-listing-grid:not(.alg-listing-grid--carousel):not(.alg-listing-grid--peek) {
		grid-template-columns: 1fr !important;
		gap: 16px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.alg-home .alg-listing-grid--peek-wrap,
	.alg-home .alg-featured-carousel__viewport,
	.alg-results .alg-view-panel--grid > .alg-listing-grid {
		scroll-behavior: auto;
	}
}

/* =====================================================================
   UI POLISH v1.6 — editorial property-card refinement (CSS-only)
   Scoped to .alg-card so it wins over base single-class rules by
   specificity; no markup/PHP changes. Reorders body to
   city-eyebrow -> title -> price -> hairline facts -> footer.
   ===================================================================== */

/* Card shell: subtler neutral border, gold border on hover */
.alg-card{
	border:1px solid rgba(20,18,16,.09);
	border-radius:5px;
	box-shadow:0 2px 16px rgba(15,23,42,.05);
}
.alg-card:hover{
	border-color:var(--alg-brand,#E29C29);
	box-shadow:0 20px 48px rgba(20,18,16,.12);
}

/* Body: a touch more air, flex column so we can reorder */
.alg-card .alg-card__body{
	display:flex;
	flex-direction:column;
	padding:18px 20px 20px;
}

/* City becomes a quiet eyebrow ABOVE the title (visual reorder only) */
.alg-card .alg-location{
	order:-1;
	margin:0 0 9px;
	color:#8a8178;
	font-size:11.5px;
	font-weight:600;
	letter-spacing:.01em;
}
.alg-card .alg-location .alg-icon{ color:var(--alg-gold-deep,#B0761A); }

/* Title -> editorial serif display, lighter weight */
.alg-card h3{
	font-family:var(--alg-display-font);
	font-size:19px;
	font-weight:500;
	line-height:1.24;
	letter-spacing:0;
	margin:0 0 12px;
}

/* Price leads the body */
.alg-card .alg-card__price{
	font-family:var(--alg-display-font);
	font-size:23px;
	font-weight:600;
	letter-spacing:0;
	margin:0 0 2px;
}

/* Hairline-divided facts row (3 equal cells) */
.alg-card .alg-card__facts{
	display:flex;
	gap:0;
	margin:16px 0 20px;
	border-top:1px solid rgba(20,18,16,.08);
	border-bottom:1px solid rgba(20,18,16,.08);
}
.alg-card .alg-card__facts .alg-fact{
	flex:1;
	display:flex;
	align-items:center;
	justify-content:center;
	gap:6px;
	padding:11px 4px;
	text-align:center;
	font-size:12px;
	font-weight:600;
	color:#3a352e;
	border-left:1px solid rgba(20,18,16,.07);
}
.alg-card .alg-card__facts .alg-fact:first-child{ border-left:none; }
.alg-card .alg-card__facts .alg-fact .alg-icon{ color:var(--alg-gold-deep,#B0761A); }

/* ---- Badges: quiet, dot-marked, editorial ---- */
.alg-card .alg-card__badge-col{ display:contents; }

/* Mode -> top-left white tab with a colour dot */
.alg-card .alg-card__mode-badge--media{
	top:12px; left:12px; right:auto; bottom:auto;
	display:inline-flex; align-items:center; gap:7px;
	background:rgba(255,255,255,.94);
	color:var(--alg-ink,#151515);
	box-shadow:0 2px 10px rgba(0,0,0,.12);
	font-size:10px; font-weight:700; letter-spacing:.12em; text-transform:uppercase;
	padding:6px 11px 6px 10px; border-radius:4px;
}
.alg-card .alg-card__mode-badge--media::before{
	content:""; width:6px; height:6px; border-radius:50%;
	background:var(--badge-color,#151515);
}

/* Featured -> top-right, gold italic serif (not a shouty pill) */
.alg-card__media > .alg-card__featured,
.alg-card .alg-card__badge-col .alg-card__featured{
	position:absolute; top:12px; right:12px; left:auto; bottom:auto;
	background:var(--alg-brand,#E29C29); color:#fff;
	font-family:var(--alg-display-font); font-style:italic; font-weight:500;
	font-size:12.5px; letter-spacing:0; text-transform:none;
	padding:4px 11px; border-radius:3px;
	box-shadow:0 4px 14px rgba(226,156,41,.38);
}

/* Status -> bottom-left dark pill with a colour dot */
.alg-card__media > .alg-card__status,
.alg-card .alg-card__badge-col .alg-card__status{
	position:absolute; bottom:12px; left:12px; top:auto; right:auto;
	display:inline-flex; align-items:center; gap:7px;
	background:rgba(20,18,16,.62); color:#fff;
	font-size:10.5px; font-weight:600; letter-spacing:.03em; text-transform:none;
	padding:5px 12px 5px 10px; border-radius:20px;
	box-shadow:none;
}
.alg-card__media > .alg-card__status::before,
.alg-card .alg-card__badge-col .alg-card__status::before{
	content:""; width:7px; height:7px; border-radius:50%;
	background:var(--badge-color,#1a6b45);
	box-shadow:0 0 0 3px rgba(255,255,255,.16);
}

/* ---- Footer buttons: ghost "View Details" + gold "Book" ---- */
.alg-card .alg-card__footer{ padding-top:2px; border-top:none; }

body.alg-site a.alg-card__details,
.alg-card a.alg-card__details{
	background:#fff !important;
	color:var(--alg-ink,#151515) !important;
	border:1px solid var(--alg-ink,#151515) !important;
	border-radius:3px !important;
	font-family:var(--alg-body-font) !important;
	font-weight:600 !important;
	letter-spacing:.08em !important;
	text-transform:uppercase !important;
	font-size:11.5px !important;
	padding:12px 16px !important;
}
body.alg-site a.alg-card__details:hover,
.alg-card a.alg-card__details:hover{
	background:var(--alg-ink,#151515) !important;
	color:#fff !important;
}

/* Keep Book gold but align its shape with the ghost button */
.alg-card .alg-card__footer--bookable .alg-card__book{
	border-radius:3px;
	letter-spacing:.08em;
	text-transform:uppercase;
	font-size:11.5px;
	font-weight:700;
}

/* =====================================================================
   UI POLISH v1.6.1 — premium search-form skin (home / [alg_search_form])
   Isolated behind .alg-search-shell--premium so the results-page filter
   form is untouched. Editorial white card: serif mode toggle w/ gold
   underline, hairline underlined fields (Location + Property type),
   ink Search button, popular quick-chips. No consultation heading.
   ===================================================================== */
.alg-search-shell.alg-search-shell--premium{
	background:#fff;
	border:1px solid rgba(20,18,16,.10);
	border-radius:8px;
	box-shadow:0 24px 60px rgba(20,18,16,.10);
	padding:26px 30px 22px;
	max-width:940px;
}
/* neutralise the old form container so the shell is the card */
.alg-search-shell--premium .alg-search{
	display:block;
	background:none;
	border:none;
	box-shadow:none;
	padding:0;
	margin:0;
	gap:0;
	border-radius:0;
	grid-template-columns:none;
}
/* mode toggle -> serif tabs with gold underline */
.alg-search-shell--premium .alg-search__tabs{
	display:flex;
	justify-content:flex-start;
	gap:30px;
	margin:0 0 22px;
	padding:0 0 18px;
	border:none;
	border-bottom:1px solid rgba(20,18,16,.08);
	border-radius:0;
	background:none;
	box-shadow:none;
}
.alg-search-shell--premium .alg-search__tab{
	margin:0;
	padding:0;
	background:none;
	border:none;
	border-radius:0;
	box-shadow:none;
}
.alg-search-shell--premium .alg-search__tab input{
	position:absolute;
	opacity:0;
	width:1px;height:1px;
	pointer-events:none;
}
.alg-search-shell--premium .alg-search__tab span{
	font-family:var(--alg-display-font);
	font-size:18px;
	font-weight:500;
	letter-spacing:0;
	color:#8a8178;
	cursor:pointer;
	display:inline-block;
	position:relative;
	padding:0 0 8px;
	background:none;
	border:none;
	text-transform:none;
}
.alg-search-shell--premium .alg-search__tab input:checked + span{
	color:var(--alg-ink,#151515);
	background:none;
}
.alg-search-shell--premium .alg-search__tab input:checked + span::after{
	content:"";
	position:absolute;
	left:0;right:0;bottom:0;
	height:2px;
	background:var(--alg-brand,#E29C29);
}
/* field row */
.alg-search-shell--premium .alg-search__row{
	display:grid;
	grid-template-columns:1.5fr 1fr auto;
	gap:28px;
	align-items:end;
}
.alg-search-shell--premium .alg-search__field{
	display:flex;
	flex-direction:column;
	margin:0;
	text-align:left;
	min-width:0;
}
.alg-search-shell--premium .alg-field-label{
	font-size:10px;
	letter-spacing:.16em;
	text-transform:uppercase;
	color:var(--alg-gold-deep,#B0761A);
	font-weight:700;
	margin-bottom:11px;
}
.alg-search-shell--premium .alg-search__field input,
.alg-search-shell--premium .alg-search__field select{
	appearance:none;
	-webkit-appearance:none;
	border:none;
	border-bottom:1.5px solid var(--alg-ink,#151515);
	border-radius:0;
	background:transparent;
	padding:0 0 9px;
	margin:0;
	width:100%;
	min-height:0;
	box-shadow:none;
	font-family:var(--alg-body-font);
	font-size:16px;
	font-weight:500;
	color:var(--alg-ink,#151515);
	line-height:1.3;
}
.alg-search-shell--premium .alg-search__field--select{position:relative;}
.alg-search-shell--premium .alg-search__field--select select{
	color:var(--alg-muted,#666);
	cursor:pointer;
	padding-right:22px;
	background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238a8178' stroke-width='2'><path d='M6 9l6 6 6-6'/></svg>");
	background-repeat:no-repeat;
	background-position:right 0 bottom 11px;
	background-size:14px;
}
.alg-search-shell--premium .alg-search__field input::placeholder{color:#b7afaf;}
.alg-search-shell--premium .alg-search__field input:focus,
.alg-search-shell--premium .alg-search__field select:focus{
	outline:none;
	border-bottom-color:var(--alg-brand,#E29C29);
}
/* Search button -> ink, letterspaced (beats .alg-search ...__submit rule) */
.alg-search-shell--premium .alg-search .alg-search__submit,
.alg-search-shell--premium .alg-search button.alg-button.alg-search__submit[type="submit"]{
	background:var(--alg-ink,#151515) !important;
	border:1px solid var(--alg-ink,#151515) !important;
	color:#fff !important;
	border-radius:2px !important;
	min-width:0 !important;
	min-height:0 !important;
	padding:15px 32px !important;
	font-family:var(--alg-body-font) !important;
	font-size:12px !important;
	font-weight:700 !important;
	letter-spacing:.14em !important;
	text-transform:uppercase !important;
	align-self:end;
	box-shadow:none !important;
}
.alg-search-shell--premium .alg-search .alg-search__submit::before,
.alg-search-shell--premium .alg-search .alg-search__submit::after{content:none !important;}
.alg-search-shell--premium .alg-search .alg-search__submit:hover,
.alg-search-shell--premium .alg-search button.alg-button.alg-search__submit[type="submit"]:hover{
	background:var(--alg-gold-deep,#B0761A) !important;
	border-color:var(--alg-gold-deep,#B0761A) !important;
}
/* popular chips */
.alg-search-shell--premium .alg-search__popular{
	display:flex;
	align-items:center;
	gap:16px;
	flex-wrap:wrap;
	margin-top:22px;
}
.alg-search-shell--premium .alg-search__popular-label{
	font-size:10.5px;
	letter-spacing:.16em;
	text-transform:uppercase;
	color:#a49b8e;
	font-weight:700;
}
.alg-search-shell--premium .alg-search__popular-chip{
	font-size:13px;
	color:var(--alg-ink,#151515);
	text-decoration:none;
	border-bottom:1px solid var(--alg-gold-line,#E7C98B);
	padding-bottom:2px;
	transition:color .18s ease;
}
.alg-search-shell--premium .alg-search__popular-chip:hover{color:var(--alg-gold-deep,#B0761A);}
/* consultation slimmed (heading removed) */
.alg-search-shell--premium .alg-consultation{
	margin-top:20px;
	padding-top:18px;
	border-top:1px solid rgba(20,18,16,.08);
}
/* responsive */
@media(max-width:720px){
	.alg-search-shell.alg-search-shell--premium{padding:20px 18px 18px;}
	.alg-search-shell--premium .alg-search__row{grid-template-columns:1fr;gap:20px;}
	.alg-search-shell--premium .alg-search .alg-search__submit{width:100%;}
	.alg-search-shell--premium .alg-search__tabs{gap:22px;}
}

/* =====================================================================
   BuReLo home ([alg_home]) — fresh design, real data. Scoped .burelo-home.
   Mobile: featured listings become swipe slides; tile/agent grids go 2-up.
   ===================================================================== */
@import url('https://fonts.googleapis.com/css2?family=Bodoni+Moda:ital,wght@0,500;1,500&family=Fraunces:wght@500;600&family=Montserrat:wght@400;500;600;700&display=swap');
.burelo-home{
	--alg-display-font:'Bodoni Moda',Didot,'Bodoni 72',serif;
	--alg-body-font:'Montserrat','Segoe UI',Arial,sans-serif;
	--bh-gold:#E29C29;--bh-gold-deep:#B0761A;--bh-gold-line:#E7C98B;
	--bh-ink:#141210;--bh-char:#0e0c0a;--bh-muted:#6f685e;--bh-faint:#a49b8e;
	--bh-wash:#FBF8F2;--bh-soft:#FBF3E4;--bh-line:rgba(20,18,16,.12);--bh-line-soft:rgba(20,18,16,.07);
	font-family:var(--alg-body-font);color:var(--bh-ink);background:#fff;line-height:1.5;
}
.burelo-home *{box-sizing:border-box}
.burelo-home .bh-eyebrow{font-size:11px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--bh-gold-deep)}
.burelo-home h1,.burelo-home h2,.burelo-home h3{font-family:var(--alg-display-font);font-weight:500;letter-spacing:.005em;margin:0}
.burelo-home a{text-decoration:none;color:inherit}
/* HERO */
.burelo-home .bh-hero{position:relative;background:var(--bh-char);color:#fff;overflow:hidden;padding:80px 0 90px;text-align:center}
.burelo-home .bh-hero__glow{position:absolute;inset:0;pointer-events:none;background:radial-gradient(60% 55% at 50% 0%,rgba(226,156,41,.22),transparent 60%),radial-gradient(40% 40% at 85% 90%,rgba(226,156,41,.10),transparent 60%)}
.burelo-home .bh-hero__grid{position:absolute;inset:0;opacity:.06;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.7) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.7) 1px,transparent 1px);background-size:70px 70px;-webkit-mask-image:radial-gradient(circle at 50% 20%,#000,transparent 72%);mask-image:radial-gradient(circle at 50% 20%,#000,transparent 72%)}
.burelo-home .bh-hero__in{position:relative;z-index:2;max-width:840px}
.burelo-home .bh-hero__eyebrow{color:var(--bh-gold);display:block;margin-bottom:20px}
.burelo-home .bh-hero__title{font-size:clamp(36px,6vw,60px);line-height:1.07;margin-bottom:20px}
.burelo-home .bh-hero__title em{font-style:italic;color:var(--bh-gold)}
.burelo-home .bh-hero__lede{font-size:16px;color:#c9c1b5;max-width:560px;margin:0 auto 40px;line-height:1.62}
.burelo-home .bh-hero__trust{display:flex;justify-content:center;gap:24px;margin-top:30px;flex-wrap:wrap}
.burelo-home .bh-hero__trust span{display:flex;align-items:center;gap:8px;font-size:12.5px;color:#c9c1b5}
.burelo-home .bh-hero__trust svg{width:15px;height:15px;stroke:var(--bh-gold);fill:none;stroke-width:1.8}
/* hero search form (premium skin) reads well on the dark hero */
.burelo-home .bh-hero .alg-search-shell--premium{margin:0 auto;max-width:900px}
/* SECTIONS */
.burelo-home .bh-sec{padding:74px 0}
.burelo-home .bh-sec--wash{background:var(--bh-wash)}
.burelo-home .bh-sec--soft{background:var(--bh-soft)}
.burelo-home .bh-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:32px}
.burelo-home .bh-head .bh-eyebrow{display:block;margin-bottom:10px}
.burelo-home .bh-head h2{font-size:clamp(26px,3.4vw,36px);line-height:1.1}
.burelo-home .bh-link{font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--bh-gold-deep);border-bottom:1px solid var(--bh-gold-line);padding-bottom:3px;white-space:nowrap}
/* FEATURED grid (reuses .alg-card) */
.burelo-home .bh-featured .alg-listing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
/* MODE TILES */
.burelo-home .bh-modes{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.burelo-home .bh-tile{position:relative;border-radius:8px;overflow:hidden;min-height:150px;display:flex;flex-direction:column;justify-content:flex-end;padding:22px;color:#fff;background:linear-gradient(150deg,#241a12,#0e0c0a)}
.burelo-home .bh-tile--rent{background:linear-gradient(150deg,#14231b,#0e0c0a)}
.burelo-home .bh-tile--book{background:linear-gradient(150deg,#1e1526,#0e0c0a)}
.burelo-home .bh-tile::after{content:"";position:absolute;inset:0;background:radial-gradient(80% 60% at 100% 0%,rgba(226,156,41,.18),transparent 60%);pointer-events:none}
.burelo-home .bh-tile__k{position:relative;z-index:2;font-family:var(--alg-display-font);font-size:26px}
.burelo-home .bh-tile__c{position:relative;z-index:2;font-size:12.5px;color:#e7c98b;margin-top:2px}
.burelo-home .bh-tile__go{position:relative;z-index:2;margin-top:14px;font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;display:inline-flex;align-items:center;gap:8px}
.burelo-home .bh-tile__go svg{width:14px;height:14px;stroke:#fff;fill:none;stroke-width:2}
/* LOCATIONS */
.burelo-home .bh-locs{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.burelo-home .bh-loc{position:relative;border-radius:8px;overflow:hidden;min-height:120px;display:flex;flex-direction:column;justify-content:center;padding:0 32px;color:#fff;background:linear-gradient(100deg,#0e0c0a,#241a12)}
.burelo-home .bh-loc::after{content:"";position:absolute;inset:0;background:radial-gradient(60% 120% at 100% 50%,rgba(226,156,41,.16),transparent 60%);pointer-events:none}
.burelo-home .bh-loc__k{position:relative;z-index:2;font-family:var(--alg-display-font);font-size:30px}
.burelo-home .bh-loc__c{position:relative;z-index:2;font-size:13px;color:#e7c98b;margin-top:2px}
/* TYPES */
.burelo-home .bh-types{display:flex;flex-wrap:wrap;gap:12px}
.burelo-home .bh-type{border:1px solid var(--bh-line);border-radius:4px;padding:14px 20px;font-size:14px;font-weight:500;background:#fff;display:flex;align-items:center;gap:10px;transition:.18s}
.burelo-home .bh-type:hover{border-color:var(--bh-gold);color:var(--bh-gold-deep)}
.burelo-home .bh-type small{font-size:11px;color:var(--bh-faint);font-weight:600}
/* WHY */
.burelo-home .bh-why{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}
.burelo-home .bh-why__ic{width:52px;height:52px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;margin-bottom:18px;box-shadow:0 8px 22px rgba(20,18,16,.08)}
.burelo-home .bh-why__ic svg{width:23px;height:23px;stroke:var(--bh-gold-deep);fill:none;stroke-width:1.6}
.burelo-home .bh-why__i h3{font-size:20px;margin-bottom:9px}
.burelo-home .bh-why__i p{font-size:14px;color:var(--bh-muted);line-height:1.7}
/* AGENTS */
.burelo-home .bh-agents{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.burelo-home .bh-agent{text-align:center;background:#fff;border:1px solid var(--bh-line-soft);border-radius:8px;padding:26px 16px;transition:.2s}
.burelo-home .bh-agent:hover{border-color:var(--bh-gold-line);box-shadow:0 16px 40px rgba(20,18,16,.08)}
.burelo-home .bh-agent__av{width:74px;height:74px;border-radius:50%;object-fit:cover;margin:0 auto 14px;display:block}
.burelo-home .bh-agent__n{display:block;font-weight:600;font-size:14.5px;margin-bottom:3px}
.burelo-home .bh-agent__r{display:block;font-size:12px;color:var(--bh-muted)}
.burelo-home .bh-agent__c{display:block;font-size:11.5px;color:var(--bh-gold-deep);margin-top:10px;font-weight:600;letter-spacing:.04em}
/* LIST BAND */
.burelo-home .bh-band{position:relative;background:var(--bh-char);color:#fff;border-radius:10px;overflow:hidden}
.burelo-home .bh-band__glow{position:absolute;inset:0;background:radial-gradient(50% 120% at 90% 50%,rgba(226,156,41,.2),transparent 60%);pointer-events:none}
.burelo-home .bh-band__in{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:44px}
.burelo-home .bh-band__eyebrow{color:var(--bh-gold);display:block;margin-bottom:12px}
.burelo-home .bh-band h2{font-size:clamp(24px,3vw,32px);margin-bottom:8px}
.burelo-home .bh-band p{font-size:14px;color:#c9c1b5;max-width:440px}
.burelo-home .bh-btn{display:inline-flex;align-items:center;gap:9px;font-size:12.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:15px 28px;border-radius:3px;white-space:nowrap}
.burelo-home .bh-btn--gold{background:var(--bh-gold);color:#fff}
.burelo-home .bh-btn--gold:hover{background:var(--bh-gold-deep)}
/* ---- RESPONSIVE ---- */
@media(max-width:960px){
	.burelo-home .bh-featured .alg-listing-grid{grid-template-columns:1fr 1fr}
	.burelo-home .bh-why{grid-template-columns:1fr 1fr}
	.burelo-home .bh-agents{grid-template-columns:1fr 1fr}
}
@media(max-width:700px){
	.burelo-home .bh-sec{padding:52px 0}
	.burelo-home .bh-head{flex-direction:column;align-items:flex-start}
	/* listings -> swipe slides */
	.burelo-home .bh-featured .alg-listing-grid{display:flex;grid-template-columns:none;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;padding-bottom:10px;-webkit-overflow-scrolling:touch;scrollbar-width:none}
	.burelo-home .bh-featured .alg-listing-grid::-webkit-scrollbar{display:none}
	.burelo-home .bh-featured .alg-listing-grid .alg-card{flex:0 0 80%;scroll-snap-align:start}
	/* double-column grids */
	.burelo-home .bh-modes{grid-template-columns:1fr 1fr;gap:12px}
	.burelo-home .bh-locs{grid-template-columns:1fr 1fr;gap:12px}
	.burelo-home .bh-agents{grid-template-columns:1fr 1fr;gap:12px}
	.burelo-home .bh-why{grid-template-columns:1fr;gap:26px}
	.burelo-home .bh-tile{min-height:130px;padding:16px}
	.burelo-home .bh-tile__k{font-size:22px}
	.burelo-home .bh-band__in{flex-direction:column;text-align:center;align-items:flex-start;padding:34px 24px}
}

/* =====================================================================
   BuReLo home v2 — hero image, working Search button, category marquee,
   agents auto-scroll, Expert Help tile, About section, left-aligned band.
   ===================================================================== */
/* --- FIX: real Search button (was a blank dark square from the base icon-button rules) --- */
.alg-search-shell--premium .alg-search button.alg-button.alg-search__submit[type="submit"]{
	width:auto !important;min-width:0 !important;max-width:none !important;
	height:auto !important;min-height:0 !important;max-height:none !important;
	height:52px !important;min-height:52px !important;max-height:52px !important;padding:0 26px !important;border-radius:3px !important;
	font-size:12px !important;line-height:1 !important;gap:9px;
	overflow:visible !important;white-space:nowrap;border-radius:3px !important;
	background:var(--bh-ink,#141210) !important;color:#fff !important;border:1px solid var(--bh-ink,#141210) !important;
	align-self:center !important;box-shadow:none !important;
}
.alg-search-shell--premium .alg-search button.alg-button.alg-search__submit[type="submit"]:hover{background:#B0761A !important;border-color:#B0761A !important}
.alg-search-shell--premium .alg-search__submit span{
	position:static !important;width:auto !important;height:auto !important;margin:0 !important;padding:0 !important;
	overflow:visible !important;clip:auto !important;clip-path:none !important;
	font-family:'Montserrat',sans-serif !important;font-size:12px !important;font-weight:700 !important;letter-spacing:.12em !important;text-transform:uppercase !important;color:#fff !important;
}
.alg-search-shell--premium .alg-search__submit-ic{width:17px;height:17px;stroke:#fff;fill:none;flex:none}
.alg-search-shell--premium .alg-search__submit::before,
.alg-search-shell--premium .alg-search__submit::after{content:none !important;display:none !important}

/* --- HERO photo overlay --- */
.burelo-home .bh-hero__bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.6;pointer-events:none}
.burelo-home .bh-hero__scrim{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(14,12,10,.62),rgba(14,12,10,.86))}

/* --- MODE TILES: 4 columns incl. Expert Help --- */
.burelo-home .bh-modes{grid-template-columns:repeat(4,1fr)}
.burelo-home .bh-tile--help{background:linear-gradient(150deg,#3a2a12,#0e0c0a);border:1px solid rgba(226,156,41,.4)}
.burelo-home .bh-tile--help::after{background:radial-gradient(80% 70% at 100% 0%,rgba(226,156,41,.32),transparent 60%)}
@media(max-width:960px){.burelo-home .bh-modes{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.burelo-home .bh-modes{grid-template-columns:1fr 1fr}}

/* --- CATEGORY MARQUEE (two rows, opposite directions, pause on hover/click) --- */
.burelo-home .bh-marquee{display:flex;flex-direction:column;gap:12px;overflow:hidden;
	-webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);
	mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);cursor:pointer}
.burelo-home .bh-marquee__row{display:flex;gap:12px;width:max-content;flex:none;animation:bh-marq 42s linear infinite;will-change:transform}
.burelo-home .bh-marquee__row--r{animation-direction:reverse}
.burelo-home .bh-marquee:hover .bh-marquee__row,
.burelo-home .bh-marquee.is-paused .bh-marquee__row{animation-play-state:paused}
.burelo-home .bh-type{flex:none;white-space:nowrap}
@keyframes bh-marq{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* --- AGENTS: single-row auto-scroll (pause on hover/click) --- */
.burelo-home .bh-agents-marquee{overflow:hidden;cursor:pointer;
	-webkit-mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent);
	mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent)}
.burelo-home .bh-agents-track{display:flex;gap:22px;width:max-content;animation:bh-marq 46s linear infinite;will-change:transform}
.burelo-home .bh-agents-marquee:hover .bh-agents-track,
.burelo-home .bh-agents-marquee.is-paused .bh-agents-track{animation-play-state:paused}
.burelo-home .bh-agents-track .bh-agent{flex:0 0 210px}

/* --- ABOUT US (two columns) --- */
.burelo-home .bh-about__in{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center}
.burelo-home .bh-about__media{border-radius:10px;overflow:hidden;aspect-ratio:4/3;background:var(--bh-soft)}
.burelo-home .bh-about__media img{width:100%;height:100%;object-fit:cover;display:block}
.burelo-home .bh-about__body .bh-eyebrow{display:block;margin-bottom:12px}
.burelo-home .bh-about__body h2{font-size:clamp(24px,3vw,32px);margin-bottom:14px}
.burelo-home .bh-about__body p{font-size:14.5px;color:var(--bh-muted);line-height:1.75;margin-bottom:22px}
.burelo-home .bh-btn--ink{background:var(--bh-ink);color:#fff}
.burelo-home .bh-btn--ink:hover{background:#000}
@media(max-width:800px){.burelo-home .bh-about__in{grid-template-columns:1fr;gap:22px}}

/* --- LIST BAND: everything left-aligned, button under the text --- */
.burelo-home .bh-band__in{display:block;text-align:left;padding:46px}
.burelo-home .bh-band__text{max-width:600px}
.burelo-home .bh-band__text p{margin-bottom:24px}
.burelo-home .bh-band__text .bh-btn{margin-top:2px}
@media(max-width:700px){.burelo-home .bh-band__in{display:block;text-align:left;align-items:flex-start;padding:32px 22px}}

/* --- reduced motion --- */
@media (prefers-reduced-motion: reduce){
	.burelo-home .bh-marquee__row,.burelo-home .bh-agents-track{animation:none}
	.burelo-home .bh-marquee,.burelo-home .bh-agents-marquee{overflow-x:auto}
}

/* --- v3: photo cards for Ways to move + Where we work, lighter hero, mobile image push --- */
.burelo-home .bh-hero__bg{background-position:center 28%}
@media(max-width:700px){.burelo-home .bh-hero__bg{background-position:center top}}
/* mode tiles -> vertical photo cards */
.burelo-home .bh-tile{aspect-ratio:3/4;min-height:0;padding:64px 20px 20px;justify-content:flex-end;background:#0e0c0a}
.burelo-home .bh-tile__img{position:absolute;inset:0;background-size:cover;background-position:center top;z-index:0}
.burelo-home .bh-tile::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(14,12,10,.10) 22%,rgba(14,12,10,.55) 62%,rgba(14,12,10,.92))}
.burelo-home .bh-tile--help{border:1px solid rgba(226,156,41,.45)}
.burelo-home .bh-tile--help::after{background:linear-gradient(180deg,rgba(58,42,18,.18) 22%,rgba(20,15,6,.6) 60%,rgba(14,12,10,.92))}
.burelo-home .bh-tile__k,.burelo-home .bh-tile__c,.burelo-home .bh-tile__go{position:relative;z-index:2}
/* location tiles -> vertical photo cards */
.burelo-home .bh-loc{aspect-ratio:3/4;min-height:0;padding:64px 24px 26px;justify-content:flex-end;background:#0e0c0a}
.burelo-home .bh-loc__img{position:absolute;inset:0;background-size:cover;background-position:center top;z-index:0}
.burelo-home .bh-loc::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(14,12,10,.10) 22%,rgba(14,12,10,.55) 62%,rgba(14,12,10,.92))}
.burelo-home .bh-loc__k,.burelo-home .bh-loc__c{position:relative;z-index:2}
@media(max-width:700px){
	.burelo-home .bh-tile{aspect-ratio:3/4;padding:52px 16px 16px}
	.burelo-home .bh-loc{aspect-ratio:3/4;padding:52px 18px 18px}
}

/* =====================================================================
   Property details v2 (.alg-property--v2): distinct WhatsApp/Call colors,
   slim back link, smaller title/price, auto-slide similar properties.
   ===================================================================== */
.alg-property--v2 .alg-property__heading h1{font-size:clamp(23px,3vw,33px) !important;line-height:1.1}
.alg-property--v2 .alg-property__price .alg-price--large{font-size:clamp(21px,2.6vw,29px) !important}
.alg-property--v2 .alg-property__pid{font-size:12px}
/* slim back link (replaces breadcrumb) */
.alg-property--v2 .alg-property__back{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#6f685e;margin-bottom:18px}
.alg-property--v2 .alg-property__back:hover{color:#B0761A}
.alg-property--v2 .alg-property__back svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:2}
/* distinguished action buttons: WhatsApp = green, Call = gold */
body.alg-site .alg-property--v2 .alg-button--whatsapp,
.alg-property--v2 .alg-button--whatsapp{background:#1a6b45 !important;border-color:#1a6b45 !important;color:#fff !important}
body.alg-site .alg-property--v2 .alg-button--whatsapp:hover,
.alg-property--v2 .alg-button--whatsapp:hover{background:#15583a !important;border-color:#15583a !important;color:#fff !important}
body.alg-site .alg-property--v2 .alg-button--call,
.alg-property--v2 .alg-button--call{background:#E29C29 !important;border-color:#E29C29 !important;color:#fff !important}
body.alg-site .alg-property--v2 .alg-button--call:hover,
.alg-property--v2 .alg-button--call:hover{background:#B0761A !important;border-color:#B0761A !important;color:#fff !important}
/* similar properties: single-lane auto-slide (pause on hover) */
.alg-property--v2 .alg-similar-marquee{overflow:hidden;
	-webkit-mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent);
	mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent)}
.alg-property--v2 .alg-similar-track{display:flex;gap:24px;width:max-content;animation:bh-marq 46s linear infinite;will-change:transform}
.alg-property--v2 .alg-similar-marquee:hover .alg-similar-track{animation-play-state:paused}
.alg-property--v2 .alg-similar-track .alg-card{flex:0 0 320px}
@media(prefers-reduced-motion:reduce){.alg-property--v2 .alg-similar-track{animation:none}.alg-property--v2 .alg-similar-marquee{overflow-x:auto}}
@media(max-width:600px){.alg-property--v2 .alg-similar-track .alg-card{flex:0 0 84%}}

/* =====================================================================
   Results page: 2-column grid as the default view (1 column on mobile).
   ===================================================================== */
.alg-results .alg-view-panel--grid .alg-listing-grid{grid-template-columns:repeat(2,1fr) !important;gap:26px}
@media(max-width:900px){.alg-results .alg-view-panel--grid .alg-listing-grid{grid-template-columns:repeat(2,1fr) !important;gap:18px}}
@media(max-width:600px){.alg-results .alg-view-panel--grid .alg-listing-grid{grid-template-columns:1fr !important}}

/* =====================================================================
   BuReLo pages: Agents index, Agent profile, Contact (.burelo-page)
   ===================================================================== */
@import url('https://fonts.googleapis.com/css2?family=Bodoni+Moda:ital,wght@0,500;1,500&family=Fraunces:wght@500;600&family=Montserrat:wght@400;500;600;700&display=swap');
.burelo-page{--bp-gold:#E29C29;--bp-gold-deep:#B0761A;--bp-ink:#141210;--bp-muted:#6f685e;--bp-faint:#a49b8e;--bp-line:rgba(20,18,16,.12);--bp-line-soft:rgba(20,18,16,.07);--bp-wash:#FBF8F2;
	font-family:'Montserrat','Segoe UI',Arial,sans-serif;color:var(--bp-ink)}
.burelo-page *{box-sizing:border-box}
.burelo-page a{text-decoration:none;color:inherit}
.burelo-page h1,.burelo-page h2,.burelo-page h3{font-family:'Bodoni Moda',Didot,serif;font-weight:500;letter-spacing:.005em;margin:0}
.burelo-page .bp-sec{padding:60px 0}
.burelo-page .bp-eyebrow{font-size:11px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--bp-gold-deep);display:block}
.burelo-page .bp-head{margin-bottom:34px}
.burelo-page .bp-head--center{text-align:center;max-width:640px;margin:0 auto 40px}
.burelo-page .bp-head .bp-eyebrow{margin-bottom:10px}
.burelo-page .bp-head h1{font-size:clamp(28px,4vw,40px);line-height:1.08;margin-bottom:12px}
.burelo-page .bp-head h2{font-size:clamp(22px,3vw,28px)}
.burelo-page .bp-head p{font-size:15px;color:var(--bp-muted);line-height:1.7}
.burelo-page .bp-back{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--bp-muted);margin-bottom:22px}
.burelo-page .bp-back:hover{color:var(--bp-gold-deep)}
.burelo-page .bp-back svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:2}
.burelo-page .bp-ic{width:17px;height:17px;stroke:currentColor;fill:none;flex:none}
.burelo-page .bp-ic-sm{width:14px;height:14px;stroke:var(--bp-gold-deep);fill:none;flex:none}
/* distinguished buttons: WhatsApp green, Call gold */
body.alg-site .burelo-page .alg-button--whatsapp,.burelo-page .alg-button--whatsapp{background:#1a6b45 !important;border-color:#1a6b45 !important;color:#fff !important;display:inline-flex;align-items:center;justify-content:center;gap:8px}
body.alg-site .burelo-page .alg-button--whatsapp:hover,.burelo-page .alg-button--whatsapp:hover{background:#15583a !important;border-color:#15583a !important;color:#fff !important}
body.alg-site .burelo-page .alg-button--call,.burelo-page .alg-button--call{background:var(--bp-gold) !important;border-color:var(--bp-gold) !important;color:#fff !important;display:inline-flex;align-items:center;justify-content:center;gap:8px}
body.alg-site .burelo-page .alg-button--call:hover,.burelo-page .alg-button--call:hover{background:var(--bp-gold-deep) !important;border-color:var(--bp-gold-deep) !important;color:#fff !important}
/* ---- Agents index ---- */
.burelo-page .bp-agents-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:24px}
.burelo-page .bp-agent-card{border:1px solid var(--bp-line-soft);border-radius:10px;overflow:hidden;background:#fff;transition:.2s;display:flex;flex-direction:column}
.burelo-page .bp-agent-card:hover{border-color:#E7C98B;box-shadow:0 18px 44px rgba(20,18,16,.09);transform:translateY(-3px)}
.burelo-page .bp-agent-card__media{display:block;aspect-ratio:1/1;overflow:hidden;background:var(--bp-wash)}
.burelo-page .bp-agent-card__media img,.burelo-page .bp-agent-card__media .alg-agent-photo{width:100%;height:100%;object-fit:cover;display:block;border-radius:0}
.burelo-page .bp-agent-card__body{padding:18px;display:flex;flex-direction:column;flex:1}
.burelo-page .bp-agent-card__body h3{font-size:19px;margin-bottom:3px}
.burelo-page .bp-agent-card__body h3 a:hover{color:var(--bp-gold-deep)}
.burelo-page .bp-agent-card__role{font-size:12.5px;color:var(--bp-gold-deep);font-weight:600;margin:0 0 10px}
.burelo-page .bp-agent-card__area{display:flex;align-items:center;gap:6px;font-size:12.5px;color:var(--bp-muted);margin:0 0 6px}
.burelo-page .bp-agent-card__count{font-size:12.5px;color:var(--bp-muted);margin:0 0 14px}
.burelo-page .bp-agent-card__actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}
.burelo-page .bp-agent-card__actions .alg-button{padding:10px !important;min-height:0 !important;font-size:12px !important}
.burelo-page .bp-agent-card__link{margin-top:auto;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--bp-gold-deep);border-top:1px solid var(--bp-line-soft);padding-top:12px}
/* ---- Agent profile ---- */
.burelo-page .bp-agent__head{display:grid;grid-template-columns:280px 1fr;gap:40px;align-items:start;margin-bottom:48px}
.burelo-page .bp-agent__photo{border-radius:12px;overflow:hidden;aspect-ratio:4/5;background:var(--bp-wash)}
.burelo-page .bp-agent__photo img,.burelo-page .bp-agent__photo .alg-agent-photo{width:100%;height:100%;object-fit:cover;display:block;border-radius:0}
.burelo-page .bp-agent__intro h1{font-size:clamp(28px,4vw,40px);line-height:1.06;margin:8px 0 12px}
.burelo-page .bp-agent__area{display:flex;align-items:center;gap:7px;font-size:14px;color:var(--bp-muted);margin:0 0 16px}
.burelo-page .bp-agent__bio{font-size:15px;color:var(--bp-muted);line-height:1.75;margin:0 0 22px;max-width:560px}
.burelo-page .bp-agent__stats{display:flex;gap:40px;margin:0 0 24px;padding:20px 0;border-top:1px solid var(--bp-line-soft);border-bottom:1px solid var(--bp-line-soft)}
.burelo-page .bp-agent__stats strong{display:block;font-family:'Fraunces',serif;font-size:30px;font-weight:600;line-height:1}
.burelo-page .bp-agent__stats span{font-size:12px;color:var(--bp-muted);letter-spacing:.02em}
.burelo-page .bp-agent__actions{display:flex;gap:12px;flex-wrap:wrap}
.burelo-page .bp-agent__listings .bp-head h2{font-size:clamp(22px,3vw,28px);margin-bottom:24px}
.burelo-page .bp-listings-grid{grid-template-columns:repeat(3,1fr) !important;gap:24px}
/* ---- Contact ---- */
.burelo-page .bp-contact__grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}
.burelo-page .bp-contact__info h1{font-size:clamp(28px,4vw,40px);line-height:1.06;margin:10px 0 14px}
.burelo-page .bp-contact__lede{font-size:15px;color:var(--bp-muted);line-height:1.75;margin:0 0 20px;max-width:460px}
.burelo-page .bp-contact__addr{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--bp-ink);margin:0 0 20px}
.burelo-page .bp-contact__actions{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:24px}
.burelo-page .bp-contact__map{height:280px;border-radius:12px;overflow:hidden;border:1px solid var(--bp-line-soft)}
.burelo-page .bp-form{background:#fff;border:1px solid var(--bp-line);border-radius:12px;padding:30px;box-shadow:0 20px 50px rgba(20,18,16,.06)}
.burelo-page .bp-form h2{font-size:22px;margin-bottom:20px}
.burelo-page .bp-form label{display:block;margin-bottom:16px}
.burelo-page .bp-form label span{display:block;font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--bp-gold-deep);margin-bottom:8px}
.burelo-page .bp-form input,.burelo-page .bp-form textarea{width:100%;border:1px solid var(--bp-line);border-radius:6px;padding:12px 14px;font-family:inherit;font-size:15px;color:var(--bp-ink);background:#fff}
.burelo-page .bp-form input:focus,.burelo-page .bp-form textarea:focus{outline:none;border-color:var(--bp-gold)}
.burelo-page .bp-form textarea{resize:vertical}
.burelo-page .bp-submit{width:100%;background:var(--bp-ink);color:#fff;border:none;border-radius:4px;padding:15px;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:.2s}
.burelo-page .bp-submit:hover{background:var(--bp-gold-deep)}
.burelo-page .alg-notice{background:#eaf5ef;border:1px solid #bfe0cf;color:#1a6b45;border-radius:6px;padding:12px 14px;font-size:14px;margin-bottom:16px}
/* ---- responsive ---- */
@media(max-width:900px){
	.burelo-page .bp-agent__head{grid-template-columns:220px 1fr;gap:28px}
	.burelo-page .bp-listings-grid{grid-template-columns:repeat(2,1fr) !important}
	.burelo-page .bp-contact__grid{grid-template-columns:1fr;gap:32px}
}
@media(max-width:600px){
	.burelo-page .bp-sec{padding:44px 0}
	.burelo-page .bp-agents-grid{grid-template-columns:1fr 1fr;gap:14px}
	.burelo-page .bp-agent-card__actions{grid-template-columns:1fr}
	.burelo-page .bp-agent__head{grid-template-columns:1fr;gap:20px}
	.burelo-page .bp-agent__photo{max-width:220px}
	.burelo-page .bp-agent__stats{gap:28px}
	.burelo-page .bp-listings-grid{grid-template-columns:1fr !important}
	.burelo-page .bp-form{padding:22px}
}

/* Results page: centered mode tabs, remove crowding against the footer */
.alg-results .alg-mode-switch{display:flex;justify-content:center;flex-wrap:wrap}
.alg-results{padding-bottom:88px}
@media(max-width:600px){.alg-results{padding-bottom:56px}}

/* Similar properties -> carousel with prev/next arrows (replaces auto-marquee) */
.alg-property--v2 .alg-similar-carousel{position:relative}
.alg-property--v2 .alg-similar-carousel__viewport{overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:4px 2px}
.alg-property--v2 .alg-similar-carousel__viewport::-webkit-scrollbar{display:none}
.alg-property--v2 .alg-similar-carousel__track{display:flex;gap:24px}
.alg-property--v2 .alg-similar-carousel__track .alg-card{flex:0 0 320px;scroll-snap-align:start}
.alg-property--v2 .alg-similar-carousel__btn{position:absolute;top:38%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;background:#fff;border:1px solid rgba(20,18,16,.14);display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:3;box-shadow:0 8px 24px rgba(20,18,16,.16);transition:.18s}
.alg-property--v2 .alg-similar-carousel__btn svg{width:20px;height:20px;stroke:#141210;fill:none;stroke-width:2}
.alg-property--v2 .alg-similar-carousel__btn:hover{border-color:#E29C29}
.alg-property--v2 .alg-similar-carousel__btn:hover svg{stroke:#B0761A}
.alg-property--v2 .alg-similar-carousel__btn--prev{left:-10px}
.alg-property--v2 .alg-similar-carousel__btn--next{right:-10px}
@media(max-width:600px){
	.alg-property--v2 .alg-similar-carousel__track .alg-card{flex:0 0 84%}
	.alg-property--v2 .alg-similar-carousel__btn{display:none}
}

/* =====================================================================
   Locations page (.bp-locations) + About page (.bp-about)
   ===================================================================== */
/* shared buttons */
.burelo-page .bp-btn{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:14px 26px;border-radius:3px}
.burelo-page .bp-btn--gold{background:var(--bp-gold);color:#fff}
.burelo-page .bp-btn--gold:hover{background:var(--bp-gold-deep)}
.burelo-page .bp-btn--ink{background:var(--bp-ink);color:#fff}
.burelo-page .bp-btn--ink:hover{background:#000}
/* ---- Locations grid: vertical photo cards ---- */
.burelo-page .bp-loc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.burelo-page .bp-loc-card{position:relative;border-radius:10px;overflow:hidden;aspect-ratio:4/5;display:flex;align-items:flex-end;background:#0e0c0a;color:#fff}
.burelo-page .bp-loc-card__img{position:absolute;inset:0;background-size:cover;background-position:center top;z-index:0}
.burelo-page .bp-loc-card::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(14,12,10,.08) 25%,rgba(14,12,10,.55) 60%,rgba(14,12,10,.92))}
.burelo-page .bp-loc-card__body{position:relative;z-index:2;padding:22px;width:100%}
.burelo-page .bp-loc-card__k{display:block;font-family:'Bodoni Moda',Didot,serif;font-size:28px;line-height:1.05}
.burelo-page .bp-loc-card__c{display:block;font-size:12.5px;color:#e7c98b;margin-top:3px}
/* ---- About page ---- */
.burelo-page.bp-about .bp-about__intro{padding-top:56px}
.burelo-page .bp-about__grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.burelo-page .bp-about__media{border-radius:12px;overflow:hidden;aspect-ratio:4/3;background:var(--bp-wash)}
.burelo-page .bp-about__media img{width:100%;height:100%;object-fit:cover;display:block}
.burelo-page .bp-about__text .bp-eyebrow{margin-bottom:12px;display:block}
.burelo-page .bp-about__text h1{font-size:clamp(28px,4vw,42px);line-height:1.06;margin-bottom:16px}
.burelo-page .bp-about__text p{font-size:15px;color:var(--bp-muted);line-height:1.78;margin:0 0 16px;max-width:520px}
.burelo-page .bp-about__cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.burelo-page .bp-about__stats-sec{background:var(--bp-wash)}
.burelo-page .bp-about__stats{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;text-align:center}
.burelo-page .bp-about__stats strong{display:block;font-family:'Fraunces',serif;font-size:clamp(26px,3.2vw,36px);font-weight:600;line-height:1;color:var(--bp-ink)}
.burelo-page .bp-about__stats span{font-size:12px;color:var(--bp-muted);letter-spacing:.02em;margin-top:6px;display:block}
.burelo-page .bp-about__ways{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.burelo-page .bp-way{border:1px solid var(--bp-line);border-radius:10px;padding:26px;background:#fff;transition:.2s;display:flex;flex-direction:column}
.burelo-page .bp-way:hover{border-color:#E7C98B;box-shadow:0 16px 40px rgba(20,18,16,.08);transform:translateY(-3px)}
.burelo-page .bp-way__k{font-family:'Bodoni Moda',Didot,serif;font-size:24px;margin-bottom:8px}
.burelo-page .bp-way__t{font-size:14px;color:var(--bp-muted);line-height:1.65;margin-bottom:16px}
.burelo-page .bp-way__go{margin-top:auto;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--bp-gold-deep);display:inline-flex;align-items:center;gap:7px}
.burelo-page .bp-way__go svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:2}
/* About CTA band */
.burelo-page .bp-band{position:relative;background:#0e0c0a;color:#fff;border-radius:12px;overflow:hidden}
.burelo-page .bp-band__glow{position:absolute;inset:0;background:radial-gradient(55% 120% at 88% 50%,rgba(226,156,41,.22),transparent 60%);pointer-events:none}
.burelo-page .bp-band__in{position:relative;z-index:2;padding:48px;max-width:640px}
.burelo-page .bp-band__eyebrow{color:var(--bp-gold);display:block;margin-bottom:12px}
.burelo-page .bp-band h2{font-size:clamp(24px,3vw,34px);margin-bottom:10px}
.burelo-page .bp-band p{font-size:14.5px;color:#c9c1b5;margin-bottom:22px;max-width:460px}
/* responsive */
@media(max-width:900px){
	.burelo-page .bp-loc-grid{grid-template-columns:repeat(2,1fr)}
	.burelo-page .bp-about__grid{grid-template-columns:1fr;gap:26px}
	.burelo-page .bp-about__stats{grid-template-columns:repeat(2,1fr);gap:28px}
	.burelo-page .bp-about__ways{grid-template-columns:1fr}
}
@media(max-width:600px){
	.burelo-page .bp-loc-grid{grid-template-columns:1fr 1fr;gap:12px}
	.burelo-page .bp-band__in{padding:32px 22px}
}

/* Property detail: schema-driven Features & Facilities panel */
body.alg-site .alg-panel--features h3.alg-feature-list__title,
.alg-panel--features h3.alg-feature-list__title{font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#B0761A;margin:22px 0 10px}
.alg-amenities--flags li.is-no{opacity:.55}
.alg-amenities--flags li.is-no svg{stroke:#a49b8e}

/* Contact form controls — hardened for the same reason as the dashboard fields
   (global input resets and theme styles outrank the plain .bp-form rules above).
   No body.alg-site dependency; !important so theme resets cannot win. */
.burelo-page .bp-form input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="file"]),
.burelo-page .bp-form textarea{display:block !important;width:100% !important;margin:0 !important;padding:12px 14px !important;border:1px solid var(--bp-line,rgba(20,18,16,.12)) !important;border-radius:6px !important;background-color:#fff !important;color:var(--bp-ink,#141210) !important;font-family:inherit !important;font-size:15px !important;line-height:1.4 !important;box-shadow:none !important;opacity:1 !important;box-sizing:border-box !important}
.burelo-page .bp-form textarea{min-height:120px !important;resize:vertical !important}
.burelo-page .bp-form input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="file"]):focus,
.burelo-page .bp-form textarea:focus{outline:none !important;border-color:var(--bp-gold,#E29C29) !important}

/* Public "List your property" submission form (/submit) */
.burelo-page .bp-form__grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 18px}
.burelo-page .bp-form__grid label{margin:0}
.burelo-page .bp-form__full{grid-column:1/-1}
.burelo-page .bp-submit__form h2{font-size:19px;margin:6px 0 14px}
.burelo-page .bp-submit__form h2:not(:first-of-type){margin-top:28px;padding-top:22px;border-top:1px solid var(--bp-line)}
.burelo-page .bp-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}
.burelo-page .bp-hint{display:block;margin-top:6px;font-size:12px;color:var(--bp-muted)}
.burelo-page .bp-submit__note{text-align:center;margin-top:12px}
.burelo-page .bp-submit__error{margin:0 0 18px;padding:12px 14px;border:1px solid #e0bfbf;background:#f9efef;color:#9b3030;border-radius:6px;font-size:14px}
.burelo-page .bp-submit__form{max-width:760px;margin:0 auto}
.burelo-page .bp-submit__done{max-width:620px;margin:0 auto;text-align:center;padding:48px 28px;border:1px solid var(--bp-line-soft);border-radius:14px;background:#fff;box-shadow:0 20px 50px rgba(20,18,16,.06)}
.burelo-page .bp-submit__tick{display:inline-flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:50%;background:#e9f4ee;margin-bottom:20px}
.burelo-page .bp-submit__tick svg{width:30px;height:30px;stroke:#1a6b45;fill:none}
.burelo-page .bp-submit__done h1{font-size:clamp(24px,3.4vw,34px);margin-bottom:12px}
.burelo-page .bp-submit__done p{font-size:15.5px;color:var(--bp-muted);line-height:1.7}
.burelo-page .bp-submit__ref{margin-top:14px;font-size:14px;color:var(--bp-ink)}
.burelo-page .bp-submit__done-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:26px}
@media(max-width:700px){.burelo-page .bp-form__grid{grid-template-columns:1fr}}
