/*========================= 01 ==========================*/	
/*=======================================================*/
/*=================== CMS PLUGINS 2016 ==================*/
/*=======================================================*/
/*=======================================================*/	

/* defaults */
* { vertical-align:baseline; font-weight:inherit; font-family:inherit; font-style:inherit; font-size:100%; border:0 none; outline:0; padding:0; margin:0; }
html, body { margin:0; padding:0; font-family:'Open Sans', sans-serif; font-weight:400; color:#555; }
a { color:#07C; text-decoration:none; }
a:hover { opacity:0.9; }
p { margin:1em 0; }
h1 { font-size:150%; font-weight:400; text-align:center; }
.pageTitle { border-bottom:1px solid #e6e6e6; padding-bottom:10px; margin-bottom:30px;  }
h2 { font-size:135%; font-weight:400; }
h3 { font-size:100%; font-weight:600; }
hr { height:0; border:none; border-top:#eee solid 1px; margin:1.5em 0; }
hr.noLine { border:1px solid #fff; }
ul, ol { margin:1em 0; }
ul li, ol li { margin:0 0 0 30px; }
b, strong { font-weight:bold; font-weight:600; }
.clear { clear:both; }
.mobile { display:none; }
iframe { width:100% !important; display:block; }
.box { padding:30px; background:#fff; border:1px solid #e6e6e6; box-sizing:border-box; margin-bottom:20px; }
.note { padding:20px; background:#fffacd; font-style:italic; font-size:90%; }
#webroomsBookingEngine { background:url(/~css/images/ajax-loader.gif) no-repeat center 100px #fff; }

/* buttons */
.btn { border:none; border-bottom:2px solid rgba(0,0,0,0.3); color:#fff; text-align:center; border-radius:3px; text-decoration:none; padding:5px 20px; display:inline-block; font-family:inherit; margin-right:5px; }
.btn:hover { cursor:pointer; }
/* a.xlink:before { content:''; background:url(/~css/images/icon_xlink.png) center left no-repeat; width:16px; height:16px; display:inline-block; }
a.xlink.btn:before { background:url(/~css/images/icon_xlink-w.png) center left no-repeat; width:20px; vertical-align:text-top; } */

/* cursors and hovers */
.galleryThumbs ul.gallery a,
.article ul.gallery a { cursor:-webkit-zoom-in; cursor:-moz-zoom-in; }
.articles-reviews ul.gallery a,
.articles-reviews ul.gallery img { cursor:default; }
.articles-reviews ul.gallery a:hover { opacity:1; }

/* contact */
.cLeft { display:inline-block; width:50%; box-sizing:border-box; padding-right:10px; }
.cRight { display:inline-block; width:50%; box-sizing:border-box; padding-left:10px; float:right; }
.contactCard, .contactForm { min-height:300px; }
.formRow { width:100%; margin-bottom:2px; }
.formRow:hover { background:#f7f7f7; }
.formLabel { width:30%; display:inline-block; line-height:30px; vertical-align:top; }
.formField { width:70%; display:inline-block; float:right; }
.formRow:after { content:''; display:block; height:0; clear:both; }
.formRow input, .formRow textarea { box-sizing:border-box; border:1px solid #ddd; border-radius:0; padding:4px; width:100%; }
.radiocheckField { margin:5px 0; }
.radiocheckField input { width:auto; padding:0; margin-right:5px; }
.radiocheckField label { display:block; line-height:25px; vertical-align:top; cursor:pointer; }
.captchaLabel { color:#999; display:block; font-size:smaller; font-style:italic; margin:5px 0; }
.mapDiv { box-shadow:0 1px 3px rgba(0,0,0,0.2); clear:both; }

/* search and sitemap */
.stdForm { box-sizing:border-box; border:1px solid #ddd; border-radius:0; padding:4px; }
.siteMap ul { margin:0; }
.siteMapDesc { font-size:75%; display:inline-block; margin-left:5px; opacity:0.5; }

/* social icons */
.social a { display:inline-block; padding:5px; width:20px; height:20px; color:#fff; text-align:center; }
.social a.facebook { background:#3b5998; }
.social a.google { background:#DD4B39; }
.social a.tripadvisor { background:#589442; }
.social i.fa { line-height:20px; }

/* default gallery */
ul.gallery { margin:0; list-style:none; }
ul.gallery li { margin:0; width:100%; }
ul.gallery a { display:block; height:100%; width:100%; }
ul.gallery img { object-fit:cover; object-position:50% 50%; width:100%; height:100%; box-shadow:0px 1px 1px rgba(0,0,0,0.2); }
.galleryThumbs ul.gallery li { display:inline-block; box-sizing:border-box; width:20%; height:120px; float:left; border:1px solid #fff; }
.galleryThumbs ul.gallery:after { content:''; display:block; height:0; clear:both; }
.galleryCaption { display:none; }

/* slideshow */
.slideshow { position:relative; }
.slideshowPrev, 
.slideshowNext { background:none; z-index:998; font-family:inherit; font-weight:400; color:#fff; font-size:200%; line-height:100%; padding:0; position:absolute; top:50%; opacity:0.3; }
.slideshowPrev { left:30px; }
.slideshowNext { right:30px; }
.slideshowPrev:hover, 
.slideshowNext:hover { cursor:pointer; opacity:1; }
.slideshow .caption { opacity:0.2; position:absolute; top:0; left:0; right:0; bottom:0; transition:opacity 0.5s; /*background:#000;*/ border-bottom:1px solid; }
.slideshow .caption span.caption-0 { position:absolute; top:40%; left:0; right:0; text-align:center; font-size:0; font-weight:300; color:#fff; text-shadow:1px 1px 1px rgba(0,0,0,0.3); }
.slideshow .caption span.caption-1 { position:absolute; bottom:0; left:0; padding:10px 15px; font-size:0; z-index:998; color:#fff; display:block; opacity:0.5; }
.slideshow .caption span.caption-1:before { width:16px; height:12px; margin-right:5px; content:''; background:url(/~css/images/icon_camera.png); display:inline-block; }
.slideshow .caption:hover { }
.slideshow li img { height:600px; }
.galleryThumbs.slideshow ul.gallery li { padding:0; width:100%; float:none; height:220px; }

/* article defaults */
.article { padding:0 0 30px 0; margin:30px 0; position:relative; width:100%; box-sizing:border-box; }
.article:after { content:''; display:block; height:0; clear:both; }
.article ul.gallery { float:right; }
.article ul.gallery li { display:none; }
.article ul.gallery li.first { margin:0; height:100%; width:100%; display:block; }
.article ul.gallery img { box-shadow:0px 1px 1px rgba(0,0,0,0.2); }
.article .description { margin-top:0.5em; }
.article .btn { margin-top:1em; }
.article .subtitle { font-size:110%; font-weight:300; }

/* article sizes */
.article h2.maintitle,
.article h3.subtitle,
.article h4.subtitle,
.article .teaser,
.article .description,
.article .features,
.article .availability { width:60%; box-sizing:border-box; padding-right:30px; }
.article ul.gallery { width:40%; box-sizing:border-box; }
.article ul.gallery,
.descBlock ul.gallery li { height:220px; }

/* floated content + gallery */
.fLeft { display:inline-block; width:60%; box-sizing:border-box; padding-right:30px; vertical-align:top; }
.fRight { display:inline-block; width:40%; box-sizing:border-box; vertical-align:top; }
.fRight .gallery { height:220px; overflow:hidden; box-shadow:0px 1px 1px rgba(0,0,0,0.2); }
.fRight ul.gallery li { height:100%; width:100%; }
.fRight ul.gallery img { object-fit:cover; object-position:50% 50%; width:100%; height:100%; }

/* webrooms room description */
.roomtype .rtdGallery { width:40%; box-sizing:border-box; height:auto; float:right; } /* fixes width and floats because of the extra outer div in this plugin */
.roomtype .rtdGallery ul.gallery { width:100%; float:none; } /* same as above */
.roomtype .features li { background:url(/~css/images/icon_tick.png) left 6px no-repeat; padding-left:20px; margin:0; list-style:none; }
.roomtype .availability { text-align:center; margin-top:1em; }
.roomtype .availabilityTable { margin:0 auto 10px auto; width:100%; font-size:10px; border-collapse:collapse; box-sizing:border-box; }
.roomtype .availabilityTable th { font-weight:normal !important; background:#eee; padding:3px 0; opacity:0.5; }
.roomtype .availabilityTable td { border:1px solid #fff; }
.roomtype .availabilityTable td:first-child { border-left:none; }
.roomtype .availabilityTable td:last-child { border-right:none; }
.roomtype .availabilityTable .avail a { padding:10px 0; display:block; text-decoration:none; color:#333; }
.roomtype .availabilityTable .avail { color:#333;	background:#d4f7a5; }
.roomtype .availabilityTable .avail:hover { background:#b2ea78; }
.roomtype .availabilityTable .notavail { padding:10px 0; color:#bbb; background:#f1f1f1;}
.roomtype .btn { display:block; margin:0; }

/* webrooms rtd lightbox */
.roomtype .galleryLightbox ul.gallery { height:auto; }
.roomtype .galleryLightbox ul.gallery li { display:inline-block; width:25%; box-sizing:border-box; border:1px solid #fff; }
.roomtype .galleryLightbox ul.gallery li img { height:60px; display:block; }
.roomtype .galleryLightbox ul.gallery li.first { display:block; width:100%; margin-bottom:5px; height:220px; }
.roomtype .galleryLightbox ul.gallery li.first img { height:inherit; }

/* webrooms rtd slideshow */
.roomtype .gallerySlides { position:relative; }
.roomtype .gallerySlides ul.gallery { height:auto; }
.roomtype .gallerySlides ul.gallery li { display:block; width:100%; height:220px; }
.roomtype .gallerySlides ul.gallery li img { height:inherit; }
.roomtype .gallerySlides a.slideLeft, 
.roomtype .gallerySlides a.slideRight { position:absolute; top:45%; left:0; z-index:999; color:#fff; opacity:0.3; background:rgba(0,0,0,0.5); padding:2%; }
.roomtype .gallerySlides a.slideRight { left:initial; right:0; }
.roomtype .gallerySlides a.slideLeft:hover, 
.roomtype .gallerySlides a.slideRight:hover { opacity:1; cursor:pointer; }

/* articles */
.articles-events .youtube { width:40%; position:absolute; top:0; right:0; height:220px; z-index:100; }	
.articles-events .youtube iframe { height:100%; }
.newsSocial { margin-top:10px; }
.newsSocial > div,
.newsSocial > iframe { vertical-align:top !important; display:inline-block; margin-right:5px; }
#twitter-widget-0 { width:60px !important; }

/* articles - reviews */
.articles-reviews .teaser { display:none !important; }	
.articles-reviews ul.gallery { margin:0 10px 10px 0; width:50px; height:50px; float:left; border-radius:25px; }
.articles-reviews ul.gallery img { width:50px; height:50px; border-radius:25px; }
.articles-reviews ul.gallery li { background:none !important; }
.articles-reviews h2.maintitle, 
.articles-reviews h3.subtitle, 
.articles-reviews .description { width:100%; padding:0; }
.articles-reviews .description { clear:both; }

/* reviews page */
.reviews { display:inline-block; width:75%; box-sizing:border-box; vertical-align:top; padding-right:30px; }
.reviews .article:first-child { margin-top:0; }
.widget { display:inline-block; width:25%; box-sizing:border-box; vertical-align:top; float:right; }
#CDSWIDSSP, #CDSWIDCOE, #CDSWIDWRM.widWRMWrapper { box-sizing:border-box; width:100% !important; margin:0 0 10px 0 !important; }
#CDSWIDCOE { padding:10px !important; }
#CDSWIDCOE img { width:auto !important; margin:auto !important; }
.TA_tchotel { margin-bottom:10px; background:#eee; padding:20px; }
.TA_tchotel > div { margin:auto; box-shadow:0 1px 3px rgba(0,0,0,0.2); }

/* article modifiers */
.contain .article ul.gallery img { object-fit:contain; }
.box .descBlock { border:none; margin:0; padding:0; }

/* blockPlus */
.noTitleStuff .ui-dialog-titlebar, .ispopup { display:none }
.blockPlus { overflow:hidden; position:relative; box-sizing:border-box; margin-bottom:20px; }
.blockPlus .gallery { overflow:hidden; position:absolute; top:0; left:0; width:100%; z-index:1; }
.blockPlus .plusimage { width:100%; background-size:cover; background-position:center center; }
.blockPlus h2.maintitle { z-index:3; position:absolute; bottom:0; left:0; right:0; padding:0 30px; line-height:70px; width:100%; box-sizing:border-box;	background:rgba(17,17,17,0.8); color:#fff; 
	font-size:inherit; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.blockPlus h3.subtitle { display:none; }
.blockPlus .overlay { opacity:0; z-index:1; position:absolute; top:0; left:0; right:0; bottom:0; background:#000; transition:opacity 0.5s ease-in-out; }
.blockPlus .teaser { z-index:2; position:absolute; top:0; left:0; right:0; bottom:0; opacity:0; padding:40px 30px; padding-bottom:0; transition:opacity 0.5s ease-in-out; color:#eee; overflow:hidden; }
.blockPlus .links { z-index:3; position:absolute; bottom:20px; right:20px; }
.blockPlus .popup-btn { z-index:3; position:absolute; cursor:pointer; opacity:0; transition:opacity 0.5s ease-in-out; }
.blockPlus:hover .teaser,
.blockPlus:hover .popup-btn,
.blockPlus:hover .overlay { opacity:0.85; }
.blockPlus:hover .popup-btn { opacity:1; }

/* blockPlus popup */
.ui-dialog { width:900px !important; max-height:90% !important; left:0 !important; right:0 !important; margin:auto !important; z-index:99998 !important;
	font-size:inherit !important; font-family:inherit !important; color:inherit !important;  }
.ui-widget-overlay { background:#000 !important; opacity:0.8 !important; }
.popBlock { position:relative; padding:30px; display:block; overflow:auto; }
.popBlock a.close-btn { position:absolute; top:20px; right:20px; z-index:10; width:40px; line-height:40px; padding:0; border-radius:40px; background:#eee; color:#999; text-align:center; font-size:125%; cursor:pointer; }
.popBlock h2.maintitle {  }
.popBlock h3.subtitle { border-bottom:1px solid #ddd; margin:0 0 20px; padding:5px 0 10px 0; }
.popBlock .popGallery { width:50%; float:left; }
.popBlock .plusimage { height:300px; width:100%; background-size:cover; background-position:center center; }
.popBlock .description { width:50%; padding:10px 20px 0; float:right; box-sizing:border-box; }
.popBlock .list { width:50%; padding:0 20px 0; float:right; box-sizing:border-box; }
.popBlock .list li { width:50%; display:inline-block; margin:0; text-indent:20px; background:url(/~css/images/icon_tick.png) left center no-repeat; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.popBlock .links { position:absolute; top:25px; right:70px; }
.slide-controls { position:absolute; top:130px; left:50px; z-index:100; }
.slide-controls a.desc-photos-right,
.slide-controls a.desc-photos-left { color:#fff; font-family:inherit; cursor:pointer; font-size:16px; opacity:0.5; margin-right:5px; } 
.slide-controls a.desc-photos-left:hover,
.slide-controls a.desc-photos-right:hover { opacity:1; }

/* blockPlus widths */
.bHalf { width:50%; display:inline-block; box-sizing:border-box; vertical-align:top; padding:0 20px 20px 0; float:left; }
.bHalf:nth-of-type(odd) { padding:0; }
.bThird { width:33.3%; display:block; float:left; box-sizing:border-box; vertical-align:top; padding:0 20px 0 0; }
.bThird:nth-child(3n) {}
.bFour { width:25%; display:inline-block; box-sizing:border-box; vertical-align:top; padding:10px; }

/* blockPlus heights */
.blockPlus, 
.blockPlus .gallery, 
.blockPlus .plusimage { height:220px; }
.blockPlus .teaser { height:60px; }
.blockPlus .popup-btn { bottom:80px; left:30px; }

/* default colours */
.btn { background-color:#2db4d2; }

/* ieIMGfix */
.ieIMGfix { background-size:cover; background-position:center center; background-repeat:no-repeat; width:100%; height:100%; }


/*========================= 02 ==========================*/	
/*=======================================================*/
/*==================== MOBILE STARTS ====================*/
/*=======================================================*/
/*=======================================================*/	

@media only screen and (max-width: 960px) {
	
.mobile { display:block !important; margin:auto; }
.remove { display:none !important; }

}


@media only screen and (max-width: 600px) {

/* page */
a { word-wrap:break-word; }
h1 { font-size:150%; }
.pageContent ul li { margin:0 0 0 20px; }
iframe { height:200px; !important; }
.box, .note { padding:1em; }
hr.noLine { display:none; }

/* button */
.btn { margin:1em auto 0 auto; display:block; width:100%; box-sizing:border-box; }

/* contact */
.cLeft, .cRight, .fLeft, .fRight { width:100%; display:block; float:none; padding:0; }
.cLeft, .fLeft { margin-bottom:1em; }
.contactCard, .contactForm { padding:1.5em; min-height:0; }
.formLabel, .formField { width:100%; float:none; }
.recaptcha-outer { overflow:scroll; }
.mapDiv { margin-top:1em; }

/* desc block, articles & rtd widths */
.article h2.maintitle,
.article h3.subtitle,
.article h4.subtitle,
.article .teaser,
.article .description,
.article .features,
.article .availability,
.article ul.gallery,
.roomtype .rtdGallery { width:100%; display:block; float:none; padding:0; }
.article { padding:0 0 1.5em 0; margin:1.5em 0; }
.article h2.maintitle,
.article h3.subtitle,
.article h4.subtitle { text-align:center; }
.article ul.gallery { float:none; width:100%; margin:0 0 1em; height:200px; }
.pageContent ul.gallery li { margin:0; }
.galleryThumbs ul.gallery li { width:100%; height:200px; float:none; padding:0 0 1em 0; }
.descBlock ul.gallery li { height:200px; }
.roomtype ul.gallery { height:200px; margin-top:1em; }
.roomtype ul.gallery li { display:none; }
.roomtype ul.gallery li.first { display:block; height:200px; }

/* articles + reviews */
.articles-reviews .article ul.gallery { height:50px; }
.articles-events .youtube { width:100%; top:1em; }	
.articles-reviews ul.gallery { text-align:center; }
.reviews,
.widget { display:block; width:100%; padding-right:0; float:none; }

/* blockPlus */
.blockPlus { height:auto; }
.blockPlus .gallery { position:static; }
.blockPlus .gallery, .blockPlus .plusimage { height:150px; }
.blockPlus h2.maintitle { position:static; text-align:center; height:auto; line-height:100%; padding:1em; font-size:125%; white-space:initial; overflow:initial; text-overflow:initial; }
.blockPlus h3.subtitle { display:none; }
.blockPlus .overlay { display:none; }
.blockPlus .teaser { position:static; opacity:1; padding:1em 0 0; color:inherit; height:auto; }
.blockPlus .links { position:static; }
.blockPlus .popup-btn { position:static; opacity:1; }

/* blockPlus widths */
.bHalf, .bThird, .bFour { width:100%; display:block; float:none; padding:0; margin-bottom:1em; }
.slideshow li img { height:400px; }
}