@charset "utf-8";
/* CSS Document */
@import "fonts.css";
@import "nitebox.css";
@import "cookie_accept.css";
@import "menu.css";
@import "panels.css";
@import "form.css";
* {
	position:relative;
	margin:0;
	padding:0;
	outline:none;
	resize:none;
	border:none;
} 
img { vertical-align: top; }
html,
body {
	width:100%;
	height:100%;
	min-width:320px;
	background:#b3b3b3;
}
html {
	overflow:auto;
	overflow-y:scroll;
}
/* NOSCRIPT */
#noscript {
	width:100%; padding:10px; background-color:#ce0f00; text-align:center; color:#fff; display:block;
}
#noscript * { color:#fff; font-size:14px; line-height:normal; }
#noscript a { font-weight:600; }
/* SELECTION */
::selection {
	background: #095e61; color:#fff;
}
::-moz-selection {
	background: #095e61; color:#fff;
}
/* 404 */
h1.nf, h1.nf * { font-size:100px; line-height:100px; color:#095e61; font-weight:600; font-style:normal; }
/* box-sizing */
*, *:after, *:before { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
/* font-face */
* { font-family:'Roboto', Arial, Helvetica, sans-serif; font-weight:300; font-size:16px; line-height:24px; color:#4a4a4a; }

a::after, a::before, li::after, li::before, div::after, div::before, span::after, span::before, ul::before, ul::after 
{ position:absolute; content:''; }
/* transition */
.t, a, a::after, a::before, a *, ul.menu ul, ul.menu > li:after { transition:all .3s; -webkit-transition:all .3s; }
h1, h2 { transition:color .3s; -webkit-transition:color .3s; }
/* hovers */
ul.menu .nc:hover { cursor:default; }
/* not selectable */
.not-selectable, ul.menu .nc, input[type="checkbox"]+label, form label, div.filter-box span.title {
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;	
	cursor:default;
}
strong, b, strong *, b * { font-weight:600; }
/**/

a { color:#095e61; text-decoration:underline; }
a:hover { color:#6e2041; }

div.c { max-width:1400px; margin:0 auto; padding:2.5%; }

#preloader {
	position: fixed;
	width:100%;
	height:100%;
	top:0px;
	left:0px;
	z-index:999; 
	background:url(../images/preloader.gif) center center no-repeat #fff; 
}

#wrapper { 
	width:100%; 
	overflow:hidden; 
	min-height:100%; 
	display: flex; 
	flex-direction:column; 
	max-width:1920px; 
	margin:0 auto; 
	background: #fff; 
}
#wrapper.home #header {
	position: absolute;
	top:0px;
	left:0px;
	width:100%;
	z-index: 10;
	transition:background .6s;
	max-width: none;
}
#wrapper.home #header div.c {
	padding:3.3333% 2.5% 3.3333% 2.5%;
	max-width:none;
}
#wrapper.home #header::before {
	display: none;
}
#header::before {
	width:100%;
	height:100%;
	top:0px;
	left:0px;
	background: url(../images/menu_bg.jpg) left top no-repeat;
	background-size:100% auto;
}
#wrapper.home #header.bg, #fixed_menu {
	background: rgba(0,0,0,.9);
}
#header.bg a#logo, #fixed_menu a#logo {
	width:60px;
	min-width:0;
}
#wrapper.home #header.fixed div.c {
	padding:1% 2.5% 1% 2.5%;
}
#wrapper.home #menu {
	align-self: flex-start;
}
#header.fixed a#logo::after, #fixed_menu a#logo::after {
	opacity:1;
}
#header.fixed #langs, #fixed_menu #langs {
	visibility: hidden;
	opacity:0;
	height:0px;
	margin-top: 0px;
}
#header div.c, #fixed_menu div.c {
	padding:2% 2.5% 2% 2.5%;
	display: flex;
	flex-flow:row nowrap;
	justify-content:space-between;
	transition:padding .6s;
}
a#logo {
	width:35%;
	display: block;
	max-width:250px;
	transition:all .6s ease 0s;
	min-width:100px;
}
#wrapper.home a#logo {
	max-width:230px;
}
a#logo::after {
	background: url(../images/logo_white.png) left top no-repeat;
	top:0px;
	left:0px;
	width:100%;
	height:100%;
	background-size: 100% auto;
	opacity:0;
}
a#logo img {
	width:100%;
	max-width: 506px;
}

#fixed_menu {
	position: fixed;
	top:-70px;
	left:0px;
	width:100%;
	height: auto;
	transition:all .5s ease 0s;
	z-index: 200;
}
#fixed_menu > div.c {
	padding-top:1% !important;
	padding-bottom:1% !important;
}
#fixed_menu.active {
	top:0px;
}
/* PAGE TITLE */
h1.page-title {
	background: url(../images/footer_bg.jpg) left top no-repeat;
	background-size: 100% auto;
}
h1.page-title span {
	color:#fff;
	line-height: normal;
	text-transform: uppercase;
	font-size:42px;
	font-family:'Oswald', Arial, Helvetica, sans-serif;
	font-weight: 300;
	cursor: default;
	display: block;
	width:100%;
	max-width:1400px;
	padding:2% 2.5%;
	margin:0 auto;
}
h1.page-title span > span {
	color:#05cbd2;
	padding:0;
	display: inline-block;
	width:auto;
	font-size: 30px;
	margin-left: 20px;
}
/* HOME */
#home img {
	width:100%;
	height: auto;
}
/* BLOCK */
div.block {
	background: #fff;
	z-index: 2;
}
div.block > div.c {
	padding:5% 2.5%;
}
div.block + div.block > div.c {
	padding:0 2.5% 5% 2.5%;
}
div.block:last-child > div.c {
	padding-bottom:0;
}
div.block.npb > div.c {
	padding-bottom:0 !important;
}
div.block.pb > div.c {
	padding-bottom:5% !important;
}
div.block > h2 {
	font-family:'Oswald', Arial, Helvetica, sans-serif;
	text-transform: uppercase;
	line-height: normal;
	color:#095e61;
	font-size:30px;
	max-width:1400px;
	padding:0 2.5% 2.5% 2.5%;
	margin:0 auto;
}
/* LIST */
div.list {
	display: flex;
	flex-flow:row wrap;
	justify-content:space-between;
}
div.list > div {
	width:29%; /*27.6%;*/
	margin-bottom: 5%;
	display: inline-block;
}
div.list.small > div {
	width:21%;
}
div.list > div:empty { visibility: hidden; }
div.list a {
	z-index: 1;
	position: absolute;
	top:0px;
	left:0px;
	width:100%;
	height:100%;
	text-indent: -9999px;
}
div.list a:hover ~ div.img img { filter:saturate(1); transform:perspective(800px) translateZ(70px); }
div.list a:hover ~ h3 { color:#6e2041; }
div.list div.img { overflow: hidden; }
div.list img { width:100%; height:auto; filter:saturate(0); transition:all .6s ease 0s; transform:perspective(800px) translateZ(10px);  }
div.list h3 {
	font-family:'Oswald', Arial, Helvetica, sans-serif;
	font-weight:300;
	color:#095e61;
	font-size: 30px;
	line-height: normal;
	padding:10px 0 10px 0;
	text-transform: uppercase;
	transition: color .6s;
}
div.list div.lead { padding:0 4.5%; }
div.list div.lead * { font-size: 14px; line-height: 20px; }

/* NITEBOX */
a[data-nitebox] {
	display: inline-block;
	overflow: hidden;
}
a[data-nitebox] img {
	filter:saturate(0);
	transition:all .6s ease 0s; 
	transform:perspective(800px) translateZ(10px);
}
a[data-nitebox]:hover img {
	filter:saturate(1); 
	transform:perspective(800px) translateZ(70px);
}
a[data-nitebox]::after { 
	width:80px; height:80px; 
	background:url(../images/zoom.png) left top no-repeat rgba(9,94,97,.7); 
	background:url(../images/zoom.svg) rgba(9,94,97,.7); 
	background-size:100% 100%; 
	top:50%; 
	left:50%; 
	margin:-40px 0px 0px -40px; opacity:0; z-index:3; transform:scale(.25,.25); 
	transition:all .3s; 
	border-radius:50%;
}
a[data-nitebox]:hover::after { opacity:1; transform:scale(1,1); }

/* PHOTOS */
div.photos {
	width:102%;
	margin-left: -1%;
	margin-top: 5% !important;
}
div.photos > div.th {
	display: inline-block;
	vertical-align: top;
	width:33.3333%;
	padding:1%;
	overflow: hidden;
}
div.photos > div.th img {
	width:100%;
	height: auto;
	max-width: 300px;
}
div.photos a[data-nitebox]:hover::after { opacity:1; transform:scale(.7,.7); }

/* ARTICLE */

div.article {
	display: flex;
	flex-flow:row-reverse nowrap;
	justify-content:space-between;
}
div.article > div {
	display: inline-block;
}
div.article div.text {
	width:100%;
	max-width:700px;
	margin:0 auto;
}
div.article > div.img + div.text {
	align-self:center;
	max-width: none;
	width:60%;
	margin:0;
} 
div.article div.submenu + div.text {
	max-width: none;
	width:65%;
	margin:0;
}
div.article > div.img {
	width:35%;
}
div.article > div.submenu {
	width:30%;
}
div.article > div.img img {
	width:100%;
	height: auto;
}

div.article.contact div.text {
	width:45%;
}
div.article.contact div.img {
	width:50%;
}

/* SUBMENU */

div.submenu {
	padding:0 0 0 5%;
}
div.submenu::before {
	width:1px;
	height:100%;
	top:0px;
	left:0px;
	background: url(../images/dot_black.png) left top repeat-y;
}
ul.submenu {
	list-style-type: none;
}
ul.submenu li {
	font-family:'Oswald', Arial, Helvetica, sans-serif;
}
ul.submenu li + li {
	margin-top: 10px;
}
ul.submenu li.title {
	text-transform: uppercase;
	font-weight: 400;
	font-size: 20px;
	padding-bottom: 20px;
	cursor: default;
}
ul.submenu li.sel a {
	pointer-events: none;
  	cursor: default;
  	color:#6e2041;
  	padding-left: 15px;
}
ul.submenu li.sel a::before {
	opacity:1;
	visibility: visible;
	border-left:5px solid #302f2e;
	transform:scale(1.5);
}
ul.submenu li.back {
	margin-top: 30px;
}
ul.submenu li.back a {
	font-size: 14px;
}
ul.submenu li.back a::before {
	border-left:none;
	border-right:5px solid #095e61;
}
ul.submenu a {
	font-family: inherit;
	text-transform: uppercase;
	text-decoration: none;
	font-size: 16px;
	line-height: normal;
	display: block;
}
ul.submenu a::before {
	border-top:5px solid transparent;
	border-bottom:5px solid transparent;
	border-left:5px solid #dc2e77;
	left:0px;
	top:50%;
	margin-top: -5px;
	transform:scale(0);
}
ul.submenu a:hover {
	padding-left: 15px;
}
ul.submenu a:hover::before {
	visibility: visible;
	opacity:1;
	transform:scale(1);
}

/* TEXT */

div.text > *+* {
	margin-top: 1em;
}
div.text > h2, div.text > h3, div.text > h4 {
	font-family:'Oswald', Arial, Helvetica, sans-serif;
	text-transform: uppercase;
	line-height: normal;
}
div.text > h2 {
	color:#095e61;
	font-size:30px;
}
div.text > h3 {
	color:#6e2041;
	font-size:24px;
}
div.text > h4 {
	color:#6e2041;
	font-size:20px;
}

div.text ul {
	list-style-type:none;
}
div.text ul li::before {
  content: ""; 
  background: #095e61; 
  border-radius:50%;
  display: inline-block;
  width: 0.5em; 
  height:0.5em;
  margin-right: 0.75em;
  position: relative;
 top:-0.05em;
}

/* MAP */

#map {
	width:100%;
	padding-top:45%;
}
#map iframe {
	position: absolute;
	width:100%;
	height:100%;
	top:0px;
	left:0px;
	filter:saturate(0);
	transition:filter .3s;
}
#map:hover iframe {
	filter:saturate(1);
}

/* BUTOON */
a.button {
	font-family:'Oswald', Arial, Helvetica, sans-serif;
	background: #095e61;
	color:#fff;
	font-weight: 800;
	text-transform: uppercase;
	padding:10px 25px;
	text-decoration: none;
	font-size: 24px;
	line-height: normal;
	display: inline-block;
	border-radius:5px;
}
a.button.small{
	font-size: 20px;
	font-weight: 600;
	padding:7px 20px;
}
a.button:hover {
	background: #302f2e;
}
/* ACTION */
div.action {
	margin-top: 5%;
	text-align: right;
}
a.button.action {
	border:2px solid #6e2041;
	color:#6e2041;
	background: transparent;
	outline: 1px solid transparent;
	transform:rotate(-3deg) perspective(800px) translateZ(0px);
	transition:all .3s ease 0s;
}
a.button.action:hover {
	border:2px solid #095e61;
	color:#095e61;
	transform:rotate(0deg) perspective(800px) translateZ(60px);
}
/* FOOTER */
#footer {
    margin-top: auto;
    align-self: flex-end;
    width: 100%;
}
#footer > div.c:first-child {
	background:url(../images/footer_bg.jpg) center top no-repeat #302f2e;
}
#footer > div.c:first-child > div {
	padding:25px 2.5%;
}
#footer > div.c > div {
	padding:1% 2.5%;
	max-width:1400px;
	margin:0 auto;
	overflow: hidden;
}
#footer > div.c {
	background:#302f2e;
	max-width:none;
	padding:0;
}
#footer > div.c * {
	text-decoration: none;
	font-size: 14px;
	line-height: normal;
	color:#fefefe;
}
#footer > div.c a:hover {
	color:#06cbd2;
}
div.siteby {
	float:right;
}
div.siteby a {
	font-weight: 600;
}
div.contacts {
	display: flex;
	flex-flow:row nowrap;
}
div.contacts > div {
	display: inline-block;
	padding:70px 30px 10px 30px;
}
div.contacts > div+div::before {
	width:1px;
	height:100%;
	left:0px;
	top:0px;
	background: url(../images/dot.png) left top;
}
div.contacts > div.socials {
	max-width:205px;
	padding:0px 10px 10px 0px;
	margin-left: -10px;
}
div.contacts > div.socials a {
	text-indent: -9999px;
	display: inline-block;
	width:65px;
	height:65px;
	opacity:.6;
	vertical-align: top;
}
div.contacts > div.socials a:hover {
	opacity:1;
}
div.contacts > div.socials a.twitter { background: url(../images/socials.png) 0px 0px no-repeat; }
div.contacts > div.socials a.instagram { background: url(../images/socials.png) 0px -65px no-repeat; }
div.contacts > div.socials a.facebook { background: url(../images/socials.png) 0px -130px no-repeat; }
div.contacts > div.socials a.pinterest { background: url(../images/socials.png) 0px -195px no-repeat; }
div.contacts > div.socials a.youtube { background: url(../images/socials.png) 0px -260px no-repeat; }
div.contacts > div.socials a.tumblr { background: url(../images/socials.png) 0px -325px no-repeat; }

div.contacts > div.ico::after { width:100%; height:70px; top:0px; left:0px; opacity:.75; transition:opacity .3s; }
div.contacts > div.ico:hover::after { opacity:1; }
div.contacts > div.address::after { background:url(../images/footer.png) center top no-repeat; }
div.contacts > div.phone::after { background:url(../images/footer.png) center -70px no-repeat; }
div.contacts > div.email::after { background:url(../images/footer.png) center -140px no-repeat; }
div.contacts > div.opening::after { background:url(../images/footer.png) center -210px no-repeat; }

div.contacts::after {
	width:20%;
	max-width: 200px;
	height:120%;
	background: url(../images/logo_footer.png) left center no-repeat;
	background-size: 100% auto;
	right:0px;
	top:-10%;
	opacity:.5;
	transition:all .3s;
}
div.contacts:hover::after {
	opacity:1;
}

/* TOP */
a#ns-to-top {
	border-radius:50%;
	overflow: hidden;
}
a#ns-to-top, a#ns-to-top * {
	transition: none;
}

@media screen and (max-width: 1400px), screen and (max-device-width: 1400px), screen and (max-width: 1400px) {
	div.block > div.c, div.block + div.block > div.c, h1.page-title span, #footer > div.c > div, #footer > div.c:first-child > div,
	div.block > h2, #header div.c, #fixed_menu div.c  {
		padding-left:5%;
		padding-right:5%;
	}
	div.contacts::after {
		max-width:180px;
	}
}

a.mobile-view { display:none !important; }
@media screen and (max-width: 900px), screen and (max-device-width: 900px), screen and (max-width: 900px) {
	a.mobile-view { display:inline-block !important; }	
}