/* ############ icomoon icon fonts CSS ############ */

/* ############ Start of responsive gallery CSS ############ */



/* 2025-02-24 yun */
div.responsivegallery div.close {display: flex; align-items: center; justify-content: center; background:none!important; box-shadow: none!important; right: 0!important; top: 0!important;}
div.responsivegallery div.close::before {content: "\f00d"; font-size: 5rem;}
div.responsivegallery div.close .icon-cross {display: none!important;}
div.responsivegallery div.leftnav::before {content: "\f053"; font-size: 3rem!important;}
div.responsivegallery div.rightnav::before {content: "\f054"; font-size: 3rem!important;}
div.responsivegallery div.leftnav, div.responsivegallery div.rightnav {margin-top: 0!important; transform: translateY(-50%); border-radius: .8rem!important; display: flex!important; align-items: center; justify-content: center; background: rgba(0,0,0,.5)!important; color: rgba(255,255,255,.8)!important;}
div.responsivegallery div.figurearea .thecaption {font-size:2rem!important; padding:0!important; bottom: -.15rem!important; backdrop-filter: var(--backdrop-filter);}
div.responsivegallery div.figurearea .thecaption:before {background:linear-gradient(45deg, rgba(0,0,0,.9), transparent)!important;}
div.responsivegallery div.figurearea .thecaption div.captioninner {padding: 4rem; display: flex; flex-direction: column; align-items: center; justify-content: flex-end; gap: 3rem; position: relative; color: var(--white)!important; opacity:.8; width: 100%; box-sizing: border-box;}
div.responsivegallery div.figurearea .thecaption div.captioninner .title {font-size: 3rem!important; flex-shrink:0;}
div.responsivegallery div.figurearea .thecaption div.captioninner .counter {font-size: 1.6rem !important; font-weight: 200; margin-left: auto;}
div.responsivegallery div.figurearea .thecaption div.captioninner .stitle {font-size: 1.8rem; font-weight: 100; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden;}
div.responsivegallery div.galleryinner {display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; margin: 0 auto;}
div.responsivegallery div.figurearea {max-width: 70%!important;}






div.rthumbnail{ /* style for thumbsnail DIVs that appear initially on the page */
	display: inline-block;
	margin: 0;
	padding: 0;
}

div.rthumbnail div.rcaption{
	display: none;
}

div.responsivegallery{ /* style for responsive gallery UI */
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	position: fixed;
	display: none;
	z-index: 1000;
}

div.responsivegallery:before{ /* gallery overlay */
	content: '';
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	cursor: zoom-out;
	top: 0;
	left: 0;
	background: rgba(0,0,0,.98); /* backdrop-filter: blur(5px); */
	opacity: 0.95!important;
	z-index: -1;
}

div.responsivegallery div.galleryinner{
	/* position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	margin: auto;
	text-align: center;
	    vertical-align: middle;
	white-space: nowrap; */
}

div.responsivegallery div.galleryinner:before{
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle;
}

div.responsivegallery div.figurearea{ position: relative; max-width: 100%; vertical-align: middle; display: inline-block; z-index: 1000; }

div.responsivegallery div.figurearea.isvideo{
	width: 90%;
}

/* video container CSS */

.jkvideocontainer *{
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%;
}


.jkvideowrapper{
	position: relative;
	padding-bottom: 56.25%; /* 16:9 ratio. See https://css-tricks.com/NetMag/FluidWidthVideo/Article-FluidWidthVideo.php */
	height: 0;
}


.jkvideowrapper iframe{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 10;
}

/* figure CSS */

div.responsivegallery figure{
	margin: 0;
	padding: 0;
	display: block;
	box-shadow: 0 0 15px rgba(0,0,0,.6);
	opacity: 0;
	-webkit-transition: opacity 0.5s;
	-moz-transition: opacity 0.5s;
	transition: opacity 0.5s;
}

div.responsivegallery figure img{
	max-width: 100%;
	width: 100%;
	height: auto;
	border: 0;
	line-height: 0;
	display: block;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  user-select: none; 
}

/* Caption CSS */

div.responsivegallery div.figurearea .thecaption{
	text-align: left;
	position: absolute;
	bottom: 0;
	font-size: 1.1em;
	padding: 5px;
	width: 100%;
	white-space: normal;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

div.responsivegallery div.figurearea.isvideo .thecaption{
	position: relative;	
}

div.responsivegallery div.figurearea .thecaption:before{ /* caption overlay */
	content: '';
	position: absolute;
	width: 100%;
	height: 100%;
	display: block;
	background: white;
	top: 0;
	left: 0;
	opacity: 0.8;
}

div.responsivegallery div.figurearea .thecaption div.captioninner{
	/* position: relative;
	padding: 3px;
	color: black;
	overflow: hidden; */
}

div.responsivegallery div.figurearea .thecaption div.captioninner .counter{
	/* float: right;
	font-size: 0.9em;
	font-weight: bold;
	display: block;
	height: 100%;
	line-height: 100%;
	background: #2D2D2D;
	color: white;
	border-radius: 50%;
	width: 40px;
	height: 40px;
	line-height: 40px;
	text-align: center;
	box-shadow: 0 0 3px gray; */
}



div.responsivegallery div.close{
	position: absolute;
	right: 1rem;
	top: 1rem;
	padding: 1rem;
	width: 7rem;
	height: 7rem;
	border-radius: 50%;
	background: black;
	color: white;
	font-size: 7rem;
	z-index: 1000;
	box-shadow: 0 0 5px rgba(0,0,0,.6);
	cursor: pointer;
	-webkit-transition: background 0.3s;
	-moz-transition: background 0.3s;
	transition: background 0.3s;
}

div.responsivegallery div.close:hover{
	background: darkred;
}

div.responsivegallery div.close span{
	line-height: 7rem;
}



div.responsivegallery div.leftnav, 
div.responsivegallery div.rightnav{padding: 8px; box-sizing: border-box;}
div.responsivegallery div.leftnav,
div.responsivegallery div.rightnav{
	position: absolute;
	left: 1rem;
	top: 50%;
	width: 7rem;
	height: 7rem;
	color: black;
	background: white;
	border-radius: 50%;
	text-align: center;
	line-height: 55px;
	margin-top: -25px;
	cursor: pointer;
	z-index: 1000;
	font-size: 7rem;
}

div.responsivegallery div.rightnav{
	right: 1rem;
	left:auto;
}


div.responsivegallery div.loadingdiv,
div.responsivegallery div.errordiv{
	width: 100px;
	height: 100px;
	border-radius: 10px;
	position: absolute;
	display: none;
	top: 50%;
	left: 50%;
	margin-top: -50px;
	margin-left: -50px;
	opacity: 0.6;
	text-align: center;
	z-index: 1000;
	background: black;
}

div.responsivegallery div.loadingdiv span,
div.responsivegallery div.errordiv span{
	vertical-align: middle;
	color: red;
	font-size: 3em;
	line-height: 90px;
}

div.responsivegallery div.loadingdiv span{ /* rotating loading DIV */
	-webkit-animation: rotate 2s linear infinite;
	animation: rotate 2s linear infinite;
	font-size: 3.5em;
	color: white;
	display: inline-block;
}

@-webkit-keyframes rotate{
	0%{
		-webkit-transform: rotate(0deg);
	}
	100%{
		-webkit-transform: rotate(360deg);
	}
}

@keyframes rotate{
	0%{
			transform: rotate(0deg);
	}
	100%{
		transform: rotate(360deg);
	}
}


div.responsivegallery div.leftnav:hover,
div.responsivegallery div.rightnav:hover{
	background: white;
	color: black;
}

@media screen and (max-width: 1024px){
	div.responsivegallery div.figurearea .thecaption div.captioninner {flex-direction: column-reverse; padding: 2rem; gap: 1rem;}
}

@media screen and (max-width: 480px){ /* CSS when screen width is 480px or less */
	div.responsivegallery div.figurearea .thecaption {position: static;}
	div.responsivegallery div.figurearea .thecaption div.captioninner {flex-direction: column-reverse; padding: 2rem 0; gap: 1rem;}
	div.responsivegallery div.leftnav,
	div.responsivegallery div.rightnav{
		width: 40px;
		height: 40px;
		color: black;
		border-radius: 40px;
		text-align: center;
		line-height: 45px;
		margin-top: -20px;
		font-size: 40px;
	}
}