
.cmg-download-single{
	padding: 30px 15px !important;
	width: 100% !important;
	max-width: 1200px !important;
	margin:auto !important;
}

/* Layout */
.cmg-download-layout {
	display: flex;
	gap: 2rem;
	align-items: flex-start;
}

.cmg-download-media {
	flex: 0 0 50%;
}

.cmg-download-summary {
	flex: 0 0 50%;
}

/* Main image */
.cmg-download-main-image img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: 4px;
}

/* Thumbnail slider */
.cmg-download-gallery-slider {
	margin-top: 1rem;
	display: flex;
	gap: 0.75rem;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	padding-bottom: 0.5rem;
}

.cmg-download-gallery-slide {
	flex: 0 0 auto;
	scroll-snap-align: start;
}

.cmg-download-gallery-slide img {
	display: block;
	width: 80px;
	height: 80px;
	object-fit: cover;
	border-radius: 3px;
	cursor: pointer;
}

/* Summary */
.cmg-download-title {
	margin-bottom: 0.75rem;
}

.cmg-download-description {
	margin-bottom: 1.5rem;
}

.cmg-download-edd-meta {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
}

.cmg-download-price {
	font-size: 1.25rem;
	font-weight: 600;
}

.cmg-edd-purchase-button {
	display: inline-block;
	padding: 0.75rem 1.5rem;
	border-radius: 999px;
	text-decoration: none;
}

/* Related */
.cmg-download-related {
	margin-top: 3rem;
}

/* Lightbox */
.cmg-download-lightbox[hidden] {
	display: none;
}

.cmg-download-lightbox {
	position: fixed;
	inset: 0;
	z-index: 9999;
	display: flex;
	align-items: center;
	justify-content: center;
}

.cmg-lightbox-backdrop {
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.8);
}

.cmg-lightbox-inner {
	position: relative;
	max-width: 90vw;
	max-height: 90vh;
	display: flex;
}

.cmg-lightbox-item {
	display: none;
	margin: 0;
}

.cmg-lightbox-item.is-active {
	display: block;
}

.cmg-lightbox-item img {
	max-width: 90vw;
	max-height: 90vh;
	object-fit: contain;
}

/* Controls */
.cmg-lightbox-close,
.cmg-lightbox-prev,
.cmg-lightbox-next {
	position: absolute;
	z-index: 1;
	background: transparent;
	border: 0;
	color: #fff;
	font-size: 2rem;
	cursor: pointer;
}

.cmg-lightbox-close {
	top: 1rem;
	right: 1rem;
}

.cmg-lightbox-prev,
.cmg-lightbox-next {
	top: 50%;
	transform: translateY(-50%);
}

.cmg-lightbox-prev { left: 1.5rem; }
.cmg-lightbox-next { right: 1.5rem; }

/* Responsive */
@media (max-width: 900px) {
	.cmg-download-layout {
		flex-direction: column;
	}
	.cmg-download-media,
	.cmg-download-summary {
		flex: 0 0 auto;
		width: 100%;
	}
}
