* { margin: 0; padding: 0; outline: none; box-sizing: border-box;}
html, body.mainbody { height: 100%; }
body.mainbody, th, td, p, div, span, ul, li, textarea, input, select, sup, sub,
#maineditor { color: #2e2e2a; font: 18px 'Open Sans', Arial, Helvetica, sans-serif }
body.mainbody {background: #fff url(/images/bg.gif) 0 0 repeat;}


a:link, a:visited, a:active, .content a:hover, #maineditor a:hover { color: #273895; text-decoration: none; }
a:hover, .content a, #maineditor a {color:#273895; text-decoration: underline;}
a[data-href^='#'] {cursor: pointer}
img, #content a.ext_icon img, #content a:hover.ext_icon img { border: 0; }
h1, h2, h3, h4, h5, h6 {padding-bottom: 10px; font-family: 'Oswald', Helvetica, sans-serif; color: #273895; text-decoration: none; text-transform: uppercase; font-weight: 400; }
h2 { color: #f9bc3f; font-size: 42px; text-transform: none;  }
h3 { padding: 20px 0 10px; color: #37b0e5; font-size: 36px; text-transform: none; }

input, textarea, select { margin: 0; padding: 6px 10px; vertical-align: middle; border: 1px solid #d4d4d4; background-color: #fff; }
input[type='checkbox'],input[type='radio'] { border: none; }


.clearfix:before, .clearfix:after,
.webedit .container:after, .webedit .container:before {
  content: "";
  display: table;
}
.clearfix:after, .webedit .container:after {
  clear: both;
}
.clearfix, .webedit .container {
  zoom: 1;
}
.clear { clear: both; margin: 0; padding: 0; font-size: 0; line-height: 0; }
.flt_l { float: left; }
.flt_r { float: right; }


/* ====== Standart forms ======== */
.weform table td { padding: 2px 4px; }
.weform input { padding: 2px; }
.weform .btn input { font-size: 14px; font-weight: bold; padding: 5px 20px; border: none; background: none; background-color: #8B755B; color: #fff;}
span.we--form-err_msg {color: #CC0000;}
span.we--form-err_field {  }
span.we--form-err_uplfile {  }

.fbstar { color: #CC0000; } /* for feedback stars */
.bttn-set { display: flex; justify-content: space-between; padding: 0 10px; }
.bttn-set.set-center {justify-content: center;}
.bttn-set a.bttn {margin-left:20px; margin-right:20px}
.btn input, .bttn, a.bttn, button {
  display: inline-block; margin-top: 60px; padding: 16px 50px;
  border: none; background: none; background-color: #37b0e5;
  color: #fff; font-size: 22px; text-transform: uppercase; text-decoration: none;
  text-align: center;
}

/* ========================================================================== */
.container {position: relative; margin: 0 auto; padding: 100px 2%; width: 100%; max-width: 1400px; }
.title h1, #edmheaderspan {font-size: 50px; text-decoration: none; text-transform: uppercase; margin: 80px 0 60px 0; text-align: center;}
.title h2, #edmheaderspan { font-size: 50px; text-decoration: none; text-transform: uppercase; margin: 0 0 40px 0; text-align: center; color: #37b0e5;}
.content { min-height: 200px; height: auto !important; height: 200px; he\ight: 200px; }


#header {position: fixed; top: 0px; left: 0px; width: 100%; height: 90px; background-color: #253A93; z-index: 888 }
#header .container {
  position: relative; padding-top:0; padding-bottom:0; height: 100%;
  display: flex; justify-content: flex-end; align-items: flex-end; z-index: 10;
}
#header_tools {display: flex;}

/* ===== div-langs, ul-langit; for imging langs ===== */
.logo {
  position: absolute; top:10px; left:0;
  display: block; width: 206px; height: 118px;
  background: url(/images/logo-coner.png) 0 100% no-repeat;
  z-index: 100;
}
.logo a {
  display: block; width: 100%; height: 98px;
  background: url(/images/logo.png) 50% 100% no-repeat;
 }
.logo span { display: none; }

#header ul { display: flex; list-style-type: none; padding: 0 20px; }
#langs {border-left: 1px solid #6eaee2;}
#header li, #langs a { display: block; }
#navigation li {margin: 20px 20px;}
#header #lev_2 {display: none; padding: 10px 5px;}
#header #lev_2 a {text-transform: none; font-size: 0.9em }
#langs li {margin: 20px 10px;}
#header a { color: #f7f6e7; text-transform: uppercase; }
#header * a, #header * a:hover  {text-decoration: none;}
#header li a.cur  {color: #f9bc3f;}
#header li a:hover {color: #37b0e5;}

/* ===== MOBILE HAMBURGER ===== */
#nav-icon3 {
  display: none; width: 30px; height: 22px; margin: 32px 20px;
  position: relative;
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: .5s ease-in-out;
  -moz-transition: .5s ease-in-out;
  -o-transition: .5s ease-in-out;
  transition: .5s ease-in-out;
  cursor: pointer; z-index: 20;
}

#nav-icon3 span {
  position: absolute; left: 0;
  display: block; height: 2px; width: 100%;
  background: #fff;
  opacity: 1;
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: .25s ease-in-out;
  -moz-transition: .25s ease-in-out;
  -o-transition: .25s ease-in-out;
  transition: .25s ease-in-out;
}

/* Icon 3 */
#nav-icon3 span:nth-child(1) { top: 0px;}
#nav-icon3 span:nth-child(2),
#nav-icon3 span:nth-child(3) { top: 10px;}
#nav-icon3 span:nth-child(4) { top: 20px;}
#nav-icon3.open span:nth-child(1),
#nav-icon3.open span:nth-child(4) { top: 10px;  width: 0%;  left: 50%;}
#nav-icon3.open span:nth-child(2) {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}
#nav-icon3.open span:nth-child(3) {
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
}


/* ======================================================================================= */
/* ===== TOPIMG ===== */
#top-img { position: relative; width: 100%; height: 100%; background: url(/images/Layer-22.jpg) 50% 50% no-repeat; background-size: cover; }
.slogan { position:absolute;top:0px;left:2%;right:2%; display: flex; flex-direction: column; justify-content: center; align-items: center; margin: 0 auto; width: 96%; height: 100%; z-index: 10;}
.slogan h2 { font-size: 60px; font-weight: 700; text-transform: uppercase; color: #fff; text-align: center; }
#top-img .icon-bttn {
  margin-top: -20px;  width: 89px; height: 115px; background: url(/images/book_eng.png) 50% 50% no-repeat;
}
#top-img .bttn-eng {background-image: url(/images/book_eng.png)}
#top-img .bttn-rus {background-image: url(/images/book_rus.png)}
#top-img .bttn-est {background-image: url(/images/book_est.png)}
#top-img .bttn-fin {background-image: url(/images/book_fin.png)}

/* ===== GALLERY ===== */
#gallery {background: url(/images/bkg-gallery.jpg) 50% 50% repeat-y; background-size: cover;}
.grid {display: flex; flex-wrap: wrap; justify-content: center; margin-bottom: 40px;}
.grid-item {
  display: block; flex-grow: 1;
  width: 20%; min-width: 200px; height: 240px;
  background: #fafafa;
  border: 1px solid #fff;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: cover;
}
.grid-item--width1, .grid-item--width6, .grid-item--width11,
.grid-item--width16, .grid-item--width17 { width:  40%; flex-grow: 2; }


#maincont .bttn-set {display: none;}
#virtual {position: relative; height: 60%; background: url(/images/bkg-virtual.jpg) 50% 50% no-repeat; background-size: cover;}
#virtual .slogan h2 {font-weight: 400; color:#252e62; text-transform: uppercase;}
#reservation, #application { position: relative; background-color: #2644af; z-index: 10;}
#reservation .title h2, #application .title h2 {color: #fff;}
#reservation em {color: #fff;}
#gmap {height: 600px;}

.appl { background-color: #2644af; padding-top:80px}
.appl h2, .appl .title h2 {  font-size: 50px; color: #fff; text-transform: uppercase; text-align: left; margin: 0 0 40px 0;}
.appl .content, .appl .content ul, .appl .content li, .appl .content p, .appl .content div { color: #fff;}

/* ===== OBJECTs ===== */
.object {position: absolute; opacity: 0.3; z-index: 1 }
#obj1 {
  bottom: -30%; left: -10%; width: 46%; height: 562px; min-width: 300px;
  background: url(/images/obj1.svg) 50% 50% no-repeat; background-size: contain;
  pointer-events: none;
}
/*#obj2 {
  bottom: -60px; right: 30%; width: 16%; height: 248px; min-width: 100px;
  background: url(/web/20180315180556im_//images/obj2.svg) 50% 50% no-repeat; background-size: contain;
}*/




/* ===== INNER CONTENT ===== */
#innercont .container {display: flex; justify-content: flex-start; flex-wrap: wrap; align-items: flex-start;}
#innercont .container .title {flex: 1 1 100%;}

#subnav-block {flex: 0 1 28%; padding-right: 40px;}
.content {flex: 1 2 68%;}

#subnav { position: relative; padding-top: 20px; list-style-type: none; background-color: #fff;}
#subnav div {position: absolute; left: 0; bottom: -150px; width: 100%; height: 150px; background: url(/images/bkg-menu.svg) 50% 0 no-repeat; background-size: contain;}
#subnav, #subnav li, #subnav a {display: block;}
#subnav li {padding: 10px 14px; border-bottom: 1px solid #d4d4d4;}
#subnav li.cur, #subnav li:hover {background-color: #37b0e5;}
#subnav li:last-child {border: none;}
#subnav a { background: url(/images/subnav-arrow.png) 0 8px no-repeat; padding-left: 20px; }
#subnav li.cur a {color: #fff;background-image: url(/images/subnav-arrow-cur.png);}
#subnav li:hover a {color: #fff; text-decoration: none;background-image: url(/images/subnav-arrow-cur.png);}


/* ===== CONTACTS ===== */
#contacts .content { display: flex; justify-content: space-between; flex-wrap: wrap; height: auto; min-height: auto; }
#contacts .content * {font-size: 22px;}
#contacts .content > div { flex-grow: 1; min-width: 320px; margin-bottom: 20px; text-align: center; }

/* ===== FISH LINE ===== */
.line { display: flex; justify-content: center; padding: 80px 0 40px; }
.fish { position: relative; width: 163px; height: 58px; background: url(/images/fish.png) 50% 50% no-repeat; }
.fish:after, .fish:before {
  content: '';
  position: absolute; top: 32px;
  display: block; width: 160px; height: 1px;
  border: none; border-top: 1px solid #273895;
}
.fish:after {left: -200px;}
.fish:before {right: -200px;}

/* ===== FOOTER ===== */
#footer { border-top: 1px solid #ccc;}
#footer .container {
  display: flex; flex-wrap: wrap; align-items: center;
  padding-top: 0px; padding-bottom: 0px;
}

#footer .container * {font-size: 14px;}
a.logo-min { display: block; margin: 40px 10% 40px 0; width: 108px; height: 78px; background: url(/images/logo-min.png) 50% 50% no-repeat; }

#print { display: block; width: 10px; height: 10px; background: url(/images/print.gif) 0 0 no-repeat;}
#print span { display: none; }
#edss { display: block; width: 10px; height: 10px; background: url(/images/edss.gif) 0 0 no-repeat; }
#edss span { display: none; }



/* ===== WEBEDIRORs fix ===== */
.webedit #header {position: relative;}
.webedit #header ul, .webedit #header li, .webedit #header li a {display: inline; }
.webedit #header_tools {display: block; float: right; padding-top: 40px;}
.webedit .line {display: block; margin: 0 auto; width: 500px; padding-left: 160px;}
.webedit #innercont .container {display: block}
.webedit #innercont .container .title {display: block; flex: 0 0 auto;}
.webedit #innercont .container #subnav-block {display: block; flex: 0 0 auto; float: left;}
.webedit #innercont .container .content {display: block; flex: 0 0 auto; float: right; width: 100%;}
.webedit #innercont .container #subnav-block + .content {display: block; flex: 0 0 auto; float: right; width: 70%;}



.highlight .transparent_table tr:hover td, .highlight .standard_table tr:hover td, .highlight .colored_tablen tr:hover td {background-color:#FFF;}
.gallry-page .transparent_table td .thumb {display: block; width: 100%; height: 100%;}
.gallry-page .transparent_table td .thumb img {display: block; width: 100% !important;  height: auto !important; }


@media screen and (max-width: 769px) and (orientation: landscape){
  #top-img .slogan {flex-direction: row; justify-content: space-between; align-items: flex-end;}
  #top-img .slogan h2 {font-size: 40px; text-align: left; flex-basis: 70%;}
  #top-img .icon-bttn {margin-top: 0px; margin-bottom: 40px; flex-basis: 30%;}
}
@media screen and (max-width: 1000px){
  #nav-icon3, #header #lev_2 { display: block; }
  #header_tools {
    flex-direction: column-reverse; justify-content: flex-end;
    position: fixed; top: -200px; right: 0; opacity: 0;
    padding: 10px 60px 40px;
    background-color: #253A93; z-index: 1;
    transition: all 1s ease-out 0.5s;
  }
  .open + #header_tools {top: 90px; opacity: 1;}
  #header ul {padding: 0;}
  #navigation, #header #lev_2 {flex-direction: column; justify-content: center; }
  #navigation li {margin: 0 0 10px; text-align: right;}
  #navigation a {font-size: 22px}
  #langs { border: none;}
  #subnav-block {display: none;}
  .gallry-page .transparent_table tr, .gallry-page .transparent_table td {display: block; text-align: center}
  .gallry-page .transparent_table tr { padding-bottom: 20px;  width: 100%; }
  .gallry-page .transparent_table td {float: left; width: 33.33%; }

}
@media screen and (max-width: 650px){
  .slogan {justify-content: flex-end;}
  .slogan a {margin-bottom: 40px;}

  .fish:after, .fish:before {width: 100px;}
  .fish:after {left: -140px;}
  .fish:before {right: -140px;}

  #gallery {background-size: auto; background-repeat: repeat-y;}

  .transparent_table tr, .transparent_table td {display: block; width: 100%; text-align: center}
  .highlight .transparent_table tr {padding-bottom: 20px;}
  .gallry-page .transparent_table td {float: left; width: 50%; }

  #footer {padding-bottom: 40px;}
  a.logo-min {flex-grow: 1; margin-right: 0px;}
  .copyright {}
}
@media screen and (max-width: 460px){
  .title h1 {margin: 40px 0}
  .slogan h2, .title h2 {font-size: 40px;}
  .fish:after, .fish:before {display: none;}
  .gallry-page .transparent_table td {float: left; width: 100%; }
  #contacts .content * {font-size: 18px;}
  .bttn-set.set-center {flex-direction: column;}
}

@media screen and (max-width: 460px) {
	img {
	   max-width: 100%;
	   height:auto!important;
	   -ms-interpolation-mode:bicubic;
	   width: auto\9; /* ie8 */
	}
}

.we--edm--div-table	img {
   max-width: 100%;
   height:auto!important;
   width: auto\9; /* ie8 */
}

