*, html, body {
	margin: 0;
	padding: 0;
}
html {
	overflow-x: hidden;
}


.js.loading::before {
	content: '';
	position: fixed;
	z-index: 100000;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #fff;
}
.js.loading::after {
	content: '';
	position: fixed;
	z-index: 100000;
	top: 50%;
	left: 50%;
	width: 60px;
	height: 60px;
	margin: -30px 0 0 -30px;
	pointer-events: none;
	border-radius: 50%;
	opacity: 0.4;
	background: #FFDC00;
	animation: loaderAnim 0.7s linear infinite alternate forwards;
}
@keyframes loaderAnim {
	to {
		opacity: 1;
		transform: scale3d(0.5,0.5,1);
	}
}

body {
	font-family: "niveau-grotesk",sans-serif;
	font-size: 18px;
	line-height: 1.33;
	font-weight: 300;
	color: #242424;
}
body.no-scroll,
html.no-scroll {
	overflow-y: hidden;
}
h1 {
	font-size: 38px;
	font-weight: 200;
}

a:link, a:active, a:hover, a:visited {
	color:inherit;
	cursor: pointer;
	text-decoration: none;
}

header {
	width: 100%;
	height: 100%;
	position: fixed;
	background: url(../img/header.jpg) no-repeat;
	background-size: cover;
	background-position: center;
	/*width: 100%;
   height: 100%;
   position: fixed;
   overflow: hidden;*/
}
header .effect {
  width: 100vmax;
  z-index: -1;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%,0);
  pointer-events: none;
}

#logo {
	width: 100%;
	max-width: 520px;
	position: fixed;
	/*right: 0;*/
	right: calc((100% - 1200px) / 2);
	top: 40px;
	z-index: 1;
}
@media all and (max-width: 1200px) {
	#logo {
		right: 10px;
	}
}
@media all and (max-width: 767px) {
	#logo {
		right: 0;
		left: 0;
		margin-right: auto;
		margin-left: auto;
		width: 296px;
	}
}

footer {
	padding: 240px 0 40px;
}
footer a {
	text-decoration: none;
	color: #242424;
	display: inline-block;
	margin-left: 20px;
	transition: all 270ms ease-in-out;
}
footer a:hover {
	opacity: 0.75;
}
@media all and (max-width:767px) {

	footer {
		padding: 40px 0 40px;
	}

	footer a {
		margin-left: initial;
		margin-right: 20px;
	}
}

a#contact {
	position: fixed;
	left: 15px;
	bottom: 70px;
	z-index: 33;
	color: #242424;
	font-size: 27px;
	font-weight: 300;
	text-decoration: none;
	transform: rotate(-90deg);
	transition: all 270ms ease-in-out;
	cursor: pointer;
}
a#contact.white {
	color: #fff;
}
a#contact:hover {
	opacity: 0.75;
}
@media all and (max-width: 767px) {
	a#contact {
		/* left: calc(((100% - 300px) / 2) - 40px); */
		left:-18px;
		bottom: 240px;

	}
}

nav {
	position: fixed;
	top: 50%;
	left: 50px;
	z-index: 33;
	margin-top:-100px;
	width: 200px;
	height: 200px;
}
@media all and (max-width: 767px) {
	nav {
		/* left: calc((100% - 300px) / 2); */
		left:20px;
		top: initial;
		bottom: 10px;
		height: initial;
		width: initial;
	}
}
nav ul {
	margin: 0;
}
nav ul li {
	list-style-type: none;
	box-sizing: border-box;
	position: relative;
	padding-left: 25px;
	background: transparent;
	cursor: pointer;
	margin-bottom: 15px;
	font-size: 18px;
	color: #fff;
	transition: all 270ms ease-in-out;
}
nav ul li.dark {
	color: #242424;
}
nav ul li.mt25 {
	margin-top: 45px;
	transition: all 270ms ease-in-out;
}

nav ul li a span {
	opacity: 0;
}
nav ul li:hover a span {
	opacity: 1;
}
nav ul li a:before {
	content: "";
	position: absolute;
	width: 15px;
	height: 15px;
	box-sizing: border-box;
	border: 2px solid #fff;
	border-radius: 10px;
	left: 0;
	bottom: 3px;
	transition: all 270ms ease-in-out;
}
nav ul li.dark a:before {
	content: "";
	position: absolute;
	width: 15px;
	height: 15px;
	box-sizing: border-box;
	border: 2px solid #242424;
	border-radius: 10px;
	left: 0;
	bottom: 3px;
	transition: all 270ms ease-in-out;
}
nav ul li a.active:before {
	content: "";
	position: absolute;
	width: 15px;
	height: 40px;
	box-sizing: border-box;
	border: 2px solid #FFDC00;
	border-radius: 10px;
	left: 0;
	bottom: 3px;
	transform: translateY(0);
	transition: all 270ms ease-in-out;
}
nav ul li:hover,
nav ul li.dark:hover,
nav ul li.dark:hover a:before {
	opacity: 0.75;
}

main {
	top: 100%;
	position: absolute;
	z-index: 2;
	height: 100%;
	width: 100%;
	background: #fff;
	display: block;
}

img {
	width: 100%;
}

section {
	display: block;
	box-sizing: border-box;
	background-color: #fff;
}
section[data-scroll-id="view-2"]{
	padding: 150px 0;
}
section[data-scroll-id="view-3"] {
	padding-top: 120px;
	padding-bottom: 250px;
}
section[data-scroll-id="view-4"] {
	padding-top: 150px;
}
.pt150 {
	padding-top: 150px;
}
.pt180 {
	padding-top: 180px;
}
.pt250 {
	padding-top: 250px;
}
.mb20 {
	margin-bottom: 20px;
}
.mb40 {
	margin-bottom: 40px;
}
.mb150 {
	margin-bottom: 150px;
}
.pos-rel {
	position: relative;
}
.text-center {
	text-align: center;
}
.text-right {
	text-align: right;
}
.close-right {
	text-align: right;
	padding-right: 100px;
	margin-top: -15px;
}
@media all and (max-width: 767px) {
	.text-right {
		text-align: initial;
		top: -80px;
		right: 40px;
	}

	.pt180 {
		padding-top: 60px;
	}

	.mb150 {
		margin-bottom: 60px;
	}
	.close-right {
		text-align: right;
		padding: 0 70px 0 0;
		margin: 0;
	}

}
.w100h40 {
	width: 100%;
	height: 40px;
}

/*
 * show mobile / hide desktop
 */
.show-mobile {
	display: none;
}
.show-desktop {
	display: block;
}
@media all and (max-width: 767px) {
	.show-mobile {
		display: block;
	}
	.show-desktop {
		display: none;
	}

}

/*
 * Grid
 */
.row {
  width: 100%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
}

.row:after {
  content: "";
  display: table;
  clear: both;
}

.row .col {
  float: left;
  box-sizing: border-box;
  min-height: 1px;
  padding: 0 10px;
}
.row .col:first-child {
  margin-left: 0;
}

.row .col:last-child {
  margin-right: 0;
}

.row .col.w1 {
  width: 8.33333333%;
  margin-left: auto;
  left: auto;
  right: auto;
}

.row .col.w2 {
  width: 16.66666667%;
  margin-left: auto;
  left: auto;
  right: auto;
}

.row .col.w3 {
  width: 25%;
  margin-left: auto;
  left: auto;
  right: auto;
}

.row .col.w4 {
  width: 33.33333333%;
  margin-left: auto;
  left: auto;
  right: auto;
}

.row .col.w5 {
  width: 41.66666667%;
  margin-left: auto;
  left: auto;
  right: auto;
}

.row .col.w6 {
  width: 50%;
  margin-left: auto;
  left: auto;
  right: auto;
}

.row .col.w7 {
  width: 58.33333333%;
  margin-left: auto;
  left: auto;
  right: auto;
}

.row .col.w8 {
  width: 66.66666667%;
  margin-left: auto;
  left: auto;
  right: auto;
}

.row .col.w9 {
  width: 75%;
  margin-left: auto;
  left: auto;
  right: auto;
}

.row .col.w10 {
  width: 83.33333333%;
  margin-left: auto;
  left: auto;
  right: auto;
}

.row .col.w11 {
  width: 91.66666667%;
  margin-left: auto;
  left: auto;
  right: auto;
}

.row .col.w12 {
  width: 100%;
  margin-left: auto;
  left: auto;
  right: auto;
}

.row .col.half-pad {
	padding-left: calc((8.33333333% / 2) - 10px);
}

@media all and (max-width: 767px) {
	.row {
		max-width: 300px;
	}
	.row .col.w1,
	.row .col.w2,
	.row .col.w3,
	.row .col.w4,
	.row .col.w5,
	.row .col.w6,
	.row .col.w7,
	.row .col.w8,
	.row .col.w9,
	.row .col.w10,
	.row .col.w11,
	.row .col.w12,
	.row .col.half-pad {
		width: 100%;
		padding: 0 10px;
	}
	.intro {
		padding-left: calc(8.3333% - 10px);
	}
}

[data-image-gallery] {
	cursor: pointer;
	transition: all 270ms ease-in-out;
}
[data-image-gallery]:hover {
	opacity: 0.75;
}

#list {
	display: block;
	position: relative;
	z-index: 2;
}
#list ul {
	margin: 0
}
#list ul li {
	list-style: none;
	margin-bottom: 20px;
	display: inline-block;
	width: 100%;
}
#list ul li:last-of-type {
	margin-bottom: 0;
}
#list ul li span.color-yellow {
	color: #ffdc00;
	font-weight: bold;
	width: calc((100% / 5) * 2);
	display: inline-block;
	float: left;
	box-sizing: border-box;
	padding-left: calc((20% / 2) - 10px);
}
#list ul li span.right {
	float: left;
	display: inline-block;
	width: 60%;
}
@media all and (max-width: 767px) {
	#list ul li span.color-yellow {
		float: none;
		width: 100%;
		padding-left: calc(8.3333% - 10px);;
		margin-bottom: 10px;
	}
	#list ul li span.right {
		float: none;
		width: 100%;
		padding-left: calc(8.3333% - 10px);;
	}
}


.chair {
	/*transform: scale(1.3);
   transform-origin: left top;
   position: relative;
   z-index: 0;*/
   position: absolute;
   bottom: 0;
}
.stuff {
	/*transform: scale(2);
   transform-origin: top left;*/
   position: absolute;
   bottom: 0;
}
.stuff-text {
	padding-left: calc(((100% / 7) / 2) - 10px);
}
@media all and (max-width: 767px) {
	.chair {
		position: initial;
	}
	.stuff {
		transform: none;
	}
	.stuff-text {
		padding-left: calc(8.3333% - 10px);
		font-size: 14px;
	}
}
span.color {
	color: #ffdc00;
	font-weight: bold;
}


/*
 * Overlay
 */
#overlay {
	position: fixed;
	background:#fff;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	display: none;
	z-index:1115;
	opacity: 0;
	box-sizing: border-box;
}

#overlay span.close-overlay {
	display: inline-block;
	transition: all 270ms ease-in-out;
	position: fixed;
	height: 40px;
	width: 80px;
	line-height: 40px;
	cursor: pointer;
}
#overlay span.close-overlay:before {
	content: "";
	position: absolute;
	height: 40px;
	width: 80px;
	top: 5px;
	left: 0;
	box-sizing: border-box;
	background-image: url(../img/close-overlay.svg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	transition: all 270ms ease-in-out;
}
#overlay span.close-overlay:hover {
	opacity: 0.75;
}

#overlay .inner {
	position: absolute;
	top: 150px;
	bottom: 0;
	left: 0;
	right: 0;
	box-sizing: border-box;
	padding-bottom: 40px;
	overflow-y: scroll;
}
#overlay .inner.video {
	top: 0;
	padding-bottom: 0;
}
@media all and (max-width: 767px) {
	#overlay .pos-abs {
		position: absolute;
		top: -150px;
	}
	#overlay .posrelmob {
		position: relative;
	}
	#overlay span.close-overlay {
		/*margin-top: -150px;*/

	}
}

/*
 * Overlay Gallery
 */

#gallery-overlay {
	position: fixed;
	background:#000;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	display: none;
	z-index:1115;
	opacity: 0;
	box-sizing: border-box;
}
#control {
	position: absolute;
	z-index: 999;
	left: 0;
	right: 0;
	bottom: 10px;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
	color: red;
}
#control ul  {
	display: inline-block;
}
#control ul li {
	list-style-type: none;
	display: inline-block;
	box-sizing: border-box;
	position: relative;
	padding-left: 25px;
	background: transparent;
	cursor: pointer;

	font-size: 18px;
	color: #fff;
	transition: all 270ms ease-in-out;
}

#control ul li:before {
	content: "";
	position: absolute;
	width: 15px;
	height: 15px;
	box-sizing: border-box;
	border: 2px solid #fff;
	border-radius: 10px;
	left: 0;
	top: 0px;
	transition: all 270ms ease-in-out;
}
#control ul li.active {
	margin-right: 25px;
}
#control ul li.active:before {
	content: "";
	position: absolute;
	width: 40px;
	height: 15px;
	box-sizing: border-box;
	border: 2px solid #FFDC00;
	border-radius: 10px;
	left: 0;
	top: 0;
	transform: translateX(0);
	transition: all 270ms ease-in-out;
}
#control ul li:hover, {
	opacity: 0.75;
}
#control .close-overlay {
	cursor: pointer;
	display: inline-block;
	width: 15px;
	height: 15px;
	background: url(../img/close-gallery.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}
