body.display-menu {
	overflow: hidden;
	position: relative;
}

.snst-camp-gallery {
	column-count: 3;
	column-gap: 53px;
	max-width: 1762px !important;
	margin: 0 auto 76px;
	position: relative;
}

.snst-camp-gallery .gallery-media {
	height: auto;
	line-height: 0;
	margin-bottom: 50px;
	position: relative;
}

.snst-camp-gallery .gallery-media:last-child {
	margin-bottom: 0;
}

.snst-camp-gallery .gallery-media img {
	width: 100%;
	height: auto;
}

.snst-camp-gallery .gallery-media video {
	width: 100%;
	height: auto;	
}

body.display-menu .media-modal .play-icon {
	display: none;
}

.snst-camp-gallery .play-icon,
body.display-menu .media-modal .play-icon {
	width: 129px;
	height: 129px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	cursor: pointer;
}

.snst-camp-gallery > *:last-child {
	margin-bottom: 0;
}

body.display-menu:before {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	background-color: var(--wp--preset--color--snst-black);
	opacity: 0.8;
	position: absolute;
	z-index: 99;
}

.display-menu .group .media-modal {
	display: block;
	position: fixed;
	z-index: 9999;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
    padding: 10px;
}

.display-menu .group .media-modal .image-box img {
	max-height: calc(100vh - 100px);
	max-width: calc(100vw - 60px);
	width: unset;
}

body.display-menu .media-modal video {
	max-height: calc(100vh - 100px);
	max-width: calc(100vw - 60px);
}

.media-modal .close-icon {
	display: none;
}

.display-menu .media-modal .close-icon {
	display: inline-block;
	position: absolute;
	top: 0;
    right: 0;
	z-index: 99;
	cursor: pointer;
	background: var(--wp--preset--color--snst-gray);
	padding: 0 9px;
    border-radius: 50px;
}


/* Responsive Style */
@media screen and (max-width: 1600px) {
	.snst-camp-gallery {
		max-width: calc(100% - 100px)!important;
	}

	.snst-camp-gallery .play-icon,
	body.display-menu .media-modal .play-icon {
		width: 80px;
		height: 80px;
	}
}

@media screen and (max-width: 951px) {
	.snst-camp-gallery {
		column-count: 2;
		column-gap: 30px;
	}
}

@media screen and (max-width: 569px) {
	.snst-camp-gallery {
		max-width: calc(100% - 40px) !important;
	}
}

@media screen and (max-width: 481px) {
	.snst-camp-gallery {
		column-count: 1;
	}

	.snst-camp-gallery .gallery-media {
		margin-bottom: 30px;
	}
}