/** ----------------------------------------------------------
 *
 * Contains the main layout of the page and the individual styles.
 * Acts as the main stylesheet for theme.
 *
 *		Include your notes or table of contents below....
 *		Include color hex's or values of your grid
 *
 *		1. OOCSS GRID
 *		2. MAIN LAYOUT
 *		3. HEADER
 *			- Brand
 *			- Search Form
 *		4. Navigation
 *			- Primary Navigation
 *			- tablet Navigation
 *			- Secondary Navigation
 *			- Secondary Nav 2-5 Levels deep
 *		5. Mixed
 *		6. Footer
 *		7. Page Specific Layout
 *			- Homepage
 *			- Search Results
 *		8. Device and Responsive Layout
 *			- Breakpoint 960px
 *			- Breakpoint 640px
 *				- Search Form
 *				- Main Content
 *		9. Print Styles
 *			- Simple Theme custom print styles
 *
 * @author Your Name <email@silverstripe.com>
 * ------------------------------------------------------- */

/* OOCSS Grid
* https://github.com/stubbornella/oocss/wiki/grids
*/
/*google recpath */


.line, /* line - Groups units on one horizontal line. Note: for mobile layout units may be stacked to avoid horizontal scrolling. */
.lastUnit {
	overflow:hidden;
	*overflow:visible;
	*zoom:1;
	padding:0 10px;
}
.unit { /* unit - Base class which divides a line into sections (columns). */
	float:left;
	padding:0 10px;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	box-sizing:border-box; /* box-sizing:border-box; creates a box-model where 
	padding and border are NOT added onto the width - they are included in the width, 
	so a 200px wide element with 20px padding will be 200px, NOT 240px wide */
}
.unitRightv { /* Use this class if you want to offset a column eg: |--content(.unit)--|--content(.unit)--|--no-content--|--no-content--|--content(.unitRighttv)--| */
	float:right;
}

/* sizeXofY - Extends unit. Indicates the fractional width of the unit, for example size3of4 would take up three quarters, or 75%, of the horizontal space. 
The following fractions are supported: 1, 1/2, 1/3, 2/3, 1/4, 3/4, 1/5, 2/5, 3/5, 4/5 */
/* It is possible to add more columns if you wish you will just have to add the fractions that are missing eg: .size1of6 {width:16.66666%;} */

.size1of1 {
	float:none;
}
.size1of2 {
	width:50%;
}
.size1of3 {
	width:33.33333%;
}
.size2of3 {
	width:66.66666%;
}
.size1of4 {
	width:25%;
}
.size3of4 {
	width:75%;
}
.size1of5 {
	width:20%;
}
.size2of5 {
	width:40%;
}
.size3of5 {
	width:60%;
}
.size4of5 {
	width:80%;
}
.lastUnit { /* lastUnit - Extends unit. Applied to the last child of every line. */
	float:none;
	width:auto;
	_position:relative; /* Bug fix for IE6 - Internet Explorer 6 and below wouldn't fail on properties that were prefixed with non-alphanumeric characters. 
	meaning that anything prefixed with _ wouldn't be picked up by any other browsers */
	_left:-3px;
	_margin-right:-3px;
}

/* MAIN LAYOUT */
body {
    margin: 0;
    background: #dae9f4;
    min-width: 240px; 
    -webkit-text-size-adjust: none; /* The text size is not adjusted for Safari on iPhone */
	
	background-position: center 130px;
	/*background-position: center top; */
	background-repeat: no-repeat;
	
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
	
	min-height: 100%;
	/*overflow: scroll;
	overflow-x:hidden;*/
}

.body-bg {
	background-position: center 130px;
	/*background-position: center top; */
	background-repeat: no-repeat;
	
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
	
	min-height: 100%;
	
	top: 0;
	position: absolute;
	width: 100%;
}

html {
	height: 100%;
}
	.ie7 body,
	.ie8 body {
	    min-width: 860px; /* media queries are not supported in ie7/8 without a polyfill */
	}
	.main {
	    background: transparent;
	    padding: 10px 0 0px;
	    min-height: 300px;
	}
	.inner {
	    max-width: 950px;
	    margin: 0 auto;
	    padding: 0 30px;
		position: relative;
		
		box-sizing: border-box;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
	}
	.main .inner {
		overflow:hidden;
	}
	.ie6 .inner {
	    width: 960px;
	}
	.content-container {
		
		float: left;
	}	
	.no-sidebar .content-container {
	    float: left;
	    width:100%; /* makes content container full width when there is no sidebar */
	}
	.sidebar { /* this is the sidebar element */
	    
	}
	.no-sidebar .sidebar {
		display: none;
	}


/* HEADER */
.blue-header {
    background: #213e7a;
}
	.header .inner {
		padding: 0;
		padding-top: 10px;
	    position: relative;
	    min-height: 80px;
		padding-bottom: 0px;
		
		box-sizing: border-box;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
	}
	
	.blue-header .inner {
		 padding-top: 30px;
		 
		 padding-bottom: 0;
		 min-height: 135px;
	}
	
	.blue-header .primary ul {
		right: 0 !important;
	}

	/* Brand */
	header .brand, header .brand:hover {
	    float: left;
	    color: #fff;
	    display: inline-block;
	}
		.brand h1 {
		    margin: 0;
		    padding: 0;
		    font-size: 48px;
		    font-family: "HelveticaNeueLTPro-Bd", "Helvetica Neue LT Pro Bold", "ArialBlackRegular", "HelveticaNeue-Bold", "Helvetica Neue Bold", "Helvetica Neue LT Pro", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
		    color: #fff;
		    font-weight: 600;
		    font-stretch: normal; /* default value. No font stretching */
		    line-height: 1em;
		}
		.brand p {
		    color: #888;
		    margin-bottom: 22px;
		}
		
		.blue-header .inner .tagline {
			float: right;
			padding-top: 25px;
			font-size: 17px;
			color: #FFF;
			text-align: right;
			max-width: 390px;
			font-family: 'ArialBlackRegular', sans-serif;
			padding-bottom: 10px;
		}
		.blue-header .inner .tagline a {
			color: #FFF;
		}
		
		.page-title {
			color: #223f7b;
			font-size: 15px;
			text-transform: uppercase;
			float:left;
			position: relative;
		}
		.page-title:after {
			display: block;
			content: "";
			position: absolute;
			bottom: -5px;
			width: 100%;
			height: 2px;
			background: #a6d95b;
			border-top: 1px solid #c4e39f;
			-webkit-box-shadow: 2px 3px 3px 1px #dcddde;
			box-shadow: 2px 3px 3px 1px #dcddde;
		}
		
		.site-title {
			float: right;
			color: #223f7b;
			font-size: 15px;
			text-transform: uppercase;
		}

	/* Search form */

	.search-bar {
		position: absolute;
		right: 13px;
		top: 12px;
	}
		.search-bar .field {
			margin: 0;
			padding: 0;
		}
		.search-bar form input.text {
		    width: 155px;
		    padding: 5px 34px 5px 15px;
		    color: #888;
		    margin: 0;
		    border: none;
		    -moz-border-radius: 14px;
		    border-radius: 14px;
		    background: #fff;
		}

		.search-bar form input.action { /* positions the search button icon over the top of the search input */
		    font-size: 14px;
		    position: absolute;
		    right: 5px;
		    top: 0;
		    cursor: pointer;
		    border: none;
		    padding: 5px;
		    background: none;
		    font-family: 'WebSymbolsRegular';
		    color: #848484;
			border-radius: 0;
			margin: 0;
		}
		.search-bar form input.active,
		.search-bar form input.action:hover {
		    color: #000;
		}
		.search-bar form input:focus,
		.header textarea:focus {
		    outline: none; /* removes default browser outlining on focus */
		}
		.search-dropdown-icon {
		    display: none; /* hides search-dropdown-icon when site is at full width - media queries set it to display:block when at mobile/tablet width */
		}



/* NAVIGATION */

	/* Primary navigation */
	.header .inner .unit {
		position: relative; /* used to position the main navigation */
	}
	.header .primary ul {
		position:absolute;
		bottom:5px;
		right: 65px; /* positions the main navigation */
		
		float: right;
		clear: both;
		position: relative;
		margin: 1px 0px 0px 13px;
	}
	.header .primary li {
	    display: inline-block;
	    position: relative;
	    white-space: nowrap; /* forces text to never wrap onto a second line */
		margin: 0 5px;
	}
	.header .primary li a {
	    color: #223f7b;
	    font-size: 13px;
		font-family: Arial, "HelveticaNeue", sans-serif !important;
	    padding: 6px 0px;
	    font-weight: bold;
	    display: inline-block;
	}
	.header .primary li a:hover {
	    color: #223f7b;
	}
	.header .primary li.section a,
	.header .primary li.current a {
	    color: #223f7b;
	}
	.header .primary li.current:after,
	.header .primary li:hover:after {
		display: block;
		content: "";
		position: absolute;
		bottom: 2px;
		width: 100%;
		height: 2px;
		background: #a6d95b;
		border-top: 1px solid #c4e39f;
		-webkit-box-shadow: 2px 3px 3px 1px #dcddde;
		box-shadow: 2px 3px 3px 1px #dcddde;
	}
	
	.header .primary .social{
		margin: 0;
	}
	.header .primary .mobile-social {
		display: none;
	}
	.header .primary .social a {
		padding: 0;
		width: 16px;
		height: 15px;
		text-indent: -10000px;
		margin: 8px 5px;
		display: inline-block;
		position: relative;
		top: 5px;
	}
	
	.header .social a.fb {
		background: url('../images/fb_blue.png') top left no-repeat;
	}
	.header .social a.instagram {
		background: url('../images/instagram_blue.png') top left no-repeat;
	}
	.header .social:hover:after {
		display: none !important;
	}
	
	/* blue header styles */
	.blue-header .primary li a {
	    color: #fff;
	}
	.blue-header .primary li a:hover {
	    color: #fff;
	}
	.blue-header .primary li.section a,
	.blue-header .primary li.current a {
	    color: #fff;
	}
	.blue-header .primary li.current:after,
	.blue-header .primary li:hover:after {
		-webkit-box-shadow: none;
		box-shadow: none;
	}
	
	.blue-header .social a.fb {
		background: url('../images/fb_white.png') top left no-repeat;
	}
	.blue-header .social a.instagram {
		background: url('../images/instagram_white.png') top left no-repeat;
	}
	

	/* Tablet Navigation */
	/* When navigation and logo overlap tablet-nav is initialized */
	.tablet-nav .brand p {
	    margin-bottom: 0;
	}
	.tablet-nav .header .inner {
	    padding-top: 20px;
	}
	.tablet-nav .header .primary ul {
	    /*float: right;
	    clear: both;
	    position: relative;
	    margin: 20px 0 0 13px;
	    white-space: nowrap;
	    right: auto; *//* resets the right property value that is set for the desktop site */
	}
		.tablet-nav .header .primary ul li {
		    /*white-space: nowrap;*/
		}
			.tablet-nav .header .primary ul li a { /* there is no hover on touch devices so no transition on hover is necessary */
			    -moz-transition: none;
			    -webkit-transition: none;
			    transition: none;
			}
	.tablet-nav .footer .right {
	    float: left;
	    width: 100%;
	}

	/* Secondary navigation */
	.main .sidebar {
		-webkit-box-shadow: 0 0 6px 1px #dfecf3;
		box-shadow: 0 0 6px 1px #dfecf3;
		background: #FFF;
		padding: 10px;
		padding-bottom: 50px;
		
		box-sizing: border-box;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		
		top:5px;
		margin-bottom: 10px;
	}
	.sidebar img {
		margin-top: 20px;
		max-width: 100%;
	}
	.main .secondary h3 {
	    font-size: 13px;
	    color: #223f7b;
	    margin: 0 0 8px 0;
	    font-weight: normal;
		line-height: 17px;
		text-align: center;
		position: relative;
	}
	.main .secondary h3:after {
		display: block;
		content: "";
		position: absolute;
		bottom: -7px;
		width: 100%;
		height: 2px;
		background: #a6d95b;
		border-top: 1px solid #c4e39f;
		-webkit-box-shadow: 2px 3px 3px 1px #dcddde;
		box-shadow: 2px 3px 3px 1px #dcddde;
	}	
		.main .secondary ul {
		    padding: 0;
			padding-top: 15px;
		    margin: 0;
		    padding-left: 22px;
		}
		.main .secondary li {
		    
		    position: relative;
		    list-style-type: none;
		    margin-bottom: 0;
		}
		.main .secondary li a { /* side nav link styling */
		    padding: 8px 0;
		    display: block;
		    text-transform: uppercase;
		    font-size: 11px;
		    color: #223f7b;
		    line-height: 17px;
		    border-bottom: none;
			font-family: 'ArialBlackRegular', sans-serif;
		}
		.main .secondary li a:hover {
			color: #223f7b !important;
		}
		.main .secondary li .text {
		    display: block;
		}
		.main .secondary li.current a.current {
			color: #223f7b;
		}
		.main .secondary li.section,
		.main .secondary li.current {
		}
		
		.main .secondary li.current:after,
		.main .secondary li:hover:after {
			display: block;
			content: "";
			position: absolute;
			bottom: 0px;
			width: 100%;
			height: 2px;
			background: #a6d95b;
			border-top: 1px solid #c4e39f;
			-webkit-box-shadow: 2px 3px 3px 1px #dcddde;
			box-shadow: 2px 3px 3px 1px #dcddde;
		}	
			.main .secondary li.section a,
			.main .secondary li.current a {
			    color: #000;
			}
		

		/* Secondary navigation 2-5 levels deep */
		.main .secondary ul ul {
			display: none;
		}
		.secondary ul li.current ul,
		.secondary ul li.section ul { /* Only show child pages from selected parent */
			display: block;
		}
		.secondary li.current ul ul {
			display: none;
		}
		.main .secondary ul ul li a { padding-left: 10px; } /* Indent all sidebar navigation levels*/
			.main .secondary ul ul li a .arrow { left: 12px; }
			.main .secondary ul ul li a:hover .arrow { left: 16px; }

		.main .secondary ul ul ul li a { padding-left: 20px; }
			.main .secondary ul ul ul li a .arrow { left: 22px; }
			.main .secondary ul ul ul li a:hover .arrow { left: 26px; }

		.main .secondary ul ul ul ul li a { padding-left: 30px; }
			.main .secondary ul ul ul ul li a .arrow { left: 32px; }
			.main .secondary ul ul ul ul li a:hover .arrow { left: 36px; }
			
		.main .secondary ul ul ul ul ul li a { padding-left: 40px; }
			.main .secondary ul ul ul ul ul li a .arrow { left: 32px; }
			.main .secondary ul ul ul ul ul li a:hover .arrow { left: 36px; }

		.main .secondary li a:hover,
		.main .secondary li.section a:hover,
		.main .secondary li.current a:hover {
			color: #b80000;
		}




/* MIXED */
header:after,
.main:after,
#Root:after,
.search-bar:after,
header .inner:after,
footer:after { /* clearfix */
    height: 0;
    content: ".";
    display: block;
    clear: both;
    visibility: hidden;
}
.search-bar form input.action,
.header .primary li a,
.footer a { /* adds color transition when links/inputs on hover */
    -moz-transition: color 0.2s;
    -webkit-transition: color 0.2s;
    transition: color 0.2s;
}
.footer a.brand { color: #333; margin-left: 0; }
.footer a.brand:hover { color: #B80000; }
body h1 span.amp {
    font-family: Baskerville,"Goudy Old Style","Palatino","Book Antiqua",Georgia;
    font-style: italic;
}


/* FOOTER */
.footer {
    color: #999;
    background: transparent;
    padding: 20px 0;
    font-size: 11px;
    line-height: 22px;
	
	
}
.bottom-footer {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
}

.inner-footer {
    background: #dae9f4;
	position: absolute;
	z-index: 1000;
	bottom: 0;
	width: 100%;
	padding-bottom: 0;
}
.fake-footer {
	height: 139px;
	padding: 0;
}
.outer-fake-footer {
	height: 85px;
	padding: 0;
}
	.footer .inner {
		padding: 0;
	}
	.footer a {
	    color: #213e7a;
	}
	.footer a:hover {
	    color: #213e7a;
		text-decoration: underline;
	}
	.footer .left {
	    float: left;
	    color: #000;
	    display: block;
	    margin-bottom: 10px;
	}
	.footer .right {
	    float: right;
	    display: block;
	    margin-bottom: 10px;
	}
	.footer span {
	    padding: 0 3px;
	    color: #bbb;
	}
	.footer .primary,
	.footer .primary ul {
	    display: inline;
	    margin: 0;
	    padding: 0;
	}
		.footer .primary li {
		    display: inline;
		}
	.ie6 .footer .primary li,
	.ie7 .footer .primary li { /* this is a bugfix for ie6/7 */
	    display: inline;
	    zoom: 1;
	    margin-right: 10px;
	}
	.footer .primary li:after { /* adds '/' to separate the footer navigation items */
	    padding: 0 3px 0 5px;
	    content: '/';
	    color: #999;
	}
	.footer .primary li:last-child:after {
	    content: ''; /* makes sure last nav item doesn't have a '/' following it */
	}
	.footer .arrow {
	    padding: 0 8px 0 5px;
	    color: #b80000;
	    font-size: 13px;
	}
	.footer .primary .nav-open-button {
	    display: none; /* the footer includes the primary nav include - this makes sure the nav open close button doesn't show up */
	}
	
	.FaqPage .buttons,
	.BookingPage .buttons{
		margin-top: 10px;
	}
	
	.footer .buttons {
		
	}
	.footer .button {
		height: 35px;
		width: 215px;
		line-height: 35px;
		font-size: 15px;
		padding: 0;
	}
	.button {
		padding: 4px 20px;
		display: inline-block;
		text-align: center;
		background: #213e7a;
		font-style: italic;
		text-transform: uppercase;
		color: #FFF !important;
		margin-right: 15px;
		margin-bottom: 10px;
		font-family: 'Arial', 'HelveticaNeue', sans-serif;
		font-weight: bold;
		-webkit-box-shadow:inset 5px 5px 6px -2px #909fbd, inset -5px -5px 6px -2px #162950, 4px 4px 4px 0 rgba(0, 0, 0, 0.2);
		box-shadow:inset 5px 5px 6px -2px #909fbd, inset -5px -5px 6px -2px #162950, 4px 4px 4px 0 rgba(0, 0, 0, 0.2);
	}
	.button.last {
		margin-right: 0;
	}
	
	.footer-contact {
		max-width: 585px;
		text-align: center;
		color: #213e7a;
		line-height: 14px;
		padding-top: 15px;
		display: inline-block;
		vertical-align: top;
		margin-right: 80px;
	}
	
	.footer .inner {
		text-align: center;
	}
	
	/* Slideshow */
	
	
	.above-slideshow {
		min-height: 35px;
		max-width: 850px;
		margin: 0 auto;
		overflow:hidden;
	}
	
	#slideshow {
		max-width: 950px;
		-webkit-box-shadow: 3px 3px 4px 0 rgba(0,0,0,0.25);
		box-shadow: 3px 3px 4px 0 rgba(0,0,0,0.25);
	}
	
	#slideshow .slide {
		width: 100%;
	}
	
	#slideshow img {
		margin-bottom: -6px;
		width: 100%;
	}
	
	.google-map {
		max-width: 374px;
		width: 100%;
		float: left;
		margin-right: 15px;
		margin-bottom: 5px;
		
		position: relative;
        padding-bottom: 41%; 
        height: 0;
        overflow: hidden;
	}
	
	.google-map img {
		cursor: pointer;
		position: absolute; 
		z-index: 100;
		
	}
	.google-map .map-hider {
		display:none;
	}
	
    .google-map iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100% !important;
        height: 100% !important;
    }
	
	.ui-datepicker {
		z-index: 1000000 !important;
	}
	

/* PAGE SPECIFIC LAYOUT */

	/* Homepage */
		/* currently no Hompage specific styles - feel free to add your own */
	.HomePage .main {
		padding-top: 15px;
	}
	.HomePage .main .inner {
		max-width: 960px;
	}
	.HomePage #slideshow {
		border: 5px solid #FFF;
		max-width: 960px;
		-webkit-box-shadow: none;
		box-shadow: none;
		background: #FFF;
	}
	.HomePage .slideshow-wrapper {
		position: relative;
	}
	.HomePage .slideshow-wrapper:after {
		display: block;
		content: "";
		position: absolute;
		
		width: 102%;
		height: 19px;
		bottom: -19px;
		left:-5px;
		background: url('../images/slide_shadow.png') top center no-repeat;
		background-size: 100%;
	}
	.HomePage #slideshow img{
		margin-bottom: -5px;
	}
	
	.HomePage #slideshow .slide-caption {
		position: absolute;
		bottom: 15px;
		right: 80px;
		color: #FFF;
		font-style: italic;
		font-size: 18px;
		line-height: 23px;
		text-align: right;
	}
	
	.HomePage #slideshow .slide-caption p {
		font-size: 18px;
		line-height: 23px;
		margin-bottom: 0;
	}
	
	.HomePage .main {
		padding-bottom: 0;
	}	
	.HomePage .main .inner {
		padding: 0;
	}
	
	.HomePage .content {
		margin-top: 20px;
	}
	
	/* Page */
	
	.Page .content-container{
		max-width: 650px;
		float: left;
	}
	
	.Page.no-sidebar .content-container{
		max-width: 880px;
	}
	
	/* ConfirmationPage */
	
	.confirm-form, .confirm-right {
		background: rgba(255, 255, 255, 0.5);
		width: 49%;
		float: left;
		padding: 20px;
		height: 552px;
		position: relative;
		
		box-sizing: border-box;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;		
	}
	.confirm-form {
		margin-right: 15px;
		padding-top: 13px;
	}
	
	.confirm-form h2{
		overflow: hidden;
		padding-top: 10px;
	}
	
	.confirm-form h2 img {
		background: none;
		vertical-align: middle;
		
		float: right;
		margin-top: -10px;
	}
	
	.confirm-form h2 span.c-success {
		font-size:19px;
		line-height: 19px;
		max-width: 260px;
		display: inline-block;
	}
	
	.confirm-form .explanation {
		max-width: 300px;
		margin: 0 auto;
		margin-top: 20px;
		margin-bottom: 20px;
	}
	
	.confirm-form .paystation {
		max-width: 300px;
		width: 100%;
		margin: 0 auto;
		display: block;
		position: absolute;
		left: 0;
		right: 0;
		bottom: 20px;
		-webkit-box-shadow:inset 5px 5px 6px -2px #909fbd, inset -5px -5px 6px -2px #162950, 4px 4px 4px 0 rgba(0, 0, 0, 0.2);
		box-shadow:inset 5px 5px 6px -2px #909fbd, inset -5px -5px 6px -2px #162950, 4px 4px 4px 0 rgba(0, 0, 0, 0.2);
	}
	
	#Form_ConfirmationForm {
		max-width: 300px;
		width: 100% !important;
		margin: 0 auto;
		margin-bottom: 10px;
		height: 56px;
		
		position: absolute;
		left: 0;
		right: 0;
	}
	
	#Form_ConfirmationForm  input[type=submit] {
		width: 100%;
		text-align: center;
		padding: 10px 0;
	}
	
	#Agree,
	#Agree .message{
		margin-bottom: 0;
	}
	
	/* FaqPage */
	
	.FaqPage .content-container {
		background: rgba(255, 255, 255, 0.5);
		padding: 20px;
		padding-top: 13px;
	}
	
	.FaqPage .main {
		padding-top: 20px;
	}
	
	.FaqPage article {
		margin: 0 auto;
		max-width: 810px;
	}
	
	.FaqPage h2 {
		margin-bottom: 25px;
		text-indent: 10px;
	}
	
	.questions-container {
		max-width: 380px;
		width: 100%;
		float: left;
		max-height: 479px;
		overflow: auto;
		padding-right: 25px;
		margin-right: 20px;
	}	
	
	.question-container.clickme {
		background: #FFF;
		max-width: 380px;
		padding-top: 4px;
		padding-bottom: 8px;
		-webkit-box-shadow: 0 0 5px 1px rgba(0,0,0,0.2);
		box-shadow: 0 0 5px 1px rgba(0,0,0,0.2);
		margin-bottom: 20px;
		cursor: pointer;
		padding-left: 20px;
		padding-right: 10px;
	}
	
	.question {
		position: relative;
	}
	
	.FaqPage .letter {
		color: #213e7a;
		font-size: 15px;
	}
	
	.answers-container {
		background: #FFF;
		float: left;
		max-width: 380px;
		width: 100%;
		height: 479px;
		-webkit-box-shadow: 0 0 5px 1px rgba(0,0,0,0.2);
		box-shadow: 0 0 5px 1px rgba(0,0,0,0.2);
		padding: 10px;
		padding-left: 25px;
		
		box-sizing: border-box;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
	}
	
	.answers-container .question-answer {
		display: none;
	}
	
	.answers-container .question {
		margin-bottom: 25px;
	}
	
	
	.question.underlined:after {
		display: block;
		content: "";
		position: absolute;
		bottom: -10px;
		width: 100%;
		height: 2px;
		background: #a6d95b;
		border-top: 1px solid #c4e39f;
		-webkit-box-shadow: 2px 3px 3px 1px #dcddde;
		box-shadow: 2px 3px 3px 1px #dcddde;
	}
	
	.responsive-answer {
		position: relative;
	}
	
	.answer .a.letter {
		position: absolute;
		margin-top: 4px;
	}
	.answer-content {
		padding-top: 4px;
	}
	.answer-content p:first-child{
		text-indent: 15px;
	}
	
	.question-container .answer {
		display: none;
	}
	
	/* Gallery Container Page */
	
	.GalleryContainerPage .main {
		padding-top: 30px;
	}
	
	.GalleryContainerPage .content-container {
		padding: 0;
	}
	
	.GalleryContainerPage .galleries .cycle-nav div{
		position: fixed;
		height: 40px;
		max-width: 870px;
		width: 100%;
		bottom: 150px;
	}
	
	.GalleryContainerPage .galleries .cycle-nav a{
		max-width: 40px;
		width: 100%;
		height: 36px;
		display: block;
		text-indent: -100000px;
		position: absolute;
		right: -40px;
		z-index: 1000;
	}
	.GalleryContainerPage .galleries .cycle-nav a:hover{
		border: none !important;
	}
	.GalleryContainerPage .galleries .cycle-nav a.cycle-prev{
		background: url('../images/triangle_up.png') center center no-repeat;
		top: 0;
	}
	.GalleryContainerPage .galleries .cycle-nav a.cycle-next{
		background: url('../images/triangle_down.png') center center no-repeat;
		height: 35px;
		bottom: 0;
	}
	
	.GalleryContainerPage .gallery {
		display: inline-block;
		vertical-align: top;
		width: 190px;
		margin-right: 20px;
		margin-bottom: 15px;
		border: none !important;
		color: #213e7a;
		position: relative;
	}
	.GalleryContainerPage .gallery:hover {
		color: #213e7a;
	}
	
	
	.GalleryContainerPage .gallery-image {
		border: 1px solid #3a5388;
		border-radius: 8px;
		-webkit-border-radius: 8px;
		max-width: 180px;
		height: 140px;
		
		-webkit-box-shadow: 2px 2px 3px 1px #b4b4b5;
		box-shadow: 2px 2px 3px 1px #b4b4b5;
		overflow: hidden;
	}
	
	.GalleryContainerPage .gallery-image img{
		width: 100%;
		height: 100%;
	}
	
	.GalleryContainerPage .gallery .gallery-name {
		display: block;
		width: 100%;
		text-align: center;
		font-family: 'Arial', 'HelveticaNeue', sans-serif;
		font-weight: bold;
		font-size: 11px;
		text-transform: uppercase;
	}
	
	.GalleryContainerPage .gallery:hover .gallery-name span {
		position: relative;
	}
	.GalleryContainerPage .gallery:hover .gallery-name span:after{
		display: block;
		content: "";
		position: absolute;
		bottom: -7px;
		width: 100%;
		height: 2px;
		background: #a6d95b;
		border-top: 1px solid #c4e39f;
		-webkit-box-shadow: 2px 3px 3px 1px #dcddde;
		box-shadow: 2px 3px 3px 1px #dcddde;
	}
	
	.GalleryContainerPage .cycle-slideshow .slide{
		max-width: 870px;
		width: 100%;
	}
	
	/* Gallery Page */
	
	
	.GalleryPage .main  {
		padding-top: 60px;
	}
	
	.GalleryPage .main  .inner{
		padding:0;
		overflow: inherit;
	}
	
	.GalleryPage .content-container {
		position: relative;
		width: 100%;
	}
	
	.GalleryPage .close {
		display: block;
		width: 53px;
		height: 53px;
		position: absolute;
		top: 0;
		right: -60px;
		background: url('../images/close.png');
		text-indent: -10000px;
	}
	.GalleryPage .close:hover {
		border: none !important;
	}
	
	#gallery-slideshow {
		-webkit-box-shadow: 2px 2px 3px 1px #bfc6ca;
		box-shadow: 2px 2px 3px 1px #bfc6ca;
		min-height: 100px;
		max-width: 920px;
		height: 550px;
	}
	
	#gallery-slideshow .slide {
		position: relative;
		height: 100%;
		width: 100%;
	}
	
	#gallery-slideshow img{
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		margin: auto;
		position: absolute;
		max-width: 100%;
		max-height: 100%;
		width: auto;
		height: auto;
	}
	
	.gallery-carousel-wrapper {
		margin: 15px 0;
		padding: 0px 45px;
		background: #FFF;
		-webkit-box-shadow: 2px 2px 3px 1px #bfc6ca;
		box-shadow: 2px 2px 3px 1px #bfc6ca;
		position: relative;
		max-width: 920px;
		width: 100%;
		min-height: 89px;
		
		box-sizing: border-box;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
	}
	
	#gallery-carousel div.slide {
		display: inline;
		vertical-align: top;
		margin: 10px 5px;
		width: 91px;
		height: 70px;
		
		border: 1px solid #3a5388;
		border-radius: 8px;
		-webkit-border-radius: 8px;
		
		-webkit-box-shadow: 2px 2px 3px 1px #b4b4b5;
		box-shadow: 2px 2px 3px 1px #b4b4b5;
		overflow: hidden;
	}
	
	#gallery-carousel img {
		width: 100%;
		height: 100%;
	}
	#gallery-carousel .slide:hover {
		cursor: pointer;
		-webkit-box-shadow: 0 0 5px 1px #abb5cb, 2px 2px 3px 1px #b4b4b5;
		box-shadow: 0 0 5px 1px #abb5cb, 2px 2px 3px 1px #b4b4b5;
		
	}
	
	.GalleryPage  .cycle-nav a{
		width: 31px;
		height: 52px;
		display: block;
		text-indent: -100000px;
		position: absolute;
		z-index: 1000;
		top: 20px;
	}
	.GalleryPage  .cycle-nav a:hover{
		border: none !important;
	}
	.GalleryPage  .cycle-nav a.cycle-prev{
		background: url('../images/triangle_left.png');
		width: 30px;
		left: 5px;
	}
	.GalleryPage .cycle-nav a.cycle-next{
		background: url('../images/triangle_right.png');
		right: 5px;
	}
	
	.GalleryPage .footer {
		/*padding-top: 0;*/
	}
	
	.GalleryPage .footer .buttons {
		/* display: none;*/
	}
	
	/* Booking Page */
	
	.booking-popup {
		background: #213e7a;
		max-width: 440px;
		width: 100%;
		height: 265px;
		padding: 20px;
		position: fixed;
		z-index: 1000;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		margin: auto;
	}
	
	.booking-popup img {
		max-width: 195px;
	}
	
	.BookingPage .booking-popup.typography p {
		color: #FFF;
		font-size: 23px;
		line-height: 28px;
		margin: 30px 20px;
		margin-top: 30px;
		text-align: center;
	}
	
	.booking-popup a{
		display: block;
		background: #FFF;
		color: #213e7a;
		text-decoration: none;
		max-width: 75px;
		width: 100%;
		margin: 0 auto;
		text-align: center;
		font-size: 18px;
		padding: 3px 0;
	}
	.booking-popup a:hover {
		text-decoration: underline;
		border-bottom: none;
	}
	
	.BookingPage .typography  p {
		font-size: 12px;
		line-height: 15px;
	}
	
	.BookingPage .main {
		padding-top: 20px;
	}
	
	.BookingPage .main .inner {
		max-width: 920px;
	}
	
	.booking-form-wrapper {
		position: relative;
	}
	
	.booking-form-wrapper .content {
		max-width: 240px;
		width: 100%;
		position: absolute;
		left: 346px;
		top: 320px;
		top: 340px;
	}
	
	.BookingPage .enquiry-thanks {
		max-width: 240px;
		width: 100%;
		position: absolute;
		left: 346px;
		top: 285px;
		top: 305px;
		color: #F00;
	}
	
	.booking-form-wrapper .side-content p {
		font-size: 11px;
		line-height: 14px;
	}
	
	.booking-form-wrapper .side-content {
		max-width: 180px;
		width: 100%;
		float: left;
		background: #FFF;
		background: rgba(255, 255, 255, 0.7);
		padding: 10px;
		height: 530px;
	}
	
	.booking-form-wrapper .form-text {
		margin-bottom: 15px;
	}
	
	#BookingForm_BookingForm {
		font-size: 12px;
		max-width: 640px;
		width: 100%;
		position: relative;
		float: left;
		margin-right: 15px;
	}
	
	#BookingForm_BookingForm a{
		font-size: 13px; line-height: 15px; margin-bottom: 8px; text-transform: uppercase;
		display: inline-block;
	}
	#BookingForm_BookingForm a:hover{
		border-bottom: none;
		text-decoration: underline;
	}
	
	#BookingForm_BookingForm .col{
		max-width: 260px;
		width: 100%;
		float: left;
		height: 510px;
		padding: 20px;
		background: #FFF;
		background: rgba(255, 255, 255, 0.7);
	}
	
	#BookingForm_BookingForm .left-column {
		margin-right: 25px;
	}
	
	#BookingForm_BookingForm .right-column {
		
	}
	
	#BookingForm_BookingForm div.field {
		width: 260px;
		margin: 0;
		margin-bottom: 15px;
	}
	.form-text a{
	   
	    font-weight:normal !Important;
	}
	#BookingForm_BookingForm label{
		display: inline-block;
		max-width: 165px;
		width: 100%;
	}
	
	#BookingForm_BookingForm #Name label,
	#BookingForm_BookingForm #Email label,
	#BookingForm_BookingForm #Phone label{
		max-width: 105px;
		width: 100%;
	}
	#BookingForm_BookingForm #Comments label {
		max-width: 230px;
		width: 100%;
		margin-bottom: 10px;
	}
	
	#BookingForm_BookingForm .field .middleColumn{
		display: inline-block;
		
	}
	
	#BookingForm_BookingForm input[type=text], 
	#BookingForm_BookingForm input[type=email]{
		display: inline-block;
		max-width: 90px;
		width: 100%;
		height: 25px;
		font-size: 12px;
		
		box-sizing: border-box;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-webkit-box-shadow: 3px 3px 5px 1px rgba(0,0,0,0.2);
		box-shadow: 3px 3px 5px 1px rgba(0,0,0,0.2);
	}
	
	#BookingForm_BookingForm #Name input[type=text],
	#BookingForm_BookingForm #Email input[type=email],
	#BookingForm_BookingForm #Phone input[type=text]	{
		max-width: 150px;
		width: 100%;
	}
	
	#BookingForm_BookingForm #Comments {
		margin-bottom: 5px;
	}
	
	#BookingForm_BookingForm #Comments textarea	{
		max-width: 260px;
		width: 100%;
		height: 140px;
		
		box-sizing: border-box;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		-webkit-box-shadow: 3px 3px 5px 1px rgba(0,0,0,0.2);
		box-shadow: 3px 3px 5px 1px rgba(0,0,0,0.2);
	}
	
	#BookingForm_BookingForm select{
		display: inline-block;
		max-width: 90px;
		width: 100%;
		
		height: 25px;
		font-size: 12px;
		
		box-sizing: border-box;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-webkit-box-shadow: 3px 3px 5px 1px rgba(0,0,0,0.2);
		box-shadow: 3px 3px 5px 1px rgba(0,0,0,0.2);
		padding: 0;
	}
	
	#BookingForm_BookingForm .Actions {
		position: absolute;
		left: 515px;
		top: 273px;
	}
	
	#BookingForm_BookingForm .Actions input[type=submit] {
		border-radius: 0;
		-webkit-border-radius: 0;
		display: block;
		height: 25px;
		width: 85px;
		padding: 0;
		margin: 0;
		text-align: center;
		background: #213e7a;
		font-style: italic;
		color: #FFF;
		margin-top: 20px;
		font-size: 12px;
		font-family: 'ArialBlackRegular', sans-serif;
		font-weight: bold;
		-webkit-box-shadow:inset 5px 5px 6px -2px #909fbd, inset -5px -5px 6px -2px #162950, 4px 4px 4px 0 rgba(0, 0, 0, 0.2);
		box-shadow:inset 5px 5px 6px -2px #909fbd, inset -5px -5px 6px -2px #162950, 4px 4px 4px 0 rgba(0, 0, 0, 0.2);
	}
	
	
	
	#MyCaptcha {
		font-size: 11px;
		position: relative;
	}
	#MyCaptcha a {
		color: #000 !important;
	}
	#MyCaptcha a:hover {
		border: none;
		text-decoration: underline;
	}
	
	#MyCaptcha #recaptcha_image {
		width: 167px !important;
		height: 32px !important;
	}
	#MyCaptcha #recaptcha_image img{
		width: 167px !important;
	}
	
	#MyCaptcha #recaptcha_response_field {
		max-width: 167px;
		width: 100%;
		padding: 6px 5px;
		font-size: 11px;
		border: none;
		border: 1px solid #dad9d9;
		
		margin-top: 20px;
	}
	
	#MyCaptcha #recaptcha_image span {
		position: relative;
		top: -27px;
	}
	
	#MyCaptcha .recaptcha_only_if_image.enter-words {
		display: block;
		width: auto;
		left: 0;
		top: 33px;
	}
	
	#MyCaptcha .retryoptions,
	#MyCaptcha .recaptcha_only_if_image,
	#MyCaptcha .recaptcha_only_if_audio,
	#MyCaptcha .help{
		width: 25px;
		height: 25px;
		position: absolute;
		top: 1px;
	}
	#MyCaptcha .retryoptions a,
	#MyCaptcha .recaptcha_only_if_image a,
	#MyCaptcha .recaptcha_only_if_audio a,
	#MyCaptcha .help{
		width: 28px;
		height: 28px;
		display: block;
		text-indent: -100000px;
	}
	#MyCaptcha .retryoptions a:hover,
	#MyCaptcha .recaptcha_only_if_image a:hover,
	#MyCaptcha .recaptcha_only_if_audio a:hover,
	#MyCaptcha .help:hover{
		border: none;
	}
	
	#MyCaptcha .retryoptions {
		left: 174px;
	}
	#MyCaptcha .retryoptions a {
		background: url('../images/icon_new_captcha.png') center center no-repeat;
		background-size: 100%;
	}
	
	#MyCaptcha .recaptcha_only_if_image,
	#MyCaptcha .recaptcha_only_if_audio{
		left: 205px;
	}
	#MyCaptcha .recaptcha_only_if_image a,
	#MyCaptcha .recaptcha_only_if_audio a{
		background: url('../images/icon_audio.png') center center no-repeat;
		background-size: 100%;
	}
	
	#MyCaptcha span.recaptcha_only_if_image,
	#MyCaptcha span.recaptcha_only_if_audio{
		display: none;
	}
	
	#MyCaptcha .help {
		left: 236px;
		background: url('../images/icon_help.png') center center no-repeat;
		background-size: 100%;
	}
	
	#MyCaptcha .recaptcha_only_if_incorrect_sol {
		float: left;
	}
	
	
	/* Accommodation Page */
	
	.AccommodationPage .footer {
		position: relative;
	}
	
	.AccommodationPage .fake-footer {
		display: none;
	}
	
	.sidebar {
		position: relative;
	}
	
	.sidebar .button {
		position: absolute;
		bottom: 15px;
		left: 20px;
		right: 20px;
		margin: 0;
		padding: 4px 35px;
	}
	.sidebar .button:hover {
		border: none;
	}
	
	.AccommodationPage .buttons {
		display: none;
	}
	
	.quick-booking-wrapper {
		width: 100%;
		background: #213e7a;
		color: #FFF;
		margin-top: 20px;
		position: fixed;
		bottom: 94px;
		z-index: 10;
		-webkit-box-shadow:inset 0px 5px 6px -2px #909fbd, inset 0px -5px 6px -2px #162950, 4px 4px 4px 0 rgba(0, 0, 0, 0.2);
		box-shadow:inset 0px 5px 6px -2px #909fbd, inset 0px -5px 6px -2px #162950, 4px 4px 4px 0 rgba(0, 0, 0, 0.2);
		
		position: relative;
		bottom: auto;
	}
	
	.quick-booking-wrapper .inner {
		max-width: 575px;
		width: 100%;
		padding: 0;
	}
	
	.quick-booking-wrapper span {
		display: inline-block;
		vertical-align: top;
		line-height: 39px;
		text-transform: uppercase;
		font-family: 'ArialBlackRegular', sans-serif;
		font-style: italic;
		margin-right: 20px;
	}
	
	#Form_QuickBookingForm {
		display: inline-block;
		max-width: 420px;
		width: 100%;
	}
	
	#Form_QuickBookingForm fieldset {
		display: inline-block;
		padding-top: 8px;
	}
	
	#Form_QuickBookingForm .Actions {
		display: inline-block;
		margin: 0;
		vertical-align: top;
		padding: 10px 0;
	}
	
	#Form_QuickBookingForm .field{
		float: left;
		margin: 0;
	}
	
	#Form_QuickBookingForm label {
		display: inline-block;
		text-transform: uppercase;
		font-family: 'ArialBlackRegular', sans-serif;
		font-style: italic;
	}
	
	#Form_QuickBookingForm .middleColumn {
		display: inline-block;
	}
	
	#Form_QuickBookingForm input {
		width: 80px;
		height: 20px;
		font-size: 11px;
		color: #213e7a;
		
		box-sizing: border-box;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		border-radius: 3px;
		-webkit-border-radius: 3px;
		-webkit-box-shadow:inset -2px -2px 4px -1px #a8a8a8;
		box-shadow:inset -2px -2px 4px -1px #a8a8a8;
		
		margin-left: 5px;
		margin-right: 20px;
	}
	
	#Form_QuickBookingForm .Actions input{
		margin: 0;
		background: #FFF;
		width: 40px;
		padding:0;
		font-family: 'ArialBlackRegular', sans-serif;
		font-style: italic;
		
		-webkit-box-shadow:inset -2px -2px 4px -1px #a8a8a8;
		box-shadow:inset -2px -2px 4px -1px #a8a8a8;
	}
	
	

	/* Search Results */
	.typography .searchResults h1 {
		margin-bottom: 0;
		padding-bottom: 0;
		border-bottom: none;
	}
	.searchResults p.searchQuery {
	    margin-bottom: 10px;
	    font-size: 15px;
	    font-weight: bold;
	}
	.searchResults ul#SearchResults {
	    padding: 0;
	    border-bottom: 1px solid #e5e5e5;
	    margin:0;
	}
		.searchResults ul#SearchResults li {
		    border-top: 1px solid #e5e5e5;
		    padding: 20px 0;
		    list-style-type: none;
		}
		.searchResults ul#SearchResults p {
		    margin-bottom: 10px;
		}
		.searchResults #PageNumbers a {
		    padding: 0 5px;
		}
		.searchResults #PageNumbers .pagination {
		   	border-bottom: 1px solid #e5e5e5;
		    padding: 20px 0;
		    display:table; /* displays the pagination as a table so that elements stay inline and the middle column adjusts its size to accomodate and the right arrow stays to the right */
		    width:100%;
		}
		.searchResults #PageNumbers .pagination span{
			display:table-cell; /* each element in the pagination div displays as a table cell */
		}
		.searchResults #PageNumbers p {
		    text-align: center;
		    padding:20px 0;
		}
		.searchResults #PageNumbers .next,
		.searchResults #PageNumbers .prev {
		    font-size: 14px;
		    padding: 0 20px;
		    display:table-cell; /* each element in the pagination div displays as a table cell */
		    vertical-align: middle;
		    border-bottom:0 !important;
		}
		.searchResults #PageNumbers .next {
		    margin-left: 15px;
		}
		.searchResults #PageNumbers .prev {
		    margin-right: 15px;
		}

/* DEVICE & RESPONSIVE LAYOUT */
.header .nav-open-button {
    display: none; /* removes the nav toggle button for desktop site */
}
#media-query-trigger {
    /* instead of detecting the width of the window in simple/javascript/script.js it detects the visibility of this element (which is set using media queries) 
    instead to trigger the hiding/showing of nav and search in mobile mode */
    display: none;
    visibility: hidden;
}

/* BREAKPOINT 960px */

@media only screen and (max-width: 960px) {
	
	
	.content img {
	    max-width: 97%;
	    height: auto;
	}
	.header .primary ul {
	    margin-left: -12px;
	    -webkit-padding-start: 0px; /* removes default webkit padding on ul items */
	}
	
	.HomePage .main .inner {
		overflow: hidden;
	}
	
	.GalleryPage .close {
		top: -55px;
		right: 0;
	}

	.inner-footer {
		position: static;
		background: transparent;
	}

	.GalleryContainerPage .galleries .cycle-nav div {
		position: static;
	}
	
	.GalleryContainerPage .galleries .cycle-nav a{
		right: -20px;
	}
	
	.quick-booking-wrapper {
		position: static;
	}
	
	.fake-footer,
	.outer-fake-footer{
		display: none;
	}
	
	.bottom-footer {
		position: static;
	}
	
	.header .inner {
		padding: 10px 30px;
		padding-bottom: 0;
	}
	
	.main .sidebar {
		padding-bottom: 70px;
	}
	
	.google-map img {
		display: none;
	}
}

@media only screen and (max-width: 930px) {
	.BookingPage .main .inner {
		max-width: 690px;
	}
	
	.BookingPage .side-content {
		max-width: 605px;
		margin-top: 10px;
		-webkit-column-count: 3; /* Chrome, Safari, Opera */
		-moz-column-count: 3; /* Firefox */
		column-count: 3;
		height: auto;
	}
	
	.confirm-form, .confirm-right {
		width: 47%;
	}
	
	.confirm-form h2 img{
		float: none;
		display: block;
		margin-top: 10px;
	}
}

@media only screen and (max-width: 740px) { 
	.tagline {
		
	}
	
	.page-title {
		max-width: 200px;
	}
	
}

@media only screen and (max-width: 700px) { 

	
	
	#BookingForm_BookingForm .Actions {
		left: 190px;
		top: 732px;
		top: auto;
		bottom: 30px;
	}
	
	.booking-form-wrapper .content {
		/*left: 20px;
		top: 805px;*/
		position: static;
		clear: both;
		background: rgba(255, 255, 255, 0.7);
		width: 100%;
		padding: 0 20px;
		max-width: 260px;
		padding-bottom: 5px;
	}
	
	.booking-form-wrapper .enquiry-thanks {
		left: 20px;
		top: 760px;
	}
	
	#BookingForm_BookingForm .col {
		height: auto;
	}
	#BookingForm_BookingForm .left-column {
		padding-bottom: 0;
	}
	#BookingForm_BookingForm .right-column {
		padding-top: 0;
		height: 310px;
	}

	.booking-form-wrapper .side-content {
		max-width: 300px;
		padding: 20px;
		box-sizing: border-box;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
	}
	
	.BookingPage .side-content {
		margin-top: 00px;
		-webkit-column-count: 1; /* Chrome, Safari, Opera */
		-moz-column-count: 1; /* Firefox */
		column-count: 1;
	}
}

@media only screen and (max-width: 640px) { 
	.blue-header .inner .tagline {
		padding-top: 00px;
		padding-bottom: 10px;
		margin-right: 20px;
	}
	
	.confirm-form, .confirm-right {
		width: 100%;
		height: auto;
	}
	
	
	.confirm-form .explanation {
		margin: 10px auto;
	}
	
	.confirm-form .paystation {
		bottom: 0;
		right: auto !important;
		left: auto !important;
		position: relative;
		margin-top: 20px;
		
		display: block !important;
	}

	
	#Form_ConfirmationForm {
		position: relative;
		bottom: auto;
		height: auto;
	}
}

@media only screen and (max-width: 360px) { 

	body {
		background-size: auto;
		background-attachment: fixed;
		background-position: top center;
	}
	.body-bg {
		background-image: none !important;
	}
	
	.answers-container {
		display: none;
	}
}

@media only screen and (max-width: 340px) { 

	
	.brand {
		width: 100% !important;
		margin: 0 !important;
	}
	.brand img {
		width: 100% !important;
	}
	
	
	.tablet-nav .blue-header .primary .nav-open-button {
		top: 5px !important;
	}
	
	.tablet-nav .blue-header .primary div.mobile-social {
		top: 0 !important;
	}
	
	.BookingPage .main .inner{
		padding: 5px;
	}
	
	#BookingForm_BookingForm .col {
		margin: 0;
	}
}

.header .primary .nav-open-button { /* styling and positioning of the nav toggle button */
	z-index: 100;
	width: 20px;
	height: 20px;
	right: 20px;
	top: 50px;
	cursor: pointer;
	font-family: 'WebSymbolsRegular';
	font-size: 20px;
	color: #223f7b;
	
	
	float: right;
	margin-top: 10px;
	
}
.blue-header .primary .nav-open-button {
	color: #FFF;
	top: 105px;
	
	position: absolute;
}

.primary.mobileMenu ul {
	z-index: 10;
	position: relative;
	display: none; /* initially hiding the navigation */
	float: left;
	margin: 0;
	padding: 0;
	white-space: normal;
	width: 100%;
	display: none;
	left: 0;
	margin-top:20px;
}
	.primary.mobileMenu ul li {
		width: 100%;
		margin: 0;
		padding: 0;
		float: none; /* displays list items vertically */
		background: none;
		position: relative;
	}
	.primary.mobileMenu ul li:after,
	.primary.mobileMenu ul li:hover:after 			{ /* creates the arrow for the primary nav links */
		content: '\003e';
		display: block;
		position: absolute;
		right: 20px;
		top: 0px;
		font-family: 'WebSymbolsRegular';
		font-size: 14px;
		color: #223f7b;
		text-align: center;
		vertical-align: middle;
		line-height: 38px;
		background: transparent !important;
		height: auto !important;
		width: auto !important;
		border-top: none;
		box-shadow: none;
		-webkit-box-shadow: none;
		
	}
	.primary.mobileMenu .primary ul li:after,
	.primary.mobileMenu .primary ul li:hover:after  {
		color: #ededed;
	}
	
	.tablet-nav .header .primary.mobileMenu ul li a,
	.tablet-nav .header .primary.mobileMenu ul li.current a,
	.tablet-nav .header .primary.mobileMenu ul li.section a { /* styling the  top level nav links */
		padding: 10px 0 10px 22px;
		font-weight: bold;
		border-bottom: 1px solid #bbb;
		color: #434343;
		background: transparent;
		width: 100%;
		box-sizing: border-box;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
	}
	.tablet-nav .blue-header .primary.mobileMenu ul li a,
	.tablet-nav .blue-header .primary.mobileMenu ul li.current a,
	.tablet-nav .blue-header .primary.mobileMenu ul li.section a {
		color: #FFF;
	}
	
	.tablet-nav .header .primary.mobileMenu ul li:after,
	.tablet-nav .header .primary.mobileMenu ul li:hover:after 			{ /* creates the arrow for the primary nav links */
		content: '\003e';
		display: block;
		position: absolute;
		right: 20px;
		top: 0px;
		font-family: 'WebSymbolsRegular';
		font-size: 14px;
		color: #223f7b;
		text-align: center;
		vertical-align: middle;
		line-height: 38px;
		background: transparent !important;
		height: auto !important;
		width: auto !important;
		border-top: none;
		box-shadow: none;
		-webkit-box-shadow: none;
		
	}
	.tablet-nav .blue-header .primary.mobileMenu ul li:after,
	.tablet-nav .blue-header .primary.mobileMenu ul li:hover:after  {
		color: #ededed;
	}
	
	
	.tablet-nav .header .primary.mobileMenu div.mobile-social {
		display: block;
		top: 46px;
		right: 50px;
		z-index:100;
		float: right;
	}
	.tablet-nav .blue-header .primary.mobileMenu div.mobile-social {
		top: 100px;
		position: absolute;
	}
	
	.tablet-nav .header .primary.mobileMenu li.social {
		display: none;
	}	
	
	.rc-anchor-normal-footer
{
 margin-left: -40px;
}

.rc-anchor-normal .rc-anchor-pt 
{
    margin: 4px 13px 0 0;
    padding-right: 2px;
    position: absolute;
    right: 40px !important;
    text-align: right;
    width: 276px;
}


.rc-anchor-normal 
{
	
    width: 280px !important;
}

/* BREAKPOINT 640px */

/* when changing the breakpoint below, change it ito the same value in the script.js file as well */
@media only screen and (max-width: 640px) { 
	body {
	    max-width: 640px;
		background-size: auto;
	}
	#media-query-trigger {
	    visibility: visible;
	}
	
	
	.site-title {
		float: none;
		margin-left: 10px;
		margin-bottom: 10px;
	}
	
	.page-title {
		margin-left: 10px;
		margin-bottom:10px;
	}
	
	.above-slideshow {
		margin-bottom: 10px;
	}
	
	.slide-caption {
		display: none;
	}
	
	.main {
		padding-bottom: 5px !important;
	}
	
	
	.main .sidebar {
		height: auto !important;
		padding-bottom: 50px;
	}
	
	/* Accommodation Page */
	
	/* FAQ page */
	
	.answers-container {
		margin: 0;
		height: auto;
		max-height: 370px;
	}
	
	.questions-container {
		margin-right: 0;
	}

	/* Navigation*/

	.tablet-nav .header .brand {
	    float: none;
	    display: inline-block;
	    margin-left: 22px;
	    margin-bottom: 22px;
	}
		.brand h1 {
		    font-size: 40px;
		}
		.brand h1 {
		    padding-right: 100px; /* padding stops .brand text from overlapping the search and nav buttons */
		}
	.tablet-nav .header {
	    padding: 0px;
	}
	
		.tablet-nav .header .inner {
		    padding: 20px 0 0 0;
		    min-height: 0;
		}
		.tablet-nav .header .primary .nav-open-button { /* styling and positioning of the nav toggle button */
		    display: block;
		    position: absolute;
		}
		
		.tablet-nav .header .primary ul {
		    z-index: 10;
		    position: relative;
		    display: none; /* initially hiding the navigation */
		    float: left;
		    margin: 0;
		    padding: 0;
		    white-space: normal;
		    width: 100%;
			margin-top: 0;
		}
			.tablet-nav .header .primary ul li {
			    width: 100%;
			    margin: 0;
			    padding: 0;
			    float: none; /* displays list items vertically */
			    background: none;
			    position: relative;
			}
			.tablet-nav .header .primary ul li:after,
			.tablet-nav .header .primary ul li:hover:after 			{ /* creates the arrow for the primary nav links */
			    content: '\003e';
			    display: block;
			    position: absolute;
			    right: 20px;
			    top: 0px;
			    font-family: 'WebSymbolsRegular';
			    font-size: 14px;
			    color: #223f7b;
			    text-align: center;
			    vertical-align: middle;
			    line-height: 38px;
				background: transparent !important;
				height: auto !important;
				width: auto !important;
				border-top: none;
				box-shadow: none;
				-webkit-box-shadow: none;
				
			}
			.tablet-nav .blue-header .primary ul li:after,
			.tablet-nav .blue-header .primary ul li:hover:after  {
				color: #ededed;
			}
			
			.tablet-nav .header .primary div.mobile-social {
				display: block;
				top: 46px;
				position: absolute;
				right: 50px;
				z-index:100;
			}
			.tablet-nav .blue-header .primary div.mobile-social {
				top: 100px;
			}
			
			.tablet-nav .header .primary li.social {
				display: none;
			}	
			.tablet-nav .header .primary ul li a,
			.tablet-nav .header .primary ul li.current a,
			.tablet-nav .header .primary ul li.section a { /* styling the  top level nav links */
			    padding: 10px 0 10px 22px;
			    font-weight: bold;
			    border-bottom: 1px solid #bbb;
			    color: #434343;
			    background: transparent;
				width: 100%;
				box-sizing: border-box;
				-webkit-box-sizing: border-box;
				-moz-box-sizing: border-box;
			}
			.tablet-nav .blue-header .primary ul li a,
			.tablet-nav .blue-header .primary ul li.current a,
			.tablet-nav .blue-header .primary ul li.section a {
				color: #FFF;
			}
			.tablet-nav .header .primary ul li.current a,
			.tablet-nav .header .primary ul li.section a {
				background: #223F7A; /* makes background on current top level page slightly darker */
				color: #FFF;
			}
			.tablet-nav .blue-header .primary ul li.current a,
			.tablet-nav .blue-header .primary ul li.section a {
				background: #FFF; 
				color: #223F7A;
			}
			.tablet-nav .header .primary ul li a:hover {
			    color: inherit;
			}
			.tablet-nav .header .primary li.section:after,
			.tablet-nav .header .primary li.current:after {
			    display: none; /* hides the link arrow on current top level page */
			}
			.tablet-nav .tablet-nav .header nav.primary ul li {
				padding: 0;
			}

	/* Search Form */
	.search-bar { /* adds new styling to mobile search bar */
	    width: 100%;
	    position: relative;
	    top: 0;
	    right: 0;
	    display: none; /* hides searchbar initially */
	    padding: 20px 0;
	    margin: 0;
	    background-color: #E7E7E7;
	}
	.search-dropdown-icon { /* styling for search toggle button */
	    display: block;
	    cursor: pointer;
	    width: 20px;
	    height: 20px;
	    position: absolute;
	    right: 60px;
	    top: 34px;
	    font-family: 'WebSymbolsRegular';
	    font-size: 20px;
	    color: #ededed;
	    text-align: center;
	    line-height: 20px;
	}
	.search-bar form {
	    margin: 0;
	    width: 100%;
	}
		.search-bar form fieldset {
		    padding: 0 18px;
		    left: 0;
		    right: 0;
		    position: relative;
		}
	.search-bar div.field {
	    margin-bottom: 0;
	}
	.search-bar form input.text {
	    width: 89%; /* makes search input full width - allowing for space either side */
	    max-width: 89%;
	    padding: 8px 10% 8px 1%;
	    text-indent: 15px;
	    position: relative;
	    display: block;
	    right: 0;
	    left: 0;
	    border: 1px solid #e5e5e5;
	    background: #fff;
	    font-size: 17px;
	    -moz-border-radius: 20px; /* increase border radius due to increased padding */
		border-radius: 20px;
	}
	.search-bar form input.action {
	    right: 5%;
	    top: 2px;
	    font-size: 18px;
	}

	/* Main Content */
	.main {
	    padding: 20px 0 45px; /* decrease padding so that more content can fit on screen */
	}
	.content-container,
	.sidebar {
	    width: 100%; /* sidenav is now shown above the page content */
	    
	}
		.typography h1 { /* decrease size of page heading due to smaller screen */
		    font-size: 30px;
			line-height:35px;
		    margin-bottom: 15px;
		    padding-bottom: 10px;
		}
		.typography p {
			/*
		    font-size: 14px;
		    line-height: 23px;*/
		}
	p.intro {
	    font-size: 19px;
	    line-height: 27px;
	}
	.main .inner {
	    padding: 0 22px;
	}
	/* Secondry Nav */
	.secondary li a {
	    line-height: 24px;
	}
	.secondary li .arrow {
	    line-height: 26px;
	}
	/* Footer */
	.footer .inner {
	    
		padding: 5px;
		text-align: center;
	}
	
	.button.last {
		margin-right: 15px;
	}
}

/* Print Styles */

/* Based on HTML5 boilerplate print styles */
@media print {
	* {
	    background: transparent !important;
	    color: black !important;
	    box-shadow: none !important;
	    text-shadow: none !important;
	    filter: none !important;
	    -ms-filter: none !important;
	}
	a,
	a:visited {
	    text-decoration: underline
	}
	a[href]:after {
        content: " (" attr(href) ")";
    }
    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    /*
     * Don't show links for images, or javascript/internal links
     */

    .ir a:after,
    a[href^="javascript:"]:after,
    a[href^="#"]:after {
        content: "";
    }

	thead {
	    display: table-header-group
	}
	tr,
	img {
	    page-break-inside: avoid
	}
	img {
	    max-width: 100% !important
	}
	pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }
    @page {
        margin: 0.5cm;
    }
    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }

    /* Simple theme custom print styles */
	.header,
	.footer,
    .nav-open-button,
    .search-bar,
    .search-dropdown-icon,
    nav.primary {
	    display: none;
	}
}