@charset "utf-8";

html, body {
	padding:0;
	margin:0;
	width:100%;
	height:100%;
	font-family: 'Dosis', sans-serif;
	color:#222;
}

/* == elements == */
a {
	text-decoration:none;
}
img {
	border:0;
}
p {
	margin:0;
	padding:0;
}
.clear {
	clear:both;
}

/* == line == */
.line {
	position:relative;
	width:100%;
}
.line.blue {
	background:#717b84;
}
.line.white {
	background:#fff;
}
.line.light {
	background:#eaebed;
}
.line.full {
	height:100%;
	min-height:600px;
}
@media screen and (max-width: 1100px) {

}
@media screen and (max-width: 600px) {
	.line.full {
		height:100%;
		min-height:500px;
	}
}


/* == line - mid == */
.line .mid {
	width:80%;
	position:relative;
	max-width:1200px;
	margin:0 auto;
	z-index:2;
}
.line .mid.full {
	height:100%;
}
@media screen and (max-width: 1500px) {
	.line .mid {
		width:80%;
		margin:0 auto;
	}
}

/* == top == */
.top {
	position:absolute;
	width:100%;
	height:100px;
	text-align:center;
	top:0;
	left:0;
}
@media screen and (max-width: 1500px) {

}
@media screen and (max-width: 1200px) {
	.top {
		width:100%;
		height:80px;
		z-index:20;
	}
	.top .mobile-menu-button {
		float:right;
		position:relative;
		width:50px;
		height:50px;
		margin:15px 0 0 0;
		transition: all 0.2s ease-in-out;
	}
	.top .mobile-menu-button::after {
		position:absolute;
		display:block;
		top:50%;
		left:50%;
		width:100%;
		height:100%;
		background:url(../image/img/ico-menu.svg) 0% 0% no-repeat;
		background-size: 200% 100%;
		transition: all 0.2s ease-in-out;
		transform-origin:50% 50%;
		transform:translate(-50%, -50%);
		z-index:2;
		opacity:1;
		content:'';
	}
	.top .mobile-menu-button.on::after {
		transform:translate(-50%, -50%) scale(0.5);
		opacity:0;
	}
	.top .mobile-menu-button::before{
		position:absolute;
		display:block;
		top:50%;
		left:50%;
		width:100%;
		height:100%;
		background:url(../image/img/ico-menu.svg) 100% 0% no-repeat;
		background-size: 200% 100%;
		transition: all 0.2s ease-in-out;
		transform-origin:50% 50%;
		transform:translate(-50%, -50%) scale(0.5);
		opacity:0;
		content:'';
	}
	.top .mobile-menu-button.on::before {
		transform:translate(-50%, -50%) scale(1);
		opacity:1;
	}
}
@media screen and (max-width: 800px) {

}
@media screen and (max-width: 600px) {

}



/* == top - menu == */
.top .menu {
	display:inline-block;
	position:relative;
	text-align:left;
}
.top .menu ul {
	display:block;
	position:relative;
	margin:0;
	padding:0;
}
.top .menu ul li {
	display:block;
	position:relative;
	margin:0;
	padding:0;
	float:left;
	perspective:400px;
}
.top .menu ul li::after {
	display:block;
	position:absolute;
	right:-1px;
	top:50%;
	width:2px;
	border-radius:2px;
	height:20px;
	background:#fff;
	transform-origin:50% 50%;
	transform:translateY(-50%);
	content:'';
}
.top .menu ul li:last-of-type::after {
	display:none;
}
.top .menu ul li a {
	display:block;
	position:relative;
	margin:0;
	padding:0 25px;
	float:left;
	color:#fff;
	line-height:80px;
	font-weight:300;
	font-size:22px;
	letter-spacing:1px;
	transition: all 0.2s ease-in-out;
}
.top .menu ul li:hover a {
	opacity:0.5;
}
.top .menu ul li ul {
	display:block;
	position:absolute;
	top:75px;
	left:50%;
	padding:10px;
	background:#fff;
	border-radius:3px;
	transform-origin:50% 0%;
	transform:translateX(-50%) scale(0.9) rotateX(-10deg);
	box-shadow:0 0 0 rgba(0, 0, 0, 0.1);
	visibility:hidden;
	opacity:0;
	z-index:-1;
	transition: all 0.2s ease-in-out;
}
.top .menu ul li:hover ul {
	transform:translateX(-50%) scale(1) rotateX(0);
	box-shadow:0 4px 8px rgba(0, 0, 0, 0.1);
	visibility:visible;
	opacity:1;
	z-index:20;
}
.top .menu ul li ul::before {
	display:block;
	width:20px;
	height:20px;
	position:absolute;
	top:0px;
	left:50%;
	background:#fff;
	border-radius:4px;
	transform-origin:50% 50%;
	transform:translateX(-50%) rotate(45deg);
	content:'';
	transition: all 0.2s ease-in-out;
}
.top .menu ul li:hover ul::before {
	top:-8px;
}
.top .menu ul li ul li {
	float:none;
}
.top .menu ul li ul li::after {
	display:none;
}
.top .menu ul li ul li a {
	display:block;
	position:relative;
	margin:0;
	padding:0 20px;
	float:none;
	color:#666;
	line-height:50px;
	font-weight:300;
	font-size:16px;
	border-radius:2px;
	white-space:nowrap;
	transition: all 0.2s ease-in-out;
}
.top .menu ul li:hover ul li a {
	color:#666;
	opacity:1;
}
.top .menu ul li ul li:hover a {
	color:#fff;
	background:#717b84;
}
@media screen and (max-width: 1200px) {
	.top .menu {
		position:absolute;
		top:80px;
		right:0%;
		background:#fff;
		border-radius:5px;
		z-index:-20;
		opacity:0;
		visibility:hidden;
		transition: all 0.2s ease-in-out;
		pointer-events:none;
		box-shadow:0 4px 8px rgba(0, 0, 0, 0.1);
	}
	.top .menu.on {
		opacity:1;
		visibility:visible;
		z-index:20;
		pointer-events:auto;
	}
	.top .menu::after {
		display:block;
		position:absolute;
		width:20px;
		height:20px;
		top:-7px;
		right:15px;
		background:#fff;
		border-radius:5px;
		transform-origin:50% 50%;
		transform:rotate(45deg);
		content:'';
		z-index:-1;
	}
	.top .menu ul li {
		float:none;
		width:100%;
		overflow:hidden;
	}
	.top .menu ul li::after {
		position:absolute;
		display:block;
		width:calc(100% - 20px);
		height:1px;
		left:10px;
		bottom:0.5px;
		top:auto;
		background:rgba(0, 0, 0, 0.1);
		transform:none;
		content:'';
		z-index:1;
	}
	.top .menu ul li:last-of-type::after {
		display:none;
	}
	.top .menu ul li.expand::before {
		display:none;
	}
	.top .menu ul li a {
		min-width:280px;
		color:#666;
		line-height:50px;
		font-size:16px;
		clear:both;
		z-index:2;
		transition: all 0.2s ease-in-out;
	}
	.top .menu ul li:hover a {
		color:#fff;
		background:#717b84;
	}
	.top .menu ul li.expand a {
		pointer-events:none;
	}
	.top .menu ul li.on a {
		color:#fff;
		background:#222;
	}
	.top .menu ul li ul {
		position:relative;
		top:auto;
		left:auto;
		transform:none;
		opacity:1;
		z-index:1;
		visibility:visible;
		padding:0;
		max-height:0;
		border-radius:0;
		background:#f3f3f3;
	}
	.top .menu ul li ul:before {
		display:none;
	}
	.top .menu ul li:hover ul {
		position:relative;
		top:auto;
		left:auto;
		transform:none;
		opacity:1;
		z-index:1;
		visibility:visible;
		padding:0;
	}
	.top .menu ul li.on ul {
		max-height:1000px;
	}
	.top .menu ul li.on ul li a {
		background:none;
		border-radius:0;
		color:#666;
	}
	.top .menu ul li.on ul li:hover a {
		color: #fff;
    	background: #717b84;
	}
}
@media screen and (max-width: 500px) {
	.top .menu {
		width:100%;
	}
	.top .menu ul li a {
		width:calc(100% - 50px);
		color:#666;
		line-height:50px;
		font-size:14px;
		clear:both;
		z-index:2;
		transition: all 0.2s ease-in-out;
	}
	.top .menu ul li ul {
		float:left;
		width:100%;
		z-index:5;
	}
	.top .menu ul li ul li a {
		font-size:14px;
		border-radius:0;
	}
	.top .menu ul li.expand li a {
		pointer-events:auto;
	}
}

/* == top - menu - button == */
.top .menu-button {
	position:absolute;
	display:none;
	width:50px;
	height:50px;
	top:15px;
	right:0;
	overflow:hidden;
	cursor:pointer;
	transition: all 0.2s ease-in-out;
}
.top .menu-button::after {
	position:absolute;
	display:block;
	width:100%;
	height:100%;
	left:0;
	top:0;
	transform-origin:50% 50%;
	background:url(../image/img/ico-control.svg) 0 100% no-repeat;
	background-size:500% 300%;
	transition: all 0.2s ease-in-out;
	content:'';
}
.top .menu-button.on::after {
	opacity:0;
	transform:scale(0.5);
}
.top .menu-button::before {
	position:absolute;
	display:block;
	width:100%;
	height:100%;
	left:0;
	top:0;
	transform-origin:50% 50%;
	transform:scale(0.5);
	background:url(../image/img/ico-control.svg) 25% 100% no-repeat;
	background-size:500% 300%;
	opacity:0;
	transition: all 0.2s ease-in-out;
	content:'';
}
.top .menu-button.on::before {
	opacity:1;
	transform:scale(1);
}
@media screen and (max-width: 1200px) {
	.top .menu-button {
		display:block;
	}
}



/* == start == */
.start {
	position:relative;
	width:100%;
	height:100%;
	overflow:hidden;
	color:#fff;
}
.start .content {
	position:relative;
	text-align:center;
	max-width:1000px;
	min-width:80%;
	margin:0 auto;
	top:55%;
	transform-origin:50% 50%;
	transform:translateY(-50%);
	z-index:2;
}
.start .content::after {
	position:absolute;
	width:4px;
	height:100%;
	bottom:-98%;
	background:#fff;
	transform-origin:50% 50%;
	transform:translateX(-50%);
	content:'';
	z-index:-1;
}
.start .content .logo {
	display:block;
	position:relative;
	width:20%;
	background:url(../image/img/logo.svg) 0 0 no-repeat;
	background-size:100% 100%;
	margin:0 auto;
}
.start .content .logo::after {
	position:relative;
	display:block;
	width:100%;
	padding:48.48% 0 0 0;
	content:'';
	background-image:url(../image/img/logo-dark.svg) ;
	background-position:55% 55%;
	background-repeat:no-repeat;
	background-size:150% 100%;
	filter:blur(3px);
	z-index:-1;
	opacity:0.1;
}
.start .content .logo a {
	display:block;
	position:absolute;
	width:100%;
	height:100%;
	top:0;
	left:0;
	z-index:5;
}
.start .content h1 {
	position:relative;
	padding:10px 0 80px 0;
	margin:0;
	font-size:62px;
	line-height:62px;
	font-weight:400;
	letter-spacing:1px;
}
.start .content h1::after {
	display:block;
	position:absolute;
	bottom:38px;
	left:50%;
	width:45px;
	height: 4px;
	border-radius:3px;
	background:#fff;
	transform-origin:50% 50%;
	transform:translateX(-50%);
	content:'';
}
.start .content h2 {
	position:relative;
	padding:0;
	margin:0;
	font-size:34px;
	font-weight:400;
	text-transform:uppercase;
}
.start .content h3 {
	position:relative;
	padding:0;
	margin:0;
	font-size:30px;
	font-weight:300;
}
.start .content .arrow {
	position:relative;
	width:80px;
	background:#717b84;
	border: 4px solid #fff;
	border-radius:100%;
	overflow:hidden;
	margin:50px auto 0 auto;
	cursor:pointer;
	transform-origin:50% 50%;
	transition: all 0.2s ease-in-out;
}
.start .content .arrow:hover {
	transform:scale(1.1);
}
.start .content .arrow::after {
	position:relative;
	display:block;
	padding:100% 0 0 0;
	content:'';
}
.start .content .arrow::before {
	position:absolute;
	display:block;
	width:80%;
	height:80%;
	top:50%;
	left:50%;
	background:url(../image/img/ico-set.svg) 0% 0% no-repeat;
	background-size:500% 200%;
	content:'';
	transform-origin:50% 50%;
	transform:translate(-50%, -50%);
	z-index:2;
}
.start .image {
	position:absolute;
	width:100%;
	height:100%;
	top:0;
	left:0;
	background-position:50% 0;
	background-repeat:no-repeat;
	background-size:100% auto;
	z-index:1;
	opacity:0.5;
}
@media screen and (max-height: 700px) {
	.start .content .logo {
		width:15%;
	}
	.start .content h1 {
		padding:10px 0 50px 0;
		font-size:42px;
		line-height:42px;
	}
	.start .content h1::after {
		bottom:20px;
	}
	.start .content h2 {
		font-size:24px;
	}
	.start .content h3 {
		font-size:18px;
	}
	.start .content .arrow {
		margin:25px auto 0 auto;
	}
}
@media screen and (max-width: 1500px) {
	.start .image {
		background-size:150% auto;
	}
}
@media screen and (max-width: 1000px) {
	.start .content .logo {
		width:30%;
	}
	.start .content h1 {
		padding:10px 0 50px 0;
		font-size:42px;
		line-height:42px;
	}
	.start .content h1::after {
		bottom:20px;
	}
	.start .content h2 {
		font-size:24px;
	}
	.start .content h3 {
		font-size:18px;
	}
	.start .image {
		background-size:200% auto;
	}
}
@media screen and (max-width: 600px) {
	.start .content {
		top:50%;
	}
	.start .content .logo {
		display:block;
		position:relative;
		width:50%;
		background:url(../image/img/logo.svg) 0 0 no-repeat;
		background-size:100% 100%;
		margin:0 auto;
	}
	.start .image {
		background-size:300% auto;
	}
}




/* == welcome == */
.welcome {
	position:relative;
	width:100%;
	padding:0;
	max-width:1200px;
	margin:150px auto;
	font-size:18px;
	font-weight:300;
	text-align:justify;
	z-index:2;
	color:#a2a2a2;
}
.blue .welcome {
	color:#fff;
}
.welcome::before {
	position: absolute;
    width: 4px;
    height: 100%;
    top: -98%;
	left:50%;
	border-radius:3px;
    transform-origin: 50% 50%;
    transform: translateX(-50%);
    content: '';
    z-index: -1;
	background: #717b84;
}
.welcome::after {
	position: absolute;
    width: 4px;
    height: 100%;
    bottom: -98%;
	left:50%;
	border-radius:3px;
    transform-origin: 50% 50%;
    transform: translateX(-50%);
    content: '';
    z-index: -1;
	background: #717b84;
}
.blue .welcome::before, .blue .welcome::after {
	background: #fff;
}
.welcome.half {
	width:auto;
	max-width:50%;
	display:inline-block;
}
.welcome.half.left {
	float:left;
}
.welcome.right.right {
	float:right;
}
.blue .welcome {
	color:#fff;
}
.welcome.center {
	text-align:center;
}
.welcome h1 {
	position:relative;
	padding:0 0 10px 0;
	margin:0;
	font-size:34px;
	line-height:34px;
	color: #717b84;
	font-weight:400;
	text-transform:uppercase;
}
.welcome h2 {
	position:relative;
	padding:0;
	margin:0;
	font-size:24px;
	font-weight:300;
	color: #717b84;
}
.welcome h3 {
    padding: 0 0 5px 0;
    margin: 0;
    font-weight: normal;
    font-size: 24px;
    line-height: 24px;
    color: #222;
    text-transform: uppercase;
}
.welcome h1.centered, .welcome h2.centered, .welcome h3.centered {
	text-align:center;
}
.welcome ul {
	position:relative;
	display:block;
	list-style:none;
	padding:30px 0 20px 0;
	margin:0;
}
.welcome ul li {
	position:relative;
	display:block;
	width:calc(100% - 20px);
	padding:0 0 5px 20px;
	margin:0;
}
.welcome ul li::after {
	position:absolute;
	display:block;
	width:10px;
	height:10px;
	border-radius:100%;
	top:8px;
	left:0;
	transform-origin:0 50%;
	content:'';
	box-shadow:0 2px 4px rgba(0, 0, 0, 0.1);
}
.white .welcome ul li::after {
	background:#717b84;
}
.blue .welcome ul li::after {
	background:#fff;
}
.welcome .video-wrap {
	position: relative;
    width: 100%;
    padding: 30px 0 0 0;
    margin: 0 auto;
    overflow: hidden;
    z-index: 10;
}
.welcome .video-wrap .video {
	position: relative;
    padding-bottom: 56.25%;
    width: 100%;
    height: 0;
    border-radius: 5px;
    z-index: 10;
}
.welcome .icon {
	position: relative;
    width: 80px;
    background: #fff;
    border: 4px solid #717b84;
    border-radius: 100%;
    overflow: hidden;
    margin: 0 auto 50px auto;
}
.blue .welcome .icon {
    background: #717b84;
    border: 4px solid #fff;
}
.welcome .icon::after {
	position:relative;
	display:block;
	padding:100% 0 0 0;
	content:'';
}
.welcome .icon::before {
	position:absolute;
	display:block;
	width:80%;
	height:80%;
	top:50%;
	left:50%;
	background:url(../image/img/ico-set-blue.svg) 50% 0% no-repeat;
	background-size:500% 200%;
	content:'';
	transform-origin:50% 50%;
	transform:translate(-50%, -50%);
	z-index:2;
}
.welcome .arrow {
	position: relative;
    width: 80px;
    background: #fff;
    border: 4px solid #717b84;
    border-radius: 100%;
    overflow: hidden;
    margin: 50px auto 0 auto;
    cursor: pointer;
	transition: all 0.2s ease-in-out;
	transform-origin:50% 50%;
}
.welcome .arrow:hover {
	transform:scale(1.1);
}
.blue .welcome .arrow {
    background: #717b84;
    border: 4px solid #fff;
}
.welcome .arrow::after {
	position:relative;
	display:block;
	padding:100% 0 0 0;
	content:'';
}
.welcome .arrow::before {
	position:absolute;
	display:block;
	width:80%;
	height:80%;
	top:50%;
	left:50%;
	background:url(../image/img/ico-set-blue.svg) 0% 0% no-repeat;
	background-size:500% 200%;
	content:'';
	transform-origin:50% 50%;
	transform:translate(-50%, -50%);
	z-index:2;
}
.welcome-img {
	position:absolute;
	transform-origin: 50% 50%;
	overflow:hidden;
	z-index:1;
}
.welcome-img.left {
	left:0;
}
.welcome-img.right {
	right:0;
}
.welcome-img.big_up {
	top:-10%;
	height:80%;
}
.welcome-img.big_down {
	bottom:-10%;
	height:80%;
}
.welcome-img.centered {
	top:50%;
	height:80%;
	transform:translateY(-50%);
}
.welcome-img img {
	position:relative;
	height:100%;
	float:left;
}
@media screen and (max-height: 700px) {
	.welcome .icon {
		margin:0 auto 25px auto;
	}
	.welcome .arrow {
		margin:25px auto 0 auto;
	}
}
@media screen and (max-width: 1500px) {
	.welcome {
	}
	.welcome h1 {
		font-size:52px;
		line-height:52px;
	}
	.welcome h2 {
		font-size:22px;
		font-weight:400;
	}
}
@media screen and (max-width: 1200px) {
	.welcome {
		font-size:16px;
		margin:100px auto;
	}
	.welcome h1 {
		font-size:42px;
		line-height:42px;
	}
	.welcome h2 {
		font-size:20px;
	}
}
@media screen and (max-width: 1000px) {
	.welcome-img {
		display:none;
	}
}
@media screen and (max-width: 800px) {
	.welcome.half {
		max-width:100%;
	}
}


/* == offer == */
.offer {
	position:relative;
	max-width:50%;
	margin:150px auto;
	text-align:center;
}
.offer::before {
	position: absolute;
    width: 4px;
    height: 100%;
    top: -98%;
	left:50%;
	border-radius:3px;
    transform-origin: 50% 50%;
    transform: translateX(-50%);
    content: '';
    z-index: -1;
	background: #717b84;
}
.offer::after {
	position: absolute;
    width: 4px;
    height: 100%;
    bottom: -98%;
	left:50%;
	border-radius:3px;
    transform-origin: 50% 50%;
    transform: translateX(-50%);
    content: '';
    z-index: -1;
	background: #717b84;
}
.blue .offer::before, .blue .offer::after {
	background: #fff;
}
.offer h1 {
	position:relative;
	padding:0 0 10px 0;
	margin:0;
	font-size:34px;
	line-height:34px;
	color: #717b84;
	font-weight:400;
	text-transform:uppercase;
}
.offer h2 {
	position:relative;
	padding:0;
	margin:0;
	font-size:24px;
	font-weight:300;
	color: #717b84;
}
.offer .icon {
	position: relative;
    width: 80px;
    background: #fff;
    border: 4px solid #717b84;
    border-radius: 100%;
    overflow: hidden;
    margin: 0 auto 50px auto;
    cursor: pointer;
}
.blue .offer .icon {
    background: #717b84;
    border: 4px solid #fff;
}
.light .offer .icon {
    background: #eaebed;
}
.offer .icon::after {
	position:relative;
	display:block;
	padding:100% 0 0 0;
	content:'';
}
.offer .icon::before {
	position:absolute;
	display:block;
	width:80%;
	height:80%;
	top:50%;
	left:50%;
	background:url(../image/img/ico-set-blue.svg) 75% 0% no-repeat;
	background-size:500% 200%;
	content:'';
	transform-origin:50% 50%;
	transform:translate(-50%, -50%);
	z-index:2;
}
.offer .arrow {
	position: relative;
    width: 80px;
    background: #fff;
    border: 4px solid #717b84;
    border-radius: 100%;
    overflow: hidden;
    margin: 50px auto 0 auto;
    cursor: pointer;
	transition: all 0.2s ease-in-out;
	transform-origin:50% 50%;
}
.offer .arrow:hover {
	transform:scale(1.1);
}
.blue .offer .arrow {
    background: #717b84;
    border: 4px solid #fff;
}
.light .offer .arrow {
    background: #eaebed;
}
.offer .arrow::after {
	position:relative;
	display:block;
	padding:100% 0 0 0;
	content:'';
}
.offer .arrow::before {
	position:absolute;
	display:block;
	width:80%;
	height:80%;
	top:50%;
	left:50%;
	background:url(../image/img/ico-set-blue.svg) 0% 0% no-repeat;
	background-size:500% 200%;
	content:'';
	transform-origin:50% 50%;
	transform:translate(-50%, -50%);
	z-index:2;
}
.offer .wrap {
	position:relative;
	width:100%;
	max-width:400px;
	margin:0 auto;
	padding:50px 0;
	overflow:hidden;
}
.offer .wrap .box {
	position:relative;
	width:100%;
	float:left;
	padding:0 0 20px 0;
}
.offer .wrap .box:last-of-type {
	padding:0;
}
.offer .wrap .box a {
	display:block;
	position:relative;
	width:100%;
	float:left;
	text-align:center;
	font-size:24px;
	font-weight:300;
	line-height:50px;
	border-radius:5px;
	background:#717b84;
	color:#fff;
	transition: all 0.2s ease-in-out;
}
.white .offer .wrap .box a:hover {
	background: #eaebed;
	color:#717b84;
}
.light .offer .wrap .box a:hover {
	background: #fff;
	color:#717b84;
}
.blue .offer .wrap .box a {
	background:#fff;
	color:#717b84;
}
.blue .offer .wrap .box a:hover {
	background: #fff;
	color:#717b84;
}
@media screen and (max-height: 700px) {
	.offer .icon {
		margin:0 auto 25px auto;
	}
	.offer .arrow {
		margin:25px auto 0 auto;
	}
}
@media screen and (max-width: 1200px) {
	.offer {
		margin:100px auto;
	}
	.offer h1 {
		font-size:42px;
		line-height:42px;
	}
	.offer h2 {
		font-size:20px;
	}
}
@media screen and (max-width: 800px) {
	.offer {
		max-width:100%;
	}
}



/* == section - title == */
.page-title {
	position:relative;
	width:100%;
	overflow:hidden;
	color:#fff;
}
.page-title .content {
	position:relative;
	text-align:center;
	max-width:1000px;
	min-width:80%;
	margin:0 auto;
	padding:120px 0 50px 0;
	z-index:2;
}
.page-title .content::after {
	position:absolute;
	width:4px;
	height:100%;
	bottom:-95%;
	border-radius:2px;
	background:#fff;
	transform-origin:50% 50%;
	transform:translateX(-50%);
	content:'';
	z-index:-1;
}
.page-title .content .logo {
	display:block;
	position:relative;
	width:15%;
	background:url(../image/img/logo.svg) 0 0 no-repeat;
	background-size:100% 100%;
	margin:0 auto;
}
.page-title .content .logo::after {
	position:relative;
	display:block;
	width:100%;
	padding:48.48% 0 0 0;
	content:'';
	background-image:url(../image/img/logo-dark.svg) ;
	background-position:55% 55%;
	background-repeat:no-repeat;
	background-size:150% 100%;
	filter:blur(3px);
	z-index:-1;
	opacity:0.1;
}
.page-title .content .logo a {
	display:block;
	position:absolute;
	width:100%;
	height:100%;
	top:0;
	left:0;
	z-index:5;
}
.page-title .content h1 {
	position:relative;
	padding:10px 0 80px 0;
	margin:0;
	font-size:62px;
	line-height:62px;
	font-weight:400;
	letter-spacing:1px;
}
.page-title .content h1::after {
	display:block;
	position:absolute;
	bottom:38px;
	left:50%;
	width:45px;
	height: 4px;
	border-radius:3px;
	background:#fff;
	transform-origin:50% 50%;
	transform:translateX(-50%);
	content:'';
}
.page-title .content h2 {
	position:relative;
	padding:0;
	margin:0;
	font-size:34px;
	font-weight:400;
	text-transform:uppercase;
}
.page-title .content h3 {
	position:relative;
	padding:0;
	margin:0;
	font-size:30px;
	font-weight:300;
}
.page-title .content .arrow {
	position:relative;
	width:80px;
	background:#717b84;
	border: 4px solid #fff;
	border-radius:100%;
	overflow:hidden;
	margin:50px auto 0 auto;
	cursor:pointer;
}
.page-title .content .arrow::after {
	position:relative;
	display:block;
	padding:100% 0 0 0;
	content:'';
}
.page-title .image {
	position:absolute;
	width:100%;
	height:100%;
	top:0;
	left:0;
	background-position:50% 0;
	background-repeat:no-repeat;
	background-size:100% auto;
	z-index:1;
	opacity:0.5;
}
@media screen and (max-height: 700px) {
	.page-title .content h1 {
		padding:10px 0 50px 0;
		font-size:42px;
		line-height:42px;
	}
	.page-title .content h1::after {
		bottom:20px;
	}
	.page-title .content .arrow {
		margin:25px auto 0 auto;
	}
}
@media screen and (max-width: 1500px) {
	.page-title .image {
		background-size:150% auto;
	}
}
@media screen and (max-width: 1000px) {
	.page-title .content .logo {
		width:30%;
	}
	.page-title .content h1 {
		padding:10px 0 50px 0;
		font-size:42px;
		line-height:42px;
	}
	.page-title .content h1::after {
		bottom:20px;
	}
	.page-title .content h2 {
		font-size:24px;
	}
	.page-title .content h3 {
		font-size:18px;
	}
	.page-title .image {
		background-size:200% auto;
	}
}
@media screen and (max-width: 600px) {
	.page-title .content {
		top:50%;
	}
	.page-title .content .logo {
		display:block;
		position:relative;
		width:50%;
		background:url(../image/img/logo.svg) 0 0 no-repeat;
		background-size:100% 100%;
		margin:0 auto;
	}
	.page-title .image {
		background-size:300% auto;
	}
}



/* == session - featured == */
.session-featured {
	position:relative;
	width:calc(100% + 50px);
	left:-25px;
	padding:0 0 50px 0;
	z-index:3;
	overflow:hidden;
	color:#222;
}
.session-featured .box {
	position:relative;
	width:calc(33.33% - 90px);
	padding:20px;
	margin:0 25px 50px 25px;
	float:left;
	border-radius:5px;
	background:#fdec10;
	transition: all 0.2s ease-in-out;
}
.session-featured .box:hover {
	background:#fff;
}
.session-featured .box .title {
	font-size:24px;
	line-height:24px;
	
	text-transform:uppercase;
	padding:0 0 10px 0;
}
.session-featured .box .sub-title {
	font-size:18px;
	line-height:18px;
}
.session-featured .box::after {
	position:absolute;
	width:60px;
	height:60px;
	top:50%;
	right:10px;
	content:'';
	background:url(../image/ico-control.svg) 100% 100% no-repeat;
	background-size:400% 300%;
	transition: all 0.2s ease-in-out;
	transform-origin:50% 50%;
	transform:translateY(-50%) scale(1);
	opacity:1;
}
.session-featured .box:hover::after {
	transform:translateY(-50%) scale(0.5);
	opacity:0;
}
.session-featured .box::before {
	position:absolute;
	width:60px;
	height:60px;
	top:50%;
	right:10px;
	content:'';
	background:url(../image/ico-control.svg) 100% 0% no-repeat;
	background-size:400% 300%;
	transition: all 0.2s ease-in-out;
	transform-origin:50% 50%;
	transform:translateY(-50%) scale(0.5);
	opacity:0;
}
.session-featured .box:hover::before {
	transform:translateY(-50%) scale(1);
	opacity:1;
}
.session-featured .box a {
	display:block;
	position:absolute;
	width:100%;
	height:100%;
	top:0;
	left:0;
	z-index:3;
}
@media screen and (max-width: 1100px) {
	.session-featured .box {
		width:calc(50% - 90px);
	}
}
@media screen and (max-width: 800px) {
	.session-featured .box {
		width:calc(100% - 70px);
		padding:10px;
		margin:0 25px 20px 25px;
	}
	.session-featured .box .title {
		font-size:18px;
		line-height:18px;
		padding:0 0 5px 0;
	}
	.session-featured .box .sub-title {
		font-size:16px;
		line-height:16px;
	}
}



/* == session == */
.session {
	position:relative;
	width:100%;
	overflow:hidden;
	padding:0 0 50px 0;
}
.session .desc {
	position:relative;
	width:100%;
	float:left;
	overflow:hidden;
	padding:0 0 50px 0;
	font-size:18px;
	text-align:justify;
}
.session .desc h5 {
	font-size:20px;
	color:#666;
}
.session .desc.part {
	width:calc(70% - 25px);
}
.session .desc .title {
	position:relative;
	width:100%;
	padding:0 0 50px 0;
	font-size:32px;
	line-height:32px;
}
.session .desc .title::after {
	position:absolute;
	display:block;
	left:0;
	bottom:22px;
	width:100px;
	height:4px;
	border-radius:2px;
	background: #fdec10;
	content:'';
}
.session .trainers {
	position:relative;
	width:calc(20% - 25px);
	padding:0 0 50px 0;
	float:right;
}
.session .trainers .title {
	position:relative;
	width:100%;
	padding:0 0 50px 0;
	margin:0 0 20px 0;
	font-size:32px;
	line-height:32px;
}
.session .trainers .title::after {
	position:absolute;
	display:block;
	left:0;
	bottom:22px;
	width:100px;
	height:4px;
	border-radius:2px;
	background: #fdec10;
	content:'';
}
.session .trainers .box {
	position:relative;
	width:100%;
	float:left;
	overflow:hidden;
}
.session .trainers .box .image {
	position:relative;
	width:100%;
	float:left;
	overflow:hidden;
	border-radius:100%;
	box-shadow:0 3px 5px rgba(0, 0, 0, 0.2);
}
.session .trainers .box .image::after {
	position:relative;
	width:100%;
	float:left;
	padding:100% 0 0 0;
	content:'';
}
.session .trainers .box .image img {
	position:absolute;
	display:block;
	width:100%;
	top:50%;
	left:50%;
	transform-origin:50% 50%;
	transform:translate(-50%, -50%);
}
.session .trainers .box .name {
	width:100%;
	text-align:center;
	padding:15px 0 0 0;
	font-size:18px;
	float:left;
}
.session .trainers .box a {
	position:absolute;
	width:100%;
	height:100%;
	display:block;
	z-index:5;
}
.session .gallery {
	position:relative;
	width:calc(100% + 25px);
	float:left;
	font-size:18px;
	left:-25px;
}
.session .gallery.part {
	width:calc(70% + 25px);
}
.session .gallery .owl-next {
	background: #fdec10;
	border-radius:5px;
	right:35px!important;
}
.session .gallery .owl-prev {
	background: #fdec10;
	border-radius:5px;
	left:35px!important;
}
.session .gallery .title {
	position:relative;
	width:100%;
	left:25px;
	padding:0 0 50px 0;
	font-size:32px;
	line-height:32px;
}
.session .gallery .title::after {
	position:absolute;
	display:block;
	left:0;
	bottom:22px;
	width:100px;
	height:4px;
	border-radius:2px;
	background: #fdec10;
	content:'';
}
.session .gallery a {
	position:relative;
	display:block;
	width:calc(100% - 50px);
	float:left;
	overflow:hidden;
	margin:0 25px;
	border-radius:5px;
	box-shadow:0 3px 5px rgba(0, 0, 0, 0.2);
	transition: all 0.2s ease-in-out;
	transform-origin:50% 50%;
	transform:scale(0.5);
	opacity:0;
}
.session .gallery .active a {
	opacity:1;
	transform:scale(1);
}
.session .gallery a img {
	position:relative;
	display:block;
	width:100%;
	float:left;
}
.session .gallery a::after {
	position:absolute;
	display:block;
	width:120%;
	height:120%;
	background:#222;
	left:50%;
	top:50%;
	transform-origin:50% 50%;
	transform:translate(-50%, -50%);
	opacity:0;
	z-index:3;
	content:'';
	transition: all 0.2s ease-in-out;
}
.session .gallery a:hover::after {
	opacity:0.3;
}
@media screen and (max-width: 1000px) {
	.session .desc, .session .desc.part {
		width:100%;
		font-size:16px;
	}
	.session .gallery, .session .gallery.part {
		position:relative;
		width:calc(100% + 10px);
		float:left;
		font-size:18px;
		left:-10px;
	}
	.session .gallery a {
		width:calc(100% - 20px);
		margin:0 10px;
	}
	.session .trainers {
		position:relative;
		width:100%;
		padding:0 0 50px 0;
		float:right;
	}
	.session .trainers .box {
		position:relative;
		width:30%;
		float:left;
		overflow:hidden;
	}
}
@media screen and (max-width: 800px) {
	.session .gallery {
		position:relative;
		width:calc(100% + 7px);
		float:left;
		font-size:18px;
		left:-7px;
	}
	.session .gallery a {
		width:calc(100% - 14px);
		margin:0 7px;
	}
	.session .trainers .box {
		position:relative;
		width:auto;
		float:left;
		overflow:hidden;
	}
	.session .trainers .box .image {
		display:none;
	}
	.session .trainers .box .name {
		line-height:50px;
		padding:0 20px;
		border-radius:5px;
		background: #fdec10;
		width:auto;
	}
}



/* == trainer - list == */
.trainer-list {
	position:relative;
	width:calc(100% + 50px);
	left:-25px;
	padding:0 0 50px 0;
	z-index:3;
	overflow:hidden;
	color:#222;
}
.trainer-list .box {
	position:relative;
	width:calc(25% - 50px);
	margin:0 25px 50px 25px;
	float:left;
	overflow:hidden;
}
.trainer-list .box .image {
	position:relative;
	width:100%;
	float:left;
	overflow:hidden;
	border-radius:100%;
	box-shadow:0 3px 5px rgba(0, 0, 0, 0.2);
}
.trainer-list .box .image::after {
	position:relative;
	width:100%;
	float:left;
	padding:100% 0 0 0;
	content:'';
}
.trainer-list .box .image img {
	position:absolute;
	display:block;
	width:100%;
	top:50%;
	left:50%;
	transform-origin:50% 50%;
	transform:translate(-50%, -50%);
}
.trainer-list .box .name {
	width:100%;
	text-align:center;
	padding:15px 0 0 0;
	font-size:18px;
	float:left;
}
.trainer-list .box a {
	width:100%;
	height:100%;
	display:block;
	position:absolute;
	top:0;
	left:0;
	z-index:5;
}
@media screen and (max-width: 900px) {
	.trainer-list .box {
		position:relative;
		width:calc(50% - 50px);
	}
}




/* == trainer - info == */
.trainer-info {
	position:relative;
	width:100%;
	padding:0 0 50px 0;
	z-index:3;
	overflow:hidden;
	color:#222;
}
.trainer-info .image {
	position:relative;
	width:calc(20% - 25px);
	float:left;
	overflow:hidden;
	border-radius: 100%;
    box-shadow: 0 3px 5px rgba(0, 0, 0, 0.2);
}
.trainer-info .image img {
	position: absolute;
    display: block;
    width: 100%;
    top: 50%;
    left: 50%;
    transform-origin: 50% 50%;
    transform: translate(-50%, -50%);
}
.trainer-info .image::after {
    position: relative;
    width: 100%;
    float: left;
    padding: 100% 0 0 0;
    content: '';
}
.trainer-info .desc {
	position:relative;
	width:calc(80% - 25px);
	float:right;
	overflow:hidden;
	font-size:18px;
}
@media screen and (max-width: 900px) {
	.trainer-info .image {
		width:calc(30% - 25px);
	}
	.trainer-info .desc {
		width:calc(70% - 25px);
		font-size:16px;
	}
}
@media screen and (max-width: 700px) {
	.trainer-info .image {
		width:50%;
		margin:0 25% 50px 25%;
	}
	.trainer-info .desc {
		width:100%;
		font-size:16px;
	}
}


/* == trainer - sessions == */
.trainer-sessions {
	position:relative;
	width:100%;
	padding:0px 0 80px 0;
	z-index:3;
	overflow:hidden;
	color:#222;
}
.trainer-sessions::after {
	position:absolute;
	width:100%;
	height: 4px;
	bottom:38px;
	left:0;
	border-radius:3px;
	display:block;
	background: #fdec10;
	content:'';
}
.trainer-sessions h1 {
	position:relative;
	display:block;
	width:100%;
	padding:0;
	margin:0;
	font-size:32px;
	
}




/* == sessions == */
.sessions {
	position:relative;
	width:calc(100% + 50px);
	left:-25px;
	padding:0 0 50px 0;
	z-index:3;
	overflow:hidden;
	color:#222;
}
.sessions .box {
	position:relative;
	width:calc(50% - 50px);
	margin:0 25px 50px 25px;
	float:left;
	border-radius:5px;
	color:#222;
	background:#222;
	overflow:hidden;
	transition: all 0.2s ease-in-out;
	box-shadow:0 3px 5px rgba(0, 0, 0, 0.1);
}
.sessions .box.membership-plan {
	width:calc(100% - 50px);
	background:#f3f3f3;
}
.sessions .box img {
	position:relative;
	display:block;
	width:100%;
	float:left;
	z-index:1;
	transition: all 0.2s ease-in-out;
	transform-origin:50% 50%;
	opacity:0.35;
}
.sessions .box:hover img {
	transform:scale(1.1);
}
.sessions .box.membership-plan .image {
	width:60%;
	position:absolute;
	height:100%;
	overflow:hidden;
	background-size:cover;
	background-position:50% 50%;
	background-repeat:repeat;
}
.sessions .box.membership-plan .image::after {
	position:absolute;
	display:block;
	width:100px;
	height:100px;
	border-radius:5px;
	background:#f3f3f3;
	top:50%;
	right:-60px;
	transform-origin:50% 50%;
	transform:translateY(-50%) rotate(45deg);
	content:'';
	z-index:2;
}
.sessions .box.membership-plan .image img {
	opacity:1;
}
.sessions .box.membership-plan .info {
	width:40%;
	position:relative;
	overflow:hidden;
	float:right;
	background:#f3f3f3;
}
.sessions .box::after {
	display:block;
	position:absolute;
	width:150%;
	height:150%;
	left:50%;
	top:50%;
	background: #fdec10;
	z-index:2;
	transition: all 0.2s ease-in-out;
	transform-origin:50% 50%;
	transform:translate(-50%, -50%);
	content:'';
	opacity:0;
}
.sessions .box:hover::after {
	opacity:0.5;
}
.sessions .box .title {
	position:absolute;
	
	font-size:32px;
	line-height:32px;
	color:#fff;
	bottom:50px;
	left:20px;
	z-index:4;
}
.sessions .box.membership-plan:after{
	display:none;
}
.sessions .box.membership-plan .title {
	position:relative;
	width:100%;
	bottom:auto;
	left:auto;
	float:left;
	margin:20px 0 0 20px;
	color:#222;
}
.sessions .box .sub-title {
	position:absolute;
	width:100%;
	font-size:18px;
	line-height:18px;
	color:#fff;
	bottom:20px;
	left:20px;
	z-index:4;
}
.sessions .box.membership-plan .sub-title {
	position:relative;
	width:100%;
	bottom:auto;
	left:auto;
	float:left;
	margin:10px 0 0 20px;
	color:#222;
}
.sessions .box .price {
	width:calc(100% - 40px);
	position:relative;
	float:left;
	font-size:36px;
	margin:20px 0 0 20px;
	
	padding:10px 0;
	border-bottom:1px solid #ccc;
	border-top:1px solid #ccc;
}
.sessions .box .desc {
	width:calc(100% - 40px);
	position:relative;
	float:left;
	font-size:18px;
	margin:20px 0 0 20px;
}
.sessions .box a {
	position:absolute;
	display:block;
	width:100%;
	height:100%;
	top:0;
	left:0;
	z-index:5;
}
.sessions .box.membership-plan a {
	position:relative;
	width:calc(100% - 40px);
	height:auto;
	top:auto;
	left:auto;
	float:left;
	margin:20px 0 20px 20px;
	color:#222;
	line-height:80px;
	font-size:24px;
	
	text-transform:uppercase;
	border-radius:5px;
	background: #fdec10;
	color:#222;
	text-align:center;
	transition: all 0.2s ease-in-out;
}
.sessions .box.membership-plan a:hover {
	background: #222;
	color:#fff;
}
@media screen and (max-width: 1200px) {
	.sessions .box.membership-plan .image {
		width:50%;
	}
	.sessions .box.membership-plan .info {
		width:50%;
	}
	.sessions .box .desc {
		font-size:16px;
	}
}
@media screen and (max-width: 800px) {
	.sessions .box.membership-plan .image {
		width:100%;
		position:relative;
		height:200px;
		float:left;
		left:auto;
		top:auto;
	}
	.sessions .box.membership-plan .image::after {
		top:-80px;
		left:50%;
		transform:translateX(-50%) rotate(45deg);
	}
	.sessions .box.membership-plan .info {
		width:100%;
	}
	.sessions .box .desc {
		font-size:16px;
	}
}
@media screen and (max-width: 700px) {
	.sessions .box {
		width:calc(100% - 50px);
	}
	.sessions .box .title {
		font-size:18px;
		line-height:18px;
		bottom:50px;
		left:20px;
	}
	.sessions .box .sub-title {
		font-size:16px;
		line-height:16px;
		bottom:20px;
		left:20px;
	}
}



/* == txt == */
.txt {
	width:100%;
	position:relative;
	color: #222;
	font-size:20px;
	text-align:justify;
	padding:50px 0;
	margin:0 auto;
}
.txt h1 {
	font-size:32px;
	font-weight:normal;
	padding:0 0 20px 0;
	margin:0;
	color:#717b84;
	text-align:left;
}
.txt h2 {
	font-size:24px;
	font-weight:normal;
	padding:0;
	margin:0;
	color:#717b84;
	text-align:left;
}
.txt ul {
	list-style:none;
	display:block;
	padding:0;
	margin:0;
}
.txt ul li {
	display:block;
	position:relative;
	width:calc(100% - 20px);
	padding:0 0 10px 20px;
}
.txt ul li::after {
	display:block;
	position:absolute;
	width:10px;
	height:10px;
	border-radius:100%;
	top:10px;
	left:0px;
	background:#717b84;
	content:'';
}
.txt .image {
	display:block;
	position:relative;
	margin:80px auto;
	overflow:hidden;
	z-index:2;
}
.txt .image::after {
	display:block;
	position:relative;
	width:100%;
	padding:100% 0 0 0;
	float:left;
	z-index:1;
	content:'';
}
.txt .image img {
	display:block;
	position:absolute;
	width:100%;
	top:50%;
	left:50%;
	transform-origin:50% 50%;
	transform:translate(-50%, -50%);
	z-index:2;
}
.txt .image.one-one {
	width:100%;
}
.txt .image.one-two {
	width:50%;
}
.txt .image.one-three {
	width:33.33%;
}
.txt .image.one-four {
	width:25%;
}
.txt .image.circle {
	border-radius:100%;
}
.txt .vertical {
	position: absolute;
    width: 4px;
    height: 200px;
    bottom:-2px;
	left:50%;
	border-radius:3px;
    transform-origin: 50% 50%;
    transform: translateX(-50%);
    content: '';
    z-index: 1;
	background: #717b84;
}
@media screen and (max-width: 800px) {
	.txt {
		font-size:18px;
	}
	.txt h1 {
		font-size:24px;
	}
	.txt h2 {
		font-size:18px;
		font-weight:normal;
		padding:0;
		margin:0;
		color:#717b84;
		text-align:left;
	}
	.txt .image.one-one {
		width:100%;
	}
	.txt .image.one-two {
		width:50%;
	}
	.txt .image.one-three {
		width:50%;
	}
	.txt .image.one-four {
		width:50%;
	}
}
@media screen and (max-width: 600px) {
	.txt .image.one-one {
		width:100%;
	}
	.txt .image.one-two {
		width:100%;
	}
	.txt .image.one-three {
		width:100%;
	}
	.txt .image.one-four {
		width:50%;
	}
}





/* == news - featured == */
.latest-news {
	position:relative;
	width:calc(100% + 50px);
	left:-25px;
	padding:0 0 50px 0;
	z-index:3;
	overflow:hidden;
	color:#222;
}
.latest-news .box {
	position:relative;
	width:calc(33.33% - 50px);
	margin:0 25px 0 25px;
	float:left;
	border-radius:5px;
	color:#222;
	transition: all 0.2s ease-in-out;
}
.latest-news .box .image {
	position:relative;
	width:100%;
	float:left;
	overflow:hidden;
	border-radius:5px;
	box-shadow:0 3px 5px rgba(0, 0, 0, 0.1);
}
.latest-news .box .image img {
	position:relative;
	display:block;
	width:100%;
	float:left;
	z-index:1;
	transition: all 0.2s ease-in-out;
	transform-origin:50% 50%;
}
.latest-news .box:hover .image img {
	transform:scale(1.1);
}
.latest-news .box .image::after {
	display:block;
	position:absolute;
	width:150%;
	height:150%;
	left:50%;
	top:50%;
	background:#222;
	z-index:2;
	transition: all 0.2s ease-in-out;
	transform-origin:50% 50%;
	transform:translate(-50%, -50%);
	content:'';
	opacity:0;
}
.latest-news .box:hover .image::after {
	opacity:0.5;
}
.latest-news .box .image .date {
	position:absolute;
	top:10px;
	left:10px;
	overflow:hidden;
	border-radius:5px;
	background:#fdec10;
	z-index:3;
	padding:10px;
	color:#222;
}
.latest-news .box .image .date .month {
	font-size:24px;
	line-height:24px;
	
	padding:0 0 10px 0;
}
.latest-news .box .image .date .day {
	font-size:60px;
	line-height:40px;
}
.latest-news .box .title {
	position:relative;
	float:left;
	width:100%;
	padding:30px 0;
	font-size:24px;
}
.latest-news .box .desc {
	position:relative;
	float:left;
	width:100%;
	font-size:18px;
	color:#7f7f7f;
}
.latest-news .box a {
	position:absolute;
	display:block;
	width:100%;
	height:100%;
	top:0;
	left:0;
	z-index:5;
}
@media screen and (max-width: 1100px) {
	.latest-news .box {
		position:relative;
		width:calc(50% - 50px);
	}
	.latest-news .box:last-of-type {
		display:none;
	}
}
@media screen and (max-width: 700px) {
	.latest-news .box {
		position:relative;
		width:calc(100% - 50px);
	}
	.latest-news .box:nth-of-type(2) {
		display:none;
	}
	.latest-news .box .desc {
		font-size:16px;
	}
	.latest-news .box .image .date .month {
		font-size:18px;
		line-height:18px;
		padding:0 0 10px 0;
	}
	.latest-news .box .image .date .day {
		font-size:40px;
		line-height:25px;
	}
	.latest-news .box .title {
		font-size:18px;
	}
	.latest-news .box .desc {
		font-size:16px;
	}
}



/* == news - categories == */
.news-categories {
	position:relative;
	width:100%;
	padding:0 0 30px 0;
	z-index:3;
	overflow:hidden;
	color:#222;
}
.news-categories .item {
	position:relative;
	display:block;
	overflow:hidden;
	float:left;
	line-height:50px;
	margin:0 20px 0 0;
	border-radius:5px;
	background: #fdec10;
	color:#222;
	font-size:18px;
	cursor:pointer;
	transition: all 0.2s ease-in-out;
}
.news-categories .item label {
	position:relative;
	display:block;
	float:left;
	padding:0 30px;
	cursor:pointer;
}
.news-categories .item input {
	display:none;
}
.news-categories .item.active {
	background: #222;
	color:#fff;
}
.news-categories .item:hover {
	background: #666;
	color:#fff;
}
@media screen and (max-width: 1100px) {
	.news-categories .item {
		line-height:40px;
		padding:0 20px;
		margin:0 20px 20px 0;
	}
}


/* == news - list == */
.news-list {
	position:relative;
	width:calc(100% + 50px);
	left:-25px;
	padding:0 0 50px 0;
	z-index:3;
	overflow:hidden;
	color:#222;
}
.news-list .box {
	position:relative;
	width:calc(33.33% - 50px);
	margin:0 25px 50px 25px;
	float:left;
	border-radius:5px;
	color:#222;
	transition: all 0.2s ease-in-out;
}
.news-list .box .image {
	position:relative;
	width:100%;
	float:left;
	overflow:hidden;
	border-radius:5px;
	box-shadow:0 3px 5px rgba(0, 0, 0, 0.1);
}
.news-list .box .image img {
	position:relative;
	display:block;
	width:100%;
	float:left;
	z-index:1;
	transition: all 0.2s ease-in-out;
	transform-origin:50% 50%;
}
.news-list .box:hover .image img {
	transform:scale(1.1);
}
.news-list .box .image::after {
	display:block;
	position:absolute;
	width:150%;
	height:150%;
	left:50%;
	top:50%;
	background:#222;
	z-index:2;
	transition: all 0.2s ease-in-out;
	transform-origin:50% 50%;
	transform:translate(-50%, -50%);
	content:'';
	opacity:0;
}
.news-list .box:hover .image::after {
	opacity:0.5;
}
.news-list .box .image .date {
	position:absolute;
	top:10px;
	left:10px;
	overflow:hidden;
	border-radius:5px;
	background:#fdec10;
	z-index:3;
	padding:10px;
	color:#222;
}
.news-list .box .image .date .month {
	font-size:24px;
	line-height:24px;
	
	padding:0 0 10px 0;
}
.news-list .box .image .date .day {
	font-size:60px;
	line-height:40px;
}
.news-list .box .title {
	position:relative;
	float:left;
	width:100%;
	padding:30px 0;
	font-size:24px;
}
.news-list .box .desc {
	position:relative;
	float:left;
	width:100%;
	font-size:18px;
	color:#7f7f7f;
}
.news-list .box a {
	position:absolute;
	display:block;
	width:100%;
	height:100%;
	top:0;
	left:0;
	z-index:5;
}
@media screen and (max-width: 1100px) {
	.news-list .box {
		position:relative;
		width:calc(50% - 50px);
	}
}
@media screen and (max-width: 700px) {
	.news-list .box {
		position:relative;
		width:calc(100% - 50px);
	}
	.news-list .box .desc {
		font-size:16px;
	}
	.news-list .box .image .date .month {
		font-size:18px;
		line-height:18px;
		padding:0 0 10px 0;
	}
	.news-list .box .image .date .day {
		font-size:40px;
		line-height:25px;
	}
	.news-list .box .title {
		font-size:18px;
	}
	.news-list .box .desc {
		font-size:16px;
	}
}




/* == news == */
.news {
	position:relative;
	width:100%;
	padding:0 0 80px 0;
	z-index:3;
	overflow:hidden;
	color:#222;
}
.news .content {
	position:relative;
	width:calc(70% - 25px);
	float:left;
	border-radius:5px;
	color:#222;
	transition: all 0.2s ease-in-out;
}
.news .content .image {
	position:relative;
	width:100%;
	float:left;
	overflow:hidden;
	border-radius:5px;
	box-shadow:0 3px 5px rgba(0, 0, 0, 0.1);
}
.news .content .image img {
	position:relative;
	display:block;
	width:100%;
	float:left;
	z-index:1;
	transition: all 0.2s ease-in-out;
	transform-origin:50% 50%;
}
.news .content:hover .image img {
	transform:scale(1.1);
}
.news .content .image::after {
	display:block;
	position:absolute;
	width:150%;
	height:150%;
	left:50%;
	top:50%;
	background:#222;
	z-index:2;
	transition: all 0.2s ease-in-out;
	transform-origin:50% 50%;
	transform:translate(-50%, -50%);
	content:'';
	opacity:0;
}
.news .content:hover .image::after {
	opacity:0.5;
}
.news .content .desc {
	position:relative;
	float:left;
	width:100%;
	padding:50px 0 0 0;
	font-size:18px;
	color:#222;
}
.news .content .desc .desc-tags {
	position:relative;
	float:left;
	width:100%;
	padding:50px 0 0 0;
	font-size:16px;
	color:#222;
}
.news .content .desc .desc-tags a {
	font-style:italic;
	color:#999999;
}
.news .blog {
	width:calc(30% - 25px);
	position:relative;
	float:right;
}
.news .blog .title {
	position:relative;
	width:100%;
	padding:0 0 50px 0;
	font-size:32px;
	line-height:32px;
}
.news .blog .title::after {
	position:absolute;
	display:block;
	left:0;
	bottom:22px;
	width:100px;
	height:4px;
	border-radius:2px;
	background: #fdec10;
	content:'';
}
.news .blog .latest {
	position:relative;
	width:100%;
	padding:0 0 50px 0;
	overflow:hidden;
}
.news .blog .latest a {
	position:relative;
	width:calc(100% - 20px);
	padding:0 0 0 20px;
	margin:0 0 15px 0;
	float:left;
	font-size:18px;
	line-height:20px;
	color:#222;
}
.news .blog .latest a::before {
	position:absolute;
	display:block;
	width:15px;
	height:15px;
	top:2px;
	left:0px;
	background:url(../image/ico-control.svg) 100% 50% no-repeat;
	background-size:400% 300%;
	content:'';
	z-index:1;
}
.news .blog .latest a .date {
	position:relative;
	display:block;
	float:left;
	color:#666;
	border-radius:3px;
	font-size:16px;
	margin:0 10px 0 0;
}
.news .blog .tags {
	position:relative;
	width:100%;
	padding:0 0 50px 0;
	overflow:hidden;
}
.news .blog .tags a {
	position:relative;
	display:block;
	width:calc(100% - 40px);
	padding:0 20px;
	margin:0 0 15px 0;
	float:left;
	font-size:18px;
	line-height:50px;
	color:#222;
	background: #fdec10;
	border-radius:5px;
	transition: all 0.2s ease-in-out;
}
.news .blog .tags a:hover {
	color:#fff;
	background: #222;
}
@media screen and (max-width: 1100px) {
	.news {
		padding:0;
	}
	.news .content {
		width:100%;
	}
	.news .blog {
		width:100%;
		padding:50px 0 0 0;
	}
	.news .blog .latest {
		width:calc(60% - 25px);
		float:left;
	}
	.news .blog .tags {
		width:calc(40% - 25px);
		float:right;
	}
}
@media screen and (max-width: 800px) {
	.news .content .desc {
		font-size:16px;
	}
	.news .blog .title {
		font-size:24px;
	}
	.news .blog .latest {
		width:100%;
	}
	.news .blog .tags {
		width:100%;
	}
}


/* == news - gallery == */
.news .gallery {
	position:relative;
	width:calc(100% + 50px);
	float:left;
	font-size:18px;
	left:-25px;
	margin:80px 0 0 0;
}
.news .gallery .owl-next {
	background: #fdec10;
	border-radius:5px;
	right:35px!important;
}
.news .gallery .owl-prev {
	background: #fdec10;
	border-radius:5px;
	left:35px!important;
}
.news .gallery a {
	position:relative;
	display:block;
	width:calc(100% - 50px);
	float:left;
	overflow:hidden;
	margin:0 25px;
	border-radius:5px;
	box-shadow:0 3px 5px rgba(0, 0, 0, 0.2);
	transition: all 0.2s ease-in-out;
	transform-origin:50% 50%;
	transform:scale(0.5);
	opacity:0;
}
.news .gallery .active a {
	opacity:1;
	transform:scale(1);
}
.news .gallery a img {
	position:relative;
	display:block;
	width:100%;
	float:left;
}
.news .gallery a::after {
	position:absolute;
	display:block;
	width:120%;
	height:120%;
	background:#222;
	left:50%;
	top:50%;
	transform-origin:50% 50%;
	transform:translate(-50%, -50%);
	opacity:0;
	z-index:3;
	content:'';
	transition: all 0.2s ease-in-out;
}
.news .gallery a:hover::after {
	opacity:0.3;
}
@media screen and (max-width: 1000px) {
	.news .gallery a {
		width:calc(100% - 20px);
		margin:0 10px;
	}
}
@media screen and (max-width: 800px) {
	.news .gallery {
		position:relative;
		width:calc(100% + 7px);
		float:left;
		font-size:18px;
		left:-7px;
	}
	.news .gallery a {
		width:calc(100% - 14px);
		margin:0 7px;
	}
}


/* == news - video == */
.news-movies {
	position:relative;
	width:100%;
	overflow:hidden;
	z-index:10;
}
.news-video {
	position:relative;
	width:100%;
	padding:30px 0 0 0;
	margin:0 auto;
	overflow:hidden;
	z-index:10;
}
.news-video .video {
	position:relative;
	padding-bottom: 56.25%;
	width:100%;
	height:0;
	border-radius:5px;
	z-index:10;
}
.news-video .video iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index:10;
}
@media screen and (max-width: 1000px) {
	.news-video {
		max-width:100%;
	}
}



/* == offer - txt == */
.offer-txt {
	position:relative;
	width:100%;
	padding:100px 0;
	max-width:1200px;
	margin:0 auto;
	font-size:18px;
	font-weight:300;
	overflow:hidden;
	text-align:justify;
}
.dark .offer-txt {
	color:#fff;
}
.blue .offer-txt {
	color:#fff;
}
.offer-txt.left {
	text-align:left;
}
.offer-txt.right {
	text-align:right;
}
.offer-txt.center {
	text-align:center;
}
.offer-txt.justify {
	text-align:justify;
}
.offer-txt .icon-wrap {
	position:relative;
	width:100%;
	overflow:hidden;
	margin:0 0 50px 0;
}
.offer-txt .icon {
	position:relative;
	width:10%;
	min-width:100px;
	overflow:hidden;
	margin:0 auto;
}
.offer-txt .icon::after {
	position:relative;
	display:block;
	width:100%;
	padding:100% 0 0 0;
	content:'';
}
.offer-txt .icon.movie::after  {
	background:url(../image/img/ico-media.svg) 25% 50% no-repeat;
	background-size:500% 300%;
}
.offer-txt .icon.foto::after  {
	background:url(../image/img/ico-media.svg) 0% 50% no-repeat;
	background-size:500% 300%;
}
.offer-txt .icon.radio::after  {
	background:url(../image/img/ico-media.svg) 50% 50% no-repeat;
	background-size:500% 300%;
}
.offer-txt .icon.campaign::after  {
	background:url(../image/img/ico-media.svg) 100% 50% no-repeat;
	background-size:500% 300%;
}
.offer-txt .image {
	position:relative;
	width:40%;
	overflow:hidden;
	border-radius:2px;
	background:#666;
	background-position:50% 50%;
	background-size:cover;
	margin:0 auto 70px auto;
}
.offer-txt .image::after {
	position:relative;
	display:block;
	width:100%;
	padding:60% 0 0 0;
	float:left;
	content:'';
}
.offer-txt h1 {
	position:relative;
	padding:0;
	margin:0;
	font-size:62px;
	line-height:62px;
	
}
.offer-txt h2 {
	position:relative;
	padding:0;
	margin:0;
	font-size:24px;
	font-weight:400;
	
}
.offer-txt .spacer {
	position:relative;
	width:100%;
	height:40px;
}
.offer-txt ul {
	position:relative;
	display:block;
	list-style:none;
	padding:30px 0 20px 0;
	margin:0;
}
.offer-txt ul li {
	position:relative;
	display:block;
	width:calc(100% - 20px);
	padding:0 0 10px 20px;
	margin:0;
}
.offer-txt ul li::after {
	position:absolute;
	display:block;
	width:15px;
	height:10px;
	border-radius:5px;
	top:1px;
	left:0;
	transform-origin:0 50%;
	transform:rotate(30deg);
	content:'';
	box-shadow:0 2px 4px rgba(0, 0, 0, 0.1);
}
.white .offer-txt ul li::after, .grey .offer-txt ul li::after {
	background:#717b84;
}
.dark .offer-txt ul li::after, .blue .offer-txt ul li::after {
	background:#fff;
}
@media screen and (max-width: 1500px) {
	.offer-txt {
	}
	.offer-txt h1 {
		font-size:52px;
		line-height:52px;
	}
	.offer-txt h2 {
		font-size:22px;
		font-weight:400;
	}
}
@media screen and (max-width: 1200px) {
	.offer-txt {
		font-size:16px;
		padding:80px 0;
	}
	.offer-txt h1 {
		font-size:42px;
		line-height:42px;
	}
	.offer-txt h2 {
		font-size:20px;
		font-weight:400;
	}
	.offer-txt .icon-wrap {
		margin:0 0 50px 0;
	}
	.offer-txt .icon {
		width:20%;
	}
	.offer-txt .image {
		width:50%;
		margin:0 auto 50px auto;
	}
}
@media screen and (max-width: 600px) {
	.offer-txt .image {
		width:100%;
		margin:0 auto 30px auto;
	}
}

/* == video == */
.video {
	position:relative;
	width:100%;
	float:left;
	overflow:hidden;
	border-radius:2px;
}
.video::after {
	position:relative;
	display:block;
	width:100%;
	padding:56.25% 0 0 0;
	float:left;
	content:'';
}
.video video {
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	z-index:2;
}
.video .play-button {
	position:absolute;
	top:50%;
	left:50%;
	width:10%;
	min-width:50px;
	transform-origin:50% 50%;
	transform:translate(-50%, -50%);
	content:'';
	background:#222;
	z-index:10;
	pointer-events:none;
	border-radius:100%;
	cursor:pointer;
	box-shadow:0 3px 5px rgba(0, 0, 0, 0.1);
}
.video .play-button::before {
	position:relative;
	display:block;
	width:100%;
	padding:100% 0 0 0;
	float:left;
	content:'';
}
.video .play-button .arrow {
	position:absolute;
	top:50%;
	left:70%;
	width:60%;
	height:60%;
	transform-origin:50% 50%;
	transform:translate(-50%, -50%);
	overflow:hidden;
	border-radius:5px;
}
.video .play-button .arrow::after {
	position:absolute;
	display:block;
	top:50%;
	left:1%;
	width:70%;
	height:70%;
	background:#fff;
	border-radius:5px;
	transform-origin:50% 50%;
	transform:translate(-50%, -50%) rotate(45deg);
	content:'';
}

/* == featured - offer == */
.featured-offer {
	position:relative;
	width:100%;
	max-width:1200px;
	margin:0 auto;
	padding:100px 0 50px 0;
	overflow:hidden;
}
.featured-offer h1 {
	position:relative;
	text-align:center;
	padding:0 0 20px 0;
	margin:0;
	font-size:62px;
	line-height:62px;
	
}
.featured-offer h2 {
	position:relative;
	text-align:center;
	padding:0;
	margin:0;
	font-size:18px;
	font-weight:400;
	
}
.featured-offer .spacer {
	position:relative;
	width:100%;
	height:100px;
}
.featured-offer .wrap {
	position:relative;
	width:calc(100% + 80px);
	left:-40px;
	overflow:hidden;
}
.featured-offer .box {
	position:relative;
	width:calc(50% - 80px);
	float:left;
	margin:0 40px 80px 40px;
}
.featured-offer .box .icon {
	position:absolute;
	width:80px;
	height:100%;
	left:0;
	top:0;
}
.featured-offer .box .icon::after {
	position:absolute;
	display:block;
	width:80px;
	height:80px;
	left:0;
	top:0;
	content:'';
}
.featured-offer .box .icon.movie::after  {
	background:url(../image/img/ico-media.svg) 25% 50% no-repeat;
	background-size:500% 300%;
}
.featured-offer .box .icon.foto::after  {
	background:url(../image/img/ico-media.svg) 0% 50% no-repeat;
	background-size:500% 300%;
}
.featured-offer .box .icon.radio::after  {
	background:url(../image/img/ico-media.svg) 50% 50% no-repeat;
	background-size:500% 300%;
}
.featured-offer .box .icon.campaign::after  {
	background:url(../image/img/ico-media.svg) 100% 50% no-repeat;
	background-size:500% 300%;
}
.featured-offer .box .title {
	position:relative;
	width:calc(100% - 100px);
	float:right;
	font-size:24px;
	color:#222;
	
	padding:0 0 20px 0;
}
.featured-offer .box .title::after {
	position:absolute;
	display:block;
	width:0px;
	height:4px;
	border-radius:1px;
	left:0;
	bottom:8px;
	background:rgba(0, 0, 0, 0.2);
	content:'';
	transition: all 0.2s ease-in-out;
}
.featured-offer .box:hover .title::after {
	width:80px;
}
.featured-offer .box .description {
	position:relative;
	width:calc(100% - 100px);
	float:right;
	font-size:18px;
	font-weight:300;
	text-align:justify;
}
.featured-offer .box a {
	position:absolute;
	display:block;
	width:100%;
	height:100%;
	top:0;
	left:0;
	z-index:10;
}
@media screen and (max-width: 1500px) {
	.featured-offer h1 {
		font-size:52px;
		line-height:52px;
	}
	.featured-offer h2 {
		font-size:18px;
		font-weight:400;
	}
}
@media screen and (max-width: 1200px) {
	.featured-offer h1 {
		font-size:42px;
		line-height:42px;
	}
	.featured-offer h2 {
		font-size:16px;
	}
}
@media screen and (max-width: 1100px) {
	.featured-offer .wrap {
		width:calc(100% + 50px);
		left:-25px;
	}
	.featured-offer .box {
		width:calc(50% - 50px);
		margin:0 25px 50px 25px;
	}
	.featured-offer .box .icon {
		width:50px;
	}
	.featured-offer .box .icon::after {
		width:50px;
		height:50px;
	}
	.featured-offer .box .title {
		font-size:18px;
		width:calc(100% - 80px);
	}
	.featured-offer .box .description {
		font-size:16px;
		width:calc(100% - 80px);
	}
}
@media screen and (max-width: 800px) {
	.featured-offer .spacer {
		height:30px;
	}
	.featured-offer .box {
		width:calc(100% - 50px);
		margin:0 25px 50px 25px;
	}
}
@media screen and (max-width: 600px) {
	.featured-offer .box .icon {
		width:50px;
		position:relative;
		height:50px;
		float:left;
		left:auto;
		top:auto;
	}
	.featured-offer .box .title {
		width:calc(100% - 60px);
		float:left;
		line-height:50px;
		padding:0 0 0 10px;
	}
	.featured-offer .box .title::after {
		display:none;
	}
	.featured-offer .box .description {
		width:100%;
		padding:10px 0 0 0;
	}
}

/* == latest == */
.latest {
	position:relative;
	width:100%;
	overflow:hidden;
}
.latest.centered {
	width:calc(100% + 30px);
	left:-15px;
	padding:0 0 70px 0;
}
.latest .latest-title {
	position:relative;
	width:100%;
	overflow:hidden;
	text-align:center;
}
.latest .latest-title h3 {
	position:relative;
	width:100%;
	overflow:hidden;
	padding:0 0 70px 0;
	margin:0;
	
    font-size: 42px;
    line-height: 42px;
    font-weight: bold;
}
.latest .box {
	position:relative;
	width:25%;
	overflow:hidden;
	float:left;
	background:#222;
}
.latest.centered .box {
	width:calc(33.33% - 30px);
	margin:0 15px 30px 15px;
	border-radius:2px;
}
.latest .box .image {
	position:relative;
	width:100%;
	overflow:hidden;
	background-position:50% 50%;
	background-size:cover;
	opacity:0.7;
	transform-origin:50% 50%;
	transform:scale(1);
	transition: all 0.2s ease-in-out;
}
.latest .box:hover .image {
	opacity:0.2;
	transform:scale(1.1);
}
.latest .box .image::after {
	position:relative;
	width:100%;
	float:left;
	padding:80% 0 0 0;
	content:'';
}
.latest .box .title {
	position:absolute;
	width:80%;
	top:50%;
	left:10%;
	transform-origin:50% 50%;
	transform:translateY(-50%) scale(2);
	z-index:3;
	text-align:center;
	opacity:0;
	filter:blur(5px);
	transition: all 0.2s ease-in-out;
}
.latest .box:hover .title {
	transform:translateY(-50%) scale(1);
	opacity:1;
	filter:blur(0px);
}
.latest .box .title h1 {
	position:relative;
	padding:0;
	margin:0;
	
	font-size:24px;
	color:#fff;
}
.latest .box .title h2 {
	position:relative;
	padding:0;
	margin:0;
	
	font-size:18px;
	font-weight:300;
	color:#fff;
}
.latest .box a {
	position:absolute;
	width:100%;
	height:100%;
	top:0;
	left:0;
	z-index:5;
}
.latest .more-wrap {
	width:100%;
	position:relative;
	overflow:hidden;
	padding:50px 0 10px 0;
}
.latest .more {
	display:block;
	position:relative;
	width:80px;
	height:80px;
	border-radius:100%;
	margin:0 auto;
	background: #666;
    color: #fff;
	line-height:80px;
	text-align:center;
	font-size:24px;
	clear:both;
	transition: all 0.2s ease-in-out;
	transform-origin:50% 50%;
}
.latest .more:hover {
	background: #717b84;
	transform:scale(1.1);
}
@media screen and (max-width: 1500px) {
	.latest .box {
		width:50%;
	}
	.latest .box:nth-of-type(7), .latest .box:nth-of-type(8) {
		display:none;
	}
}
@media screen and (max-width: 1300px) {
	.latest.centered .box {
		width:calc(50% - 30px);
		margin:0 15px 30px 15px;
	}
}
@media screen and (max-width: 700px) {
	.latest .box {
		width:100%;
	}
	.latest .box:nth-of-type(5), .latest .box:nth-of-type(6) {
		display:none;
	}
}

/* == portfolio - category == */
.portfolio-category {
	position:relative;
	width:100%;
	overflow:hidden;
}
.portfolio-category .box {
	position:relative;
	width:50%;
	overflow:hidden;
	float:left;
	background:#222;
}
.portfolio-category .box:nth-of-type(22) {
	background:#333;
}
.portfolio-category .box:nth-of-type(11) {
	background:#888;
}
.portfolio-category .box .image {
	position:relative;
	width:100%;
	overflow:hidden;
	background-position:50% 50%;
	background-size:cover;
	opacity:0.7;
	transform-origin:50% 50%;
	transform:scale(1);
	transition: all 0.2s ease-in-out;
}
.portfolio-category .box:hover .image {
	opacity:0.2;
	transform:scale(1.1);
}
.portfolio-category .box .image::after {
	position:relative;
	width:100%;
	float:left;
	padding:50% 0 0 0;
	content:'';
}
.portfolio-category .box .title {
	position:absolute;
	width:80%;
	top:50%;
	left:10%;
	transform-origin:50% 50%;
	transform:translateY(-50%) scale(1);
	z-index:3;
	text-align:center;
	opacity:1;
	transition: all 0.2s ease-in-out;
}
.portfolio-category .box:hover .title {
	transform:translateY(-50%) scale(1.5);
	opacity:1;
}
.portfolio-category .box .title h1 {
	position:relative;
	padding:0;
	margin:0;
	
	font-size:24px;
	color:#fff;
}
.portfolio-category .box .title h2 {
	position:relative;
	padding:0;
	margin:0;
	
	font-size:18px;
	font-weight:300;
	color:#fff;
}
.portfolio-category .box a {
	position:absolute;
	width:100%;
	height:100%;
	top:0;
	left:0;
	z-index:5;
}
@media screen and (max-width: 1500px) {

}
@media screen and (max-width: 700px) {

}

/* == portfolio == */
.portfolio {
	position:relative;
	width:100%;
	max-width:1200px;
	margin:0 auto;
	overflow:hidden;
	padding:100px 0 50px 0;
}
.portfolio .wrap {
	position:relative;
	width:calc(100% + 50px);
	left:-25px;
	overflow:hidden;
}
.portfolio .box {
	position:relative;
	width:calc(50% - 50px);
	margin:0 25px 50px 25px;
	overflow:hidden;
	float:left;
	border-radius:3px;
	background:#666;
}
.portfolio .box .image {
	position:relative;
	width:100%;
	overflow:hidden;
	float:left;
	background-position:50% 50%;
	background-size:cover;
	opacity:0.7;
	transform-origin:50% 50%;
	transform:scale(1);
	filter:grayscale(0%);
	transition: all 0.2s ease-in-out;
}
.portfolio .box:hover .image {
	opacity:0.2;
	transform:scale(1.1);
	filter:grayscale(50%);
}
.portfolio .box .image::after {
	position:relative;
	display:block;
	width:100%;
	padding:60% 0 0 0;
	float:left;
	content:'';
}
.portfolio .box .title {
	position:absolute;
	bottom:20px;
	left:20px;
}
.portfolio .box .title h1 {
	position:relative;
	padding:0;
	margin:0;
	font-size:24px;
	font-weight:bold;
	
	color:#fff;
}
.portfolio .box a {
	position:absolute;
	display:block;
	width:100%;
	height:100%;
	top:0;
	z-index:5;
}
@media screen and (max-width: 1200px) {
	.portfolio {
		padding:80px 0 40px 0;
	}
	.portfolio .wrap {
		position:relative;
		width:calc(100% + 40px);
		left:-20px;
		overflow:hidden;
	}
	.portfolio .box {
		width:calc(50% - 40px);
		margin:0 20px 40px 20px;
	}
	.portfolio .box .title h1 {
		font-size:18px;
	}
}
@media screen and (max-width: 800px) {
	.portfolio {
		padding:60px 0 30px 0;
	}
	.portfolio .box {
		width:calc(50% - 30px);
		margin:0 15px 30px 15px;
	}
	.portfolio .box {
		width:calc(100% - 30px);
		margin:0 15px 30px 15px;
	}
}

/* == portfolio - list == */
.portfolio-list {
	position:relative;
	width:100%;
	max-width:1200px;
	margin:0 auto;
	padding:100px 0 70px 0;
	overflow:hidden;
}
.portfolio-list .page-title {
	position:relative;
	width:100%;
	max-width:1200px;
	margin:0 auto;
	padding:0 0 50px 0;
	overflow:hidden;
}
.portfolio-list .page-title h1 {
	position:relative;
	width:100%;
	margin:0;
	padding:0;
	font-size:36px;
	
	text-align:center;
}
.portfolio-list .more {
	position:relative;
	width:calc(100% + 30px);
	left:-15px;
	text-align:center;
	padding:0 0 50px 0;
}
.portfolio-list .more a {
	position:relative;
	display:inline-block;
	line-height:60px;
	width:calc(33.33% - 30px);
	border-radius:2px;
	background:#666;
	font-size:18px;
	font-weight:300;
	color:#fff;
	transition: all 0.2s ease-in-out;
}
.portfolio-list .more a:hover {
	background:#717b84;
	color:#fff;
}
.portfolio-list .filter {
	position:relative;
	width:calc(100% + 30px);
	left:-15px;
	overflow:hidden;
}
.portfolio-list .filter .item {
	position:relative;
	width:calc(25% - 30px);
	margin:0 15px 30px 15px;
	float:left;
	background:#666;
	color:#fff;
	line-height:50px;
	border-radius:2px;
	text-indent:20px;
	font-size:16px;
	font-weight:300;
	cursor:pointer;
	transition: all 0.2s ease-in-out;
}
.portfolio-list .filter .item:hover {
	background:#717b84;
}
.portfolio-list .filter .item.active::after {
	position:absolute;
	display:block;
	width:30px;
	height:30px;
	top:10px;
	right:10px;
	transform-origin:50% 50%;
	transform:scale(1) rotate(-75deg);
	opacity:1;
	content:'';
	background:url(../image/img/ico-control.svg) 50% 100% no-repeat;
	background-size:500% 300%;
	transition: all 0.2s ease-in-out;
	pointer-events:none;
}
.portfolio-list .filter .item.active:hover::after {
	transform:scale(0.5) rotate(-75deg);
	opacity:0;
}
.portfolio-list .filter .item.active::before {
	position:absolute;
	display:block;
	width:30px;
	height:30px;
	top:10px;
	right:10px;
	transform-origin:50% 50%;
	transform:scale(0.5);
	opacity:0;
	content:'';
	background:url(../image/img/ico-control.svg) 25% 100% no-repeat;
	background-size:500% 300%;
	transition: all 0.2s ease-in-out;
	pointer-events:none;
}
.portfolio-list .filter .item.active:hover::before {
	transform:scale(1);
	opacity:1;
}
.portfolio-list .filter .item label {
	position:relative;
	display:block;
	width:100%;
	float:left;
	line-height:50px;
	cursor:pointer;
}
.portfolio-list .filter .item label input {
	display:none;
}
.portfolio-list .wrap {
	position:relative;
	width:calc(100% + 30px);
	left:-15px;
	overflow:hidden;
}
.portfolio-list .box {
	position:relative;
	width:calc(33.33% - 30px);
	margin:0 15px 30px 15px;
	float:left;
	overflow:hidden;
	background:#666;
	border-radius:2px;
}
.portfolio-list .box .image {
	position:relative;
	width:100%;
	overflow:hidden;
	background-position:50% 50%;
	background-size:cover;
	opacity:0.7;
	transform-origin:50% 50%;
	transform:scale(1);
	transition: all 0.2s ease-in-out;
}
.portfolio-list .box:hover .image {
	opacity:0.2;
	transform:scale(1.1);
}
.portfolio-list .box .image::after {
	position:relative;
	width:100%;
	float:left;
	padding:80% 0 0 0;
	content:'';
}
.portfolio-list .box .title {
	position:absolute;
	width:80%;
	top:50%;
	left:10%;
	transform-origin:50% 50%;
	transform:translateY(-50%) scale(2);
	z-index:3;
	text-align:center;
	opacity:0;
	filter:blur(5px);
	transition: all 0.2s ease-in-out;
}
.portfolio-list .box:hover .title {
	transform:translateY(-50%) scale(1);
	opacity:1;
	filter:blur(0px);
}
.portfolio-list .box .title h1 {
	position:relative;
	padding:0;
	margin:0;
	
	font-size:24px;
	color:#fff;
}
.portfolio-list .box .title h2 {
	position:relative;
	padding:0;
	margin:0;
	
	font-size:18px;
	font-weight:300;
	color:#fff;
}
.portfolio-list .box a {
	position:absolute;
	width:100%;
	height:100%;
	top:0;
	left:0;
	z-index:5;
}
@media screen and (max-width: 1500px) {
	.portfolio-list .filter .item {
		width:calc(25% - 30px);
		margin:0 15px 30px 15px;
		font-size:14px;
	}
}
@media screen and (max-width: 1000px) {
	.portfolio-list .page-title h1 {
		font-size:24px;
	}
	.portfolio-list .filter .item {
		width:calc(33.33% - 30px);
		margin:0 15px 30px 15px;
		font-size:14px;
	}
	.portfolio-list .box {
		width:calc(50% - 30px);
		margin:0 15px 30px 15px;
	}
}
@media screen and (max-width: 800px) {
	.portfolio-list .page-title h1 {
		font-size:20px;
	}
	.portfolio-list .filter .item {
		width:calc(50% - 30px);
		margin:0 15px 30px 15px;
		font-size:14px;
	}
	.portfolio-list .box {
		width:calc(50% - 30px);
		margin:0 15px 30px 15px;
	}
}
@media screen and (max-width: 600px) {
	.portfolio-list .more {
		padding:0;
	}
	.portfolio-list .more a {
		width:calc(100% - 30px);
	}
	.portfolio-list .filter .item {
		width:calc(100% - 30px);
		margin:0 15px 30px 15px;
		font-size:14px;
	}
	.portfolio-list .box {
		width:calc(100% - 30px);
		margin:0 15px 30px 15px;
	}
}

/* == portfolio - gallery == */
.portfolio-gallery {
	position:relative;
	width:100%;
	padding:30px 0 70px 0;
	overflow:hidden;
}
.portfolio-gallery .wrap {
	position:relative;
	width:calc(100% + 30px);
	left:-15px;
	overflow:hidden;
}
.portfolio-gallery .box {
	position:relative;
	width:calc(25% - 30px);
	margin:0 15px 30px 15px;
	float:left;
	overflow:hidden;
	background:#222;
	border-radius:5px;
	box-shadow: 0 3px 5px rgba(0, 0, 0, 0.2);
}
.portfolio-gallery .box .image {
	position:relative;
	width:100%;
	overflow:hidden;
	background-position:50% 50%;
	background-size:cover;
	opacity:1;
	transform-origin:50% 50%;
	transition: all 0.2s ease-in-out;
}
.portfolio-gallery .box:hover .image {
	opacity:0.7;
}
.portfolio-gallery .box .image::after {
	position:relative;
	width:100%;
	float:left;
	padding:80% 0 0 0;
	content:'';
}
.portfolio-gallery .box a {
	position:absolute;
	width:100%;
	height:100%;
	top:0;
	left:0;
	z-index:5;
}
@media screen and (max-width: 1500px) {
}
@media screen and (max-width: 1000px) {
	.portfolio-gallery .box {
		width:calc(50% - 30px);
		margin:0 15px 30px 15px;
	}
}
@media screen and (max-width: 800px) {
	.portfolio-gallery .box {
		width:calc(50% - 30px);
		margin:0 15px 30px 15px;
	}
}
@media screen and (max-width: 600px) {
	.portfolio-gallery .box {
		width:calc(100% - 30px);
		margin:0 15px 30px 15px;
	}
}

/* == portfolio - video == */
.movies {
	position:relative;
	width:calc(100% + 30px);
	left:-15px;
	overflow:hidden;
}
.portfolio-video {
	position:relative;
	width:calc(100% - 30px);
	padding:30px 15px 0 15px;
	margin:0 auto;
	overflow:hidden;
	max-width:70%;
}
.portfolio-video .video {
	position:relative;
	padding-bottom: 56.25%;
	width:100%;
	height:0;
	border-radius:5px;
}
.portfolio-video .video iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index:10;
}
@media screen and (max-width: 1000px) {
	.portfolio-video {
		max-width:100%;
	}
}

/* == portfolio - info == */
.portfolio-info {
	position:relative;
	width:100%;
	max-width:1200px;
	margin:0 auto;
	padding:100px 0 70px 0;
	overflow:hidden;
	font-size:18px;
	font-weight:300;
}
.portfolio-info h1 {
	position:relative;
	padding:0;
	margin:0;
	font-size:62px;
	line-height:62px;
	
}
.portfolio-info h2 {
	position:relative;
	padding:0;
	margin:0;
	font-size:24px;
	font-weight:400;
	
}
.portfolio-info .spacer {
	position:relative;
	width:100%;
	height:30px;
}
.portfolio-info ul {
	position:relative;
	display:block;
	list-style:none;
	padding:30px 0 20px 0;
	margin:0;
}
.portfolio-info ul li {
	position:relative;
	display:block;
	width:calc(100% - 20px);
	padding:0 0 10px 20px;
	margin:0;
}
.portfolio-info ul li::after {
	position:absolute;
	display:block;
	width:15px;
	height:10px;
	border-radius:5px;
	top:1px;
	left:0;
	transform-origin:0 50%;
	transform:rotate(30deg);
	content:'';
	box-shadow:0 2px 4px rgba(0, 0, 0, 0.1);
}
.white .portfolio-info ul li::after, .grey .portfolio-info ul li::after {
	background:#717b84;
}
.dark .portfolio-info ul li::after, .blue .portfolio-info ul li::after {
	background:#fff;
}
@media screen and (max-width: 1200px) {
	.portfolio-info {
		padding:80px 0 50px 0;
		font-size:16px;
	}
}
@media screen and (max-width: 600px) {
	.portfolio-info {
		padding:50px 0 20px 0;
		font-size:16px;
	}
}

/* == offer - list == */
.offer-list {
	position:relative;
	width:calc(100% + 50px);
	left:-25px;
	overflow:hidden;
	padding:50px 0 150px 0;
}
.offer-list::after {
	position:absolute;
	top:50%;
	left:50%;
	display:block;
	width:4px;
	height:120%;
	border-radius:2px;
	transform-origin:50% 50%;
	transform:translate(-50%, -50%);
	background:#717b84;
	content:'';
}
.offer-list .box {
	position:relative;
	width:calc(50% + 10px);
	float:left;
	z-index:2;
}
.offer-list .box:nth-of-type(2n) {
	float:right;
}
.offer-list .box::after {
	position:relative;
	display:block;
	width:100%;
	float:left;
	padding:27% 0 0 0;
	content:'';
}
.offer-list .box::before {
	position:absolute;
	display:block;
	width:50%;
	height:4px;
	top:74%;
	right:9px;
	background:#717b84;
	transform-origin:50% 50%;
	transform:translateY(-50%);
	content:'';
}
.offer-list .box:nth-of-type(2n)::before {
	left:9px;
}
.offer-list .box .inner {
	position:absolute;
	width:40%;
	top:0;
	left:50%;
	transform-origin:50% 50%;
	transform:translateX(-50%);
	z-index:3;
}
.offer-list .box .image-wrap {
	position:relative;
	width:calc(100% - 8px);
	overflow:hidden;
	border-radius:100%;
	background:#717b84;
	float:left;
	overflow:hidden;
	border:4px solid #717b84;
}
.offer-list .box .image-wrap a {
	position:absolute;
	display:block;
	width:100%;
	height:100%;
	top:0;
	left:0;
	z-index:3;
}
.offer-list .box .image-wrap::before {
	position:relative;
	display:block;
	width:100%;
	padding:100% 0 0 0;
	float:left;
	content:'';
	z-index:1;
}
.offer-list .box .image-wrap .image {
	position:absolute;
	width:100%;
	height:100%;
	top:0;
	left:0;
	background-position:50% 50%;
	background-repeat:no-repeat;
	background-size:cover;
	transform-origin:50% 50%;
	transform:scale(1);
	opacity:1;
	transition: all 0.2s ease-in-out;
	z-index:2;
}
.offer-list .box:hover .image-wrap .image {
	transform:scale(1.1);
	opacity:0.5;
}
.offer-list .box .inner .title {
	position:absolute;
	display:block;
	top:50%;
	left:155%;
	font-size:20px;
	padding:0 15px;
	line-height:40px;
	border-radius:20px;
	font-weight:300;
	white-space:nowrap;
	color:#fff;
	background:#717b84;
	transform-origin:50% 50%;
	transform:translateY(-50%);
	z-index:3;
}
.offer-list .box:nth-of-type(2n) .inner .title {
	right:155%;
	left:auto;
}
@media screen and (max-width: 900px) {
	.offer-list .box::after {
		padding:35% 0 0 0;
	}
	.offer-list .box::before {
		top:56%;
	}
}
@media screen and (max-width: 700px) {
	.offer-list .box::after {
		padding:70% 0 0 0;
	}
	.offer-list .box::before {
		top:56%;
	}
	.offer-list .box .inner {
		width:80%;
		left:0%;
		transform:none;
	}
	.offer-list .box:nth-of-type(2n) .inner {
		right:0%;
		left:auto;
	}
	.offer-list .box .inner .title {
		left:112%;
	}
	.offer-list .box:nth-of-type(2n) .inner .title {
		right:112%;
		left:auto;
	}
}
@media screen and (max-width: 500px) {
	.offer-list .box {
		width:100%;
		text-align:center;
	}
	.offer-list .box::before {
		display:none;
	}
	.offer-list .box::after {
		display:none;
	}
	.offer-list .box .inner {
		position:relative;
		width:100%;
		top:auto;
		left:auto;
		transform:none;
	}
	.offer-list .box .inner::after {
		display:none;
	}
	.offer-list .box .image-wrap {
		width:calc(60% - 8px);
		margin:0 auto;
		float:none;
	}
	.offer-list .box .inner .title {
		position:relative;
		display:inline-block;
		top:auto;
		left:auto;
		font-size:20px;
		padding:0 15px;
		line-height:40px;
		transform:none;
		margin:10px auto 50px auto;
		z-index:3;
	}
	.offer-list .box:nth-of-type(2n) .inner .title {
		right:auto;
	}
}



/* == category - list == */
.category-list {
	position:relative;
	width:calc(100% + 80px);
	left:-40px;
	overflow:hidden;
	padding:50px 0 100px 0;
}
.category-list::before {
	position:absolute;
	display:block;
	width:4px;
	height:75px;
	bottom:-2px;
	left:50%;
	border-radius:2px;
	background:#717b84;
	transform-origin:50% 50%;
	transform:translateX(-50%);
	content:'';
}
.category-list::after {
	position:absolute;
	display:block;
	width:67%;
	height:4px;
	bottom:70px;
	left:50%;
	border-radius:2px;
	background:#717b84;
	transform-origin:50% 50%;
	transform:translateX(-50%);
	content:'';
}
.category-list .box {
	position:relative;
	width:calc(33.33% - 80px);
	margin:0px 40px 50px 40px;
	float:left;
	text-align:center;
}
.category-list .box::after {
	position:absolute;
	display:block;
	width:4px;
	height:calc(100% + 80px);
	top:0px;
	left:50%;
	border-radius:2px;
	background:#717b84;
	transform-origin:50% 50%;
	transform:translateX(-50%);
	content:'';
}
.category-list .box .image-wrap {
	position:relative;
	width:80%;
	margin:0 auto;
	overflow:hidden;
	border-radius:100%;
	background:#717b84;
	border:4px solid #717b84;
}
.category-list .box .image-wrap::after {
	position:relative;
	display:block;
	width:100%;
	padding:100% 0 0 0;
	content:'';
	float:left;
	z-index:1;
}
.category-list .box .image-wrap .image {
	position:absolute;
	width:100%;
	height:100%;
	top:50%;
	left:50%;
	overflow:hidden;
	background-position:50% 50%;
	background-size:cover;
	background-repeat:no-repeat;
	z-index:2;
	transition: all 0.2s ease-in-out;
	transform-origin:50% 50%;
	transform:translate(-50%, -50%);
}
.category-list .box:hover .image-wrap .image {
	transform:translate(-50%, -50%) scale(1.1);
	opacity:0.7;
}
.category-list .box .title {
	position:relative;
	display:inline-block;
	font-size:20px;
	padding:0 15px;
	line-height:40px;
	border-radius:20px;
	font-weight:300;
	white-space:nowrap;
	color:#fff;
	background:#717b84;
	z-index:3;
	margin:15px 0 0 0;
}
.category-list .box a {
	position:absolute;
	display:block;
	width:100%;
	height:100%;
	top:0;
	left:0;
	z-index:5;
}
@media screen and (max-width: 1000px) {
	.category-list .box .image-wrap {
		width:100%;
	}
}
@media screen and (max-width: 600px) {
	.category-list .box {
		width:calc(80% - 80px);
		margin:0 auto 50px auto;
		float:none;
	}
	.category-list::after {
		display:none;
	}
}




/* == pricing == */
.pricing {
	position:relative;
	width:100%;
	overflow:hidden;
	padding:100px 0;
}
.pricing .box {
	position:relative;
	width:100%;
	overflow:hidden;
	padding:0 0 20px 0;
	float:left;
}
.pricing .box .title {
	position:relative;
	float:left;
	line-height:30px;
	font-size:24px;
	font-weight:300;
	color:#717b84;
	background:#fff;
	padding:0 20px 0 0;
	z-index:2;
}
.pricing .box .desc {
	position:relative;
	float:left;
	width:100%;
	font-size:16px;
}
.pricing .box .price {
	position:relative;
	float:right;
	line-height:30px;
	font-size:24px;
	font-weight:400;
	color:#717b84;
	background:#fff;
	padding:0 0 0 20px;
	z-index:2;
}
.pricing .box::after {
	position:absolute;
	display:block;
	top:16px;
	left:5px;
	width:calc(100% - 10px);
	border-top:2px dashed #666;
	height:1px;
	content:'';
	z-index:1;
	opacity:0.5;
}
.pricing .heading {
	width:100%;
	height:30px;
	line-height:30px;
	padding:10px 0;
	float:left;
	text-align:center;
	font-size:32px;
	font-weight:300;
	color:#717b84;
}
@media screen and (max-width: 700px) {
	.pricing .box {
		padding:0 0 15px 0;
	}
	.pricing .box::after {
		top:13px;
		border-top:1px dashed #666;
	}
	.pricing .box .title {
		line-height:20px;
		font-size:18px;
		padding:0 10px 0 0;
	}
	.pricing .box .price {
		line-height:20px;
		font-size:18px;
		padding:0 0 0 10px;
	}
	.pricing .box .desc {
		font-size:14px;
		padding:5px 0 0 0;
	}
	.pricing .heading {
		font-size:24px;
	}
}






/* == map == */
.map {
	position:relative;
	width:100%;
	height:350px;
	overflow:hidden;
	color:#222;
}
.map::before {
	position: absolute;
    width: 4px;
    height: 20px;
    top: -1%;
    left: 50%;
    border-radius: 3px;
    transform-origin: 50% 50%;
    transform: translateX(-50%);
    content: '';
    z-index: 3;
    background: #717b84;
}
.map::after {
	position: absolute;
    width: 4px;
    height: 20px;
    bottom: -1%;
    left: 50%;
    border-radius: 3px;
    transform-origin: 50% 50%;
    transform: translateX(-50%);
    content: '';
    z-index: 3;
    background: #717b84;
}
.map iframe {
	position:absolute;
	width:200%;
	height:200%;
	top:-50%;
	left:-50%;
	z-index:1;
	-webkit-filter: grayscale(100%); /* Safari 6.0 - 9.0 */
    filter: grayscale(100%);
}



/* == contact == */
.contact {
	position:relative;
	width:100%;
	padding:100px 0 0 0;
	overflow:hidden;
}
.contact::before {
	position: absolute;
    width: 4px;
    height: 120%;
    top: -1%;
    left: 50%;
    border-radius: 3px;
    transform-origin: 50% 50%;
    transform: translateX(-50%);
    content: '';
    z-index: -1;
    background: #717b84;
}
.contact .additional-info {
	position:relative;
	width:calc(100% - 46px);
	max-width:800px;
	text-align:center;
	padding:20px;
	border-radius:5px;
	border: 3px solid #717b84;
	font-weight:300;
	clear:both;
	background:#fff;
	margin: 0 auto 50px auto;
}
.contact .box {
	position:relative;
	float:left;
	width:calc(50% + 50px);
	text-align:right;
	font-weight:300;
}
.contact .box a {
	color:#717b84;
	transition: all 0.2s ease-in-out;
}
.contact .box a:hover {
	color:#666;
}
.contact .box::before {
	position: absolute;
    width: 80px;
    height: 4px;
    top:50%;
    right:48px;
    border-radius: 3px;
    transform-origin: 50% 50%;
    transform: translateY(-50%);
    content: '';
    z-index: -1;
    background: #717b84;
}
.contact .box:nth-of-type(2n)::before {
    left:48px;
	right:auto;
}
.contact .box:nth-of-type(2n) {
	float:right;
	text-align:left;
}
.contact .box.address {
	line-height:40px;
	font-size:20px;
}
.contact .box.address .ico::before {
	position:absolute;
	display:block;
	width:80%;
	height:80%;
	top:50%;
	left:50%;
	background:url(../image/img/ico-set-blue.svg) 50% 100% no-repeat;
	background-size:500% 200%;
	content:'';
	transform-origin:50% 50%;
	transform:translate(-50%, -50%);
	z-index:2;
}
.contact .box.phone {
	line-height:80px;
	font-size:24px;
}
.contact .box.phone .ico::before {
	position:absolute;
	display:block;
	width:80%;
	height:80%;
	top:50%;
	left:50%;
	background:url(../image/img/ico-set-blue.svg) 0% 100% no-repeat;
	background-size:500% 200%;
	content:'';
	transform-origin:50% 50%;
	transform:translate(-50%, -50%);
	z-index:2;
}
.contact .box.email {
	line-height:80px;
	font-size:24px;
}
.contact .box.email .ico::before {
	position:absolute;
	display:block;
	width:80%;
	height:80%;
	top:50%;
	left:50%;
	background:url(../image/img/ico-set-blue.svg) 25% 100% no-repeat;
	background-size:500% 200%;
	content:'';
	transform-origin:50% 50%;
	transform:translate(-50%, -50%);
	z-index:2;
}
.contact .box.fb {
	line-height:80px;
	font-size:24px;
}
.contact .box.fb .ico::before {
	position:absolute;
	display:block;
	width:80%;
	height:80%;
	top:50%;
	left:50%;
	background:url(../image/img/ico-set-blue.svg) 100% 100% no-repeat;
	background-size:500% 200%;
	content:'';
	transform-origin:50% 50%;
	transform:translate(-50%, -50%);
	z-index:2;
}
.contact .box.insta {
	line-height:80px;
	font-size:24px;
}
.contact .box.insta .ico::before {
	position:absolute;
	display:block;
	width:80%;
	height:80%;
	top:50%;
	left:50%;
	background:url(../image/img/ico-set-blue.svg) 100% 0% no-repeat;
	background-size:500% 200%;
	content:'';
	transform-origin:50% 50%;
	transform:translate(-50%, -50%);
	z-index:2;
}
.contact .box.hours .row {
}
.contact .box.hours {
	line-height:80px;
	font-size:24px;
}
.contact .box.hours .ico::before {
	position:absolute;
	display:block;
	width:80%;
	height:80%;
	top:50%;
	left:50%;
	background:url(../image/img/ico-set-blue.svg) 75% 100% no-repeat;
	background-size:500% 200%;
	content:'';
	transform-origin:50% 50%;
	transform:translate(-50%, -50%);
	z-index:2;
}
.contact .box.hours.two .row {
	line-height:40px;
	font-size:24px;
}
.contact .box.hours.three .row {
	line-height:20px;
	font-size:18px;
	padding:3px 0;
}
.contact .box.hours .row b {
	display:inline-block;
	width:70px;
}
.contact .box.hours.three .row b {
	width:55px;
}
.contact .box .ico {
	position:relative;
	float:right;
	width: 72px;
	height: 72px;
	border: 4px solid #717b84;
	background: #fff;
	border-radius:100%;
	margin:0 100px 0 30px;
}
.contact .box:nth-of-type(2n) .ico {
	float:left;
	margin:0 30px 0 100px;
}
.contact .bar {
	display:none;
}

@media screen and (max-width: 900px) {
	.contact .box {
		position:relative;
		height:80px;
		float:right;
		width:45%;
		padding:0 0 0 150px;
		margin:0 0 30px 0;
		text-align:left;
		font-size:18px!important;
	}
	.contact .box::before, .contact .box:nth-of-type(2n)::before {
		left:10px;
		right:auto;
		width:110px;
		border-radius:0;
		height:4px;
	}
	.contact .box .ico {
		position:absolute;
		float:none;
		top:0;
		left:0;
		margin:0;
		z-index:10;
	}
	.contact .box:nth-of-type(2n) .ico {
		left:0;
		right:auto;
		margin:0;
		float:none;
	}
	
}
@media screen and (max-width: 600px) {
	.contact {
		
	}
	.contact::before {
		position: absolute;
		width: 4px;
		height: 74px;
		top: -2px;
		left: 50%;
		border-radius: 3px;
		transform-origin: 50% 50%;
		transform: translateX(-50%);
		content: '';
		z-index: 1;
		background: #717b84;
	}
	.contact::after {
		position: absolute;
		width: 4px;
		height: 5px;
		bottom: -2px;
		left: 50%;
		border-radius: 3px;
		transform-origin: 50% 50%;
		transform: translateX(-50%);
		content: '';
		z-index: 1;
		background: #717b84;
	}
	.contact .additional-info::before {
		position: absolute;
		width: 4px;
		height: calc(100% + 64px);
		top: 50%;
		left: 37px;
		transform-origin: 50% 50%;
		transform: translateY(-50%);
		content: '';
		z-index: -1;
		background: #717b84;
	}
	.contact .box {
		position:relative;
		height:80px;
		float:right;
		width:calc(100% - 90px);
		padding:0 0 0 90px;
		margin:0 0 30px 0;
		text-align:left;
		font-size:18px!important;
		background:#fff;
		z-index:3;
	}
	.contact .box::before {
		height:calc(100% + 60px)!important;
		width:4px!important;
		left:40px!important;
	}
	.contact .box::before, .contact .box:nth-of-type(2n)::before {
		
	}
	.contact .bar {
		position:absolute;
		display:block;
		width:calc(50% - 38px);
		height:4px;
		left:40px;
		border-radius:2px;
		background:#717b84;
	}
	.contact .bar.top {
		top:68px;
	}
	.contact .bar.bottom {
		bottom:0;
		padding:0;
	}
}



/* == contact - form == */
.contact-form {
	position:relative;
	width:100%;
	max-width:1000px;
	margin:150px auto;
}
.blue .contact-form {
	color:#fff;
}
.contact-form::before {
	position: absolute;
    width: 4px;
    height: 100%;
    top: -98%;
	left:50%;
	border-radius:3px;
    transform-origin: 50% 50%;
    transform: translateX(-50%);
    content: '';
    z-index: -1;
	background: #717b84;
}
.contact-form::after {
	position: absolute;
    width: 4px;
    height: 100%;
    bottom: -98%;
	left:50%;
	border-radius:3px;
    transform-origin: 50% 50%;
    transform: translateX(-50%);
    content: '';
    z-index: -1;
	background: #717b84;
}
.blue .contact-form::before, .blue .contact-form::after {
	background: #fff;
}
.contact-form h1 {
	position:relative;
	padding:0 0 10px 0;
	margin:0;
	font-size:34px;
	line-height:34px;
	color: #717b84;
	font-weight:400;
	text-transform:uppercase;
	text-align:center;
}
.contact-form h2 {
	position:relative;
	padding:0;
	margin:0;
	font-size:24px;
	font-weight:300;
	color: #717b84;
	text-align:center;
}
.contact-form .icon {
	position: relative;
    width: 80px;
    background: #fff;
    border: 4px solid #717b84;
    border-radius: 100%;
    overflow: hidden;
    margin: 0 auto 50px auto;
    cursor: pointer;
}
.light .contact-form .icon {
	background: #eaebed;
}
.blue .contact-form .icon {
    background: #717b84;
    border: 4px solid #fff;
}
.contact-form .icon::after {
	position:relative;
	display:block;
	padding:100% 0 0 0;
	content:'';
}
.contact-form .icon::before {
	position:absolute;
	display:block;
	width:80%;
	height:80%;
	top:50%;
	left:50%;
	background:url(../image/img/ico-set-blue.svg) 25% 0% no-repeat;
	background-size:500% 200%;
	content:'';
	transform-origin:50% 50%;
	transform:translate(-50%, -50%);
	z-index:2;
}
.contact-form .arrow {
	position: relative;
    width: 80px;
    background: #fff;
    border: 4px solid #717b84;
    border-radius: 100%;
    overflow: hidden;
    margin: 50px auto 0 auto;
    cursor: pointer;
}
.light .contact-form .arrow {
	background: #eaebed;
}
.blue .contact-form .arrow {
    background: #717b84;
    border: 4px solid #fff;
}
.contact-form .arrow::after {
	position:relative;
	display:block;
	padding:100% 0 0 0;
	content:'';
}
@media screen and (max-height: 700px) {
	.contact-form .icon {
		margin:0 auto 25px auto;
	}
	.contact-form .arrow {
		margin:25px auto 0 auto;
	}
}
@media screen and (max-width: 1500px) {
	.contact-form {
	}
	.contact-form h1 {
		font-size:52px;
		line-height:52px;
	}
	.contact-form h2 {
		font-size:22px;
		font-weight:400;
	}
}
@media screen and (max-width: 1200px) {
	.contact-form {
		margin:100px auto;
	}
	.contact-form h1 {
		font-size:42px;
		line-height:42px;
	}
	.contact-form h2 {
		font-size:20px;
	}
}
@media screen and (max-width: 1000px) {
}
@media screen and (max-width: 800px) {
}



/* == form == */
.form {
	position:relative;
	width:calc(100% + 50px);
	left:-25px;
	overflow:hidden;
	padding:50px 0 0 0;
}
.form h2 {
	position:relative;
	text-align:center;
	padding:100px 0;
	color:#222;
	font-size:18px;
}
.form .col {
	position:relative;
	float:left;
}
.form .col.full {
	width:calc(100% - 50px);
	margin:0 25px;
}
.form .col.half {
	width:calc(50% - 50px);
	margin:0 25px;
}
.form .col.third {
	width:calc(33.33% - 50px);
	margin:0 25px;
}
.form .col.quarter {
	width:calc(25% - 50px);
	margin:0 25px;
}
.form .col.sixth {
	width:calc(12.5% - 50px);
	margin:0 25px;
}
.form .col .row {
	position:relative;
	width:100%;
	float:left;
	padding:0 0 30px 0;
}
.form .col:last-of-type .row {
	padding:0;
}
.form .col .row.full-height {
	line-height:60px;
}
.form .col h3 {
	display:block;
	position:relative;
	padding:15px 0;
	margin:0;
	font-size:24px;
	font-weight:normal;
	overflow:hidden;
}
.form .col h3 span {
	display:block;
	float:left;
	position:relative;
	background:#fff;
	z-index:2;
	padding:0 20px 0 0;
}
.form .col h3::after {
	display:block;
	position:absolute;
	height:1px;
	width:100%;
	background:#f3f3f3;
	top:50%;
	left:0;
	transform-origin:50% 50%;
	transform:translateY(-50%);
	content:'';
}
.form .col .row .control-label {
	position:absolute;
	line-height:20px;
	padding:0 5px;
	background:#ccc;
	top:-10px;
	left:10px;
	z-index:2;
	border-radius:5px;
	font-size:14px;
	display:none;
}
.form .col .row input[type=text], input[type=password], input[type=email], input[type=tel] {
	position:relative;
	box-sizing:content-box;
	display:block;
	float:left;
	height:20px;
	min-height:20px;
	max-height:20px;
	width:calc(100% - 36px);
	min-width:calc(100% - 36px);
	max-width:calc(100% - 36px);
	padding:15px;
	border-radius:5px;
	margin:0;
	transition: all 0.2s ease-in-out;
}
.white .form .col .row input[type=text], input[type=password], input[type=email], input[type=tel] {
	border:3px solid #717b84;
	background:#fff;
}
.light .form .col .row input[type=text], input[type=password], input[type=email], input[type=tel] {
	border:3px solid #717b84;
	background:#eaebed;
}
.blue .form .col .row input[type=text], input[type=password], input[type=email], input[type=tel] {
	border:3px solid #fff;
	background:#717b84;
	color:#fff;
}
.form .col .row input[type=text].error, input[type=password].error, input[type=email].error, input[type=tel].error {
	color:#fff;
	background:#CC0000!important;
}
.form .col .row .error::placeholder {
	color:#cca1a1;
}
.form .col .row textarea {
	position:relative;
	display:block;
	float:left;
	height:20px;
	width:calc(100% - 36px);
	min-width:calc(100% - 36px);
	height:200px;
	padding:15px;
	border-radius:5px;
	margin:0;
	transition: all 0.2s ease-in-out;
}
.white .form .col .row textarea {
	border:3px solid #717b84;
	background:#fff;
}
.light .form .col .row textarea {
	border:3px solid #717b84;
	background:#eaebed;
}
.blue .form .col .row textarea {
	border:3px solid #fff;
	background:#717b84;
}
.form .col .row textarea.error {
	background:#CC0000!important;
	color:#fff;
}
.form .col .row select {
	position:relative;
	display:block;
	float:left;
	height:60px;
	width:100%;
	padding:20px;
	border:0;
	border-radius:5px;
	background:#f3f3f3;
	margin:0;
	transition: all 0.2s ease-in-out;
}
.form .col .row select.error {
	background:#CC0000!important;
	color:#fff;
}
.form .col .row .text-danger {
	position:absolute;
	top:calc(100% - 45px);
	left:10px;
	padding:5px;
	background:#CC0000;
	color:#fff;
	z-index:2;
	font-size:12px;
	border-radius:3px;
}
.form #enquiry-nr {
	position:absolute;
	left:-400px;
	top:-70px;
	z-index:-1;
}
@media screen and (max-width: 1600px) {
	.form .col.sixth {
		width:calc(25% - 50px);
		margin:0 25px;
	}
}
@media screen and (max-width: 800px) {
	.form .col.half, .form .col.third, .form .col.quarter, .form .col.sixth {
		width:calc(100% - 50px);
	}
}



/* == form - success == */
.form-success {
	position:relative;
	width:100%;
	padding:80px 0;
	font-size:18px;
	text-align:center;
}
.form-success h2 {
	position:relative;
	width:100%;
	padding:0;
	margin:0 0 20px 0;
	font-size:24px;
	
	font-weight:normal;
}



/* == buttons == */
.buttons {
	position:relative;
	width:100%;
	padding:50px 0 50px 0;
	overflow:hidden;
	text-align:center;
}
.buttons .button {
	position:relative;
	display:block;
	font-size:18px;
	line-height:50px;
	border-radius:5px;
	cursor:pointer;
	border:0;
	transition: all 0.2s ease-in-out;
}
.white .buttons .button, .light .buttons .button {
	color:#fff;
	background: #717b84;
}
.white .buttons .button:hover {
	color:#717b84;
    background: #eaebed;
}
.light .buttons .button:hover {
	color:#717b84;
    background: #fff;
}
.blue .buttons .button {
	color:#717b84;
	background: #fff;
}
.buttons .button:hover {
	color:#fff;
    background: #222;
}
.buttons .button.left {
	float:left;
	padding:0 20px 0 180px;
}
.buttons .button.right {
	float:right;
	padding:0 180px 0 20px;
}
.buttons .button::after {
	position:absolute;
	display:block;
	width:50px;
	height:50px;
	content:'';
	top:50%;
	transform-origin:50% 50%;
	transform:translateY(-50%);
}
.buttons .button::before {
	position:absolute;
	display:block;
	width:50px;
	height:50px;
	content:'';
	top:50%;
	transform-origin:50% 50%;
	transform:translateY(-50%);
}
.buttons .button.right::after {
	background:url(../image/ico-control.svg) 100% 0 no-repeat;
	background-size:400% 300%;
	right:10px;
	transition: all 0.2s ease-in-out;
}
.buttons .button.right:hover::after {
	opacity:0;
}
.buttons .button.right::before {
	background:url(../image/ico-control.svg) 100% 100% no-repeat;
	background-size:400% 300%;
	right:10px;
	transition: all 0.2s ease-in-out;
	opacity:0;
}
.buttons .button.right:hover::before {
	opacity:1;
}
.buttons .button.left::after {
	background:url(../image/ico-control.svg) 100% 0 no-repeat;
	background-size:400% 300%;
	transform:translateY(-50%) rotate(180deg);
	left:10px;
	transition: all 0.2s ease-in-out;
}
.buttons .button.left:hover::after {
	opacity:0;
}
.buttons .button.left::before {
	background:url(../image/ico-control.svg) 100% 100% no-repeat;
	background-size:400% 300%;
	transform:translateY(-50%) rotate(180deg);
	left:10px;
	transition: all 0.2s ease-in-out;
	opacity:0;
}
.buttons .button.left:hover::before {
	opacity:1;
}
.buttons .button.center {
	padding:0 100px 0 100px;
	display:inline-block;
}
@media screen and (max-width: 800px) {
	.buttons .button {
		width:calc(100% - 40px);
		margin:0 0 20px 0;
		padding:0;
	}
	.buttons .button.center {
		padding:0 20px;
	}
	.buttons .button.left {
		padding:0 20px 0 20px;
	}
	.buttons .button.right {
		padding:0 20px 0 20px;
	}
}


/* == pagination == */
.pagination {
	position:relative;
	overflow:hidden;
	float:right;
	right:-10px;
}
.pagination a {
	display:block;
	width:70px;
	line-height:70px;
	background: #fdec10;
	color:#222;
	float:left;
	border-radius: 5px;
	margin:0 10px 0 0;
	transition: all 0.2s ease-in-out;
}
.pagination a:hover {
	background: #222;
	color:#fff;
}
.pagination b {
	display:block;
	width:70px;
	line-height:70px;
	background: #f3f3f3;
	color:#222;
	float:left;
	border-radius: 5px;
	margin:0 10px 0 0;
	transition: all 0.2s ease-in-out;
}
@media screen and (max-width: 1100px) {
	.pagination {
		float:left;
		right:0;
		width:100%;
		padding:0 0 30px 0;
	}
}
@media screen and (max-width: 700px) {
	.pagination a {
		width:50px;
		line-height:50px;
	}
	.pagination b {
		width:50px;
		line-height:50px;
	}
}
@media screen and (max-width: 500px) {
	.pagination a {
		width:30px;
		line-height:30px;
	}
	.pagination b {
		width:30px;
		line-height:30px;
	}
}





/* == bottom == */
.bottom {
	position:relative;
	width:100%;
	padding:100px 0 0 0;
	z-index:3;
	overflow:hidden;
	color:#717b84;
	text-align:center;
	font-size:18px;
}
.bottom::before {
	position: absolute;
    width: 4px;
    height: 100%;
    top: -98%;
	left:50%;
	border-radius:3px;
    transform-origin: 50% 50%;
    transform: translateX(-50%);
    content: '';
    z-index: -1;
}
.light + .white .bottom::before, .white + .white .bottom::before {
	background: #717b84;
}
.blue + .white .bottom::before {
	background: #fff;
}
.bottom a {
	position:relative;
	display:inline-block;
	line-height:30px;
	color:#717b84;
	padding:0 20px;
	font-weight:300;
}
.bottom a::after {
	display:block;
	position:absolute;
	right:0;
	top:50%;
	width:1px;
	border-radius:2px;
	height:15px;
	background:#717b84;
	transform-origin:50% 50%;
	transform:translateY(-50%);
	content:'';
}
.bottom a:last-of-type::after {
	display:none;
}
@media screen and (max-width: 600px) {
	.bottom a {
		width:100%;
		padding:0 0 10px 0;
	}
	.bottom a::after {
		display:none;
	}
}



/* == footer == */
.footer {
	position:relative;
	width:100%;
	padding:90px 0 90px 0;
	z-index:3;
	overflow:hidden;
	color:#717b84;
	text-align:center;
	font-size:16px;
}





/* == carousel == */

/* clearfix */
.owl-carousel .owl-wrapper:after {
	content: ".";
	display: block;
	clear: both;
	visibility: hidden;
	line-height: 0;
	height: 0;
}
/* display none until init */
.owl-carousel{
	display: none;
	position: relative;
	width: 100%;
	-ms-touch-action: pan-y;
}
.owl-carousel .owl-wrapper{
	display: none;
	position: relative;
	-webkit-transform: translate3d(0px, 0px, 0px);
}
.owl-carousel .owl-wrapper-outer{
	overflow: hidden;
	position: relative;
	width: 100%;
}
.owl-carousel .owl-wrapper-outer.autoHeight{
	-webkit-transition: height 500ms ease-in-out;
	-moz-transition: height 500ms ease-in-out;
	-ms-transition: height 500ms ease-in-out;
	-o-transition: height 500ms ease-in-out;
	transition: height 500ms ease-in-out;
}
	
.owl-carousel .owl-item{
	float: left;
}
.owl-controls .owl-page,
.owl-controls .owl-buttons div{
	cursor: pointer;
}
.owl-controls {
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

/* mouse grab icon */
.grabbing { 
    cursor:url('../image/img/grabbing.png') 8 8, move;
}

/* fix */
.owl-carousel  .owl-wrapper,
.owl-carousel  .owl-item{
	-webkit-backface-visibility: hidden;
	-moz-backface-visibility:    hidden;
	-ms-backface-visibility:     hidden;
  -webkit-transform: translate3d(0,0,0);
  -moz-transform: translate3d(0,0,0);
  -ms-transform: translate3d(0,0,0);
}
/* buttons */
.owl-carousel .owl-buttons {
	
}
.owl-carousel .owl-buttons .owl-prev {
	display:block;
	width:50px;
	height:50px;
	line-height:200px;
	overflow:hidden;
	left:20px;
	top:50%;
	margin:-25px 0 0 0;
	position:absolute;
	transform-origin:50% 50%;
	transform:rotate(180deg);
	z-index:4;
}
.owl-carousel .owl-buttons .owl-prev::after {
	position:absolute;
	display:block;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background:url(../image/ico-control.svg) 100% 100% no-repeat;
	background-size:400% 300%;
	content:'';
	z-index:3;
}
.owl-carousel .owl-buttons .owl-next {
	display:block;

	width:50px;
	height:50px;
	line-height:200px;
	overflow:hidden;
	right:20px;
	top:50%;
	margin:-25px 0 0 0;
	position:absolute;
	z-index:4;
}
.owl-carousel .owl-buttons .owl-next::after {
	position:absolute;
	display:block;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background:url(../image/ico-control.svg) 100% 100% no-repeat;
	background-size:400% 300%;
	content:'';
	z-index:3;
}
.owl-carousel .owl-pagination {
	display:block;
	padding:30px 0 20px 0;
	position:absolute;
	bottom:5px;
	left:50%;
	transform-origin:50% 50%;
	transform:translatex(-50%);
	text-align:center;
}
.owl-carousel .owl-pagination .owl-page {
	display:block;
	width:25px;
	height:25px;
	position:relative;
	display:inline-block;
	margin:0 8px;
	background:#fff;
	border-radius:5px;
	box-shadow:3px 3px 5px rgba(0, 0, 0, 0.2);
	transition: all 0.2s ease-in-out;
}
.owl-carousel .owl-pagination .owl-page:hover {
	background:#f3f3f3;
}
.owl-carousel .owl-pagination .owl-page.active {
	background:#fdec10;
}
@media screen and (max-width: 1100px) {
	.owl-carousel .owl-buttons .owl-prev {
		display:none;
	}
	.owl-carousel .owl-buttons .owl-next {
		display:none;
	}
}
@media screen and (max-width: 700px) {

}
@media screen and (max-width: 599px) {
	.owl-carousel .owl-buttons .owl-prev {
		display:none;
	}
	.owl-carousel .owl-buttons .owl-next {
		display:none;
	}
}


/* == fancybox == */
.fancybox-wrap,
.fancybox-skin,
.fancybox-outer,
.fancybox-inner,
.fancybox-image,
.fancybox-wrap iframe,
.fancybox-wrap object,
.fancybox-nav,
.fancybox-nav span,
.fancybox-tmp
{
	padding: 0;
	margin: 0;
	border: 0;
	outline: none;
	vertical-align: top;
}

.fancybox-wrap {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 8020;
}

.fancybox-skin {
	position: relative;
	background: #f9f9f9;
	color: #444;
	text-shadow: none;
	-webkit-border-radius: 4px;
	   -moz-border-radius: 4px;
	        border-radius: 4px;
}

.fancybox-opened {
	z-index: 8030;
}

.fancybox-opened .fancybox-skin {
	-webkit-box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
	   -moz-box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
	        box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
}

.fancybox-outer, .fancybox-inner {
	position: relative;
}

.fancybox-inner {
	overflow: hidden;
}

.fancybox-type-iframe .fancybox-inner {
	-webkit-overflow-scrolling: touch;
}

.fancybox-error {
	color: #444;
	margin: 0;
	padding: 15px;
	white-space: nowrap;
}

.fancybox-image, .fancybox-iframe {
	display: block;
	width: 100%;
	height: 100%;
}

.fancybox-image {
	max-width: 100%;
	max-height: 100%;
}

#fancybox-loading, .fancybox-close, .fancybox-prev span, .fancybox-next span {
	background-image: url('../image/img/fancybox_sprite.png');
}

#fancybox-loading {
	position: fixed;
	top: 50%;
	left: 50%;
	margin-top: -22px;
	margin-left: -22px;
	background-position: 0 -108px;
	opacity: 0.8;
	cursor: pointer;
	z-index: 8060;
}

#fancybox-loading div {
	width: 44px;
	height: 44px;
	background: url('../image/img/fancybox_loading.gif') center center no-repeat;
}

.fancybox-close {
	position: absolute;
	top: -18px;
	right: -18px;
	width: 36px;
	height: 36px;
	cursor: pointer;
	z-index: 8040;
}

.fancybox-nav {
	position: absolute;
	top: 0;
	width: 40%;
	height: 100%;
	cursor: pointer;
	text-decoration: none;
	background: transparent url('../image/img/blank.gif'); /* helps IE */
	-webkit-tap-highlight-color: rgba(0,0,0,0);
	z-index: 8040;
}

.fancybox-prev {
	left: 0;
}

.fancybox-next {
	right: 0;
}

.fancybox-nav span {
	position: absolute;
	top: 50%;
	width: 36px;
	height: 34px;
	margin-top: -18px;
	cursor: pointer;
	z-index: 8040;
	visibility: hidden;
}

.fancybox-prev span {
	left: 10px;
	background-position: 0 -36px;
}

.fancybox-next span {
	right: 10px;
	background-position: 0 -72px;
}

.fancybox-nav:hover span {
	visibility: visible;
}

.fancybox-tmp {
	position: absolute;
	top: -99999px;
	left: -99999px;
	visibility: hidden;
	max-width: 99999px;
	max-height: 99999px;
	overflow: visible !important;
}

/* Overlay helper */

.fancybox-lock {
    overflow: hidden !important;
    width: auto;
}

.fancybox-lock body {
    overflow: hidden !important;
}

.fancybox-lock-test {
    overflow-y: hidden !important;
}

.fancybox-overlay {
	position: absolute;
	top: 0;
	left: 0;
	overflow: hidden;
	display: none;
	z-index: 8010;
	background: url('../image/img/fancybox_overlay.png');
}

.fancybox-overlay-fixed {
	position: fixed;
	bottom: 0;
	right: 0;
}

.fancybox-lock .fancybox-overlay {
	overflow: auto;
	overflow-y: scroll;
}

/* Title helper */

.fancybox-title {
	visibility: hidden;
	position: relative;
	text-shadow: none;
	z-index: 8050;
}

.fancybox-opened .fancybox-title {
	visibility: visible;
}

.fancybox-title-float-wrap {
	position: absolute;
	bottom: 0;
	right: 50%;
	margin-bottom: -35px;
	z-index: 8050;
	text-align: center;
}

.fancybox-title-float-wrap .child {
	display: inline-block;
	margin-right: -100%;
	padding: 2px 20px;
	background: transparent; /* Fallback for web browsers that doesn't support RGBa */
	background: rgba(0, 0, 0, 0.8);
	-webkit-border-radius: 15px;
	   -moz-border-radius: 15px;
	        border-radius: 15px;
	text-shadow: 0 1px 2px #222;
	color: #FFF;
	font-weight: bold;
	line-height: 24px;
	white-space: nowrap;
}

.fancybox-title-outside-wrap {
	position: relative;
	margin-top: 10px;
	color: #fff;
}

.fancybox-title-inside-wrap {
	padding-top: 10px;
}

.fancybox-title-over-wrap {
	position: absolute;
	bottom: 0;
	left: 0;
	color: #fff;
	padding: 10px;
	background: #000;
	background: rgba(0, 0, 0, .8);
}

/*Retina graphics!*/
@media only screen and (-webkit-min-device-pixel-ratio: 1.5),
	   only screen and (min--moz-device-pixel-ratio: 1.5),
	   only screen and (min-device-pixel-ratio: 1.5){

	#fancybox-loading, .fancybox-close, .fancybox-prev span, .fancybox-next span {
		background-image: url('../image/img/fancybox_sprite@2x.png');
		background-size: 44px 152px; /*The size of the normal image, half the size of the hi-res image*/
	}

	#fancybox-loading div {
		background-image: url('../image/img/fancybox_loading@2x.gif');
		background-size: 24px 24px; /*The size of the normal image, half the size of the hi-res image*/
	}
}

@media screen and (max-width: 700px) {
	.fancybox-close.mobile {
		top: 20px;
		right: 20px;
	}
}