body {background:#FFF; top:0 !important; margin:0 auto; font-family:"Roboto", Arial, Verdana, Helvetica; font-size:16px; color:#231F20; overflow-x:hidden;}

*, *::before, *::after {box-sizing:border-box;}

.fixed {overflow:hidden;}

header, #header, #mainContent, .container, #footer, #footerBottom, #logo, #logo a, #logo h1, .showMenuBox, #menuTitle, #mainMenu, #mainMenu li, #mainMenu a, .socialLink, #galleryFooterImg {transition-duration:0.5s;}

header {position:absolute; top:0; left:0; width:100%; z-index:99;}
main, footer {float:left; width:100%;}
#logo, #logo h1, #authorText {float:left;}
#logo a {text-decoration:none;}
#logo svg {float:left; height:auto;}
#logo h1 {margin:0;}

#authorText {font-weight:600;}
#authorPos {font-size:0.8em; font-style:italic;}

.showMenu {position:absolute; background:rgba(35, 31, 32, 0.25); width:auto; height:100%; right:0; margin:0; border:0; display:inline-block; overflow:visible; aspect-ratio:1/1; cursor:pointer; z-index:100;}
.showMenu.showBG {background:rgba(0, 0, 0, 0.5);}
.showMenuBox {position:absolute; top:17px; left:calc(50% - 15px); width:30px; height:24px;}
.slidingHeader .showMenuBox {top:7px; left:10px;}
#menuTitle {position:absolute; bottom:10px; left:0; width:100%; height:14px; line-height:14px; text-align:center; text-transform:uppercase; color:#FFF; font-size:10px;}
.slidingHeader #menuTitle {bottom:0;}
.showMenu.is-active #menuTitle {color:#231F20;}
.showMenuContent {top:50%; display:block; margin-top:-2px;}
.showMenuContent, .showMenuContent::before, .showMenuContent::after {position:absolute; width:30px; height:2px; background:#FFF; transition-duration:0.15s; transition-property:transform, -webkit-transform; transition-timing-function:ease;}
.showMenuContent::before, .showMenuContent::after {content:""; display:block;}
.showMenuContent::before {top:-6px;}
.showMenuContent::after {bottom:-6px;}
#showMenu:hover {background:rgba(35, 31, 32, 0.6);}
.showMenu:hover .showMenuContent, .showMenu:hover .showMenuContent::before, .showMenu:hover .showMenuContent::after {background:#FFF;}
.menuCollapsed .showMenuContent {bottom:0; top:auto; transition-delay:0.15s; transition-duration:0.15s; transition-timing-function:cubic-bezier(0.55, 0.055, 0.675, 0.19);}
.menuCollapsed .showMenuContent::after {top:-16px; transition:top 0.3s cubic-bezier(0.33333, 0.66667, 0.66667, 1) 0.3s, opacity 0.1s linear 0s;}
.menuCollapsed .showMenuContent::before {top:-8px; transition:top 0.12s cubic-bezier(0.33333, 0.66667, 0.66667, 1) 0.3s, transform 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19) 0s, -webkit-transform 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19) 0s;}
.menuCollapsed.is-active .showMenuContent {background:#231F20; transform:translate3d(0px, -10px, 0px) rotate(-45deg); transition-delay:0.32s; transition-timing-function:cubic-bezier(0.215, 0.61, 0.355, 1);}
.menuCollapsed.is-active .showMenuContent::after {background:#231F20; top:0; opacity:0; transition:top 0.3s cubic-bezier(0.33333, 0, 0.66667, 0.33333) 0s, opacity 0.1s linear 0.27s;}
.menuCollapsed.is-active .showMenuContent::before {top:0; background:#231F20; top:0; transform:rotate(-90deg); transition:top 0.12s cubic-bezier(0.33333, 0, 0.66667, 0.33333) 0.18s, transform 0.15s cubic-bezier(0.215, 0.61, 0.355, 1) 0.42s, -webkit-transform 0.15s cubic-bezier(0.215, 0.61, 0.355, 1) 0.42s;}

#mainMenu {position:fixed; top:0; left:0; width:100vw; height:100vh; background:rgba(255,255,255,0.8); z-index:99; overflow-y:auto; display:none; opacity:0;}
.slidingHeader #mainMenu {top:30px;}
#menuContainer {position:absolute; background:rgba(255, 255, 255, 0.9); height:100vh; padding:25px; box-shadow:5px 0px 5px 0px rgba(196,196,196,0.75); -webkit-box-shadow:5px 0px 5px 0px rgba(196,196,196,0.75); -moz-box-shadow:5px 0px 5px 0px rgba(196,196,196,0.75); transition:transform 0.4s cubic-bezier(0.33333, 0.66667, 0.66667, 1) 0s;}
#menuList, #menuLogo {float:left; width:100%;}
#menuList {margin-top:100px; overflow-y:auto; overflow-x:hidden;}
#menuLogo {height:90px; text-align:right;}
#menuLogo img {margin:15px 0;}
#mainMenu ul {float:left; width:100%; list-style:none; padding:0; margin:0;}
#mainMenu li {float:left; width:100%; padding:8px 0; opacity:0; transition-delay:0.8s, 0s; transition-duration:0.8s, 0.6s; transition-property:transform, opacity; transition-timing-function:cubic-bezier(0.7, 0, 0.3, 1); transform:translate3d(-100vw, 0px, 0px);}
#mainMenu li a {width:100%; color:#231F20; font-size:24px; text-transform:uppercase; padding:0 10px; cursor:pointer; display:block;}
#mainMenu li a:hover, #mainMenu li a.selectedPage {text-decoration:none;}

.ddMenu {padding:0 0 0 20px !important; margin:0 !important; display:none;}

nav.is-active #mainMenu li, nav.is-active #languagesContainer {transform:translate3d(0px, 0px, 0px); opacity:1; transition:transform 0.8s ease 0s, opacity 0.6s ease 0s;}
nav.is-active #mainMenu li:nth-child(2) {transition-delay:0.05s;}
nav.is-active #mainMenu li:nth-child(3) {transition-delay:0.1s;}
nav.is-active #mainMenu li:nth-child(4) {transition-delay:0.15s;}
nav.is-active #mainMenu li:nth-child(5) {transition-delay:0.2s;}
nav.is-active #mainMenu li:nth-child(6) {transition-delay:0.25s;}
nav.is-active #mainMenu li:nth-child(7) {transition-delay:0.3s;}
nav.is-active #mainMenu li:nth-child(8) {transition-delay:0.35s;}
nav.is-active #mainMenu li:nth-child(9) {transition-delay:0.4s;}
nav.is-active #mainMenu li:nth-child(n+10) {transition-delay:0.45s;}

.languages {float:right; height:100%; margin:0; display:flex; justify-content:center; align-items:center; z-index:2; cursor:pointer; position:relative;}
.slidingHeader .languages {margin:0;}
.languages i {color:#FFF; margin-left:5px; transition-duration:0.5s;}
.languages:hover i {color:#FBC43D;}
.languageMenu {position:absolute; background:rgba(255,255,255,0.9); top:100%; right:0; width:calc(100% + 60px); display:none; padding:5px 8px; webkit-box-shadow:0px 0px 5px 0px rgba(0,0,0,0.5); -moz-box-shadow:0px 0px 5px 0px rgba(0,0,0,0.5); box-shadow:0px 0px 5px 0px rgba(0,0,0,0.5); z-index:1045;}
.languageHolder {float:left; width:24px; height:24px; overflow:hidden; position:relative; z-index:2;}
.languageRow {float:left; width:100%; font-size:12px; margin-bottom:5px;}
.languageRow:last-child {margin-bottom:0;}
.languageMenu .languageHolder {margin:4px 5px 6px 0;}
.languageMenu .languageHolder img {opacity:0.6;}
.languageMenu .languageHolder img:hover, .langSelected {opacity:1;}
.languageRow a {float:left; display:flex; align-items:center; width:100%; color:#231F20; margin:0 !important;}
.languageRow a:hover {text-decoration:none;}
.languageHolder img {position:absolute; top:0; cursor:pointer; transition-duration:0.5s;}
.enLang, .Lang, .gTransImg {left:0;}
.esLang {left:-25px;}
.deLang {left:-50px;}
.frLang {left:-75px;}
.nlLang {left:-100px;}
.ruLang {left:-125px;}

#headerSocial {position:fixed; top:45%; left:-70px; background:rgba(235, 235, 235, 0.6); width:53px; text-align:center; padding:5px 8px 0 5px; border:1px solid rgba(235, 235, 235, 0.4); border-left:none !important; border-radius:0 6px 6px 0; box-shadow:2px 2px 5px 0px rgba(117,117,117,0.8); backdrop-filter:blur(5px); transition-duration:0.8s; z-index:999; overflow:hidden;}
#headerSocial.sLoaded {left:0;}

.socialLink {width:32px; height:32px; color:#FFF !important; font-size:20px; line-height:30px; display:inline-block; margin-bottom:4px; border-radius:50%; -moz-border-radius:50%; -webkit-border-radius:50%; overflow:hidden;}
.socialWALink {line-height:20px; display:inline-block; margin-right:0;}
.socialWALink img {width:auto; height:22px; vertical-align:middle;}
.socialLink:last-child {margin-bottom:0;}
#menuSocial a:hover .socialLink, .socialLink:hover {background:#FFF;}
.fbLink {background:#3B5998; border:1px solid #3B5998;}
#menuSocial a:hover .fbLink, .fbLink:hover, .fbLinkA:hover {color:#3B5998 !important;}
.twLink {background:#0F1419; border:1px solid #0F1419;}
#menuSocial a:hover .twLink, .twLink:hover, .twLinkA:hover {color:#0F1419 !important;}
.gpLink {background:#E8574F; border:1px solid #E8574F;}
#menuSocial a:hover .gpLink, .gpLink:hover, .gpLinkA:hover {color:#E8574F !important;}
.instaLink {background:#BC1888; background:-moz-linear-gradient(45deg, #F09433 0%, #E6683C 25%, #DC2743 50%, #CC2366 75%, #BC1888 100%); background: -webkit-linear-gradient(45deg, #F09433 0%,#E6683C 25%,#DC2743 50%,#CC2366 75%,#BC1888 100%); background: linear-gradient(45deg, #F09433 0%, #E6683C 25%, #DC2743 50%, #CC2366 75%, #BC1888 100%); filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#F09433', endColorstr='#BC1888',GradientType=1 ); border:1px solid #BC1888;}
#menuSocial a:hover .instaLink, .instaLink:hover, .instaLinkA:hover {color:#BC1888 !important;}
.ytLink {background:#FF0000; border:1px solid #FF0000;}
#menuSocial a:hover .ytLink, .ytLink:hover, .ytLinkA:hover {color:#FF0000 !important;}
.liLink {background:#0073B1; border:1px solid #0073B1;}
#menuSocial a:hover .liLink, .liLink:hover, .liLinkA:hover {color:#0073B1 !important;}

#homeGallery, #pageGallery, #pageGalleryS {float:left; width:100%; position:relative; overflow:hidden;}
#homeGallery {height:100vh;}
#pageGallery {height:475px;}
#pageGalleryS {height:250px;}
#gallerySlides, .pageGallery {position:absolute; top:0; left:0; width:100%; height:100%;}
.pageGallery {overflow:hidden;}
#homeOverlay, #galleryOverlay {position:absolute; background:rgba(35, 31, 32, 0.35); background:linear-gradient(60deg,rgba(35, 31, 32, 0.5) 0%, rgba(35, 31, 32, 0.1) 100%); left:0; width:100%; z-index:12;}
#galleryOverlay {height:100%;}
#homeOverlay {display:flex; justify-content:space-around; align-items:center;}

#homeListImgContainer {width:90%; display:flex; flex-direction:row;}
#homeImg {text-align:center; display:flex; justify-content:center; align-items:center;}

#homeList li {font-family:"Crimson Pro", Arial, Verdana, Helvetica; font-weight:700;}

#galleryFooter {position:absolute; bottom:0; left:0; width:100%; z-index:14;}
#galleryFooter .container {display:flex;}
#galleryFooterL {display:flex; font-weight:600; align-items:center; container-type:size;}
#galleryFooterL p {margin:0;}
#galleryFooterL, #galleryFooterR {padding:0 10px;}
#galleryFooterImg {border-radius:50%; display:flex; justify-content:center; align-items:center; overflow:hidden; position:relative;}
#galleryFooterImg img {width:auto; height:100%;}
#galleryFooterImgText {position:absolute; bottom:5px; left:0; width:100%; text-align:center; color:#FFF; font-weight:600; text-shadow:1px 1px 1px rgba(0, 0, 0, 1);}
#galleryFooterR {position:relative;}
.elfsight-app-70e3864e-6e28-4bc0-878b-e7e9df3fc2dc {position:absolute; bottom:-42px; left:calc(50% - 96px);}
#elfPH {position:absolute; bottom:10px; left:calc(50% - 98.5px); background:#FFF; width:192px; height:108px; border-radius:8px;}
#elfPHInner {display:flex; height:100%; justify-content:space-around; align-items:center; padding:14px 20px 16px; flex-direction:column;}
#elfPHTitle, #elfRValue, #elfPHReviews a {font-weight:600;}
#elfPHTitle, #elfPHRRow, #elfPHReviews {width:100%; text-align:center;}
#elfRValue {font-size:22px; line-height:28px;}
#elfPHRRow {display:flex; flex-direction:row; justify-content:space-between; align-items:center;}
#elfPHReviews a {color:#888; font-size:13px;}

#pageGalleryOverlay {position:absolute; height:100%; display:flex; align-items:center;}

main {min-height:calc(100vh - 40px);}

h1, h2, h3, h4, h5, h6 {font-family:"Crimson Pro", Arial, Verdana, Helvetica; font-weight:700;}
.mainContent h1, .mainContent h2, .mainContent h3, .mainContent h4, .mainContent h5, .mainContent h6, #cookieText h6 {font-size:32px; margin:5px 0 15px;}

#pageBreadcrumb {float:left; width:100%; padding:2px 0; -webkit-box-shadow:0px 0px 10px 0px rgba(0,0,0,0.6); -moz-box-shadow:0px 0px 10px 0px rgba(0,0,0,0.6); box-shadow:0px 0px 10px 0px rgba(0,0,0,0.6); position:relative; z-index:2;}
#pageBreadcrumb ol {width:100%; list-style:none; display:block; line-height:16px; padding:5px 0; margin:0;}
#pageBreadcrumb li {display:inline-block;}
#pageBreadcrumb li:not(:first-child)::before {font-family:"Font Awesome 6 Free"; content:"\f30b"; display:inline-block; font-weight:900; font-size:12px; margin:0 3px 0 0;}
#pageBreadcrumb li a:hover {text-decoration:underline;}

.mainContent {float:left; width:100%; display:inline-block; margin-bottom:60px;}
.mainContent.tb40, #pageBreadcrumb + .mainContent, #homeGallery + .mainContent {margin:40px 0;}
#pageBreadcrumb + .mainContent.mTopBot100 {margin:100px 0 !important;}
.mainContent.tb60 {margin:60px 0 !important;}
.mainContent.tb80 {margin:80px 0 !important;}
.mainContent.mTopBot100 {margin:100px 0;}
.mainContent.t20 {margin:20px 0 0 !important;}
.mainContent.t40 {margin:40px 0 0 !important;}
.mainContent.t60 {margin:60px 0 0 !important;}
.mainContent.t80 {margin:80px 0 0 !important;}
.mainContent.t100 {margin:100px 0 0 !important;}
.mainContent.b20 {margin:0 0 20px !important;}
.mainContent.b40 {margin:0 0 40px !important;}
.mainContent.b60 {margin:0 0 60px !important;}
.mainContent.b80 {margin:0 0 80px !important;}
.mainContent.b100 {margin:0 0 100px !important;}
.mainContent.noMargin {margin:0 !important;}
.mainContent::before, .mainContent::after {content:" "; display:table;}
.mainContent p strong {font-weight:600;}
.mainContent.grey {background:#FBFBFB; padding:20px 0;}
.mainContentW, .mainContentN {float:left;}

.textBG {float:left; width:100%; position:relative; padding:20px 10px;}
.textBGCover {position:absolute; background:rgba(0,0,0,0.5); top:0; left:0; width:100%; height:100%;}
.textWBG .container {max-width:1300px; color:#FFF; margin:0 auto; position:relative; z-index:1;}
.textWBG .textBG {padding:100px 0;}
.textWBG .textRow {font-size:20px;}
.textWBG .textRow h1, .textWBG .textRow h2, .textWBG .textRow h3, .textWBG .textRow h4, .textWBG .textRow h5, .textWBG .textRow h6 {font-family:"Oswald", Arial, Verdana, Helvetica; font-variant:normal; font-size:32px !important;}
.mainContent hr {width:100px; color:#C3C3C3; margin:0;}
.textBG hr {color:#FFF !important;}

.boxRow {float:left; width:100%; vertical-align:top; position:relative; display:flex; flex-wrap:wrap; justify-content:center;}
.hBoxR, .hBoxL {float:left; width:100%; vertical-align:top; position:relative;}

.hBoxR .boxN, .hBoxL .boxW {float:right;}
.hBoxL .boxN, .hBoxR .boxW {float:left;}

.boxRow.mPhotoR {flex-direction:row-reverse;}

.mPhotoL.twoPhotos .colPic, .mPhotoR.twoPhotos .colPic {border-radius:10px; box-shadow:0px 0px 30px 0px rgba(0, 0, 0, 0.25); overflow:hidden;}

.mPhotoL ol, .mPhotoR ol {list-style:none; counter-reset:item; padding-left:70px;}
.mPhotoL li, .mPhotoR li {counter-increment:item; margin-bottom:40px; position:relative;}
.mPhotoL li:hover::before, .mPhotoR li:hover::before {top:5px; left:-65px; width:50px; height:50px; line-height:46px;}
.mPhotoL li:before, .mPhotoR li:before {position:absolute; top:0; left:-70px; width:60px; height:60px; line-height:56px; font-family:"Oswald", Arial, Verdana, Helvetica; font-size:36px; font-weight:700; content:counter(item); background:#FBC43D; border-radius:100%; color:#FFF; text-align:center; display:inline-block; transition-duration:0.3s;}
.mPhotoL li:nth-child(2n+1)::before, .mPhotoR li:nth-child(2n+1)::before {background:#00B2B3;}

.boxW, .boxN {border:15px solid transparent; border-radius:15px;}
.twoBoxes, .threeBoxes, .fourBoxes {float:left; width:100%; padding:25px 0 30px; margin:0 0 25px;}
.twoBox, .threeBox, .fourBox {float:left; background-clip:padding-box;}
.boxW, .boxN {display:flex; flex-direction:column;}
.twoBox, .threeBox, .fourBox {display:flex; flex-direction:column;}
.fourPhotos .twoBox {flex-direction:row; flex-wrap:wrap;}
.fourPhotos .twoBox:last-child {flex-direction:column;}
p.photoTitle {margin:8px 0 15px;}
.boxN {background:#00B2B3; width:calc(35% - 30px); color:#FFF; margin:0 15px; padding:25px 15px 30px; box-shadow:0px 0px 30px 0px rgba(0, 0, 0, 0.25);}
.boxN a {color:#FFF;}
.boxN a:hover {color:#FFF;}
.mainContent.blue .boxN {background:#FBC43D;}
.boxW {width:65%; padding:5px 15px 10px;}
.twoBox {width:calc(50% - 1px);}
.threeBox {width:33.3333%;}
.fourBox {width:calc(25% - 1px);}
.twoBox, .threeBox, .fourBox {background-clip:padding-box; border:15px solid transparent; position:relative; vertical-align:top;}
.boxC {float:left; background:#FEFEFE; width:100%; padding:5px 10px; border:1px solid #FAFAFA;}

.threeCol {width:100%;}

.colPic {float:left; width:100%;}
.fourPhotos .colPic {width:calc(50% - 10px); position:relative; aspect-ratio:16/9; overflow:hidden; border-radius:10px; margin:5px;}
.colPic img {float:left; width:100%; height:auto; border-radius:10px;}
.fourPhotos .colPic {border-radius:none;}
.fourPhotos .colPic img {position:absolute; top:-9999px; left:-9999px; right:-9999px; bottom:-9999px; margin:auto;}

a.boxLink, a.highBtn {height:40px; line-height:20px; background:#00B2B3; color:#FFF; text-align:center; text-decoration:none; display:inline-block; padding:10px 20px; margin:15px auto; position:relative; border-radius:20px; -moz-border-radius:20px; -webkit-border-radius:20px; cursor:pointer;}
a.boxLink:hover, a.highBtn:hover {background:#FBC43D ; color:#FFF; text-decoration:none; transition-duration:0.5s;}

.pGallery {float:left; width:100%; display:flex; flex-wrap:wrap; align-items:center; justify-content:center;}
.galleryPhoto {min-height:100px; aspect-ratio:16/9; display:flex; align-items:center; border:5px solid transparent; position:relative; overflow:hidden;}
.galleryPhoto img {float:left; width:100%; height:auto; border-radius:4px; -moz-border-radius:4px; -webkit-border-radius:4px; cursor:pointer;}
.galleryPhotoTitle {position:absolute; bottom:0; left:0; background:rgba(35, 31, 32,0.4); width:100%; height:31px; font-size:14px; color:#FFF; padding:5px 10px; border-top:1px solid rgba(35, 31, 32,0.4); border-radius:0 0 4px 4px; -moz-border-radius:0 0 4px 4px; -webkit-border-radius:0 0 4px 4px; transition-duration:0.6s; white-space:nowrap; text-overflow:ellipsis; overflow:hidden;}

.centredText p, .centredTextWide p, .centredText, .centredTextWide {text-align:center;}

.centredText {width:75%; padding:0 1%;}
.centredTextWide {width:100%; padding:0 1%;}
.centredText, .centredTextWide {margin:0 auto;}

.halfColPic {width:40%; height:auto;}
.textPicLeft .halfColPic {float:left; margin:0 15px 5px 0; position:relative; z-index:1;}
.textPicRight .halfColPic {float:right; margin:0 0 5px 15px;}
.halfColPic img {width:100%; height:auto; margin-bottom:20px; -webkit-box-shadow:3px 3px 8px 0px rgba(98,99,98,0.3); -moz-box-shadow:3px 3px 8px 0px rgba(98,99,98,0.3); box-shadow:3px 3px 8px 0px rgba(98,99,98,0.3);}

.formInput, .formSelect, .formRadio, .formInputW, .formCheckbox {float:left; width:100%; position:relative; margin:0 0 20px;}
.formInput {background:#FFF; border:1px solid #909090; padding:10px 0;}
.propFormRow .formInput {margin:0 0 8px;}
.formSelect {padding:0;}
.formSelect .ui-selectmenu-button {width:100% !important; border-top:none; border-left:1px solid #909090; border-right:1px solid #909090; border-bottom:1px solid #909090; padding:18px 14px; border-radius:0; -moz-border-radius:0; -webkit-border-radius:0;}
.twoBox .formInput, .threeBox .formInput, .fourBox .formInput {background:#FFF;}
.formInputHalf {width:49%;}
.formInputHalfL, .propFormInputHalfL {margin-right:2%;}
.formInput input, .formInput textarea, .formRadio input {width:100%; font-size:20px; color:#333; background:transparent; border:none; padding:0 10px; margin:0;}
.formInput input, .formRadio input {height:35px; line-height:35px;}
.formInputT input {width:calc(100% - 30px);}
.formRadio input[type="radio"] {float:left; width:20px; margin-right:10px; cursor:pointer;}
.radioLabel {float:left; width:calc(100% - 30px); line-height:35px; cursor:pointer;}
.radioLabel img {vertical-align:middle;}
.formInput.formError {border-color:#BB0003;}
.formInput textarea {height:187px; font-family:"Open Sans", Arial, Verdana; resize:none;}
textarea.propertyAddress {height:112px;}
.formLabel {position:absolute; top:0; left:0; right:0; width:100%; height:16px; font-size:12px; display:flex; flex-flow:row nowrap;}
.formLabel::before, .formLabel::after {content: ""; background:#909090; display:inline-block; height:1px; top:0; width:7px;} 
.formError .formLabel::before, .formError .formLabel::after {background:#BB0003;}
.formLabel::after {flex:1 1 auto;}
.formLabel {line-height:16px !important;}
.formInput label, .formSelect label, .propertyContactInput label {position:absolute; color:#909090; left:5px; padding:0 5px; pointer-events:none; transition-duration:0.5s;}
.formInput label, .formSelect.emptyVal label {top:16px; font-size:18px;}
#bookingForm label {font-size:14px;}
.propertyContactInput label {top:9px;}
.formInput label, .propertyContactInput label {background:transparent;}
.formSelect.emptyVal label {background:#FFF; width:calc(100% - 30px);}
.formSelect.fiDark.emptyVal label {background:#FDFDFD;}
.formInput input:focus ~ label, .formInput textarea:focus ~ label, .formInput input:not(:placeholder-shown) ~ label, .formInput textarea:valid ~ label, .formSelect select ~ label, .propertyContactInput input:focus ~ label, .propertyContactInput textarea:focus ~ label, .propertyContactInput input:not(:placeholder-shown) ~ label, .propertyContactInput textarea:valid ~ label, #bookingForm input:focus ~ label, 
#bookingForm input:not(:placeholder-shown) ~ label {background: rgb(255,255,255);
background: -moz-linear-gradient(0deg, rgba(255,255,255,1) 45%, rgba(247,248,248,0) 45%);
background: -webkit-linear-gradient(0deg, rgba(255,255,255,1) 45%, rgba(247,248,248,0) 45%);
background: linear-gradient(0deg, rgba(255,255,255,1) 45%, rgba(247,248,248,0) 45%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffffff",endColorstr="#f7f8f8",GradientType=1); top:-10px; font-size:12px;}
.formInput.fiDark input:focus ~ label, .formInput.fiDark textarea:focus ~ label, .formInput.fiDark input:not(:placeholder-shown) ~ label, .formInput.fiDark textarea:valid ~ label, .formSelect.fiDark select ~ label {background: rgb(253,253,253);
background: -moz-linear-gradient(0deg, rgba(253,253,253,1) 45%, rgba(255,255,255,0) 45%);
background: -webkit-linear-gradient(0deg, rgba(253,253,253,1) 45%, rgba(255,255,255,0) 45%);
background: linear-gradient(0deg, rgba(253,253,253,1) 45%, rgba(255,255,255,0) 45%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#fdfdfd",endColorstr="#ffffff",GradientType=1);
}
.formLabel label {position:relative; top:-8px; color:#909090; padding:0 5px;}
.formLabel label span {color:#BB0003; margin-left:5px;}
.formInput input:focus, .formInput textarea:focus, #subEmail:focus, .selectInput:focus, .bFormInpW input:focus, .bFormInpW textarea:focus {outline:none !important;}

.formCheckbox {font-size:0.8em; text-align:left;}

.contactSubmit {float:left; width:100%; margin:15px 0; text-align:center;}
#loginContinue, .submitButton {height:40px; line-height:36px; font-family:"Open Sans", Arial, Verdana; font-weight:600; text-align:center; color:#FFF; padding:0 10px; border:1px solid rgba(0, 0, 0, 0.2); border-radius:4px; -moz-border-radius:4px; -webkit-border-radius:4px; transition-duration:0.5s; cursor:pointer;}
#loginContinue {display:inline-block;}
#loginContinue:hover, .submitButton:hover {color:#FFF; text-decoration:none;}
.submitButton:disabled {opacity:0.4; cursor:default !important;}

.formInput input:required ~ label:after, .formInput textarea:required ~ label:after, .formInputFull textarea:required ~ label:after, .propertyContactInput input:required ~ label:after {content:"*"; color:#BB0003; margin-left:3px;}

.formInput input:focus, .reserveInput input:focus, .formInput textarea:focus, .reserveInput textarea:focus, #homeSearch input:focus, #homeSearch select:focus {outline:none !important;}

.contactRow {display:flex;}
.contactCols {display:flex; flex-direction:column; padding-top:5px;}
#captchaVerification {float:left; background:#FFF; width:calc(100% - 2px); border:1px solid #A6A6A6; padding:10px; border-radius:4px; -moz-border-radius:4px; -webkit-border-radius:4px;}
.imgCaptcha {background:none; width:200px; font-size:14px; margin:0 !important;}
.imgCaptcha h1 {margin:0 !important;}
#captchaVerification iframe {float:left;}
input.captchaResponse {clear:none !important;}

.jq-stars {display:inline-block;}
.jq-rating-label {font-size:22px; display:inline-block; position:relative; vertical-align:top; font-family:helvetica, arial, verdana;}
.jq-star {width:100px; height:100px; display:inline-block; cursor:pointer;}
.jq-star-svg {width:100%; height:100%;}
.jq-star:hover .fs-star-svg path {}
.jq-star-svg path {stroke-linejoin:round;}
.jq-shadow {-webkit-filter: drop-shadow( -2px -2px 2px #888 ); filter: drop-shadow( -2px -2px 2px #888 );}

#footerLeft, #footerRight {float:left; height:40px; line-height:40px; font-size:10px;}
#footerRight {text-align:right;}

#cookieUseContainer {position:fixed; bottom:15px; background:rgba(255,255,255,0.95); text-align:center; padding:14px; font-size:14px; display:none; z-index:99997; border-radius:6px; -moz-border-radius:6px; -webkit-border-radius:6px; webkit-box-shadow:4px 4px 5px 0px rgba(20, 20, 20, 0.75); -moz-box-shadow:4px 4px 5px 0px rgba(20, 20, 20, 0.75); box-shadow:4px 4px 5px 0px rgba(20, 20, 20, 0.75);}
#cookieUse, #cookieText, #cookieButtons {float:left; width:100%; color:#231F20;}
#cookieText {padding:14px;}
#cookieText h6 {text-align:center;}

#cookieContinue, #cookieRefuse {float:left; height:40px; line-height:36px; display:block; cursor:pointer; border-radius:6px; -moz-border-radius:6px; -webkit-border-radius:6px;}
#cookieContinue {width:65%; color:#FFF; font-size:16px; margin:20px 5%; border:2px solid rgba(35, 31, 32, 0.3);}
#cookieContinue:hover {text-decoration:none;}
#cookieRefuse {background:#FFF; width:calc(25% - 4px); color:#231F20; font-size:12px; border:2px solid #231F20; margin:20px 0;}
#cookieRefuse:hover {background:#231F20; color:#FFF; text-decoration:none;}

#scrollToTop {background:#231F20; border-radius:7px 7px 0 0; bottom:0; color:#FFF; font-family:"Roboto"; font-size:32px; display:block; height:32px; opacity:0.6; padding:9px 0; position:fixed; right:10px; text-align:center; text-decoration:none; width:49px; z-index:1040; display:none; cursor:pointer; box-sizing:content-box;}
#scrollToTop:hover {opacity:0.9;}


@media only screen and (min-width: 1000px) {
	#header, #mainContent, .container, #footer {width:90%;}
	#header, .container {margin:0 5%;}
	#galleryFooterL p {font-size:24cqh;}
	#mainContent, #footer {margin:30px 5% 0;}
	#pageGalleryOverlay {width:90%; left:5%;}
}
@media only screen and (max-width: 999px) {
	#header, #mainContent, .container, #footer {width:98%;}
	#header, .container {margin:0 1%;}
	.languages {position:absolute; top:0; padding:0 10px;}
	#galleryFooterL p {font-size:20cqh;}
	#mainContent, #footer {margin:30px 1% 0;}
	#pageGalleryOverlay {width:98%; left:1%;}
}
@media screen and (min-width: 768px) {
	#header {display:flex;}
	#authorText {height:67px; display:flex; justify-content:center; align-items:center; flex-direction:row; flex-grow:1}
	#authorBy {padding:0 30px;}
	.languages {height:67px;}
	#menuContainer {width:600px; left:-600px;}
	#menuList {height:calc(100vh - 215px);}
	nav.is-active #menuContainer {transform:translateX(600px);}
	.pageGallery img, .pageGallery video {width:100%; height:100%; object-fit:cover;}
	#homeOverlay, #galleryOverlay {top:77px;}
	#homeOverlay {height:calc(100% - 177px);}
	#galleryOverlay {height:calc(100% - 77px);}
	#homeListImgContainer {flex-direction:row;}
	#homeList {display:flex; flex-direction:column; justify-content:center; margin-left:20%; width:40%; padding:0 50px 0 0;}
	#homeImg {width:40%;}
	#homeImg img {width:100%; max-width:440px; height:auto;}
	#galleryFooter .container {height:100px; flex-direction:row; justify-content:space-between;}
	#galleryFooterL, #galleryFooterR {width:calc(50% - 60px);}
	#galleryFooterImg {width:120px; height:180px; margin-top:-90px;}

	#pageBreadcrumb li {font-size:14px;}
	#pageBreadcrumb li:not(:first-child)::before {padding:0 5px;}

	.mainContentW {width:calc(70% - 40px); margin-top:60px;}
	.mainContentN {width:30%; margin:60px 40px 0 0;}
	.mainContentW + .mainContentN {margin:60px 0 0 40px;}

	.mPhotoL.twoPhotos .colPic:first-of-type, .mPhotoR.twoPhotos .colPic:first-of-type {margin:-100px 0 30px;}
	.mPhotoL.twoPhotos .colPic:last-of-type, .mPhotoR.twoPhotos .colPic:last-of-type {margin:0 0 -100px;}
	.mPhotoL.twoPhotos .twoBox {justify-content:center;}

	.formInput50 {width:49%;}
	.formInput50:nth-child(2) {margin:0 2% 20px 0;}
	.contactRow {flex-direction:row;}
	.contactCols {width:50%;}
	.contactCols:first-child, .popupForm .contactCols:nth-child(2) {padding-right:30px;}

	#captchaVerification {margin:0 0 20px;}
	input.captchaResponse {width:200px !important; margin:0 0 15px 10px !important;}
	#captchaVerification .formInput {width:calc(100% - 220px); margin-left:20px;}

	#footerLeft, #footerRight {width:50%;}

	#cookieUseContainer {right:15px; width:calc(100% - 30px);}
}
@media only screen and (max-width: 767px) {
	#logo {margin:5px 0 0;}
	#authorText {width:100%; height:20px; display:flex; justify-content:center; align-items:center;}
	#authorBy, #authorName {margin:0 10px;}
	#menuList {height:calc(100vh - 150px);}
	#menuTitle {display:none;}

	.showMenuBox {top:21px;}
	.slidingHeader .showMenuBox {top:11px;}
	#menuContainer {width:100vw; left:-100vw;}
	nav.is-active #menuContainer {transform:translateX(100vw);}

	.pageGallery img, .pageGallery video {width:auto; height:100%;}
	#homeOverlay, #galleryOverlay {top:70px;}
	#homeOverlay {height:calc(100% - 140px);}
	#galleryOverlay {height:calc(100% - 70px);}
	#homeListImgContainer {height:100%; flex-direction:column; justify-content:space-evenly;}
	#homeList, #homeImg {width:100%;}
	#homeImg img {width:auto; height:100%; max-height:300px;}
	#galleryFooter .container {height:70px;}
	#galleryFooterL, #galleryFooterR {width:calc(50% - 40px);}
	#galleryFooterL p {font-size:18cqh;}
	#galleryFooterImg {width:80px; height:120px; margin-top:-60px;}

	#pageBreadcrumb ol {overflow-x:auto; white-space:nowrap;}
	#pageBreadcrumb li {font-size:11px;}
	#pageBreadcrumb li:not(:first-child)::before {padding:0 2.5px; font-size:10px;}

	.mainContent {overflow-x:clip;}
	.mainContentW, .mainContentN {width:100%; margin:40px 0;}

	.boxN, .boxW, .twoBox, .threeBox, .fourBox {width:100%;}
	.boxN {margin:0 0 15px;}
	.mPhotoL.twoPhotos .colPic, .mPhotoR.twoPhotos .colPic {margin:0 0 30px;}

	.centredText {width:80%;}
	.centredTextWide {width:100%;}
	.centredTextWide, .threeBox, .fourBox, .halfColText, .halfColPic, .discoveryArea, .colSixty, .colThirty, .subscribePhoto, .subscribeForm {width:100%;}

	.formInput50 {width:100%; margin:0 0 20px;}
	.contactRow {flex-direction:column;}
	.contactCols {width:100%;}
	.contactCols:first-of-type {margin-bottom:0;}

	#captchaVerification {margin:20px 0;}
	#captchaVerification iframe {left:50%; margin:0 0 20px -100px; position:relative;}
	input.captchaResponse {width:calc(80% - 2px) !important; margin:0 10% 15px !important;}

	#footerLeft, #footerRight {width:100%;}
	#footerLeft {padding-left:2%;}
	#footerRight {padding-right:2%;}

	#cookieUseContainer {right:5px; width:calc(100% - 10px);}
}

a {text-decoration:none; transition-duration:0.5s;}
a:hover {transition-duration:0.5s; text-decoration:underline;}