::-moz-selection {
  color: #000000;
  background: #f9cbbc;
}
::selection {
  color: #000000;
  background: #f9cbbc;
} 

html {
	overflow-x: hidden;
}
body {
	width: 100%;
	background-color: #f9cbbc;
	font-size: 16px;
	font-family: "Ringside Regular A", "Ringside Regular B", sans-serif;
	font-style: normal;
	font-weight: 500;
	color: #000000;
	padding: 1.5rem 2rem 0.5rem;
	overflow: hidden;
	margin: 0;
	box-sizing: border-box;
	min-height: 100vh;
	height: auto;
	position: relative;
}
body.grey {
	background-color: #f4f1f1;
}

a {
	color: #000000;
	text-decoration: none;
	font-weight: bold;
}
a:hover {
	text-decoration: underline;
}

p {
	font-size: 1.7rem;
}

header {
	width: 100%;
	max-width: 64rem;
	margin: 0 auto;
}
header div {
	text-align: right;
}

h1 {
	margin: 2rem 0 4rem;
	transition: opacity 0.4s, visibility 0.4s;
}
h1.title-grey {
	margin: 2rem 0 0;
}
h1.hidden {
	opacity: 0;
	visibility: hidden;
}
h1 img {
	max-width: 100%;
	box-sizing: border-box;
	position: relative;
	z-index: 10;
}

h2 {
	display: inline-block;
	position: relative;
	z-index: 10;
	color: #f9cbbc;
	font-size: 1rem;
	margin: 0.5rem 0 0 2.6rem;
	transition: opacity 0.4s, visibility 0.4s;
}
h2.hidden {
	opacity: 0;
	visibility: hidden;
}

main {
	width: 100%;
	max-width: 64rem;
	margin: 0 auto;
}

.line {
	text-align: center;
	margin: 0 0 3rem;
}

.line p {
	display: inline-block;
	text-align: left;
	max-width: 40rem;
}

p.width-1 {
	max-width: 25rem;
}
p.width-2 {
	max-width: 25rem;
}
p.width-3 {
	max-width: 30rem;
}

footer {
	width: 100%;
	max-width: 64rem;
	margin: 10rem auto 3rem;
	text-align: center;
}
footer img {
	position: relative;
	z-index: 10;
	transition: transform 0.4s;
}
footer .arrows a:hover img {
	transform: scale(1.1);
}
footer .arrows img {
	margin-top: 1rem;
	max-width: 9rem;
}
footer.two-links  .arrows a:first-child img {
	margin-right: 1.5rem;
}
footer.two-links .arrows a + a {
	margin-left: 1.5rem;
}
footer.two-links .arrows a:first-child img ,
footer.last-link .arrows a img {
	transform: rotate(180deg);
}
footer.two-links .arrows a:first-child:hover img,
footer.last-link .arrows a:hover img {
	transform: rotate(180deg) scale(1.1);
}

footer .legal {
	margin-top: 3rem;
}
footer .legal a {
	position: relative;
	z-index: 10;
	margin: 0 0 1rem 0;
	font-size: 0.75rem;
	font-weight: 400;
}
footer .legal a:first-child {
	margin-right: 1rem;
}
body.grey footer .legal a {
	color: #b2b2b2;
}

.gallery {
	width: 100%;
	min-height: 16rem;
}
.js .gallery {
	position: relative;
	padding: 0 0 16rem;
}

.gallery .image {
	display: inline-block;
	line-height: 0;
	margin: 0.5rem;
}
.js .gallery .image {
	position: absolute;
	top: 50%;
	left: 50%;
	cursor: move;
	margin: 0;
}
.gallery img {
	max-width: 10em;
	max-height: 10rem;
}

.featherlight div.featherlight-inner {
	width: 2rem;
	height: 2rem;
	background-image: url(img/loading.gif);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}

.featherlight .featherlight-content {
	border: none;
	padding: 0;
	padding: 1.5rem 0;
	margin: 0 3rem;; 
	overflow: visible;
	background-color: transparent;
}
.featherlight .featherlight-close-icon {
	color: #ffffff;
	top: 0;
	right: -1.75rem;
	background: 0;
}

.js main {
	z-index: 1;
}

h3 {
	font-size: 1.5rem;
}

main.legal p,
main.legal ul,
main.legal a,
main.legal h4{
	font-size: 1rem;
}

main.legal a[href*=mailto] {
	font-weight: 500;
}

@media only screen and (min-width: 48rem) {

	h1 img {
		max-width: 18rem;
	}

	.line-left p {
		margin-left: -40%;
	}
	
	.js .gallery {
		margin: -6rem 0 12rem;
	}

	.gallery img {
		max-width: 15rem;
		max-height: 15rem;
	}
	
	footer .arrows {
		position: absolute;
		right: 0;
		bottom: 3rem;
		left: 0;
		padding: 0 2rem;
	}
	footer.two-links .arrows a:first-child {
		float: left;
	}
	footer.two-links .arrows a + a {
		float: right;
	}
	
	footer .legal {
		position: absolute;
		top: 15%;
		right: 3rem;
		transform-origin: 100% 0;
		transform: rotate(-90deg);
	}
}

@media only screen and (min-width: 64rem) {

	.line-left p {
		margin-left: -50%;
	}
}