body {
	background: #f5f5f5;
	font-family: 'Lato', Arial, Helvetica, sans-serif;
	font-size: 1em;
  font-weight: 400;
  font-style: normal;
	color: #5a5a5a;
  letter-spacing: .02em;
	line-height: 1.429;
	box-sizing: border-box;
	padding: 0;
	margin: 0;
	overflow-x: hidden !important;
}

::selection { color: #fff; background: #48bef5; text-shadow: none; }
::-moz-selection { color: #fff; background: #48bef5; text-shadow: none; }

h1 {
	font-family: 'Lato', Arial, Helvetica, sans-serif;
	font-size: 2.1em;
  font-weight: 400;
	color: #505050;
	letter-spacing: 0;
	line-height: 1em;
	padding: 0;
	margin: 0 0 35px;
	transition: all .2s;
	-webkit-transition: all .2s;
}
h1.start {
	font-size: 1.6em;
	margin: 0 0 25px;
}

h2 {
	font-family: 'Lato', Arial, Helvetica, sans-serif;
	font-size: 1.55em;
  font-weight: 400;
	color: #505050;
	letter-spacing: 0;
	line-height: 1em;
	padding: 0;
	margin: 0 0 20px;
	transition: all .2s;
	-webkit-transition: all .2s;
}

h3 {
  font-family: 'Lato', Arial, Helvetica, sans-serif;
	font-size: 1.4em;
	font-weight: 400;
	color: #505050;
	letter-spacing: 0;
	line-height: 1.15em;
	padding: 0;
	margin: 0 0 15px;
	transition: all .2s;
	-webkit-transition: all .2s;
}

a {
	color: #139fcb;
	text-decoration: none;
	outline: 0;
	transition: all .2s;
	-webkit-transition: all .2s;
}
a:hover, a:active {
	color: #000;
	text-decoration: none;
}
	a.white {
		color: #fff;
	}
	a.white:hover {
		color: #eee;
	}
	a.regular {
		color: #5a5a5a;
	}
	a.regular:hover {
		color: #003e73;
	}

a img {
	border: 0px;
	text-decoration: none;
}

.anc {
	display: block;
	content: " ";
	height: 60px;
	margin-top: -60px;
	visibility: hidden;
}

p { padding: 0; }

.clr {
	clear: both !important;
	display: block;
	height: 0;
	line-height: 0;
	visibility: hidden;
}

.block { display: block !important; }
.inline { display: inline-block !important; }
.table { display: table; }
.cell { display: table-cell; vertical-align: middle; }
.mauto { margin-left: auto; margin-right: auto; }
.center { text-align: center !important; }
.left { float: left; }
.right { float: right; }
.div_left { float: left; }
.div_right { float: right; }
.t_right { text-align: right !important; }
.justify { text-align: justify !important; }
.hidden { display: none !important; }
.bold { font-weight: bold !important; }
.thin { font-weight: 100 !important; }
.boxsize { box-sizing: border-box; }
.uc { text-transform: uppercase; }
.t_arw, .t_arw_r {
	display: inline-block;
	font-size: .9em;
	margin: 0 0 0 3px;
}
.t_arw_r { margin: 0 3px 0 0; }

.grey { background: #ebebeb !important; }
.blue { color: #005cab !important; }
.black { color: #000 !important; }

.w45 { width: 45% !important; }
.w46 { width: 46% !important; }
.w47 { width: 47% !important; }
.w48 { width: 48% !important; }
.w49 { width: 49% !important; }
.w50 { width: 50% !important; }
.w75 { width: 75% !important; }
.w100 { width: 100% !important; }

.high10 { margin: 0 0 100px 0 !important; }
.high9 { margin: 0 0 90px 0 !important; }
.high8 { margin: 0 0 80px 0 !important; }
.high7 { margin: 0 0 70px 0 !important; }
.high6 { margin: 0 0 60px 0 !important; }
.high5 { margin: 0 0 50px 0 !important; }
.high4 { margin: 0 0 40px 0 !important; }
.high3 { margin: 0 0 35px 0 !important; }
.high2 { margin: 0 0 30px 0 !important; }
.high { margin: 0 0 25px 0 !important; }
.low6 { margin: 0 0 20px 0 !important; }
.low5 { margin: 0 0 15px 0 !important; }
.low4 { margin: 0 0 12px 0 !important; }
.low3 { margin: 0 0 10px 0 !important; }
.low2 { margin: 0 0 8px 0 !important; }
.low { margin: 0 0 5px 0 !important; }
.flat { margin: 0 !important; }

.small { font-size: .85em !important; }

.pointer { cursor: pointer !important; }
.default { cursor: default !important; }

.no_select {
	-webkit-user-select: none !important;
	-moz-user-select: none !important;
	-ms-user-select: none !important;
}

ul.clean {
	list-style: none;
	padding: 0;
	margin: 0;
}

.vldt {
	float: left;
	display: inline-block;
	height: 2px;
	line-height: 1.1em !important;
	margin: 0 !important;
}

	.vldt label.error {
		font-size: 1.2em !important;
		font-weight: 800;
		color: #c00;
	}

	.vldt span {
		margin: 0 2px 0 0;
	}

input::-moz-focus-inner { border: 0; padding: 0; }

.btn {
	-webkit-appearance: none;
	display: inline-block;
	background: #139fcb;
	font-family: 'Lato', Arial, Helvetica, sans-serif;
	font-size: .9em;
	font-weight: 600;
	color: #fff;
	letter-spacing: .08em;
	line-height: 1.1em;
	text-transform: uppercase;
	text-align: center;
	border: none;
	border-radius: 2px;
	-webkit-border-radius: 2px;
	cursor: pointer;
	box-sizing: border-box;
	padding: 15px 20px 15px;
	margin: 0;
	-webkit-user-select: none !important;
	-moz-user-select: none !important;
	-ms-user-select: none !important;
	transition: all .2s;
	-webkit-transition: all .2s;
}
.btn:hover {
	background: #106e8b;
	color: #fff;
}
	.btn.trnsp {
		background: rgba(0,0,0, .4);
		color: #fff;
		border: 1px solid #fff;
	}
	.btn.trnsp:hover {
		background: rgba(0,0,0, .5);
	}

  .btn.small {
    font-size: .8em !important;
    padding: 10px 16px 9px;
  }

	.btn > span {
		display: inline-block;
		vertical-align: middle;
	}
	.btn > img {
		display: inline-block;
		vertical-align: middle;
		width: auto;
		height: 11px;
		margin: 0 0 0 9px;
	}
    .btn.small > img {
      height: 8px;
      margin: 0 0 0 7px;
    }
	.btn > img.pre {
		margin: 0 8px 0 0;
	}


.btn-full {
	display: block;
	width: 100%;
}

#response {
	width: 100%;
	background: #fff;
	font-weight: 100;
	box-shadow: 0 0 15px rgba(0,0,0, .05);
	border-radius: 5px;
	-webkit-border-radius: 5px;
	cursor: pointer;
	box-sizing: border-box;
	padding: 15px 20px;
	margin: 0 auto 25px;
}
	#response.success {
		background: #e9f9e2;
		border: 1px solid #c5f1af;
		color: #5a973c;
	}
	#response.error {
		background: #fff0f0;
		border: 1px dashed #a92929;
		color: #a92929;
	}
	#response.notice {
		background: #fffde8;
		border: 1px solid #d6ad65;
		color: #906b2b;
	}

.input {
	width: 100%;
	background: rgba(255,255,255, 1);
	font-family: 'Lato', Arial, Helvetica, sans-serif;
	font-size: 1em;
	font-weight: 400;
	color: #000;
	border: 1px solid #ccc;
	border-radius: 3px;
	-webkit-border-radius: 3px;
	box-shadow: inset 0 4px 8px rgba(0,0,0, .05);
	box-sizing: border-box;
	padding: 14px 12px 13px;
	margin: 0;
	outline: 0;
	transition: all .2s;
	-webkit-transition: all .2s;
}
	.input:focus {
		border: 1px solid #000;
	}
	.input.input_s {
		padding: 6px 4px 5px;
	}
  .input.inv {
    background: #000;
    color: #fff;
    border: 1px solid #4f4f4f;
  }

	.required.error {
		border-color: #f90b0b !important;
	}

	::-webkit-input-placeholder { font-family: 'Lato', Arial, Helvetica, sans-serif; color: #999; }
	:-moz-placeholder { font-family: 'Lato', Arial, Helvetica, sans-serif; color: #999; }
	::-moz-placeholder { font-family: 'Lato', Arial, Helvetica, sans-serif; color: #999; }
	:-ms-input-placeholder { font-family: 'Lato', Arial, Helvetica, sans-serif; color: #999; }

	.label {
		display: inline-block;
		font-family: 'Lato', Arial, Helvetica, sans-serif;
		font-size: .9em;
		font-weight: 400;
		color: #000;
		letter-spacing: .02em;
		line-height: .8em;
		text-align: left;
		margin: 0 0 3px 0;
		-webkit-user-select: none;
		-moz-user-select: none;
		-ms-user-select: none;
	}
		.label > span {
			display: inline-block;
			vertical-align:  middle;
			font-size: 1.5em;
			color: #de2020;
			margin: 3px 0 -3px 0;
		}

	.label_txt {
		font-family: 'Lato', Arial, Helvetica, sans-serif;
		font-size: .9em !important;
		font-weight: 500;
		color: #797979;
		line-height: 1.5em !important;
		text-transform: uppercase;
		border-radius: 3px 3px 0 0;
		-webkit-border-radius: 3px 3px 0 0;
		padding: 0;
		margin: 0;
		-webkit-user-select: none;
		-moz-user-select: none;
		-ms-user-select: none;
	}

	.red-error {
		display: inline-block;
		border: 1px solid #d40000;
		border-radius: 4px;
		-webkit-border-radius: 4px;
		padding: 1px 4px !important;
		margin: 0 2px;
	}

	.input.textarea {
		height: 80px;
		font-family: 'Lato', Arial, Helvetica, sans-serif;
		font-size: .98em;
		line-height: 1.3em;
    resize: vertical;
	}

	.select {
		width: 100%;
		background: rgba(255,255,255, 1);
		font-family: 'Lato', Arial, Helvetica, sans-serif;
		font-size: 1.2em;
		font-weight: 400;
		color: #000;
		border: 1px solid #ccc;
		box-shadow: inset 0 4px 8px rgba(0,0,0, .05);
		box-sizing: border-box;
		padding: 12px 10px;
		margin: 0;
		outline: 0;
		transition: all .2s;
		-webkit-transition: all .2s;
	}

		.select:focus {
			background: #fff;
			color: #000;
			border: 1px solid #aaa;
			box-shadow: inset 0 3px 5px #e0e0e0;
		}

	.checkbox, .radio {
		display: inline-block;
		vertical-align: top;
		margin: -2px 5px 0 0;
		outline: none;
	}

	.Latopt {
		display: none;
	}

.w {
	position: relative;
	width: 100%;
	max-width: 1180px;
	box-sizing: border-box;
	padding: 0 40px;
	margin: 0 auto;
	transition: all .2s;
	-webkit-transition: all .2s;
}

header {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 1000;
	width: 100%;
	background: #fff;
	box-shadow: 0 0 10px rgba(0,0,0, .15);
	box-sizing: border-box;
	transition: all .2s;
	-webkit-transition: all .2s;
}
  header #top {
    width: 100%;
    background: #f3f3f3;
    padding: 4px 0 10px;
  }
    header #top a {
      display: inline-block;
			vertical-align: middle;
      margin: 0 30px 0 0;
    }
    header #top a:last-child {
      float: right;
      margin: 0;
    }
      header #top a > img {
        display: inline-block;
        vertical-align: middle;
        width: 17px;
        height: auto;
        margin: 0 5px 0 0;
      }
      header #top a > span {
        display: inline-block;
        vertical-align: middle;
        font-size: .8em;
        color: #7f7f7f;
        transition: all .2s;
    		-webkit-transition: all .2s;
      }
      header #top a:hover > span {
        color: #000;
      }
		header #top a#lang-switch {
			cursor: pointer;
			margin: 2px -5px 0 0;
		}
			header #top a#lang-switch > img {
				width: 20px;
			}

  header #logo {
    display: inline-block;
    vertical-align: middle;
    width: 140px;
    margin: 12px 0;
  }
	header.c #logo {
		width: 100px;
		margin: 8px 0;
	}
    header #logo > img {
      display: block;
      width: 100%;
      height: auto;
      transition: all .2s;
      -webkit-transition: all .2s;
    }
		header #logo:hover > img {
			transform: scale(1.04);
		}
  header nav {
    display: inline-block;
    vertical-align: middle;
    width: calc(100% - 140px);
    text-align: right;
		transition: all .2s;
		-webkit-transition: all .2s;
  }
	header.c nav {
		width: calc(100% - 100px);
	}
		#nav_tgl {
			display: none;
			transition: all .2s;
			-webkit-transition: all .2s;
		}

    header nav ul {
      list-style: none;
      padding: 0;
      margin: 0;
    }
      header nav ul > li {
				position: relative;
        display: inline-block;
        vertical-align: middle;
      }
        header nav ul > li > a {
          display: block;
          font-size: .9em;
          color: #7e7e7e;
          text-transform: uppercase;
          box-sizing: border-box;
          padding: 45px 20px;
        }
				header.c nav ul > li > a {
					font-size: .8em;
					letter-spacing: .05em;
					padding: 25px 20px 24px;
				}

			header nav ul > li.book {
				margin: 0 0 0 10px;
			}
				header nav ul > li.book > a {
					background: #139fcb;
					color: #fff;
					border-radius: 4px;
					-webkit-border-radius: 4px;
					padding: 12px 16px 11px;
				}
				header nav ul > li.book:hover > a {
					background: #15abda;
					color: #fff;
				}

        header nav ul > li:hover > a,
				header nav ul > li.c > a {
          color: #000;
        }
            header nav > ul > li > a > span {
              position: relative;
            }
            header nav > ul > li > a > span:after {
              opacity: .4;
              position: absolute;
              bottom: -10px;
              left: 0;
              display: block;
              content: ' ';
              background: #139fcb;
              width: 0;
              height: 3px;
              transition: all .2s;
          		-webkit-transition: all .2s;
            }
            header nav > ul > li:hover > a > span:after {
              width: 100%;
            }
            header nav > ul > li.c > a > span:after {
              opacity: 1;
              width: 100%;
            }

						header nav ul > li > a > img {
							opacity: .4;
							display: inline-block;
							vertical-align: middle;
							width: 9px;
							height: auto;
							margin: 0 0 2px 8px;
							transition: all .2s;
							-webkit-transition: all .2s;
						}
						header nav ul > li.c > a > img,
						header nav ul > li:hover > a > img {
							opacity: .8;
						}

					header nav > ul > li > div {
						display: none;
					}

					header nav ul > li > ul {
						display: none;
						position: absolute;
						width: 240px;
						background: #fff;
						text-align: left;
						box-shadow: 0 0 15px rgba(0,0,0, .1);
					}
					header nav ul > li:hover > ul {
						display: block;
					}
						header nav ul > li > ul > li {
							position: relative;
							display: block;
							border-bottom: 1px solid #eee;
						}
						header nav ul > li > ul > li:last-child {
							border: none;
						}
							header nav ul > li > ul > li > a {
								font-size: .85em;
								color: #6a6a6a;
								padding: 14px 5px 13px 25px;
							}
							header.c nav ul > li > ul > li > a {
								font-size: .75em;
								padding: 10px 5px 9px 25px;
							}
							header nav ul > li > ul > li.c > a {
								color: #000;
							}
							header nav ul > li > ul > li > a > span:after {
								opacity: 1;
	              position: absolute;
	              top: 19px;
	              left: 9px;
	              display: block;
	              content: ' ';
	              background: #139fcb;
	              width: 8px;
	              height: 8px;
								border-radius: 2px;
	              transition: all .2s;
	          		-webkit-transition: all .2s;
								transform: scale(0);
							}
							header.c nav ul > li > ul > li > a > span:after {
								top: 15px;
							}
							header nav ul > li > ul > li > a:hover > span:after,
							header nav ul > li > ul > li.c > a > span:after {
								transform: scale(1);
							}

#entrance {
  width: 100%;
  height: 550px;
  background: #f1f1f1;
  margin: 130px 0 0 0;
	transition: all .2s;
	-webkit-transition: all .2s;
}
  #entrance #slide {
    list-style: none;
    padding: 0;
    margin: 0;
  }
    #entrance #slide li {
      background-color: #000;
      background-position: center center;
      background-repeat: no-repeat;
      background-size: cover;
      text-align: center;
      box-sizing: border-box;
      padding: 0;
    }
      #entrance #slide li > div {
        display: table;
        width: 100%;
      }
        #entrance #slide li > div > div {
          display: table-cell;
          vertical-align: middle;
          width: 100%;
          height: 550px;
          font-size: 3em;
          font-weight: 700;
          color: #fff;
          text-shadow: 0 0 25px rgba(0,0,0, .3);
          line-height: 1.2em;
          box-sizing: border-box;
          padding: 0 50px;
          transition: all .2s;
          -webkit-transition: all .2s;
        }

main {
  display: block !important;
  background: url(../img/f.png) top left repeat-x #fff;
  box-sizing: border-box;
  padding: 220px 0 100px 0;
  margin: 0;
}
main.start {
	padding-top: 0;
}
	main p {
		line-height: 1.6em;
	}

	main h2 + br, main h3 + br {
		display: none;
	}

	main .preamble {
		font-size: 1.25em;
		margin: 0 0 40px 0;
	}
	main .content {
		line-height: 1.5em;
		margin: 0 0 70px 0;
	}
		main .content a,
		main .content-cols a {
			font-weight: 700;
		}

		main .content ul,
		main .content-cols ul {
			margin: 0 0 25px;
		}
			main .content ul li,
			main .content-cols ul li {
				margin: 0 0 5px;
			}

		main .content-img {
			display: block;
			width: 100%;
			height: auto;
			margin: 10px 0;
		}
		main .content-img + br {
			display: none;
		}
			main .content-img > img {
				display: block;
				width: 100%;
				height: auto;
				box-shadow: 0 0 25px rgba(0,0,0, .2);
			}
			main .content-img > .descr {
				display: block;
				font-size: .85em;
				font-weight: 400;
				color: #999;
				line-height: 1.6em;
				margin: 7px 0 0 0;
			}
			main .content-img > .descr.review-caption {
				color: #fff !important;
			}

		main .content-cols > .col {
			display: inline-block;
			vertical-align: top;
			width: 46%;
			margin: 0 8% 0 0;
		}
		main .content-cols > .col:last-child {
			margin: 0;
		}

  #preamble {
    display: inline-block;
    width: 100%;
    background: #fff;
    border-radius: 20px 20px 0 0;
    box-sizing: border-box;
    padding: 40px 35px 0 40px;
    margin: -50px 0 100px 0;
  }
		#preamble .text {
			display: inline-block;
			vertical-align: top;
			width: 55%;
			margin: 0 30px 0 0;
		}
		#preamble .pic {
			display: inline-block;
			vertical-align: top;
			width: calc(100% - (55% + 30px));
			height: 330px;
			background-position: top center;
			background-size: cover;
			background-repeat: no-repeat;
			background-color: #fff;
			box-sizing: border-box;
			box-shadow: 0 0 30px rgba(0,0,0, .3);
			border: 12px solid #fff;
			margin: -70px 0 0 -10px;
			transform: rotate(2.5deg);
		}

	#content.start {
		box-sizing: border-box;
		padding: 0 40px;
	}
		#content .cols > div {
			display: inline-block;
			vertical-align: top;
			width: 53%;
			margin: 0 50px 60px 0;
		}
		#content .cols > div:nth-child(2n) {
			width: calc(100% - (54% + 50px));
			margin-right: 0;
		}
			ul.services {
				list-style: none;
				padding: 0;
				margin: 0 0 15px 0;
			}
				ul.services > li {
					display: inline-block;
					vertical-align: top;
					width: 47%;
					margin: 0 6% 20px 0;
				}
				ul.services > li:nth-child(2n){
					margin-right: 0;
				}
					ul.services > li > a {
						display: block;
					}
						ul.services > li > a > img {
							display: inline-block;
							vertical-align: top;
							width: 33px;
							height: auto;
							margin: 0 15px 0 0;
							transition: all .2s;
							-webkit-transition: all .2s;
						}
						ul.services > li > a:hover > img {
							transform: scale(1.1);
						}
						ul.services > li > a > span {
							display: inline-block;
							vertical-align: top;
							width: calc(100% - (33px + 15px));
							font-size: 1.1em;
							color: #505050;
							margin: 3px 0 0 0;
							transition: all .2s;
							-webkit-transition: all .2s;
						}
						ul.services > li > a:hover > span {
							color: #000;
						}

			.business-hours {
				margin: 0 0 25px 0;
			}
				.business-hours > div {
					padding: 8px 0;
					margin: 0;
					transition: all .15s;
					-webkit-transition: all .15s;
				}
				.business-hours > div:nth-child(even) {
					background: #f3f3f3;
				}
				.business-hours > div:hover {
					background: #139fcb;
					color: #fff;
				}
					.business-hours > div > span {
						display: inline-block;
						vertical-align: top;
						width: 100px;
						text-align: right;
						margin: 0 15px 0 0;
					}
					.business-hours > div > span:last-child {
						width: calc(100% - (100px + 15px));
						text-align: left;
						margin-right: 0;
					}

			#map {
				width: 100%;
				background: #fff;
				box-sizing: border-box;
				box-shadow: 0 0 30px rgba(0,0,0, .3);
				border: 12px solid #fff;
				padding: 0;
				margin: 0;
				overflow: hidden;
			}


	#news-menu {
		float: left;
		width: 300px;
		margin: 0 50px 0 0;
	}
		.menu-list {
			list-style: none;
			padding: 0;
			margin: 0;
		}
			ul.menu-list > li {
				position: relative;
				border-bottom: 1px solid #eee;
			}
			ul.menu-list > li:last-child {
				border: none;
			}
				ul.menu-list > li > a {
					display: block;
					font-size: 1.2em;
					font-weight: 500;
					color: #999;
					letter-spacing: -.02em;
					line-height: .8em;
					padding: 14px 15px 13px;
					margin: 0;
				}
				ul.menu-list > li > a:hover,
				ul.menu-list > li.c > a {
					color: #000;
				}

				ul.menu-list > li > .menu-arw {
					position: absolute;
					display: inline-block;
					top: 9px;
					right: 9px;
					border: 1px solid rgba(0,0,0, .2);
					border-radius: 4px;
					-webkit-border-radius: 4px;
					cursor: pointer;
					padding: 10px 8px 9px;
					transition: all .2s;
					-webkit-transition: all .2s;
				}
				ul.menu-list > li > .menu-arw:hover {
					border-color: rgba(0,0,0, .5);
				}
					ul.menu-list > li > .menu-arw > img {
						opacity: .8;
						display: block;
						width: 9px;
						height: auto;
						transition: all .2s;
						-webkit-transition: all .2s;
					}
					ul.menu-list > li > .menu-arw:hover > img {
						opacity: 1;
					}

				ul.menu-list > li > ul {
					list-style: none;
					padding: 0 10px 0 15px;
					margin: -8px 0 5px 0;
				}
					ul.menu-list > li > ul > li {
						position: relative;
						border-bottom: 1px dashed #ddd;
					}
					ul.menu-list > li > ul > li:last-child {
						border: none;
					}
						ul.menu-list > li > ul > li > a {
							display: block;
							font-size: .8em;
							color: #ff5757;
							padding: 8px 15px 9px 10px;
							margin: 0;
						}
						ul.menu-list > li > ul > li:hover > a,
						ul.menu-list > li > ul > li.c > a {
							color: #000;
						}
						ul.menu-list > li > ul > li.c > a {
							font-weight: 500;
						}
							ul.menu-list > li > ul > li > a > .date {
								display: block;
								font-size: .8em;
								color: #aaa;
							}
	#news-content {
		float: right;
		width: calc(100% - 350px);
	}
		#news-content h2 + br {
			display: none;
		}
		.news-article {
			display: block;
			margin: 0 0 50px 0;
		}
		.news-article + .dlm {
			margin-bottom: 50px;
		}
			.news-article > .news-title {
				position: relative;
				font-size: 1.6em;
				font-weight: 400;
				color: #000;
				letter-spacing: -.02em;
				line-height: 1.25em;
				padding: 0 0 23px 0;
				margin: 0;
			}
			.news-article > a.news-title {
				color: #139fcb;
			}
			.news-article > a.news-title:hover {
				color: #000;
			}
			.news-article > a.news-title.c {
				color: #666;
			}
				.news-article > .news-title:after {
					content: ' ';
					position: absolute;
					bottom: -18px;
					left: 0;
					width: 60px;
					height: 2px;
					background: #139fcb;
				}
			.news-article > .news-date {
				display: block;
				font-size: .8em;
				line-height: 1.2em;
				color: #999;
				margin: 2px 0 50px 0;
			}
			.news-article > .news-preamble {
				display: block;
				font-size: 1.1em;
				font-weight: 500;
				color: #555;
				line-height: 1.6em;
				margin: 25px 0 0 0;
			}
			.news-article > .news-content {
				display: block;
				margin: 30px 0 0 0;
			}
				.news-article > .news-content > p {
					font-weight: 400;
					line-height: 1.8em;
				}



	#staff ul.staff-list {
		list-style: none;
		padding: 0;
		margin: 0;
	}
		#staff ul.staff-list li {
			display: inline-block;
			vertical-align: top;
			width: 20%;
			margin: 0 6.6666667% 50px 0;
		}
		#staff ul.staff-list li:nth-child(4n){
			margin-right: 0;
		}
			#staff ul.staff-list li .img {
				display: block;
				background-position: top center;
				background-size: cover;
				background-repeat: no-repeat;
				box-shadow: 0 0 25px rgba(0,0,0, .20);
				margin: 0 0 20px 0;
			}
			#staff ul.staff-list li .name {
				font-size: 1.3em;
			  color: #505050;
			}
			#staff ul.staff-list li .title {
				font-size: .9em;
			}
			#staff ul.staff-list li .contact {
				margin: 10px 0 0 0;
			}
				#staff ul.staff-list li .contact > a {
					display: block;
				}
					#staff ul.staff-list li .contact > a > img {
						opacity: .6;
						display: inline-block;
						vertical-align: middle;
						width: 22px;
						height: auto;
						margin: 0 10px 0 0;
						transition: all .2s;
						-webkit-transition: all .2s;
					}
					#staff ul.staff-list li .contact > a:hover > img {
						opacity: 1;
					}
					#staff ul.staff-list li .contact > a > .info {
						display: inline-block;
						vertical-align: middle;
						width: calc(100% - 32px);
						font-size: .9em;
					}
			#staff ul.staff-list li .descr {
				font-size: .9em;
				margin: 15px 0 0 0;
			}



	a.gallery-backlink {
		position: absolute;
		top: 20px;
		left: 90px;
	}
	#galleries {
		margin: 40px 0 0 0;
	}
		#galleries a.gallery {
			display: inline-block;
			vertical-align: top;
			width: 48%;
			box-sizing: border-box;
			box-shadow: 0 0 25px rgba(0,0,0, .15);
			margin: 0 4% 15px 0;
			transition: all .2s;
			-webkit-transition: all .2s;
		}
		#galleries a.gallery:nth-child(even) {
			margin-right: 0;
		}
		#galleries a.gallery:hover {
			box-shadow: 0 0 35px rgba(0,0,0, .35);
		}
			#galleries .gallery .img {
				opacity: .8;
				width: 100%;
				padding-top: 56.25%;
				background-position: center center;
				background-size: cover;
				background-repeat: no-repeat;
				margin: 0;
				transition: all .2s;
				-webkit-transition: all .2s;
			}
			#galleries .gallery:hover .img {
				opacity: 1;
			}
			#galleries .gallery .info {
				box-sizing: border-box;
				padding: 18px 15px;
				margin: 0;
			}
				#galleries .gallery .info h3.title {
					font-size: 1.4em;
					color: #139fcb;
					margin: 0;
				}
				#galleries .gallery .info .descr {
					font-size: 1em;
					color: rgba(0,0,0, .6);
					margin: 10px 0 0;
				}

	#gallery {
		text-align: center;
		margin: 50px 0 0 0;
	}
	#gallery a {
		display: inline-block;
		vertical-align: top;
		width: calc(25% - 20px);
		box-sizing: border-box;
		box-shadow: 0 0 25px rgba(0,0,0, .15);
		margin: 0 25px 30px 0;
		transition: all .2s;
		-webkit-transition: all .2s;
	}
	#gallery a:nth-child(4n) {
		margin-right: 0;
	}
	#gallery a:hover {
		box-shadow: 0 0 35px rgba(0,0,0, .35);
	}
		#gallery a .img {
			opacity: .8;
			width: 100%;
			padding-top: 56.25%;
			background-position: center center;
			background-size: cover;
			background-repeat: no-repeat;
			margin: 0;
			transition: all .2s;
			-webkit-transition: all .2s;
		}
		#gallery a:hover .img {
			opacity: 1;
		}




	#faq {
	}
		#faq h3 {
			margin: 0 0 10px 0;
		}
		#faq .cat-questions {
			margin: 0 0 20px;
		}
			#faq .cat-questions .q {
				border-radius: 4px;
				-webkit-border-radius: 4px;
				border: 1px solid #ddd;
				box-sizing: border-box;
				margin: 0 0 -1px 0;
			}
				#faq .cat-questions .q > a {
					display: block;
					font-size: .95em;
					font-weight: 400;
					text-decoration: none;
					cursor: pointer;
					padding: 10px;
				}
				#faq .cat-questions .q > .answer {
					display: none;
					font-size: .8em;
					box-sizing: border-box;
					padding: 0 20px 5px 20px;
				}
					#faq .cat-questions .q > .answer > p {
						padding: 0;
						margin: 0 0 7px;
					}
					#faq .cat-questions .q > .answer > ul {
						margin: 0 0 12px 0;
					}
						#faq .cat-questions .q > .answer > ul > li {
							margin: 0 0 4px;
						}




	#prices {
		margin: -35px 0 0 0 !important;
	}
	#prices ul.price-list {
		list-style: none;
		padding: 0;
		margin: -15px 0 0 0;
	}
		#prices ul.price-list > li {
			display: block;
			width: 100%;
			box-sizing: border-box;
			padding: 12px 10px;
			transition: all .2s;
			-webkit-transition: all .2s;
		}
		#prices ul.price-list > li:nth-child(even) {
			background: #f3f3f3;
		}
		#prices ul.price-list > li:hover {
			background: #139fcb;
			color: #fff;
		}
			#prices ul.price-list > li > .title {
				display: inline-block;
				vertical-align: top;
				width: calc(100% - 140px);
			}
				#prices ul.price-list > li > .title > .descr {
					font-size: .8em;
					color: #999;
					margin: 2px 0 0 0;
					transition: all .2s;
					-webkit-transition: all .2s;
				}
				#prices ul.price-list > li:hover > .title > .descr {
					color: #fff;
				}
			#prices ul.price-list > li > .price {
				display: inline-block;
				vertical-align: top;
				width: 120px;
				text-align: right;
				margin: 0 0 0 20px;
			}


	#main-menu {
		float: left;
		width: 300px;
		box-shadow: 0 0 25px rgba(0,0,0, .2);
		margin: 0 50px 0 0;
	}
		.menu-list {
			list-style: none;
			padding: 0;
			margin: 0;
		}
			ul.menu-list > li {
				position: relative;
				border-bottom: 1px solid #eee;
			}
			ul.menu-list > li:last-child {
				border: none;
			}
				ul.menu-list > li > a {
					display: block;
					color: #999;
					line-height: .8em;
					padding: 18px 15px 17px;
					margin: 0;
				}
				ul.menu-list > li > a:hover,
				ul.menu-list > li.c > a {
					color: #000;
				}

				ul.menu-list > li > span {
					position: absolute;
					top: 0;
					left: 0;
					display: inline-block;
					width: 0;
					height: 47px;
					background: #139fcb;
					transition: all .2s;
					-webkit-transition: all .2s;
				}
				ul.menu-list > li.c > span,
				ul.menu-list > li:hover > span {
					width: 4px;
				}

				ul.menu-list > li > .menu-arw {
					position: absolute;
					display: inline-block;
					top: 11px;
					right: 9px;
					border: 1px solid #ddd;
					border-radius: 4px;
					-webkit-border-radius: 4px;
					cursor: pointer;
					padding: 10px 8px 9px;
					transition: all .2s;
					-webkit-transition: all .2s;
				}
				ul.menu-list > li > .menu-arw:hover {
					border-color: #000;
				}
					ul.menu-list > li > .menu-arw > img {
						opacity: .4;
						display: block;
						width: 9px;
						height: auto;
						transition: all .2s;
						-webkit-transition: all .2s;
					}
					ul.menu-list > li > .menu-arw:hover > img {
						opacity: 1;
					}

				ul.menu-list > li > ul {
					list-style: none;
					padding: 0 15px 0 15px;
					margin: -5px 0 0 0;
				}
					ul.menu-list > li > ul > li {
						position: relative;
						border-bottom: 1px dashed #ddd;
					}
					ul.menu-list > li > ul > li:last-child {
						border: none;
					}
						ul.menu-list > li > ul > li > a {
							display: block;
							font-size: .95em;
							color: #999;
							padding: 10px 15px 9px 10px;
							margin: 0;
						}
						ul.menu-list > li > ul > li:hover > a,
						ul.menu-list > li > ul > li.c > a {
							color: #000;
						}
							ul.menu-list > li > ul > li > a > .date {
								display: block;
								font-size: .8em;
								color: #aaa;
							}

	#main-content {
		float: right;
		width: calc(100% - 350px);
	}
		#main-content .article {
			margin: 0 0 35px 0;
		}
		#main-content .article:last-child {
			margin: 0;
		}
			#main-content .article > a.title,
			#main-content .article > div.title {
				display: block;
				font-size: 1.5em;
				margin: 0 0 12px 0;
			}
			#main-content .article > div.title {
				margin: 0 0 20px 0;
			}
			#main-content .article > .text {
			}


	#reviews > .row {
		box-shadow: 0 0 20px rgba(0,0,0, .18);
		box-sizing: border-box;
		border-radius: 20px;
		-webkit-border-radius: 10px;
		padding: 20px;
		margin: 0 0 40px 0;
	}
	#reviews > .row:last-child {
		margin: 0;
	}
		#reviews .name {
			text-align: right;
			font-style: italic;
			margin: 7px 0 0 0;
		}


	#contact-details {
		margin: 10px 0 60px 0;
	}
	#contact-details a {
    display: block;
    vertical-align: middle;
    margin: 0 0 15px 0;
  }
  	#contact-details a > img {
      display: inline-block;
      vertical-align: top;
      width: 25px;
      height: auto;
      margin: 0 12px 0 0;
    }
    #contact-details a > div {
      display: inline-block;
      vertical-align: top;
			width: calc(100% - (25px + 12px));
			font-size: .95em;
			font-weight: 400;
      color: #676767;
    }
    #contact-details a:hover > div {
      color: #000;
    }

	.form-inputs > div {
		margin: 0 0 5px 0;
	}
	.form-inputs > div.date {
		margin: 15px 0;
	}
		.form-inputs > div.date > div {
			display: inline-block;
			vertical-align: middle;
			width: calc(100% - 170px);
			font-size: .9em;
			line-height: 1.4em;
			margin: 0;
		}
		.form-inputs > div.date > input[name=date] {
			display: inline-block;
			vertical-align: middle;
			width: 150px;
			text-align: center;
			margin: 0 0 0 20px;
		}
	.captcha {
		display: none;
		margin: 0 0 8px 0 !important;
	}
	#form-ldr {
		display: none;
	}

footer {
  font-size: .8em;
  color: #888;
  text-align: center;
  box-sizing: border-box;
  padding: 100px 0;
}
  footer img.logo {
    display: inline-block;
    width: 220px;
    height: auto;
    margin: 0 0 10px 0;
  }

  footer .copyright {
    line-height: 1.6em;
    margin: 0 0 30px 0;
  }

	footer a.book {
		font-size: 1em;
		margin: 0 0 35px;
	}

  footer .contact a {
    display: inline-block;
    vertical-align: middle;
    margin: 0 15px 7px;
  }
    footer .contact a > img {
      display: inline-block;
      vertical-align: middle;
      width: 22px;
      height: auto;
      margin: 0 8px 0 0;
    }
    footer .contact a > span {
      display: inline-block;
      vertical-align: middle;
      color: #888;
    }
    footer .contact a:hover > span {
      color: #000;
    }



#d { display: none; }

#topl {
	position: fixed;
	z-index: 10000000000000000;
	bottom: 28px;
	right: 28px;
	width: 40px;
	height: 40px;
	background: rgba(0,0,0, .4);
	border-radius: 6px;
	-webkit-border-radius: 6px;
  border: 1px solid rgba(255,255,255, .05);
}
#topl:hover {
	background: rgba(0,0,0, .8);
  border: 1px solid rgba(255,255,255, .5);
}
	#topl > div {
		opacity: .5;
		display: table-cell;
		vertical-align: middle;
		width: inherit;
		height: inherit;
		font-size: 1.5em;
		color: #fff;
		text-align: center;
		transition: all .2s;
		-webkit-transition: all .2s;
	}
	#topl:hover > div {
		opacity: 1;
	}
		#topl > div > img {
			display: inline-block;
			width: 12px;
			height: auto;
			margin: 0 0 5px 0;
		}






@media screen and (max-width: 1100px){
}

@media screen and (max-width: 961px){
	header {
		position: fixed;
	}
		header a#logo {
			float: left;
			width: 80px;
			padding: 0;
			margin: 10px 0;
		}
		#nav_tgl {
			opacity: .5;
			float: right;
			display: inline-block;
			width: 26px;
			height: auto;
			cursor: pointer;
			padding: 10px;
			margin: 22px -10px 0 0;
		}
		header nav > ul {
			position: fixed;
			z-index: 10000000000;
			display: inline-block;
			right: -300px;
			top: 120px !important;
			width: 260px;
			background: #fff;
			list-style: none;
			box-shadow: 0 0 15px rgba(0,0,0, .3);
			padding: 0;
			margin: 0;
		}
				header nav > ul > li {
					position: relative !important;
					display: block;
					text-align: left;
					border-bottom: 1px solid #eee;
				}
				header nav > ul > li:last-child {
					border: none;
				}
					header nav > ul > li > a {
						display: block;
						font-size: .9em;
						color: #7c7c7c;
						padding: 13px 20px;
					}
					header nav > ul > li.book {
						background: #139fcb;
						padding: 0 0 0 5px;
						margin: 0;
					}
					header nav > ul > li.book > a {
						background: none;
					}
					header nav > ul > li.c > a {
						color: #000;
					}
						header nav > ul > li > a > span {
							display: inline-block;
							vertical-align: middle;
						}
						header nav > ul > li > a > img {
							display: none;
						}

					header nav > ul > li > a:hover > span:after,
					header nav > ul > li:hover > a > span:after {
						display: none;
					}
					header nav > ul > li.c > a > span:after,
					header nav > ul > li.c > a:hover > span:after,
					header nav > ul > li.c:hover > a:hover > span:after {
						display: inline-block;
						top: -14px;
						left: -20px;
						width: 4px;
						height: 47px;

					}
					header nav > ul > li > div {
						position: absolute;
						top: 8px;
						right: 8px;
						display: inline-block;
						border: 1px solid #ddd;
						border-radius: 4px;
						-webkit-border-radius: 4px;
						cursor: pointer;
						padding: 2px 11px 6px;
					}
						header nav > ul > li > div > img {
							opacity: .5;
							display: inline-block;
							width: 9px;
							height: auto;
						}

					header nav > ul > li > ul {
						display: none;
						position: static !important;
						width: 100%;
						box-shadow: none;
						box-sizing: border-box;
						padding: 0 8px 0 20px;
						margin: 0;
					}
					header nav > ul > li:hover > ul {
						display: none;
					}
					header nav > ul > li:hover > ul.show {
						display: block;
					}
					header nav > ul > li > ul.show {
						display: block;
					}
						header nav > ul > li > ul > li {
							position: relative;
							display: block;
							border-top: 1px dashed #eee !important;
							border-bottom: none !important;
						}
						header nav > ul > li > ul > li:last-child {
							border: none;
						}
							header nav > ul > li > ul > li > a {
								display: block;
								font-size: .75em;
								font-weight: 400;
								color: #7c7c7c;
								letter-spacing: .02em;
								border: 0 !important;
								padding: 11px 0 11px 18px;
							}
							header nav > ul > li > ul > li.c > a {
								color: #000 !important;
								background: none;
								border: 0 !important;
							}
								header nav > ul > li > ul > li > a:hover > span:after {
									display: none;
								}
								header nav > ul > li > ul > li.c > a > span:after,
								header nav > ul > li > ul > li.c > a:hover > span:after {
									display: inline-block;
									top: 16px !important;
									left: 0;
									width: 8px !important;
									height: 8px !important;
									border-radius: 2px;
									-webkit-border-radius: 2px;
								}

	#entrance {
	  height: 400px;
	  margin: 85px 0 0 0;
	}
    #entrance #slide li > div > div {
      height: 400px;
      padding: 0 50px;
    }

	main {
		padding: 150px 0 80px;
	}

	#staff ul.staff-list li,
	#staff ul.staff-list li:nth-child(4n) {
		width: 47%;
		margin: 0 6% 60px 0;
	}
	#staff ul.staff-list li:nth-child(2n){
		margin-right: 0;
	}
}

@media screen and (max-width: 768px){
	h1 {
		font-size: 1.6em;
		line-height: 1.3em;
		margin: 0 0 25px 0;
	}
	h2 {
		font-size: 1.4em;
		line-height: 1.3em;
		margin: 0 0 20px 0;
	}

	h3 {
		font-size: 1.2em;
		line-height: 1.3em;
		margin: 0 0 20px 0;
	}

	.w {
		padding: 0 20px;
	}

	header #top {
		display: none;
	}
	header a#logo {
		width: 60px;
		margin: 10px 0;
	}
	#nav_tgl {
		width: 26px;
		margin: 14px -5px 0 0;
	}
	header nav > ul {
		top: 65px !important;
	}

	#entrance {
		height: 350px;
		margin: 48px 0 0 0;
		overflow-x: hidden;
	}
		#entrance #slide li > div > div {
			height: 350px;
		}

	#preamble {
    padding: 30px 25px 0 25px;
    margin: -50px 0 100px 0;
  }
		#preamble .text {
			display: block;
			width: 100%;
			margin: 0 0 60px 0;
		}
		#preamble .pic {
			display: block;
			width: 100%;
			height: 330px;
			margin: 0;
			transform: none;
		}

	main {
		padding: 100px 0 60px;
	}
		main .content-cols > .col {
			display: block;
			width: 100%;
			margin: 0 0 50px 0;
		}
		main .content-cols > .col:last-child {
			margin: 0;
		}

	#content.start {
		padding: 0 20px;
	}
		#content .cols > div {
			display: block;
			width: 100%;
			margin: 0 0 100px 0;
		}
		#content .cols > div:nth-child(2n) {
			width: 100%;
		}

	.table-group {
		display: table;
	}
	#main-menu {
		display: table-footer-group;
		float: none;
		width: 100%;
		padding: 0;
		margin: 0;
	}
	#main-content {
		display: block;
		float: none;
		width: 100%;
		padding: 0 0 60px 0;
		margin: 0;
	}

	#news-menu {
		float: none;
		display: table-footer-group;
		width: 100%;
		margin: 0 0 0 0;
	}
	#news-content {
		float: none;
		display: table-header-group;
		width: 100%;
	}
		.news-article > .news-title {
			font-size: 1.5em;
			padding: 0 0 23px 0;
		}

	footer {
		padding: 60px 0;
	}
}

@media screen and (max-width: 500px){
	.w {
		padding: 0 12px;
	}

	#preamble {
    padding: 25px 20px 0;
    margin: -50px 0 100px 0;
  }

	ul.services > li {
		display: block;
		width: 100%;
		margin: 0 0 20px 0;
	}

	#staff ul.staff-list li,
	#staff ul.staff-list li:nth-child(4n) {
		display: block;
		width: 100%;
		margin: 0 0 60px 0;
	}
	#staff ul.staff-list li:nth-child(2n){
		margin-right: 0;
	}
}
