.kv-detail-v2 {
	font-size: 1.1em;

	.kv-detail-sold {
		display:flex;
		&-col {
			flex: 0 0 50%;
			width:50%;
			text-align:center;
			padding:20px;
		}
	}

	h1, h2, h3, h4 {
		@extend .kv-mb-0;
	}

	.kv-list-bar {
		@extend .kv-list-bar-align-left;

		li .fa {
			color: initial;
		}
	}

	.kv-list-v2-item-name {
		font-weight: 600;
	}

	.kv-detail-sold {
		width: 100%; 
		text-align: center; 
		margin-top: 25px; 
		display: flex; 
		justify-content: space-around; 
		padding-bottom: 30px;
		&-col {
			width:45%;
		}
	}

	&-main {
		div:first-of-type {
			@media (min-width: map_get($grid-breakpoints, 'sm')) {
				margin-bottom: 0;
			}
		}

		&-city {
			font-size: 1.1875rem;
			letter-spacing: 0.131578947em;
			text-transform: uppercase;
			font-weight: 900;
			color: #666;
			display:block;
			@media (min-width: map_get($grid-breakpoints, 'sm')) {
				padding-bottom: 0;
			}
		}

		&-price {
			@extend .kv-p-0;
			font-size: 2.25rem;
			text-align:right;
			margin-top:20px;
			@media (max-width: map_get($grid-breakpoints, 'sm')) {
				text-align:center;
				margin-bottom:20px;
				margin-top:0px;
			}
		}

		&-address {
			display:block;
			margin-top:34px;
			@media (min-width: map_get($grid-breakpoints, 'lg')) {
				padding-bottom: 0;
			}
		}

		&-actions {
			font-size: 0.78em;
		}
		@media (max-width: map_get($grid-breakpoints, 'sm') - 1) {
			.kv-container-space-between {
				align-items:normal;
			}
			.kv-detail-v2-main-price {
				text-align:left;
			}
			.kv-list-bar li .fa {
				min-width:22px;
			}
		}
	}

	&-photos-container {
		position: relative;
	}


	&-photos {
		@extend .kv-row;

		flex-direction: column;
		align-content: flex-start;
		height: 600px;
		max-height: 60vh;
		white-space: nowrap;
		overflow-x: hidden;
		overflow-y: hidden;

		@media (max-width: map_get($grid-breakpoints, 'md') - 1) {
			height: 400px;
			overflow-x: hidden;
		}

		&-controls {
			display: flex;
			justify-content: space-between;
			position: absolute;
			width: 100%;
			top: 80%;
			padding: 0 10px;

			.fa {
				padding: 5px;
				border-radius: 5px;
				font-size: 3em;
				background: rgba(0, 0, 0, 0.15);
				color: white;
				cursor: pointer;
			}
		}

		img {
			min-width: 25%;
			width: 25%;
			height: 50%;
			padding-left: 4px;
			padding-bottom: 4px;
			cursor: pointer;

			&:nth-of-type(even) {
				padding-bottom: 0;
			}

			@media (max-width: map_get($grid-breakpoints, 'lg') - 1) {
				width: 35%;
			}

			@media (max-width: map_get($grid-breakpoints, 'md') - 1) {
				display: none;
			}
		}

		img.kv-darker {
			filter: brightness(60%);
			@media (max-width: map_get($grid-breakpoints, 'lg') - 1) {
				filter: brightness(100%);
			}
		}

		&-more {
			color:#fff;
			position:absolute;
			right:10%;
			bottom:20%;
			font-size:23px;
			z-index:999;
			pointer-events: none;
			@media (max-width: map_get($grid-breakpoints, 'lg') - 1) {
				display:none;
			}
		}

		
		&-main {
			display: list-item;
			min-width: 50%;
			width: 50%;
			height: 100%;
			order: 0;
			cursor: pointer;

			@media (max-width: map_get($grid-breakpoints, 'lg') - 1) {
				width: 65%;
			}

			@media (max-width: map_get($grid-breakpoints, 'md') - 1) {
				min-width: 100%;
				width: 100%;
			}

			img {
				display: block;
				width: 100%;
				height: 100%;
				padding: 0;
			}
		}
	}

	&-info {
		.kv-list-bar {
			@media (min-width: map_get($grid-breakpoints, 'sm')) {
				display: flex;
				justify-content: space-between;
				width: 100%;
			}

			li img {
				width: 50px;
			}
		}
	}
	
	&-openhouse-wrapper { 
		position:absolute;
		top:15px;
		left:25px;
		font-size: 0.75em;
		text-transform: uppercase;
		padding:0 10px;
	}

	&-openhouse {
		margin-bottom:10px;
		background-color:#000;
		color:#fff;
	}

	&-listingstatus-wrapper {
		position:absolute;
		top:15px;
		left:25px;
		font-size: 1em;
		text-transform: uppercase;
		padding:0 10px;
	}

	&-cta {
		.kv-list-bar {
			@media (max-width: map_get($grid-breakpoints, 'xl') - 1) {
				&:first-of-type {
					margin-bottom: 0.5 * $spacer !important;
				}
			}

			@media (min-width: map_get($grid-breakpoints, 'sm')) and (max-width: map_get($grid-breakpoints, 'xl') - 1) {
				justify-content: center;
				width: 100%;
			}

			li {
				color: white;
			}

			.kv-button {
				font-size: 0.85em;
			}
		}
	}

	&-compliance {
		@extend .kv-mt-2;

		font-size: 0.75em;
		color: white;
	}

	&-features {
		@media (max-width: map_get($grid-breakpoints, 'sm') - 1) {
			display:block!important;
		}
		.kv-list-v2 {
			@extend %kv-col-12, %kv-col-md-6;
		}
	}

	&-additional-agent-price-history {
		border-top: 2px solid $color-buttonface;
	}

	&-agent, &-coagent {
		@extend .kv-row, .kv-no-gutters;

		width: 100%;
		background-color: white;

		@media (max-width: map_get($grid-breakpoints, 'sm') - 1) {
			margin-left: $grid-gutter-width/2 !important;
			margin-right: $grid-gutter-width/2 !important;
		}

		&-photo {
			@extend %kv-col-12, %kv-col-sm-3, .kv-px-0;

			border: 1px solid $color-buttonface;
			border-right: none;

			@media (max-width: map_get($grid-breakpoints, 'sm') - 1) {
				height: 300px;
				border: none;
			}

			img {
				@include object-fit(cover);

				width: 100%;
				height: 100%;
			}
		}

		&-details {
			@extend %kv-col-12, %kv-col-sm-5, .kv-py-4;

			padding-left: $grid-gutter-width;
			padding-right: $grid-gutter-width;
			border: 1px solid $color-buttonface;
			border-left: none;

			@media (min-width: map_get($grid-breakpoints, 'sm')) {
				padding-left: $grid-gutter-width;
				border-top: 1px solid $color-buttonface;
				border-bottom: 1px solid $color-buttonface;
			}

			@media (max-width: map_get($grid-breakpoints, 'sm') - 1) {
				flex-basis: 75%;
				margin: $spacer auto 0 auto;
				border-left: 1px solid $color-buttonface;
			}

			.kv-list-v2-item {
				@extend .kv-px-0;

				padding: 0.15rem 0.5rem;

				&:first-of-type {
					border-top: 1px solid #ddd;
					padding-top: 1em;
				}

				background-color: transparent !important;

				&-name {
					font-weight: lighter;
				}

				&-value {
					font-weight: 600;
				}
			}
		}

		&-cta {
			@extend .kv-row, %kv-col-12, %kv-col-sm-4, .kv-mx-0, .kv-py-4;

			flex-direction: column;
			justify-content: center;
			align-items: center;

			@media (min-width: map_get($grid-breakpoints, 'sm')) {
				padding-left: $grid-gutter-width;
				border: 1px solid $color-buttonface;
				border-left: none;
			}

			@media (max-width: map_get($grid-breakpoints, 'md') - 1) {
				border-right: none;
			}

			@media (max-width: map_get($grid-breakpoints, 'sm') - 1) {
				padding-left: 0;
				padding-right: 0;
			}

			.kv-button {
				@extend .kv-mb-2, .kv-text-ellip;

				width: 100%;

				@media (max-width: map_get($grid-breakpoints, 'sm') - 1) {
					width: 75%;
				}

				&:last-of-type {
					@extend .kv-mb-0;
				}
			}
		}
	}

	&-map {
		height: 600px;
		max-height: 75vh;
	}

	&-similar {
		width: 100%;
	}

	&-slider {
		.kv-modal-dialog {
			display: flex;
			flex-direction: column;
			justify-content: center;
			max-width: 90vw;
			height: 100%;
			margin: 0 auto;
		}

		@media (min-width: map_get($grid-breakpoints, 'lg')) {
			.kv-modal-dialog {
				max-width: 70vw;
			}

			&-controls {
				padding: 0 calc(15vw + 2rem) !important;
			}
		}

		@media (min-width: map_get($grid-breakpoints, 'xl')) {
			.kv-modal-dialog {
				max-width: 50vw;
			}

			&-controls {
				padding: 0 calc(25vw + 2rem) !important;
			}
		}

		.kv-modal-header {
			@extend .kv-pt-0, .kv-pr-3;

			border: none;
		}

		.kv-modal-body {
			@extend .kv-pt-0;
		}

		&-controls {
			display: flex;
			justify-content: space-between;
			position: absolute;
			width: 100%;
			top: 50%;
			right: 0;
			padding: 0 calc(5vw + 2rem);
			z-index: 1;

			.fa {
				padding: 5px;
				border-radius: 5px;
				font-size: 3em;
				background: rgba(0, 0, 0, 0.15);
				color: white;
				cursor: pointer;
			}
		}

		&-photo {
			min-height: 30vmin;

			img {
				max-height: 80vmin;
			}
		}
	}
}

@media (max-width: map_get($grid-breakpoints, 'sm')) {
	.kv-detail-v2 {
		.kv-detail-sold {
			flex-flow:column wrap;
			&-col {
				flex: 0 0 100%;
				width:100%;
				button {
					font-size:14px;
				}
			}
		}
		
	}
}
.kv-detail-v2-additional-agent-price-history .ct-label {
	color: rgba(0,0,0,1);
}

//specific layout problem using elementor plugin fix
.elementor .kv-detail-v2-photos img { height: 50%; }
.elementor .kv-detail-v2-photos-main img { height:100%; }

//print problem with listing detail page fix
@media print {
	*,
	*:before,
	*:after {
		-webkit-box-sizing: unset!important;
		-moz-box-sizing: unset!important;
		box-sizing: unset!important;
	}
	//these for luxuryandbeachrealty.com
	.entry-content-wrapper.clearfix {
		zoom:unset;
		&:before {
			display:none;
		}
		&:after {
			display:none;
		}
	}
	.html_header_top.html_header_sticky #header {
		position:relative;
	}
}