/*
''template details start''
'name:Page
'primary:true
'serial:1000
'cssFile:template_page.css
'aspFile:template_page.asp
''template details end''
*/

/*========================= 01 ==========================*/	
/*=======================================================*/
/*================== RESPONSIVE STARTS ==================*/
/*=======================================================*/
/*=======================================================*/	

		/*------ Global Reset & Standards ------*/
			html, body, div, span, applet, object, iframe,
			h1, h2, h3, h4, h5, h6, p, blockquote, pre,
			a, abbr, acronym, address, big, cite, code,
			del, dfn, em, img, ins, kbd, q, s, samp,
			small, strike, strong, sub, sup, tt, var,
			b, u, i, center,
			dl, dt, dd, ol, ul, li,
			fieldset, form, label, legend,
			table, caption, tbody, tfoot, thead, tr, th, td,
			article, aside, canvas, details, embed, 
			figure, figcaption, footer, header, hgroup, 
			menu, nav, output, ruby, section, summary,
			time, mark, audio, video { margin:0; padding:0; border:0; font:inherit; vertical-align:top; }
			table { border-collapse:collapse; border-spacing:0; }
			.left, .columns.left { float:left; }
			.right, .columns.right { float:right; }
			.hide { display:none; }
		
		/*------ Responsive Grid ------*/
			.row { width:100%; max-width:1100px; min-width:960px; margin:0 auto; }	/* To fix the grid into a different size, set max-width to your desired width */
			.row .row { min-width:0px; }
			.column, .columns { margin-left:2.127663%; float:left; min-height:1px; position:relative; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; box-sizing:border-box; }
			.column:first-child, .columns:first-child, .alpha { margin-left:0px; }
			.column.omega, .columns.omega { float: right; }
			.row .one.columns 		{ width: 6.382989%; }
			.row .two.columns 		{ width: 14.893641%; }
			.row .three.columns 	{ width: 23.404293%; }
			.row .four.columns 		{ width: 31.914945%; }
			.row .five.columns 		{ width: 40.425597%; }
			.row .six.columns 		{ width: 48.936249%; }
			.row .seven.columns 	{ width: 57.446901%; }
			.row .eight.columns 	{ width: 65.957553%; }
			.row .nine.columns 		{ width: 74.468205%; }
			.row .ten.columns 		{ width: 82.978857%; }
			.row .eleven.columns	{ width: 91.489509%; }
			.row .twelve.columns	{ width: 100%; }
			img, object, embed 		{ max-width: 100%; height: auto; }
			img { -ms-interpolation-mode: bicubic; }
			#map_canvas img, .map_canvas img { max-width: none!important; }
			.row:before, .row:after, .clearfix:before, .clearfix:after { content:""; display:table; }
			.row:after, .clearfix:after { clear: both; }
			.row, .clearfix { zoom: 1; }
		
		/*------ Mobile Grid ------*/
			@media only screen and (max-width:960px) 
			{
				body { -webkit-text-size-adjust: none; -ms-text-size-adjust: none; width: 100%; min-width: 0; margin-left: 0; margin-right: 0; padding-left: 0; padding-right: 0; }
				.row { width: 100%; min-width: 0; margin-left: 0; margin-right: 0; }
				.row .row .column, .row .row .columns { padding: 0; }
				.column, .columns { width: auto !important; float: none; margin-left: 0; margin-right: 0; }
				.column:last-child, .columns:last-child { margin-right: 0; float: none; }
				.row .row .column, .row .row .columns { padding: 0; }
				.column, .columns { width: auto !important; float: none; margin-left: 0px; margin-right: 0px; }
				.column:last-child, .columns:last-child { margin-right: 0; float: none; }
				[class*="column"] + [class*="column"]:last-child { float: none; }
				[class*="column"]:before, [class*="column"]:after { display: table; }
				[class*="column"]:after { clear: both; }
				#webroomsBookingEngine iframe { width:1px; min-width:100%; *width:100%; }
			}
			
			
/*========================= 02 ==========================*/	
/*=======================================================*/	
/*=================== WEBSITE STYLING ===================*/
/*=======================================================*/
/*=======================================================*/	


html, body {
	margin:0;
	padding:0;
	font-family: 'Source Sans Pro', sans-serif;
	font-size:16px;
	color:#555;
	background:#fff;
}

/* common */
a { color:#15c; text-decoration:none; }
a:hover { opacity:0.8; }
p { margin:1em 0; }
h1 { font-size:24px; font-weight:600; color:#3e3f41; padding:10px 0; text-align:center; border-bottom:1px solid #eee; margin:0 0 30px 0; }
h2 { font-size:20px; font-weight:600; color:#3e3f41; }
h3 { font-size:15px; font-weight:600; }
hr { height:0; border:none; border-top:#ddd solid 1px; margin:0; }
ul { margin:1em 0; }
ul li { margin:0 0 0 30px; }
div#preload { display:none; }
.xlink { background:url(/~images/template/icon_external.png) center left no-repeat; padding-left:16px; }
.mobile { display:none; !important; }
.clear { clear:both; }

/* page */
#pageOuter { margin:20px auto; }
#pageContent { margin:20px 70px; }
.halfL { display:inline-block; width:49%; clear:left; }
.halfR { display:inline-block; width:49%; float:right; }
.note { padding:20px; background:#FFFACD; font-style:italic; }
.golf .cmsGallery li a img {height:200px; width:300px;}
.golf .cmsGallery li { height:200px;}

/*** header ***/
#topBar { background:#3e3f41; color:#fff; font-size:14px; line-height:40px; height:40px; }
.topTitle { float:left; }
.topContact { float:right; }
.icoMap,
.icoPhone,
.icoEmail { padding-left:18px; display:inline-block; background-size:auto; background-repeat:no-repeat; background-position:left center; }
.icoMap { background-image:url(/~images/template/icon_map.png); margin-right:10px; }
.icoPhone { background-image:url(/~images/template/icon_phone.png); margin-right:10px; }
.icoEmail { background-image:url(/~images/template/icon_email.png); }
.icoEmail a { text-decoration:none; color:#fff; }
#headerBlock { padding:20px 0 60px 0; background:#eee; }
#headerBlock .row { position:relative; }
.headerLogo { display:inline-block; margin:0 50px; }
.headerLogo:hover { opacity:1; }
.headerLogo img { height:180px; }
.headerBook { display:inline-block; background:rgba(0,0,0,0.6); padding:20px 30px; margin-top:50px; }
.headerBook .remove { display:none !important; }
.rwr_label,
.rwr_dayLabel,
.rwr_picker,
.rwr_button { display:inline-block; height:50px; line-height:50px; }
.rwr_label { color:#fff; font-weight:400; font-size:inherit; background:url(/~images/template/icon_calendar.png) left center no-repeat; padding-left:25px; }
.rwr_dayLabel { color:#fff; margin:0 10px 0; font-weight:400; font-size:inherit; }
.rwr_picker { border:none; padding:0 5px; margin:0; background:#fff; color:#333; font-size:inherit; margin:0; font-family:'Source Sans Pro', sans-serif; }
.rwr_button { border:none; border-bottom:2px solid rgba(0,0,0,0.3); color:#fff; text-align:center; border-radius:6px; text-decoration:none; padding:0 50px; font-family:inherit; font-size:22px; font-weight:600;
	background-color:#1175ba; text-transform:uppercase; height:52px; margin-left:10px; }
.rwr_button:hover { cursor:pointer; opacity:0.9; }
.headerImage { position:absolute; top:40px; left:0; z-index:0; width:100%; height:260px; background-image:url(/~images/template/background_header01.jpg); background-size:cover; background-position:center center; }
.headerBg { height:260px; width:100%; background-size:cover; background-position:center center; }

/* footer */
#footerBlock { background:#1175ba; color:#fff; padding:50px 0; }
#footerBlock .logoLeft { display:inline-block; margin:0 50px; }
.footerContact { display:inline-block; }
.footerContact h3 { font-weight:700; text-transform:uppercase; font-size:24px; margin-top:20px; padding-bottom:5px; }
.footerContact .icoMap,
.footerContact .icoPhone,
.footerContact .icoEmail { display:block; line-height:22px; padding-left:22px; }
#footerCopy { text-align:center; background:#3e3f41; color:#777; font-size:14px; line-height:40px; height:40px; }
#footerCopy a { color:inherit; }
#footerCopy a:hover { color:#999; opacity:1; }
.sep { opacity:0.3; margin:0 5px; }

/*** btn ***/
#pageContent .descLink,
#pageContent .desc-book-button { background-color:#1175ba; border-radius:0; text-transform:uppercase; border-radius:3px; }
#pageContent .descLink { margin-right:10px; }

/* cms */
.noline .descBlock { border:none; margin:0; padding:0; }

/*========================= 03 ==========================*/	
/*=======================================================*/
/*==================== MOBILE STARTS ====================*/
/*=======================================================*/
/*=======================================================*/	

@media only screen and (max-width:960px) {
body,html { font-size:95%; }
h1 { font-size:120%; }
h2 { font-size:120%; }
h3 { font-size:100%; }
.mobile { display:block !important; margin:auto; }
.remove { display:none !important; }
#headerBlock { padding:0; }

#pageContent { padding:0; margin:0; }

.halfL,
.halfR { display:block; width:100%; float:none; }

/*** header ***/
#topBar { display:none; }
#headerBlock { padding:0; }
.headerLogo { margin:0; }
.headerLogo img { position:absolute; top:70px; left:0; right:0; z-index:10; margin:0 auto; height:70px; }
.headerBook { display:none; }
.headerImage { height:160px; top:0; }
.headerBg { height:160px; }

/* page */
#pageOuter { padding:1em; margin-top:160px; }
#pageOuter h1 { margin:0 0 1em 0; padding:0 0 5px 0;  }

/* footer */
#footerBlock { padding:2em 1em; text-align:center; }
#footerBlock .logoLeft { display:none; }
.footerContact { display:inline-block; }
.footerContact h3 { margin:0; font-size:110%; padding:0; }
.footerContact .icoMap,
.footerContact .icoPhone,
.footerContact .icoEmail { font-size:90%; padding:0; line-height:initial; background:none; display:inline; margin:0 3px; }
#footerCopy { font-size:80%; }

}


/*========================= 04 ==========================*/	
/*=======================================================*/
/*====================== NAVIGATION =====================*/
/*=======================================================*/
/*=======================================================*/	

.navBar { position:relative; margin:auto; margin-top:-35px; }
.scroll-to-fixed-fixed { max-width:100%; width:100% !important; left:0 !important; margin-top:0; }
.flexnav { overflow:hidden; margin:0 auto; width:100%; text-align:center; }
.flexnav.flexnav-show { max-height:none; background:#111; opacity:1; z-index:99999; }
.flexnav ul { background:#222; }
.flexnav li { font-size:100%; position:relative; overflow:hidden; padding:0; margin:0; display:inline-block; }
.flexnav li a { position:relative; z-index:101; overflow:hidden; text-decoration:none; display:block; color:#fff; padding:20px; font-size:18px; }
.flexnav li.last a { border-right:none; }	
.flexnav li ul { width:300px; text-align:left; margin:0; }
.flexnav li ul li { font-size:100%; position:relative; overflow:hidden; float:left; display:block; }
.flexnav li ul.flexnav-show li { overflow:visible; }
.flexnav li ul li a { display:block; border:none; font-weight:400; border-bottom:1px solid rgba(0,0,0,0.3); color:#fff; padding:10px 15px; background:#222; font-size:16px; }
.flexnav li ul li a:hover { color:#fff; background:#111; }
.flexnav li a:hover,
.flexnav li:hover > a { background-color:rgba(0,0,0,0.1); }
.flexnav .touch-button { position:absolute; z-index:9999; top:1px; right:0; display:inline-block; background:rgba(0,0,0,0.075); text-align:center; width:40px; height:40px; display:none; }
.flexnav .touch-button:hover { cursor:pointer; }
.flexnav .touch-button .navicon { position:relative; top:1.4em; font-size:12px; color:#666; }
.flexnav li > ul {
//  display: block;
display: none;
} /* fixes nav flashing on page load */

/* screen */
@media all and (min-width:960px) {

.flexnav { overflow:visible; }
.flexnav.opacity { opacity:1; }
.flexnav li { position:relative; list-style:none; display:inline-block; overflow:visible; width:auto; }
.flexnav li > ul { position:absolute; top:auto; left:0; }
.flexnav li > ul li { width:100%; }
.flexnav li ul li > ul { margin-left:100%; top:0; }
.flexnav li ul li a { }
.flexnav li ul.open { display:block; opacity:1; visibility:visible; z-index:1; }
.flexnav li ul.open li { overflow:visible; max-height:100px; }
.flexnav li ul.open ul.open { margin-left:100%; top:0; }
.menu-button { display:none; } 
.scroll-to-fixed-fixed .flexnav li a { padding:1.5em 15px; }
.scroll-to-fixed-fixed .flexnav li li a { padding:1em 15px; }
.scroll-to-fixed-fixed .navigation { box-shadow:0 0 3px rgba(0,0,0,0.5); }
}

/* mobile */
@media screen and (max-width:960px) {

.navBar .mobile { font-size:100%; line-height:50px; max-width:75%; text-align:center; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; color:#fff; position:absolute; top:0; left:0; right:0; z-index:1; }
.navigation { width:100%; height:auto; padding:0; margin:0; position:absolute; top:0; left:0; right:0; }
.menu-button { position:relative; display:block; line-height:50px; padding:0; background:#111; height:50px; color:#000; cursor:pointer; text-align:center; font-size:125%; overflow:hidden; width:40px; float:right; }
.menu-button .touch-button { background:#000; position:absolute; z-index:9999; top:0; right:0; width:40px; height:50px; display:inline-block; text-align:center; }
.menu-button .touch-button .navicon { font-size:12px; position:relative; color:#fff; width:40px; height:40px; color:#000; display:block; }
.menu-button .touch-button .navicon:before { content:"\2261"; position:absolute; top:0; right:0; color:#fff; width:40px; height:40px; font-weight:bold; font-size:16px; }
.navigation .flexnav { text-align:left; max-height:0; }
.navigation .flexnav-show { max-height:none; }
.navigation .flexnav .touch-button { display:inline-block; background:#222; }
.navigation .flexnav .touch-button .navicon { top:12px; color:#fff; }
.navigation .flexnav li { display:block; width:100%; z-index:101; }
.navigation .flexnav li.item-with-ul {  }
.navigation .flexnav li ul { width:100%; }
.navigation .flexnav li ul li { float:none; }
.navigation .flexnav li a { color:#fff; padding:0 1em; border:none; border-top:1px solid #222; border-bottom:1px solid #000; background:#111; font-size:90%; line-height:40px; }
.navigation .flexnav li ul li a { background:#333; border-bottom:1px solid #222; border-top:1px solid #444; font-size:90%; color:#fff; padding:0 1em; }
.navigation .flexnav.flexnav-show { background:#000; }
}


/*========================= 05 ==========================*/	
/*=======================================================*/
/*==================== CUSTOM COLOURS ===================*/
/*=======================================================*/
/*=======================================================*/	


/* COLOURS + Branding */
.navigation,
.scroll-to-fixed-fixed .navigation,
#headerTop,
.descLink,
.scroll-to-fixed-fixed .flexnav li a { background-color:#ec2127; }
.scroll-to-fixed-fixed .flexnav li:hover > a,
.scroll-to-fixed-fixed .flexnav li a:hover { background-color:rgba(0,0,0,0.1); }
.scroll-to-fixed-fixed .flexnav li li a { background-color:inherit; }
.scroll-to-fixed-fixed .navigation { background-image:url(/~images/template/logo.png); background-position:left top; background-repeat:no-repeat; background-size:contain; }


/* mobile */
@media screen and (max-width:960px) {
.navigation,
.scroll-to-fixed-fixed .navigation { background-position:left top; background-size:50px auto; }
.scroll-to-fixed-fixed .flexnav li a { background-color:#111; }
}