/* Featured Properties on Broker Page */
h2.featured-section-title {
	padding-top: var(--spacing);
	padding-bottom: calc(var(--spacing) * 2);
	border-top: 1px solid var(--dark-blue);
}

#map {
	display: block;
	height: 83vh;
	width: 100%;
}

/* Base layout (desktop, wider screens) */
.archive-layout {
	display: flex;
}

/* Normal state = 70% listings, 30% map */
.archive-listings {
	flex: 0 0 70%;
}

.archive-map {
	flex: 0 0 30%;
	transition: flex 0.3s ease;
}

.map-container {
	position: relative;
	width: 100%;
	height: 100%;
}

.archive-layout.map-expanded .archive-map {
	flex: 0 0 100%;
}

.archive-layout.map-expanded .archive-listings {
	display: none;
}

.archive-map .map-container .hidden {
	display: none;
}

.map-container .btn {
	position: absolute;
	top: 10px;
	left: 10px;
	z-index: 100;
	background-color: var(--background-light);
	padding: 10px 25px 10px 25px;
	text-align: center;
	transition: color 0.3s ease, background-color 0.3s ease;
	border: 2px solid var(--dark-blue);
}

.map-container .btn:hover {
	color: #fff;
	background-color: var(--light-blue);
	border: 2px solid var(--light-blue);
}

/* PROPERTIES */
.properties {
	display: flex;
	flex-direction: row;
	gap: var(--spacing);
	flex-wrap: wrap;
}

/* Layout Modifiers */
.properties--default li {
	flex: 0 0 calc(33.333% - var(--spacing));
	position: relative;
	/* 3 columns */
}

.properties--featured li {
	flex: 0 0 calc(33.333% - var(--spacing));
	position: relative;
	/* 3 columns */
}

.properties a {
	display: block;
}

.properties li>* {
	margin-bottom: calc(var(--spacing) / 5);
}

/* .properties li>*:last-child {
} */

.properties li .property-price {
	padding-top: calc(var(--spacing) / 2);
}

.properties li .property-address {
	padding-top: calc(var(--spacing) / 5);
}


.property-count {
	margin-bottom: var(--spacing);
}


.properties a.property-title span {
	text-decoration: underline;
	text-underline-offset: 5px;
	text-decoration-thickness: 1px;
	text-decoration-color: var(--dark-blue);
}

.properties a.property-title span:hover {
	text-decoration-color: var(--light-blue);
	color: var(--light-blue)
}

/* Images */
.properties .property-featured-image {
	aspect-ratio: 4 / 3;
	width: 100%;
	height: auto;
	object-fit: cover;
	object-position: center;
}

.property-categories {
	display: flex;
	flex-direction: row;
	gap: calc(var(--spacing) / 2);
}

.property-categories p {
	padding: 5px 10px 5px 10px;
	background-color: var(--background-light);
}

.listing-type-container {
	display: inline-block;
	text-align: center;
	padding: 10px 15px;
	min-width: 100px;
}

.listing-type {
	padding: 10px;
	position: absolute;
	text-align: center;
	top: 10px;
	min-width: 75px;
}

.listing-type p {
	text-align: center;
}

/* HIGHLIGHTS */
h4.subtitle-text,
.subtitle-text h4 {
	padding-top: var(--spacing);
	padding-bottom: var(--spacing);
	border-top: 2px solid var(--light-blue);
}

.highlights {
	display: flex;
	flex-wrap: wrap;
	gap: calc(var(--spacing) / 2.5);
	padding-left: var(--spacing);
	list-style-type: disc;
}

.highlights li {
	flex: 0 0 calc(50% - var(--spacing));
	list-style: unset;
}

.highlights li:nth-of-type(even) {
	margin-left: var(--spacing);
}

.highlights li::marker {
	color: var(--dark-blue)
}

.property .solo-property-price-container {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	padding: 10px var(--spacing);
	border: 1px solid var(--dark-blue);
}

.property-links {
	display: inline-flex;
	flex-direction: column;
}

a.link-item {
	display: inline-flex;
	flex-direction: row;
	align-items: end;
	justify-content: space-between;
	gap: calc(var(--spacing) / 2);
	padding: 5px 0;
	border-bottom: 1px solid var(--dark-blue);
	color: var(--dark-blue);
}

a.link-item p {
	color: inherit;
}

a.link-item svg {
	color: inherit;
}

.link-item .cls-1 {
	color: currentColor;
}

a.link-item:hover {
	color: var(--light-blue);
	border-bottom-color: var(--light-blue);
}

.property-data {
	display: flex;
	flex-wrap: wrap;
}

.property .data-item,
.property .repeater-item {
	display: flex;
	flex: 1 1 calc(50% - var(--spacing));
	justify-content: space-between;
	text-align: left;
	padding: calc(var(--spacing) / 5);
}

.property .additional-information .data-item,
.property .additional-information .repeater-item {
	display: flex;
	flex: 1 1 calc(100% - var(--spacing));
	justify-content: space-between;
	text-align: left;
	padding: calc(var(--spacing) / 5);
}

.cost-analysis h4 {
	padding: calc(var(--spacing) / 5);
}

.property .additional-information .data-item .label {
	flex-basis: 25%;
}

.property .additional-information .data-item .value {
	flex-basis: 75%;
}

.property .label,
.property .value {
	text-align: left;
	flex: 1;
	border-bottom: 1px solid var(--light-grey);
}

.property .data-item .label,
.property .data-item .value,
.property .repeater-item .label,
.property .repeater-item .value {
	padding-bottom: 5px;
}

.salient-details .data-item:last-child:nth-child(odd),
.property-features .data-item:last-child:nth-child(odd),
.cost-analysis .data-item:last-child:nth-child(odd) {
	flex: 0 0 50%;
}

.repeater-item:last-child:nth-child(odd) {
	flex: 0 0 50%;
}


@media (max-width: 1500px) {

	/* Layout Modifiers */
	.properties--default li {
		flex: 0 0 calc(50% - var(--spacing));
		/* 2 columns */
	}
}

@media (max-width: 1024px) {

	a.link-item:nth-child(1) {
		padding: 0 0 5px 0;
	}

	.properties--featured li {
		flex: 0 0 calc(50% - var(--spacing));
	}

	/* 2 columns */
	.properties--default li {
		flex: 0 0 calc(50% - var(--spacing));
	}
}

@media (max-width: 768px) {

	/* Instead of 70/30, column layout by default */
	.archive-layout {
		flex-direction: column-reverse;
	}

	/* By default, hide the map. */
	#map {
		display: none;
	}

	/* If .map-expanded is on the layout, show the map, hide the listings, etc. */
	.archive-layout.map-expanded #map {
		display: block;
	}

	.archive-layout.map-expanded .archive-listings {
		display: none;
	}

	.map-container .btn {
		background-color: #efefef;
		position: relative;
		top: 0;
		left: 0;
		z-index: 0;
		margin-bottom: var(--spacing);
		border: 2px solid transparent;
		float: right;
	}

	.highlights li {
		flex: 0 0 100%;
	}

	.properties--default li {
		flex: 0 0 100%;
	}

	.properties--featured li {
		flex: 0 0 100%;
	}

	.properties li>* {
		margin-bottom: calc(var(--spacing) / 3);
	}

	.properties li .property-price {
		padding-top: calc(var(--spacing) / 3);
	}

	.properties li .property-address {
		padding-top: calc(var(--spacing) / 3);
	}

	.highlights li:nth-of-type(even) {
		margin-left: 0px;
	}

	.property .solo-property-price-container {
		max-width: 350px;
	}

	.repeater-item:last-child:nth-child(odd) {
		flex: 1 1 calc(100% - var(--spacing));
	}

	.property .data-item,
	.property .repeater-item,
	.property .additional-information .data-item,
	.cost-analysis .data-item:last-child:nth-child(odd) {
		display: flex;
		flex: 1 1 calc(100% - var(--spacing));
		padding-top: var(--spacing);
		padding-bottom: 0;
	}

	.property .label {
		flex: 40%;
	}

	.property .value {
		flex: 60%
	}

	.property-count {
		margin-bottom: -32px;
	}

}