/**
 * Listing detail — professional container-width gallery grid (Stage 1).
 * Scoped to public single-property pages.
 */

body.dl-public-site.single-property .dl-detail-top-wrap {
	margin-bottom: 0;
}

body.dl-public-site.single-property .dl-detail-gallery-container {
	padding-bottom: 0.5rem;
	padding-top: 0.75rem;
}

body.dl-public-site.single-property .dl-detail-gallery {
	border-radius: var(--dl-radius-lg);
	overflow: hidden;
	position: relative;
}

body.dl-public-site.single-property .dl-detail-gallery__count,
body.dl-public-site.single-property .property-image-count.dl-detail-gallery__count {
	align-items: center;
	background: rgba(31, 41, 51, 0.72);
	border-radius: 999px;
	bottom: 10px;
	box-sizing: border-box;
	color: #fff;
	display: inline-flex !important;
	font-size: 0.64rem;
	font-weight: 600;
	gap: 0.22rem;
	left: 10px;
	line-height: 1;
	max-width: max-content;
	min-width: 0;
	padding: 0.2rem 0.42rem;
	position: absolute;
	right: auto;
	width: auto;
	z-index: 4;
}

body.dl-public-site.single-property .dl-detail-gallery__count i,
body.dl-public-site.single-property .property-image-count.dl-detail-gallery__count i {
	display: inline-block;
	flex-shrink: 0;
	font-size: 0.68rem;
	line-height: 1;
	margin: 0;
	width: auto;
}

body.dl-public-site.single-property .dl-detail-gallery__count span,
body.dl-public-site.single-property .property-image-count.dl-detail-gallery__count span {
	flex-shrink: 0;
	font-size: 0.64rem;
	line-height: 1;
	white-space: nowrap;
}

body.dl-public-site.single-property .dl-detail-gallery__grid {
	display: grid;
	gap: 0.5rem;
	grid-template-columns: minmax(0, 1.65fr) minmax(0, 1fr);
	min-height: clamp(240px, 34vw, 460px);
}

body.dl-public-site.single-property .dl-detail-gallery__grid--single {
	grid-template-columns: minmax(0, 1fr);
}

body.dl-public-site.single-property .dl-detail-gallery__grid--count-2 {
	grid-template-columns: minmax(0, 1.65fr) minmax(0, 1fr);
}

body.dl-public-site.single-property .dl-detail-gallery__cell {
	border-radius: 10px;
	min-height: 0;
	overflow: hidden;
	position: relative;
}

body.dl-public-site.single-property .dl-detail-gallery__cell--main {
	grid-column: 1;
	grid-row: 1 / span 2;
	min-height: clamp(240px, 34vw, 460px);
}

body.dl-public-site.single-property .dl-detail-gallery__grid--single .dl-detail-gallery__cell--main {
	grid-row: auto;
}

body.dl-public-site.single-property .dl-detail-gallery__side {
	display: grid;
	gap: 0.5rem;
	grid-column: 2;
	grid-row: 1 / span 2;
	grid-template-rows: 1fr 1fr;
	min-height: 0;
}

body.dl-public-site.single-property .dl-detail-gallery__grid--count-2 .dl-detail-gallery__side {
	grid-template-rows: 1fr;
}

body.dl-public-site.single-property .dl-detail-gallery__grid--count-2 .dl-detail-gallery__cell--side {
	grid-row: 1 / span 2;
	min-height: 100%;
}

body.dl-public-site.single-property .dl-detail-gallery__link {
	display: block;
	height: 100%;
	line-height: 0;
	position: relative;
	width: 100%;
}

body.dl-public-site.single-property .dl-detail-gallery__img {
	display: block;
	height: 100%;
	object-fit: cover;
	object-position: center 42%;
	width: 100%;
}

body.dl-public-site.single-property .dl-detail-gallery__more {
	align-items: center;
	background: rgba(31, 41, 51, 0.62);
	bottom: 0;
	color: #fff;
	display: flex;
	font-size: 0.75rem;
	font-weight: 600;
	gap: 0.3rem;
	justify-content: center;
	left: 0;
	padding: 0.45rem;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 2;
}

body.dl-public-site.single-property .dl-detail-gallery__more i {
	font-size: 0.78rem;
	line-height: 1;
}

body.dl-public-site.single-property .dl-detail-gallery__hidden {
	display: none !important;
}

/* Offline ribbon anchor must cover the gallery frame */
body.dl-public-site.single-property .dl-detail-gallery .dl-offline-ribbon-anchor {
	border-radius: inherit;
}

@media (max-width: 767px) {
	body.dl-public-site.single-property .dl-detail-gallery-container {
		padding-left: 0.75rem;
		padding-right: 0.75rem;
	}

	body.dl-public-site.single-property .dl-detail-gallery__grid,
	body.dl-public-site.single-property .dl-detail-gallery__grid--count-2 {
		grid-template-columns: minmax(0, 1fr);
		min-height: 0;
	}

	body.dl-public-site.single-property .dl-detail-gallery__cell--main {
		grid-row: auto;
		min-height: clamp(220px, 56vw, 320px);
	}

	body.dl-public-site.single-property .dl-detail-gallery__side {
		grid-column: auto;
		grid-row: auto;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		grid-template-rows: auto;
	}

	body.dl-public-site.single-property .dl-detail-gallery__grid--count-2 .dl-detail-gallery__side {
		grid-template-columns: minmax(0, 1fr);
	}

	body.dl-public-site.single-property .dl-detail-gallery__cell--side {
		min-height: 120px;
	}
}

/*
 * Property lightbox (#property-lightbox): Houzez keeps a 75%/25% split when
 * agent_form_gallery is enabled. Diyarlist suppresses the lightbox agent form,
 * leaving an empty white .lightbox-form-wrap column — expand gallery to full width.
 */
body.dl-public-site.single-property #property-lightbox .lightbox-form-wrap:empty {
	display: none !important;
	padding: 0 !important;
	visibility: hidden !important;
	width: 0 !important;
}

body.dl-public-site.single-property #property-lightbox .lightbox-gallery-wrap {
	float: none !important;
	max-width: 100% !important;
	width: 100% !important;
}

body.dl-public-site.single-property #property-lightbox .lightbox-gallery-wrap .btn-expand {
	display: none !important;
}

body.dl-public-site.single-property #property-lightbox .lightbox-gallery .lightbox-slider .slick-slide {
	text-align: center;
}

body.dl-public-site.single-property #property-lightbox .lightbox-gallery .lightbox-slider .slick-slide img {
	display: inline-block;
	height: auto;
	margin: 0 auto;
	max-height: calc(100vh - 120px);
	max-width: 100%;
	object-fit: contain;
	width: auto;
}

@media (max-width: 767.98px) {
	body.dl-public-site.single-property #property-lightbox .lightbox-gallery-wrap {
		position: relative !important;
	}

	body.dl-public-site.single-property #property-lightbox .lightbox-gallery .lightbox-slider .slick-slide img {
		max-height: calc(100vh - 80px);
	}
}
