.grid {
	max-width: 100%;
	list-style: none;
	margin: 30px auto;
	padding: 0;
}
.grid li {
	display: block;
	float: left;
	padding: 2px;
	width: 33%;
	opacity: 1;
}
.grid li.shown, .no-js .grid li, .no-cssanimations .grid li {
	opacity: 1;
}
.grid li a, .grid li img {
	outline: none;
	border: none;
	display: block;
	width: 100%;
} /* Effect 1: opacity */
.grid.effect-1 li.animate {
	-webkit-animation: fadeIn 0.65s ease forwards;
	animation: fadeIn 0.65s ease forwards;
}
@-webkit-keyframes fadeIn {
0% {
}
100% {
opacity: 1;
}
}
@keyframes fadeIn {
0% {
}
100% {
opacity: 1;
}
} /* Effect 2: Move Up */
.grid.effect-2 li.animate {
	-webkit-transform: translateY(200px);
	transform: translateY(200px);
	-webkit-animation: moveUp 0.65s ease forwards;
	animation: moveUp 0.65s ease forwards;
}
@-webkit-keyframes moveUp {
0% {
}
100% {
-webkit-transform: translateY(0);
opacity: 1;
}
}
@keyframes moveUp {
0% {
}
100% {
-webkit-transform: translateY(0);
transform: translateY(0);
opacity: 1;
}
} /* Effect 3: Scale up */
.grid.effect-3 li.animate {
	-webkit-transform: scale(0.6);
	transform: scale(0.6);
	-webkit-animation: scaleUp 0.65s ease-in-out forwards;
	animation: scaleUp 0.65s ease-in-out forwards;
}
@-webkit-keyframes scaleUp {
0% {
}
100% {
-webkit-transform: scale(1);
opacity: 1;
}
}
@keyframes scaleUp {
0% {
}
100% {
-webkit-transform: scale(1);
transform: scale(1);
opacity: 1;
}
} /* Effect 4: fall perspective */
.grid.effect-4 {
	-webkit-perspective: 1300px;
	perspective: 1300px;
}
.grid.effect-4 li.animate {
	-webkit-transform-style: preserve-3d;
	transform-style: preserve-3d;
	-webkit-transform: translateZ(400px) translateY(300px) rotateX(-90deg);
	transform: translateZ(400px) translateY(300px) rotateX(-90deg);
-webkit-animation: fallPerspective .8s ease-in-out forwards;
animation: fallPerspective .8s ease-in-out forwards;
}
@-webkit-keyframes fallPerspective {
0% {
}
100% {
-webkit-transform: translateZ(0px) translateY(0px) rotateX(0deg);
opacity: 1;
}
}
@keyframes fallPerspective {
0% {
}
100% {
-webkit-transform: translateZ(0px) translateY(0px) rotateX(0deg);
transform: translateZ(0px) translateY(0px) rotateX(0deg);
opacity: 1;
}
} /* Effect 5: fly (based on http://lab.hakim.se/scroll-effects/ by @hakimel) */
.grid.effect-5 {
	-webkit-perspective: 1300px;
	perspective: 1300px;
}
.grid.effect-5 li.animate {
	-webkit-transform-style: preserve-3d;
	transform-style: preserve-3d;
	-webkit-transform-origin: 50% 50% -300px;
	transform-origin: 50% 50% -300px;
	-webkit-transform: rotateX(-180deg);
	transform: rotateX(-180deg);
-webkit-animation: fly .8s ease-in-out forwards;
animation: fly .8s ease-in-out forwards;
}
@-webkit-keyframes fly {
0% {
}
100% {
-webkit-transform: rotateX(0deg);
opacity: 1;
}
}
@keyframes fly {
0% {
}
100% {
-webkit-transform: rotateX(0deg);
transform: rotateX(0deg);
opacity: 1;
}
} /* Effect 6: flip (based on http://lab.hakim.se/scroll-effects/ by @hakimel) */
.grid.effect-6 {
	-webkit-perspective: 1300px;
	perspective: 1300px;
}
.grid.effect-6 li.animate {
	-webkit-transform-style: preserve-3d;
	transform-style: preserve-3d;
	-webkit-transform-origin: 0% 0%;
	transform-origin: 0% 0%;
	-webkit-transform: rotateX(-80deg);
	transform: rotateX(-80deg);
-webkit-animation: flip .8s ease-in-out forwards;
animation: flip .8s ease-in-out forwards;
}
@-webkit-keyframes flip {
0% {
}
100% {
-webkit-transform: rotateX(0deg);
opacity: 1;
}
}
@keyframes flip {
0% {
}
100% {
-webkit-transform: rotateX(0deg);
transform: rotateX(0deg);
opacity: 1;
}
} /* Effect 7: helix (based on http://lab.hakim.se/scroll-effects/ by @hakimel) */
.grid.effect-7 {
	-webkit-perspective: 1300px;
	perspective: 1300px;
}
.grid.effect-7 li.animate {
	-webkit-transform-style: preserve-3d;
	transform-style: preserve-3d;
	-webkit-transform: rotateY(-180deg);
	transform: rotateY(-180deg);
-webkit-animation: helix .8s ease-in-out forwards;
animation: helix .8s ease-in-out forwards;
}
@-webkit-keyframes helix {
0% {
}
100% {
-webkit-transform: rotateY(0deg);
opacity: 1;
}
}
@keyframes helix {
0% {
}
100% {
-webkit-transform: rotateY(0deg);
transform: rotateY(0deg);
opacity: 1;
}
} /* Effect 8:  */
.grid.effect-8 {
	-webkit-perspective: 1300px;
	perspective: 1300px;
}
.grid.effect-8 li.animate {
	-webkit-transform-style: preserve-3d;
	transform-style: preserve-3d;
	-webkit-transform: scale(0.4);
	transform: scale(0.4);
-webkit-animation: popUp .8s ease-in forwards;
animation: popUp .8s ease-in forwards;
}
@-webkit-keyframes popUp {
0% {
}
70% {
-webkit-transform: scale(1.1);
opacity: .8;
-webkit-animation-timing-function: ease-out;
}
100% {
-webkit-transform: scale(1);
opacity: 1;
}
}
@keyframes popUp {
0% {
}
70% {
-webkit-transform: scale(1.1);
transform: scale(1.1);
opacity: .8;
-webkit-animation-timing-function: ease-out;
animation-timing-function: ease-out;
}
100% {
-webkit-transform: scale(1);
transform: scale(1);
opacity: 1;
}
}
@media screen and (min-width: 2000px) {
.grid li {
width: 20%;
}
}
@media screen and (min-width: 1400px) {
.grid li {
width: 25%;
}
}
@media screen and (max-width: 900px) {
.grid li {
width: 50%;
}
}
@media screen and (max-width: 400px) {
.grid li {
width: 100%;
}
}
.sl-overlay {
	position: fixed;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	background: #fff;
	opacity: .7;
	display: none;
	z-index: 20000;
}
.sl-wrapper {
	z-index: 1000;
}
.sl-wrapper button {
	border: 0;
	background: 0 0;
	font-size: 38px;
	padding: 0;
	cursor: pointer;
}
.sl-wrapper button:hover {
	opacity: .7;
}
.sl-wrapper .sl-close {
	display: none;
	position: fixed;
	right: 30px;
	top: 30px;
	z-index: 20001;
}
.sl-wrapper .sl-counter {
	display: none;
	position: fixed;
	top: 30px;
	left: 30px;
	z-index: 20001;
}
.sl-wrapper .sl-navigation {
	width: 100%;
	display: none;
}
.sl-wrapper .sl-navigation button {
	position: fixed;
	top: 50%;
	margin-top: -10px;
	height: 30px;
	width: 30px;
	line-height: 30px;
	text-align: center;
	display: block;
	z-index: 20001;
	font-family: arial sans-serif;
}
.sl-wrapper .sl-navigation button.sl-next {
	right: 40px;
}
.sl-wrapper .sl-navigation button.sl-prev {
	left: 40px;
}
.sl-wrapper .sl-image {
	position: fixed;
	-ms-touch-action: none;
	touch-action: none;
	z-index: 30000;
}
.sl-wrapper .sl-image img {
	margin: 0;
	padding: 0;
	display: block;
}
.sl-wrapper .sl-image iframe {
	border: 0;
	background: #000;
}
.sl-wrapper .sl-image .sl-caption {
	display: none;
	padding: 10px;
	color: #fff;
	background: #000;
	opacity: .8;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
}
.sl-wrapper .sl-image .sl-caption.pos-top {
	bottom: auto;
	top: 0;
}
.sl-wrapper .sl-image .sl-caption.pos-outside {
	bottom: auto;
}
.sl-wrapper .sl-image .sl-download {
	display: none;
	position: absolute;
	bottom: 5px;
	right: 5px;
	color: #fff;
	z-index: 1005;
}
.sl-spinner {
	display: none;
	border: 5px solid #333;
	border-radius: 40px;
	height: 40px;
	left: 50%;
	margin: -20px 0 0 -20px;
	opacity: 0;
	position: fixed;
	top: 50%;
	width: 40px;
	z-index: 1007;
	-webkit-animation: pulsate 1s ease-out infinite;
	-moz-animation: pulsate 1s ease-out infinite;
	-ms-animation: pulsate 1s ease-out infinite;
	-o-animation: pulsate 1s ease-out infinite;
	animation: pulsate 1s ease-out infinite;
}
.sl-scrollbar-measure {
	position: absolute;
	top: -9999px;
	width: 50px;
	height: 50px;
	overflow: scroll;
}
@-webkit-keyframes pulsate {
0% {
transform: scale(.1);
opacity: 0;
}
50% {
opacity: 1;
}
100% {
transform: scale(1.2);
opacity: 0;
}
}
@keyframes pulsate {
0% {
transform: scale(.1);
opacity: 0;
}
50% {
opacity: 1;
}
100% {
transform: scale(1.2);
opacity: 0;
}
}
@-moz-keyframes pulsate {
0% {
transform: scale(.1);
opacity: 0;
}
50% {
opacity: 1;
}
100% {
transform: scale(1.2);
opacity: 0;
}
}
@-o-keyframes pulsate {
0% {
transform: scale(.1);
opacity: 0;
}
50% {
opacity: 1;
}
100% {
transform: scale(1.2);
opacity: 0;
}
}
@-ms-keyframes pulsate {
0%, 100% {
opacity: 0;
}
0% {
transform: scale(.1);
}
50% {
opacity: 1;
}
100% {
transform: scale(1.2);
}
}
