.single-property-inner {
	padding-bottom: 3rem;
	> * {
		margin-top: 36px;
	}
}

.bb-property-status {
	.property-status {
		font-weight: 500;
		margin: 0;
		text-transform: uppercase;
	}
}
.bb-property-header {
	margin-top:180px;
}

.bb-property-header-inner {
	align-items: flex-start;
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;

	.bb-property-title {
		.property-title {
			margin: 0;
		}

		.property-location-label {
			margin: 8px 0 0;
		}
	}

	.bb-property-document-actions {
		margin-top: 30px;
	}
}

.bb-property-gallery {
	position: relative;

	.bb-property-gallery-images {
		display: grid;
		gap: 34px;
		grid-template-columns: 60% minmax(100px, 40%);
		grid-template-rows: 304px 304px;

		@media (max-width: 600px) {
			grid-template-columns: 1fr;
			grid-template-rows: 304px;
		}

		> figure {
			border-radius: 12px;
			display: none;
			height: 100%;
			overflow: hidden;
			transition: transform 0.2s ease-in-out;
			width: 100%;

			img {
				height: 100%;
				object-fit: cover;
				width: 100%;
			}
		}

		> figure:first-child {
			display: block;
			grid-column: 1 / 2;
			grid-row: 1 / 3;

			@media (max-width: 600px) {
				grid-row: 1 / 2;
			}
		}

		> figure:nth-child(2) {
			grid-column: 2 / 3;
			grid-row: 1 / 2;

			@media (min-width: 601px) {
				display: block;
			}
		}

		> figure:nth-child(3) {
			grid-column: 2 / 3;
			grid-row: 2 / 3;

			@media (min-width: 601px) {
				display: block;
			}
		}
	}

	.bb-gallery-count-progress {
		align-items: center;
		background-color: var(--wp--preset--color--white);
		border-radius: 5px;
		bottom: 30px;
		display: flex;
		gap: 5px;
		padding: 4px 7px 6px 10px;
		position: absolute;
		right: 30px;

		.img-placeholder-icon {
			height: 18px;
			width: 18px;
		}

		.count {
			font-size: 20px;
			line-height: 28px;
			margin: 0;
		}
	}

	.bb-property-gallery-controls {
		align-items: center;
		background-color: var(--wp--preset--color--white);
		border-radius: 5px;
		bottom: 30px;
		display: flex;
		gap: 5px;
		left: 30px;
		padding: 7px 10px;
		position: absolute;

		.prev,
		.next {
			background-color: unset;
			background-image: var(--arrow);
			background-repeat: no-repeat;
			background-size: contain;
			border: unset;
			cursor: pointer;
			display: block;
			height: 24px;
			transition-property: rotate;
			transition-duration: 0.1s;
			transition-timing-function: ease-in-out;
			width: 24px;
		}

		.prev {
			rotate: 90deg;

			&:hover {
				rotate: 135deg;
			}
		}

		.next {
			rotate: -90deg;

			&:hover {
				rotate: -45deg;
			}
		}
	}
}

.bb-property-details {
	display: grid;
	gap: 6rem;
	grid-template-columns: 1fr 1fr;

	@media (max-width: 600px) {
		grid-template-columns: 1fr;
	}

	.bb-property-details-primary {
		.bb-property-price {
			.property-price {
				margin: 0;
			}
			.property-price-status {
				font-size: var(--wp--preset--font-size--p);
				font-weight: 400;
				margin: 10px 0 0 0;
			}
		}

		.bb-property-excerpt {
			margin: 30px 0 0 0;
		}

		.bb-property-features {
			margin: 30px 0 0 0;

			.property-features-title {
				font-size: var(--wp--preset--font-size--h-4);
				margin: 0;
			}

			.property-features-list {
				columns: 2;
				gap: 12px 30px;
				margin: 27px 0 0 0;
				padding-left: 16px;

				li {
					&::marker {
						color: var(--wp--preset--color--primary);
					}

					+ li {
						margin-top: 16px;
					}
				}
			}
		}

		.bb-property-description {
			margin: 30px 0 0 0;

			.property-description {
				.room {
					+ .room {
						margin: 30px 0 0 0;
					}

					.name {
						display: inline-block;
						font-size: var(--wp--preset--font-size--h-4);
						margin-bottom: 27px;
					}

					.dimension {
						display: inline-block;
						margin-left: 16px;
					}
				}
			}

			.read-more-trigger {
				cursor: pointer;
				display: inline-block;
				font-weight: 600;
				margin-top: 15px;
			}
		}

		.bb-property-location-map {
			margin: 52px 0 0 0;

			iframe {
				aspect-ratio: 1.63 / 1;
				border: unset;
				border-radius: 12px;
				width: 100%;
			}

			.property-location-title {
				font-size: var(--wp--preset--font-size--p);
				margin: 35px 0 0 0;
			}

			.property-location-description {
				margin: 15px 0 0 0;
			}
		}
	}

	.bb-property-details-secondary {
		.bb-property-attributes {
			display: grid;
			gap: 30px;
			grid-template-columns: repeat(3, 1fr);

			@media (max-width: 600px) {
				grid-template-columns: repeat(2, 1fr);
			}

			.bb-property-attribute {
				background-color: var(--wp--preset--color--secondary);
				border-radius: 12px;
				padding: 20px 20px 30px 20px;

				img {
					height: 50px;
					width: auto;
				}

				.property-attribute {
					color: var(--wp--preset--color--white);
					margin: 0;
				}
			}
		}

		.bb-property-document-actions-wrapper {
			background-color: var(--wp--preset--color--primary);
			border-radius: 12px;
			margin: 30px 0 0 0;
			padding: 42px 35px;

			.document-actions-title {
				color: var(--wp--preset--color--white);
				font-weight: 300;
				margin: 0;
			}

			.bb-property-document-actions {
				margin: 27px 0 0 0;
			}

			.read-more-trigger {
				color: white;
			}
		}
	}
}

.bb-property-document-actions {
	align-items: flex-start;
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
	max-width: 1000px;

	.wp-block-buttons {
		gap: 16px;
	}
}

.bb-property-document-actions {
	.property-actions.expander-content {
		min-height: 75px;

		&::before {
			height: 30px;
		}
	}

	.read-more-trigger.expander-trigger {
		cursor: pointer;
		display: inline-block;
		font-weight: 600;
		margin-top: 15px;
	}
}

.property-actions.dark {
	.wp-block-button:has(.has-white-color):hover {
		& .wp-block-button__link {
			color: var(--wp--preset--color--white) !important;
		}
	}
}

.lightbox {
	position: fixed;
	z-index: 9999;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	margin-top: 0;
	overflow: auto;
	background-color: rgba(0, 0, 0, 0.9);
}

.lightbox-content {
	margin: auto;
	display: flex;
	justify-content: center;
	align-items: center;
	height: 100%;
}

.lightbox-image {
	max-width: 90%;
	max-height: 90%;
}

.lightbox-prev,
.lightbox-next {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	color: white;
	font-size: 2rem;
	font-weight: bold;
	padding: 16px;
	cursor: pointer;
}

.lightbox-prev {
	left: 0;
}

.lightbox-next {
	right: 0;
}

.lightbox-close {
	font-family: sans-serif;
	position: absolute;
	top: 20px;
	right: 30px;
	color: white;
	font-size: 3rem;
	font-weight: bold;
	cursor: pointer;
}

.bb-property-attribute {
	img {
		height: 50px !important;
		width: auto !important;
	}
}
