/* Generic style to fix single image slideshows */
#cmsslideshow,
.slider,
/* .slide { height:100%!important; width: 100%!important; display:block;} */
.slide {
	right:0;
	background-size:cover!important;
	background-position: center;
	/*background-attachment: fixed;*/
}
.slider {
	padding:0;
}


/* FLASH MESSAGES */
.LDSFlashMessages { margin:10px auto; width:100%; }
.LDSFlashMessages .flash {
  position:relative; display:block; clear:both; margin:5px auto; width:100%; padding: 15px 30px 15px 15px;
  border-left:5px solid #333; border-radius: 0 4px 4px 0; font-weight:bold; font-size:14px; text-align:left;
  box-sizing:border-box; -moz-box-sizing:border-box;
}
.LDSFlashMessages .flash.error {  background:#F9EDED; color:#B94A48; border-color:#B94A48; }
.LDSFlashMessages .flash.success {  background:#EBFCEE; color:#3CC051; border-color:#3CC051; }
.LDSFlashMessages .flash.warning {  background:#FCF8E3; color:#E5BE52; border-color:#E5BE52; }
.LDSFlashMessages .flash.info {  background:#E6F1F7; color:#3A87AD; border-color:#3A87AD; }
.LDSFlashMessages .flash .close { display:block; cursor:pointer; position:absolute; height:20px; margin-top:-0.7em; top:50%; right:15px; font-size:1.2em; font-weight:bold; pointer-events:none; }



img {
	max-width: 100%!important;
}

iframe {
	max-width: 100%!important;
}

.customLink a {
	width: 100%;
	font-size: 18px;
}

.bookingCartForm .bookingConfirmation .label {
  color: #888888;
  font-size: 12px;
  width: 25%;
}

.sf-menu {
	text-shadow: 0 0 10px #333;
}

.sfHover, .sfHover ul { z-index:10000!important; /* Booking panel has 9999 */ }

.camera-caption {
	text-shadow: 0 0 10px #333;
}

.phone a:hover {
	text-decoration: none;
}

.social-icon {
	font-size: 32px;
	color: #888;
	padding-right: 20px;
	transition: color 0.5s;
}

.brand {
	max-width: 400px;
	position: relative;
}

.brand_logo img {
	/*max-width: 100%;*/
	max-width: 400px;
}

.promo-text {
	text-shadow: 0 0 10px #333;
}

#promoSlider {
	overflow:hidden;
	position: relative;
	height: 710px;
	width: 100vw!important;
	margin-left: calc(-50vw + 50%);
	padding: 0!important;
}

.promo {
	z-index: 1!important;
  max-height: 710px;
  height: 710px!important;
  width: 100vw!important;
}

.promo-stuff {
	position: absolute;
	z-index: -1;
	top: 0px;
	left: 0px;
	bottom: 0px;
	right: 0px;
	overflow: hidden;
	height: 200px;
    overflow: hidden;
    background-size: cover;
    background-position: center;
	height: 710px;
	width: 100%;

}

.promo-image {
  width: 100vw;
  height: auto;
}

#promoSlider .container {
  height: 710px;
  vertical-align: middle;
}

.promo-col {
	height: 100vw;
	position: static;
}

.promo-text {
	height: 100vw;
}

.readMore {
	position: absolute;
	bottom: 75px;
	left: calc(50% - 100px);
	border-radius: 20px 0!important;
}

.readMore:hover {
	text-shadow: none;
}

.bookingPanel {
	width: 270px;
	background-color: transparent;
	/*border: 2px solid #333333;*/
	text-align: left;
	position: absolute;
	right: 0;
	top: 60px;
	text-shadow: none;
	color: #000;
/*	-moz-box-shadow: 0 0 10px #333333;
	-webkit-box-shadow: 0 0 10px #333333;
	box-shadow: 0 0 10px #333333;*/
}

.bookingPanelFixed {
	width: 270px;
	background-color: transparent;
	/*border: 2px solid #333333;*/
	text-align: left;
	position: absolute;
	right: 0;
	top: 60px;
	text-shadow: none;
	color: #000;
/*	-moz-box-shadow: 0 0 10px #333333;
	-webkit-box-shadow: 0 0 10px #333333;
	box-shadow: 0 0 10px #333333;*/
}

.bookNow {
	background-color: #0055ff;
	color: #fff;
	padding-left: 10px;
	padding-right: 10px;
}

.bpEnhanced {
  text-transform: uppercase;
  background-color: #888888;
  color: #fff;
  text-align: center;
  cursor: pointer;
  height: 30px;
  padding-top: 4px;
  width: 30px;
  position: absolute;
  bottom: 0px;
  right: 0px;
  z-index: 10000;
}

.grid-rate-book {
	box-sizing: content-box;
}

.pageTitle {
	color: #ffffff;
}

.imageHolder {
	height: 250px;
	overflow: visible;
	background-size: cover;
	position: relative;
	width:100%;
	margin: 1%;
	float:left;
	display:inline-block;
	transition: box-shadow 0.3s ease-in-out;
}


.imageHolder .caption {
	background-color: rgba(255, 255, 255, 0.4);
	color: #000000;
	position: absolute;
	bottom: 2px;
	left: 2px;
	/*height: 40px; */
	padding-left: 10px;
	padding-right: 10px;
	border-radius: 0 15px 0 0;
	transition: box-shadow 0.2s ease-in-out;

}

.imageHolder:hover  .caption {
	box-shadow: 0 0 10px #ffffff;
}

.roomLink:hover .LDSFromRates .LDSFromRate-Price {
	box-shadow: 0 0 10px #ffffff;
}

.roomLink {
	/*width: calc(100vw - 50px);*/
	min-width: 434px;
	display: block;
	float: left;
	width: 31%;
	overflow:hidden;
	margin: 1%;
	transition: box-shadow 0.1s ease-in-out;
}

.roomLink .LDSFromRates .LDSFromRates-Room {
	display: none;
}

.roomLink .LDSFromRates .LDSFromRate-Price {
	position: absolute;
	bottom: 8px;
	right: 15px;
	background-color: rgba(255, 255, 255, 0.4);
	color: #000000;
	font-size: 14px;
	font-weight: 400;
	padding: 5px 5px;
	border-radius: 10px 0 10px 0;
	transition: box-shadow 0.3s ease-in-out;
}

.roomLink .LDSFromRates .LDSFromRates-perNight {
	font-size: 12px;
	text-align: right;
}

.roomLink .LDSFromRates .LDSFromRates-fromPrice {
	font-size: 24px;
	text-align: right;
	padding-left: 20px;
	padding-right: 20px;
}

.roomLink .LDSFromRates .LDSFromRates-fromText {
	font-size: 12px;
	text-align: left;
	font-weight: 400;
}


/*#ui-datepicker-div {
	z-index: 200!important;
}*/

.with-url {
	overflow:auto;
}

.container {
	width: 1400px;
}


.superHeader {
	height: 60px;
	width: 100%;
	background-color: rgba(255,255,255,0.5);
	color: #ffffff;
	position: fixed;
	top: 0;
	z-index: 10;
	visibility: hidden;
}


.fixedMenu {
	list-style: none;
	width: 100%;
	padding: 0;
	position: absolute;
	top: 60px;
	right: 0;
	display: none;
}

.fixedMenu li {
	list-style: none;
	width: 100%;
	text-align: center;
	background-color: #ffffff;
	padding-top: 5px;
	padding-bottom: 5px;
}

.fixedMenu li a {
	width: 100%;
	height: 100%;
	font-size: 18px;
	text-align: center;
	color: #000000;
}

.fixedMenu li ul {
	padding: 0;
}

.fixedMenu li ul li {
	background-color: #aaaaaa;
}

.fixedMenu li ul li:hover {
	background-color: #cccccc;
}

.fixedMenu li ul li a{
	color: #000000;
}

.bookButtonTopSmall a {
	position: absolute;
	top: 0;
	right: 70px;
	line-height: 60px;
	font-size: 18px;
	font-weight: 700;
	background-color: #888888;
	padding: 0 10px;
}

.bookButtonTopSmall a:hover {
	color: #ffffff;
}

.menu-pulldown {
	font-size: 35px;
	position: absolute;
	top: 12px;
	right: 15px;
}

.bookIcon {
	font-size: 32px;
	position: absolute;
	top: 13px;
	right: 70px;
}


.mini-logo img {
    max-height: 50px;
    padding-left: 10px;
    padding-top: 12px;
    /*width: 100%;*/
    max-width: 200px;
}

.bookButtonTop {
	position: fixed!important;
	top: 0!important;
	right: 10px!important;
	z-index: 20000!important;
	height: 60px;
	line-height:60px;
	background-color: #0651E5;
	padding-left: 10px;
	padding-right:10px;
}


.bookingPanelFixed {
	position: fixed;
	top: 60px;
	right: 10px;
	line-height:24px;
	z-index:200;
}

.woohoo {
	width:100%;
	height: 100%;
	font-weight: 700;
	font-size: 20px;
	position: absolute;
	top: 5px;
	left:0;
}



.termsAndConditionsItem  {
	border: 0!important;
	border:none!important;
}

.termsAndConditionsItem legend {
	border:none!important;
}

.accommContainer {
	border: none!important;
}

.accommContainer > legend {
	border: none!important;
	font-size: 20px!important;
}

.vaOptionsContainer {
		border: none!important;
}

.vaOptionsContainer > legend {
	border: none!important;
	font-size: 20px!important;
}

.paymentSummaryContainer {
		border: none!important;
}

.paymentSummaryContainer > legend {
	border: none!important;
	font-size: 20px!important;
}

.grid-instruction h2 { font-size: 30px; }

.prettyCheckbox input[type="radio"] + span {
    background-image: url('../images//opacity_radio3.png');
    background-color: transparent!important;
}

.prettyCheckbox input[type="checkbox"] + span {
    background-image: url('../images/opacity_checkbox2.png');
    background-color: transparent!important;

}

#paymentPageContainer legend {
	border-bottom: none!important;
}

#paymentPageContainer fieldset {
	border-top: unset!important;
}

.block-4 {
  padding: 0px!important;
  width: 100vw;
  position: absolute;
  left: 0;
  margin-top: 50px;
}

.block-4 .footer {
	text-align: right;
	margin-top: 50px;
}






.LDSCMSForm .form-item  {
	width: 100%;
	margin-bottom: 10px;
}

.LDSCMSForm .form-item label {
	width: 33%;
	max-width: 200px;
}

.LDSCMSForm .form-item input[type="text"] {
	width: 33%;
	max-width: 500px;
}

.LDSCMSForm .form-item textarea {
	width: 33%;
	max-width: 500px;
}







.LDSNewNode {
	width: 100%;
	height: 290px;
	list-style: none;
	position: relative;
	margin-bottom: 30px;
	background: rgb(238, 238, 238);
	transition-duration: 0.3s;
}

.LDSNewNode:hover {
	background: rgb(160, 131, 47);
	color: #ffffff!important;
}

.LDSNewNode:hover h3 a {
	color: #ffffff!important;
}

.LDSNewNode:hover .LDSImage img  {
	transform: scale(1.05);
}


.LDSNodeGroup {
	padding-left: 0;
}

.LDSNewNode .LDSImage {
	width: 436px;
	height: 100%;
	float: left;
	overflow: hidden;
}


.LDSNewNode .LDSImage a {
	width: 100%;
	height: 100%;
}

.LDSNewNode .LDSImage img {
	width: auto;
	height: 100%;
	transition: 0.3s;
}


.LDSNewNode .LDSText {
	width: calc(100% - 436px);
	height: 100%;
	position: relative;
	float: right;
	overflow: hidden;
}

.LDSNewNode .LDSText p {
	padding-bottom: 20px;
}


.LDSNewNode .LDSText .LDSTextWrap {
	margin-left: 100px;
	width: calc(100% - 100px);
}

.LDSNewNode .LDSText h3 a {
	color: rgb(160, 131, 47);
	font: 300 32px/40px "Lato",arial;
	margin: 0 0 15px 0;
	width: auto;
	z-index: 1;
}

.LDSNewNode .LDSText .LDSTextButton {
	background: rgb(51, 51, 51);
	font: 18px/18px "Cinzel",arial;
	text-transform: uppercase;
	padding: 12px 20px 13px;
	color: rgb(255, 255, 255);
	display: inline!important;
	margin-top: 20px;
	position: absolute;
    bottom: 20px;
}










.roomTypeTitle {
	width: 100%;
	height: auto;
	min-width: 300px;
}

.roomType {
	width: 100%;
	position: relative;
	height: auto;
	overflow: hidden;
}

.roomTypeText {
	width: 48%;
	height: auto;
	float: left;
	min-width: 320px;
}

.roomTypeImage {
	width: 48%;
	height: auto;
	min-width: 300px;
	float: right;
}


.roomTypeGrid {
	width: 60%;
	margin-top: 30px;
	margin-left: auto;
	margin-right: auto;
}

.roomTypeImage #slides .slide {
	z-index: 0!important;
}


.cameraSlide {
	width: 100%!important;
	height: 929px!important;
	overflow: hidden;
  background-size: cover;
  background-position: center;
}


.notMain .cameraSlide {
	height: 500px!important;
}


.vouchers-purchase h2 {
	font-size: 30px;
}

.vouchers-purchase .label {
		color: #888888;
		font-size: 14px;
}

.choicesSiteTitle h2 { font-size: 40px; }

@media(max-width: 1400px) {

#content {
	width: 100%!important;
	padding-left: 15px;
	padding-right: 15px;
}

.container {
	width: 100%;
}

 .camera_block {
  padding-top:600px!important;
 }


.cameraSlide {
	height: 600px!important;
}


}

@media(max-width: 1400px) {

.superHeader { visibility:visible; }
/*.header_top .sf-menu { display:none; }*/
.left_side { display: none; }
.right_side { position: absolute; left: -9999999px; }


.bookingPanel {
	position: fixed!important;
	top: 70px!important;
	right: 70px!important;
	z-index: 20000!important;
}

.bookingPanel {
	display:block;
}

}


@media(max-width:1100px) {


.LDSNewNode {
	height: auto;
	overflow: hidden;
}

.LDSNewNode .LDSImage {
	width: 100%;
	height: auto;
	max-height: 290px;
	overflow: hidden;
}

.LDSNewNode .LDSImage a {
    width: 100%;
    height: 100%;
    overflow: hidden;
}


.LDSNewNode .LDSImage img {
    width: 100%;
    height: auto;
    transition: 0.3s;
}


.LDSNewNode .LDSText {
    width: 100%;
    height: auto;
    position: relative;
    overflow: hidden;
}

.LDSNewNode .LDSText .LDSTextWrap {
    margin-left: 25px;
    width: calc(100% - 50px);
    height: auto;
    padding-bottom: 40px;
}


.LDSNewNode .LDSText h3 a {
    color: rgb(160, 131, 47);
    font: 300 32px/40px "Lato",arial;
    margin: 0 0 15px 0;
    width: auto;
    z-index: 1;
    font-size: 24px;
}


}



@media (max-width: 1040px) {

.promo-image {
	width: auto;
	height: 100%;
}


}



@media (max-width: 910px) {

#promoSlider {
	height: 300px;
}

.promo-stuff {
	height: 300px;
}

#promoSlider h6 {
	line-height: 18px!important;
}

.promo-image {
	width: 100%;
	height: auto;
}

#promoSlider .container {
	height: 300px;
}

#promoSlider .container .row {
	margin-top: 10px!important;
}

#promoSlider h2 {
	font-weight: 700;
  line-height: 30px;
  margin-bottom: 8px;
  font-size: 20px;
}

.readMore {
	bottom: unset;
}

}



@media (max-width: 767px) {

#ui-datepicker-div {
	right: unset!important;
}

body .notMain { max-height: 160px!important; }
.notMain .cameraSlide { height: 190px!important; }

}


@media (max-width: 500px) {

.roomLink {
	min-width: 100%;
}

.bookingPanel {
	display: none;
}

.promo-image {
	height: 300px;
	width: auto;
  overflow: hidden;
}



}


@media (max-width: 600px) {

 .camera_block {
  padding-top:400px!important;
 }

	.cameraSlide {
		height: 400px!important;
	}

}


@media(max-width: 500px) {

.title.title-1>span {
  word-wrap: break-word;
  font-size: 30px;
}

.title.title-1 {
  word-wrap: break-word;
  font-size: 30px;
}

}


@media (max-width: 430px) {

.bookingPanel {
	right: 10px!important;
	display: none;
}


	/* This is a fix for youtube embeds. There isn't a class on them, which would be nice.
	So we're just applying this to all iframes in the content area.
	This shouldn't be a problem, but it might come up with something obscure. */
	#mainBody iframe {
		width: 400px;
		height: 225px;
	}

}


/* #mainBody .roomType .roomTypeImage #slides { height:290px!important; } */

.bookIconNo a {
	color: white;
}

.instagram-media-rendered {
	max-width: 540px !important;
}

@media (max-width: 430px) {
	.instagram-media-rendered {
		height: 510px !important;
	}
}
ul.sf-menu a {
  display: unset !important;
}
@media (min-width: 1400px) {
.bookingPanel {
  position: absolute !important;
}
}