html,
body {
	background-color: #000;
}
section:first-of-type {
	padding-top: calc(var(--header-height) * 2);
}
h1 {
	color: #fff;
}
h3 {
	color: rgba(255, 255, 255, .3);
	text-align: left;
	margin-bottom: 0;
}
section div {
	overflow: hidden;
}
.photo-group {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-wrap: wrap;
	margin-bottom: var(--header-height);
}
.photo-group > * {
	margin: 0 4px 4px 0;
}
.photo-group > *:nth-of-type(4n) {
	margin-right: 0;
}
.photo-group a {
	display: block;
}

.photo-group a::before {
	content: "";
	background: url(../images/icon-zoom+.svg) center center no-repeat #000;
	background-size: auto !important;
	position: absolute;
	display: block;
	width: 100%;
	height: 100%;
	z-index: 2;
	opacity: 0;
	transition: 0.25s;
}
.photo-group a:hover::before {
	opacity: .7;
}
.photo-group img {
	width: calc( ( 100vw - var(--padding-lr) * 2 ) / 4 - (4px / 4 * 3) );
	height: calc( ( 100vw - var(--padding-lr) * 2 ) / 4 - (4px / 4 * 3) );
	object-fit: cover;
	background-color: rgba(255, 255, 255, .1);
	border-radius: 4%;
}
@media (min-width:641px) {
	.photo-group > *:nth-of-type(4n) {
		margin-right: 4px;
	}
	.photo-group > *:nth-of-type(6n) {
		margin-right: 0;
	}
	.photo-group img {
		width: calc( ( 100vw - var(--padding-lr) * 2 ) / 6 - (4px / 6 * 5) );
		height: calc( ( 100vw - var(--padding-lr) * 2 ) / 6 - (4px / 6 * 5) );
	}
}
@media (min-width:1025px) {
	.photo-group > *:nth-of-type(6n) {
		margin-right: 4px;
	}
	.photo-group > *:nth-of-type(8n) {
		margin-right: 0;
	}
	.photo-group img {
		width: calc( ( 100vw - var(--padding-lr) * 2 ) / 8 - (4px / 8 * 7) );
		height: calc( ( 100vw - var(--padding-lr) * 2 ) / 8 - (4px / 8 * 7) );
	}
}
@media (min-width:1281px) {
	.photo-group img {
		width: calc( ( var(--container-width) - var(--padding-lr) * 2 ) / 8 - (4px / 8 * 7) );
		height: calc( ( var(--container-width) - var(--padding-lr) * 2 ) / 8 - (4px / 8 * 7) );
	}
}

/* @group .loader */

@keyframes loader-spin {
	0% {transform: rotate(0deg);}
	100% {transform: rotate(360deg);}
}
#swipebox-slider img,
.photo-group img {
	z-index: 1;
}
.photo-group a::after,
#swipebox-slider .slide::after {
	font: 24px/1 KYD;
	content: "\0048";
	color: #fff;
	position: absolute;
	display: block;
	top: calc(50% - 12px);
	left: calc(50% - 12px);
	width: 24px !important;
	height: 24px !important;
	animation: loader-spin 1s linear infinite;
	opacity: .2;
}
#swipebox-overlay {
/*	font-smooth: always;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;*/
}

/* @end */
