/* Media lightbox (Fancybox): photos & videos site-wide */

body.gsc-media-lightbox {
	overflow: hidden;
}

body.gsc-media-lightbox .fancybox-close,
body.gsc-media-lightbox .fancybox-item.fancybox-close,
body.gsc-media-lightbox.fancybox-lock .fancybox-close {
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

body.gsc-media-lightbox .fancybox-overlay {
	background: rgba(8, 12, 8, 0.94) !important;
	cursor: pointer;
}

body.gsc-media-lightbox .fancybox-wrap {
	cursor: default;
}

body.gsc-media-lightbox .fancybox-skin {
	background: transparent;
	box-shadow: none;
}

body.gsc-media-lightbox .fancybox-title-over-wrap {
	display: none;
}

body.gsc-media-lightbox .fancybox-nav {
	width: 34%;
}

body.gsc-media-lightbox .fancybox-nav span {
	visibility: visible !important;
	opacity: 0.85;
}

body.gsc-media-lightbox .fancybox-nav:hover span {
	opacity: 1;
}

body.gsc-media-lightbox .fancybox-image {
	display: block;
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 100%;
	margin: 0 auto;
	object-fit: contain;
}

body.gsc-media-lightbox .fancybox-inner {
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
}

/* Desktop: fit wide, comfortable margins */
@media screen and (min-width: 721px) {
	body.gsc-media-lightbox .fancybox-image {
		max-width: calc(100vw - 120px);
		max-height: calc(100vh - 80px);
	}
}

/* Mobile: единый вертикальный просмотр, горизонтальные — crop */
@media screen and (max-width: 720px) {
	body.gsc-media-lightbox .fancybox-wrap,
	body.gsc-media-lightbox .fancybox-skin,
	body.gsc-media-lightbox .fancybox-outer,
	body.gsc-media-lightbox .fancybox-inner {
		top: 0 !important;
		left: 0 !important;
		width: 100% !important;
		height: 100% !important;
	}

	body.gsc-media-lightbox .fancybox-image {
		width: 100% !important;
		height: 100% !important;
		max-width: 100% !important;
		max-height: 100% !important;
		object-fit: cover !important;
		object-position: center center;
	}

	body.gsc-media-lightbox .fancybox-nav {
		width: 22%;
		z-index: 8040;
	}

	body.gsc-media-lightbox .fancybox-nav span {
		transform: scale(0.9);
	}
}

/* Photo report grids (single-photo, legacy gallery) */
@media screen and (max-width: 720px) {
	.single_gallery .item.img_wr,
	.gallery_items_wide .item,
	.gallery_items .item {
		width: 100%;
		max-width: none;
	}

	.single_gallery .item.img_wr,
	.gallery_items .item .img_wr,
	.gallery_items_wide .item .img_wr {
		display: block;
		aspect-ratio: 3 / 4;
		min-height: min(78vh, 620px);
		max-height: 78vh;
		overflow: hidden;
	}

	.single_gallery .item.img_wr img,
	.gallery_items .item img,
	.gallery_items_wide .item img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		object-position: center center;
	}
}

/* Fotorama product gallery: desktop landscape, mobile portrait stage */
@media screen and (min-width: 721px) {
	.product_gallery .fotorama__stage {
		aspect-ratio: 1024 / 685;
	}
}

@media screen and (max-width: 720px) {
	.product_gallery .fotorama__stage {
		min-height: min(72vh, 560px);
		max-height: 72vh;
	}

	.product_gallery .fotorama__stage__frame .fotorama__img,
	.product_gallery .fotorama__stage__frame .fotorama__video {
		object-fit: cover;
		object-position: center center;
	}
}
