 /* =CSS Reset
--------------------------------------------------------------------------------------------------*/

html, body, body div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, figure, footer, header, hgroup, menu, nav, section, time, mark, audio, video {
	margin: 0;padding: 0;border: 0;outline: 0;font-size: 100%;vertical-align: baseline;background: transparent;
}
/* Tell the browser to render HTML 5 elements as block */  
header, footer, aside, nav, article, section, figure, hgroup { display: block; }  

/* Responsive images and other embedded objects
   Note: keeping IMG here will cause problems if you're using foreground images as sprites.
   If this default setting for images is causing issues, you might want to replace it with a .responsive class instead. */
   img,object,embed {max-width: 100%;}

   /* force a vertical scrollbar to prevent a jumpy page */

/* we use a lot of ULs that aren't bulleted. 
don't forget to restore the bullets within content. */
ul {list-style: none;}

blockquote, q {quotes: none;}

blockquote:before, blockquote:after, q:before, q:after {content: ''; content: none;}

a {margin: 0; padding: 0; font-size: 100%; vertical-align: baseline; background: transparent;}

del {text-decoration: line-through;}

abbr[title], dfn[title] {border-bottom: 1px dotted #000; cursor: help;}

/* tables still need cellspacing="0" in the markup */
table {border-collapse: collapse; border-spacing: 0;}
th {font-weight: bold; vertical-align: bottom;}
td {font-weight: normal; vertical-align: top;}

hr {display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0;}

input, select {vertical-align: middle;}

pre {
	white-space: pre; /* CSS2 */
	white-space: pre-wrap; /* CSS 2.1 */
	white-space: pre-line; /* CSS 3 (and 2.1 as well, actually) */
	word-wrap: break-word; /* IE */
}

input[type="radio"] {vertical-align: text-bottom;}
input[type="checkbox"] {vertical-align: bottom;}
.ie6 input {vertical-align: text-bottom;}

select, input, textarea {font: 99% sans-serif;}

table {font-size: inherit; font: 100%;}

/* Accessible focus treatment people.opera.com/patrickl/experiments/keyboard/test */
a:hover, a:active, a:focus {outline: none;}

small {font-size: 85%;}

strong, th {font-weight: bold;}

td, td img {vertical-align: top;} 

/* Make sure sup and sub don't screw with your line-heights
gist.github.com/413930 */
sub, sup {font-size: 75%; line-height: 0; position: relative;}
sup {top: -0.5em;}
sub {bottom: -0.25em;}

/* standardize any monospaced elements */
pre, code, kbd, samp {font-family: monospace, sans-serif;}

/* hand cursor on clickable elements */
.clickable, label, input[type=button], input[type=submit], button {cursor: pointer;}

/* Webkit browsers add a 2px margin outside the chrome of form elements */
button, input, select, textarea {margin: 0;}

/* make buttons play nice in IE */
button {width: auto; overflow: visible;}

/* Micro Clearfix Hack */
.cf:before, .cf:after { content: "\0020"; display: block; height: 0; overflow: hidden; }  
.cf:after { clear: both; }  
.cf { zoom: 1; }  

img {
	image-rendering: -webkit-optimize-contrast;
}

body {
    font-family: "Roboto Slab", sans-serif;
}

input, textarea, select, button, input[type="submit"] {
    font-family: "Roboto Slab", sans-serif;
    -webkit-box-sizing: border-box;
	box-sizing: border-box;
}

/* End CSS Reset
--------------------------------------------------------------------------------------------------*/

/* Start Basic CSS
--------------------------------------------------------------------------------------------------*/
input,
textarea,
button,
select,
a,
span,
div {
  -webkit-tap-highlight-color: rgba(0,0,0,0);
}

img {
    height: auto;
}

body {
	font-size: 16px;
	font-weight: 400;
	line-height: 20px;
	color: #000;
	font-family: "Albert Sans", sans-serif;
}

html {
	height: 100%;
}

body {
	height: 100%;
}

html.canvas-opened {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    overflow-y: scroll;
}

.wrapper {
	position: relative;
	min-height: 100%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	margin: 0 auto;
}

.gallery-section,
.slider-section,
.map-section {
    max-width: 1920px;
    width: 100%;
    margin: 0 auto;
}

select, input, textarea {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

.container {
	max-width: 1440px;
	width: 100%;
	margin: 0 auto;
	padding: 0px 20px;
}

.btn {
	display: inline-block;
	outline: none;
	text-decoration: none;
}

.white-btn {
    margin-top: 30px;
    height: 50px;
    border: 0px;
    padding: 0px 40px;
    border-radius: 10px;
    background: #fff;
    color: #f47a00;
    line-height: 50px;
    font-size: 16px;
    font-weight: 700;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    text-align: center;
    -webkit-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
}

.white-btn:hover {
    background: #f47a00;
    color: #fff;
}
/* End Basic CSS
--------------------------------------------------------------------------------------------------*/

/* Start header CSS
--------------------------------------------------------------------------------------------------*/
#header {
    position: absolute;
    top: 0px;
    left: 50%;
    max-width: 1920px;
    width: 100%;
    z-index: 2;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    padding: 10px 0px;
    background: rgba(0,0,0, .2);
}

.slider-desktop {
    display: block;
}

.slider-mobile {
    display: none !important;
}

#header .container {
    display: flex;
    justify-content: space-between;
}

.header-info a {
    text-decoration: none;
}

.language-switcher {
    display: flex;
    justify-content: flex-end;
}

.language-switcher a {
    display: block;
    color: rgba(255,255,255, .5);
    font-weight: 700;
    font-size: 12px;
}

.language-switcher li:not(:first-child) {
    padding-left: 10px;
    margin-left: 10px;
    position: relative;
}

.language-switcher li:not(:first-child):after {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    margin-top: -5px;
    width: 2px;
    height: 10px;
    background: rgba(255,255,255, .3);
}

.language-switcher span {
    display: block;
    color: rgba(255,255,255, 1);
    font-weight: 700;
    font-size: 12px;
}

.header-tel a {
    color: #fff;
    font-weight: 700;
    font-size: 14px;
}
/* End header CSS
--------------------------------------------------------------------------------------------------*/

/* Start homepage CSS
--------------------------------------------------------------------------------------------------*/
.about-us-section {
    padding: 120px 0px;
}

.about-inner-text {
    width: 50%;
    padding-right: 140px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.about-wrapper figure {
    width: 50%;
}

.about-inner-text h2 {
    font-size: 32px;
    line-height: 36px;
}

.about-inner-text p {
    margin-top: 30px;
}

.about-inner-text ul li {
    position: relative;
    padding-left: 15px;
}

.about-inner-text ul li:after {
    content: '';
    position: absolute;
    left: 0;
    top: 8px;
    width: 4px;
    height: 4px;
    border-radius: 2px;
    background: #000;
}

.about-wrapper {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

.top-gallery {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.top-gallery > div {
    width: 50%;
}

body .slick-arrow {
    position: absolute;
    top: 50%;
    font-size: 0px;
    border: 0px;
    width: 40px;
    height: 40px;
    margin-top: -15px;
    z-index: 2;
}

body .slick-arrow.slick-disabled {
    opacity: .5;
}

body .slick-prev {
    left: 0px;
    background: rgba(255,255,255, .4) url('../img/bgi/arrow-left-black.svg') no-repeat center center;
}

body .slick-next {
    right: 0px;
    background: rgba(255,255,255, .4) url('../img/bgi/arrow-right-black.svg') no-repeat center center;
}

.gallery-section div a {
    position: relative;
    display: block;
}

.gallery-section div a:after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0, .1);
    z-index: 2;
    -webkit-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
}

.gallery-section div a:hover:after {
    opacity: 0;
    visibility: hidden;
}

#map-canvas {
    display: block;
    width: 100%;
    height: 400px;
}

.fancybox-show-thumbs .fancybox-inner {
    right: 0;
    bottom: 95px;
}

.fancybox-thumbs__list {
    margin: 0 auto;
}

.fancybox-bg,
.fancybox-is-open .fancybox-bg {
    opacity: 1;
    background: #fff;
}

.fancybox-thumbs__list a:before {
    border: 1px solid #000;
}

.fancybox-infobar {
    font-size: 16px;
    color: #333545;
    opacity: 1;
    visibility: visible;
    mix-blend-mode: unset;
}

.fancybox-toolbar {
    opacity: 1;
    visibility: visible;
}

.fancybox-button.fancybox-button--close {
    background: transparent;
    width: 60px;
    height: 50px;
    color: #666;
    opacity: 1;
    visibility: visible;
}

.fancybox-button.fancybox-button--close:hover {
    color: #000;
}

.fancybox-navigation .fancybox-button {
    opacity: 1;
    visibility: visible;
}

.fancybox-navigation .fancybox-button.fancybox-button--arrow_left,
.fancybox-navigation .fancybox-button.fancybox-button--arrow_right {
    border: 0px;
    top: calc(50% - 25px);
    width: 50px;
    height: 50px;
    padding: 0px;
    font-size: 0px;
    line-height: 0px;
    opacity: 1;
    outline: none;
    -webkit-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.fancybox-navigation .fancybox-button.fancybox-button--arrow_left:hover,
.fancybox-navigation .fancybox-button.fancybox-button--arrow_right:hover {
    opacity: 1;
}

.fancybox-button.fancybox-button--arrow_left div,
.fancybox-button.fancybox-button--arrow_right div {
    display: none;
}

.fancybox-button.fancybox-button--arrow_left {
    background: url('../img/bgi/arrow-left-black.svg') no-repeat center center;
    background-size: 30%;
}

.fancybox-button.fancybox-button--arrow_right {
    background: url('../img/bgi/arrow-right-black.svg') no-repeat center center;
    background-size: 30%;
}


.fancybox-button.fancybox-button--zoom {
    display: none !important;
}

.fancybox-thumbs {
    top: auto;
    width: auto;
    bottom: 0;
    left: 0;
    right: 0;
    height: 95px;
    padding: 10px 10px 5px 10px;
    box-sizing: border-box;
    background: #fff;
}
/* End homepage CSS
--------------------------------------------------------------------------------------------------*/

/* Start footer CSS
--------------------------------------------------------------------------------------------------*/
#footer {
    padding: 50px 0px;
    text-align: center;
    font-size: 16px;
    font-weight: 500;
    background: #f0f0f0;
}

.footer-logo {
    display: inline-block;
    margin-bottom: 40px;
}

.copyright-container p a {
    text-decoration: none;
    color: #000;
}

.copyright-container ul {
    margin: 10px 0px;
}

.copyright-container ul li {
    position: relative;
    display: inline-block;
    margin: 0px 5px;
}

.copyright-container ul li:not(:last-child):after {
    content: '';
    position: absolute;
    right: -7px;
    top: 1px;
    width: 1px;
    height: 16px;
    background: #000;
}

.copyright-container ul li a {
    display: block;
    color: #000;
    text-decoration: none;
}

.social-footer {
    display: flex;
    justify-content: center;
    margin-top: 20px;
}

.social-footer a {
    display: block;
    position: relative;
    width: 40px;
    height: 40px;
    border-radius: 20px;
    background: #fff;
    -webkit-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.social-footer a:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}

.social-footer a:after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
}

.social-footer li {
    margin: 0px 5px;
}

.social-footer a:hover {
    background: #f15940;
}

.fb-link:before {
    background: url('../img/bgi/facebook-black.svg') no-repeat center center;
}

.ins-link:before {
    background: url('../img/bgi/instagram-black.svg') no-repeat center center;
}

.fb-link:after {
    background: url('../img/bgi/facebook-white.svg') no-repeat center center;
}

.ins-link:after {
    background: url('../img/bgi/instagram-white.svg') no-repeat center center;
}

.social-footer a:hover {
    background: #000;
}

.social-footer a:hover:after {
    opacity: 1;
    visibility: visible;
}
/* End footer CSS
--------------------------------------------------------------------------------------------------*/