/****************************************************************************************
	[SITE STRUCTURE]
*****************************************************************************************/

/* [WRAPPER]
-------------------------------------------------------*/
#wrapper {width: 100%;}

#header,
#content-wrapper,
#footer {
	margin: 0 auto;
	width: 964px;	
}

p.title a:hover, p.title a:active, p.title a:active, p.title a {
    background: none !important;
}

/* [HEADER]
-------------------------------------------------------*/
#header {
	height: 110px;
	overflow: hidden;
}
	#logo {
		float: left;
		margin-top: 30px;	
	}
	#logo-alt {display: none;}
	#ancillary {float: right;}
		#ancillary p {
			margin: 25px 0 15px;
			text-align: right;
		}
			#ancillary a,
			#sidebar h3 a {
				display: inline-block;
				height: 26px;
				margin-left: 4px;
				width: 27px;	
			}
			#ancillary a.twitter,
			#sidebar h3 a.twitter {background-position: -1px 0;}
			#ancillary a.facebook,
			#sidebar h3 a.facebook {background-position: -35px 0;}
			#ancillary a.email,
			#sidebar h3 a.email {background-position: -69px 0;}
	
/* [MAIN CONTENT AREA]
-------------------------------------------------------*/
#content-wrapper {
	background: #fff;
	color: #4d4d4d;
	clear: both;
	font-size: 1.2em; /* 12px */
	margin: 30px auto 10px;
	min-height: 900px;
}
	/* Main Content */
	#content-main {
		float: left;
		padding: 10px;
		width: 944px;
	}
	
	/* Secondary Content */
	#breadcrumb {
		margin-bottom: 20px;
		overflow: hidden;
	}
		#breadcrumb h1 {
			float: left;
			margin: 10px 0 0;
		}
		#breadcrumb p {
			font-size: .9em;
			margin: 0;
		}
		#filter {
			float: right;
			margin-top: 10px;
		}
	#sidebar {
		float: left;
		margin-right: 9px;
		padding: 10px;
		width: 295px;
	}
		#sidebar h3 {
			border-bottom: 1px solid #a9a9a9;
			color: #34b3c1;
			font-size: 1.2em;
			margin-bottom: 1em;
			padding: .35em 0;
			position: relative;
			text-transform: uppercase;	
		}
			#sidebar h3 a {
				margin-left: 0;
				position: absolute;
				right: 0;
				top: 0;	
			}
				/*#sidebar h3 a.twitter {right: 70px;}
				#sidebar h3 a.facebook {right: 35px;}*/
				#sidebar h3 a.addthis_button_tweet {right: 160px; top: 4px; background: none;}
				#sidebar h3 a.addthis_button_facebook_like {right: 75px; top: 4px; background: none;}
		#sidebar h4 {
			font-size: 1.5em;
			margin-bottom: .8em;
		}
		#map {width: 90%;}
			#map a {font-weight: bold;}
			#map p {margin-bottom: .75em;}
			#map strong {color: #000;}
			#location {
				height: 295px;
				margin-top: 2em;
				width: 295px;
			}
		#contact {
			list-style: none;
			margin: 0 0 2em;	
		}
			#contact li {overflow: hidden;}
				#contact li#contact-address {padding: .75em 0;}
					#contact li#contact-address span {width: 45%;}
			#contact span,
			#contact strong {
				color: #000;
				display: inline-block;
				float: left;	
				width: 25%;
			}
			#contact span {
				color: #4d4d4d;
				width: 75%;
			}

/* [FOOTER]
-------------------------------------------------------*/
#footer {
	font-size: 1em;
	overflow: hidden;
	text-align: right;
	text-transform: uppercase;
	position: relative
}
	#footer a,
	#footer a:visited {color: #fff;}
	#footer #foot-contact {float: left;}
	#footer ul {
		position: absolute; 
		list-style: none; 
		margin: 0;
		text-align: left;
		top: 0;
		left: -8px
	}
		#footer li {
			float: left;
			margin-right: 8px;
			background: url(../images/template/bg-sep.gif) 0 4px no-repeat;
			padding-left: 8px
		}
	#footer div {
		border-top: 1px solid #999;
		float: left;
		padding: 15px 0;
		width: 100%;
		overflow: hidden;
	}
		#footer div ul {
			float: left;
			position: static;
			margin: 0;
			padding: 0;
			width: 12.5%;
		}
			#footer div ul li {
				background: none;
				float: none;
				display: block;
				padding: 0 0 .2em;
			}
				#footer div ul li strong {
					display: block;
					font-weight: normal;
					margin-bottom: .8em;
				}
					#footer div ul li strong a {text-transform: uppercase;}
				#footer div ul li a {
					font-size: 10px;
					color: #999;
					letter-spacing: -.01em;
					line-height: 1.2;
					text-transform: none;
				}
			
/****************************************************************************************
	[PAGE SPECIFIC]
*****************************************************************************************/

#likebox-wrapper {
    width: 316px;
    text-align: center;
    background: #fff 0 0 repeat-x url('../images/template/bg-facebook-long.gif');
    border-right: 0 none;
    height: 400px;
    padding: 59px 0 0;
    float: left;
}

#promo-one {
    width: 314px;
    float: right;
    height: 459px;
    background-color: #fff;
}

#promo-two {
    width: 314px;
    float: right;
    height: 459px;
    background-color: #fff;
    margin-right: 10px;
}

    #likebox-wrapper iframe {
        display: block;
        margin: 0 auto;
    }

    #likebox-wrapper iframe {
        display: block;
        margin: 0 auto;
    }



.flex-grid {
    display: flex;
}

.col {
    flex: 1;
    background-color: #fff;
    margin: 1px;
}



.flex-grid-thirds {
    display: flex;
    justify-content: space-between;
}

    .flex-grid-thirds .col {
        width: 328px;
        height: 218px;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
        filter: alpha(opacity=80);
        -moz-opacity: 0.8;
        -khtml-opacity: 0.8;
        opacity: 0.8;
        overflow: hidden;
        position: relative;
    }

        .flex-grid-thirds .col:hover {
            -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
            filter: alpha(opacity=100);
            -moz-opacity: 1;
            -khtml-opacity: 1;
            opacity: 1;
            text-decoration: none;
        }

        .flex-grid-thirds .col img {
            position: absolute;
            margin: auto;
            min-height: 100%;
            min-width: 100%;
            /* For the following settings we set 100%, but it can be higher if needed 
    See the answer's update */
            left: -100%;
            right: -100%;
            top: -100%;
            bottom: -100%;
        }

            .upcoming-events{
        width: 100%;
        background-color: #34b3c1;
        padding-top: 10px;
        padding-bottom: 10px;
        
    }
        .upcoming-events h2 {
            color: #fff;
            padding-left: 20px;
            margin-bottom: 0px;
        }

.event-overlay {
    position: relative;
    top: 125px;
    background-color: #000;
    color: #fff;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
    filter: alpha(opacity=50);
    -moz-opacity: 0.5;
    -khtml-opacity: 0.5;
    opacity: 0.5;
    height: 100px;
}

    .event-content {
        position: relative;
        top: 25px;
        color: #fff;
        padding: 5px;
    }

        .event-content h2 {
            color: #fff;
        }

        .event-content p.date{
            font-size: 0.9em;
        }


body.all #content-wrapper,
body.home #content-wrapper {min-height: 0;}
body.home #content-wrapper {
	background: transparent;
	margin-top: 0;
	margin-bottom: 5px;
	position: relative;
	top: -5px;
}
	body.home #content-main {
		padding: 0;
		width: 964px;
	}
		
	body.home #sidebar {display: none;}
	body.home #banner {
		background: #000 50% 50% no-repeat url('../images/pre-loaders/loader2.gif');
		height: 300px !important;
		margin-bottom: 10px;
		min-height: 0;
		overflow: hidden;
		width: 964px !important;
	}
        body.home #banner img {
            display: none;
            height: 300px !important;
            width: 964px !important;
        }
body.panel #content-wrapper {background: #fff 0 0 repeat-y url('../images/template/bg-content-panel.gif');}
	body.panel #content-main,
	body.panel.events #breadcrumb,
	body.panel.events .pagination {width: 620px;}
body.events #content-wrapper {min-height: 0;}
	body.events #content-main {
		overflow: hidden;
		padding: 0;
		width: 964px;	
	}
	body.panel.events #content-main {position: relative; width: 640px;}
	body.panel.events #event-list.structured-list {width: 650px;}
		#event-list.structured-list {width: 975px; margin-bottom: 10px !important;}
		body.events #breadcrumb {
			margin-bottom: 0;
			padding: 10px;
			width: 945px;
		}		

/****************************************************************************************
	[GLOBAL RULES]
*****************************************************************************************/

/* [HIDE]
-------------------------------------------------------*/
.hide, legend span {
	position: absolute;
	left: -9999em;
	width: 1px;
	height: 1px;
	overflow: hidden;
}
.hide-fully {display: none;}
	
/* [EASY CLEARING]
-------------------------------------------------------*/
.clearfix:after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
}

/****************************************************************************************
	[MAIN CONTENT COMPONENTS]
*****************************************************************************************/
#banner {
	background: #c2c2c2;
	margin-bottom: 15px;
	min-height: 415px;
}
#booking-details {display: none;}

/* [SPRITES]
-------------------------------------------------------*/
#ancillary a,
#sidebar h3 a {background: transparent 0 0 no-repeat url('../images/template/sprite-social.png');}
#ancillary a.addthis_button {
	background: none;
	width: auto;
	height: auto;
	position: relative;
	top: -4px;
}

/* [MISC]
-------------------------------------------------------*/
/* Margins */
.margin-on {margin-bottom: 1.83em;}
.margin-med {margin-bottom: 0.91em;}
.margin-off {margin-bottom: 0;}
/* Text alignment */
.txt-center {text-align: center;}
.txt-right {text-align: right;}
.txt-left {text-align: left;}
/* Vertical aligment */
.v-btm {vertical-align: bottom;}
.v-mdle {vertical-align: middle;}
.v-top {vertical-align: top;}
/* Font size */
.txt-sml {font-size: .91em;} /* 11px */
.txt-lrge {font-size: 1.08em;} /* 13px */
/* Misc */
.col-left {float: left; margin-right: 10px; width: 49%;}
.col-right {float: right; width: 49%;}
.required {
	position: relative;
	top: -3px;
}

/* [DOCUMENT DOWNLOAD LINK]
-------------------------------------------------------*/
a[title="Link opens in a new window"] img {vertical-align: middle;}

/* [FEEDBACK]
-------------------------------------------------------*/
/* --SMALL FEEDBACK-- */ 
.feedback-sml {padding: .41em 10px .41em 30px; background-repeat: no-repeat; background-position: 8px 55%; border-radius: 3px; -moz-border-radius: 3px; -webkit-border-radius: 3px;}
/* Error */
.feedback-sml.error {color: #ae0000; background-color: #fbeeee; background-image: url("../images/icons/feedback/error.gif");}
/* Success */
.feedback-sml.success {color: #5a730f; background-color: #f3f8e6; background-image: url("../images/icons/feedback/success.gif");}
/* Info */
.feedback-sml.info {color: #0b3a70; background-color: #f3f7fc; background-image: url("../images/icons/feedback/info.gif");}
/* Alert */
.feedback-sml.alert {color: #9d6101; background-color: #fbf9cc; background-image: url("../images/icons/feedback/alert.gif");}

/* --LARGE FEEDBACK-- */ 
.feedback {padding: 1.3em 20px 1.3em 62px; margin-bottom: 1.83em; min-height: 24px; background-repeat: no-repeat; background-position: 16px 12px; border-radius: 3px; -moz-border-radius: 3px; -webkit-border-radius: 3px;}
/* Error */
.feedback.error {background-color: #fbeeee; background-image: url("../images/icons/feedback/error-lrge.gif"); color: #ae0000;}
/* Success */
.feedback.success {background-color: #f3f8e6; background-image: url("../images/icons/feedback/success-lrge.gif"); color: #5a730f;}
/* Info */
.feedback.info {background-color: #f3f7fc; background-image: url("../images/icons/feedback/info-lrge.gif"); color: #0b3a70;}
/* alert */
.feedback.alert {background-color: #fbf9cc; background-image: url("../images/icons/feedback/alert-lrge.gif"); color: #9d6101;}
	/* Child Elements */
	.feedback p {margin: 0; font-weight: bold;}
	.feedback ul {margin: .6em 0 0 2.6em; list-style: disc;}
		.feedback ul li {background: none; padding-left: 0; list-style: disc;}
	.feedback a:link, .feedback a:visited, .feedback-sml a:link, .feedback-sml a:visited {text-decoration: underline;}
	.feedback a:hover, .feedback a:focus, .feedback-sml a:hover, .feedback-sml a:focus {text-decoration: none;}
	.feedback.error a:link, .feedback.error a:visited, .feedback.error h1, .feedback.error h2, .feedback.error h3, .feedback-sml.error a:link, .feedback-sml.error a:visited {color: #ae0000;}
	.feedback.success a:link, .feedback.success a:visited, .feedback.success h1, .feedback.success h2, .feedback.success h3, .feedback-sml.success a:link, .feedback-sml.success a:visited {color: #5a730f;}
	.feedback.info a:link, .feedback.info a:visited, .feedback.info h1, .feedback.info h2, .feedback.info h3, .feedback-sml.info a:link, .feedback-sml.info a:visited {color: #0b3a70;}
	.feedback.alert a:link, .feedback.alert a:visited, .feedback.alert h1, .feedback.alert h2, .feedback.alert h3, .feedback-sml.alert a:link, .feedback-sml.alert a:visited {color: #9d6101;}

/* [GENERIC STRUCTURED LIST]
-------------------------------------------------------*/
.structured-list {
	margin: 0 0 1.83em;
	list-style: none;
	float: left;
	width: 100%;
	border-top: 1px solid #7A7A7A;
}
	.structured-list li {
		padding: 1.16em 0;
		border-bottom: 1px solid #7A7A7A;
		float: left;
		width: 100%;
	}
		.structured-list p {margin: 0;}
		.structured-list p.date {margin-bottom: .2em;}
		.structured-list h2 {
			font-size: 1.16em;
			margin-bottom: .4em;
		}
		/* With Thumbnail */
		.structured-list img {float: left;}
		.structured-list li.img h2,
		.structured-list li.img p,
		.structured-list li.img div.wysiwyg {margin-left: 155px;}
		/* When WYSIWYG's are used */
		.structured-list li div.wysiwyg li,
		.structured-list li div.wysiwyg img {
			padding: 0;
			border: none;
			margin: 0;
			float: none;
			width: auto;
		}
		.structured-list li div.wysiwyg h2,
		.structured-list li div.wysiwyg p {margin: 0 0 .4em 0;}

body.home #event-list.structured-list li{
    min-height: 340px;
}

#event-list.structured-list {
	border: 0 none;
	margin: 0;
}

	#event-list.structured-list li {
		background: #fff;
		border-top: 9px solid #000;
		border-right: 9px solid #000;
		border-bottom: 0 none;
		min-height: 411px;
		padding: 11px;
		position: relative;
		width: 294px;
	}
		#event-list.structured-list li.last {
			border-right: 0 none;
			padding-right: 10px;
		}
		#event-list.structured-list li.first-row {padding-top: 0;}
		#event-list.structured-list li.last-row {border-bottom: 0 none;}
		#event-list.structured-list li h2,
		#event-list.structured-list li p {margin-left: 0;}
		#event-list.structured-list li img {
			display: block;
			float: none;	
			height: 196px !important;
			width: 294px !important;
		}
		#event-list.structured-list li#promo img {
			width: auto !important;
			height: auto !important;
		}
		#event-list.structured-list li h2 {
			font-size: 1.5em;
			margin: .5em 0 .1em;
		}		
		#event-list.structured-list li p.date {
			color: #000;
			font-weight: bold;
			margin-bottom: .5em;	
		}
		#event-list.structured-list li p.more {text-align: right;}
		#event-list.structured-list li ul {
			height: 354px;
			list-style: none;
			margin: 0;	
			overflow: hidden;
			width: 357px;
		}
			#event-list.structured-list li ul li,
			body.home #event-list.structured-list li ul li,
			#event-list.structured-list li ol li,
			body.home #event-list.structured-list li ol li {
				background: transparent;
				border: 0 none;
				float: left;
				height: auto;
				margin: 0;
				min-height: 0;
				padding: 0;
				width: auto;
			}
				#event-list.structured-list li ul li img {
					height: 240px !important;
					width: 357px !important;	
				}
				#event-list.structured-list li ol {
					background: transparent 0 0 repeat url('../images/template/bg-rotator-nav.png');
					font-size: 1.25em;
					font-weight: bold;
					height: 23px;
					left: 11px;
					list-style: none;
					margin: 0;
					padding: 5px 10px;
					position: absolute;
					top: 250px;
					z-index: 100;
					width: 337px;
				}
					#event-list.structured-list li ol li,
					body.home #event-list.structured-list li ol li {margin-right: 8px;}
						#event-list.structured-list li ol li a,
						#event-list.structured-list li ol li a:visited {color: #fff;}
						#event-list.structured-list li ol li.activeSlide a,
						#event-list.structured-list li ol li.activeSlide a:visited,
						#event-list.structured-list li ol li a:hover,
						#event-list.structured-list li ol li a:focus {
							color: #888;
							text-decoration: none;
						}


/* [BLOGS]
-------------------------------------------------------*/
a.rss {
	background: url("../images/template/rss.png") no-repeat 0 0;
	width: 27px;
	height: 27px;	
	display: block;
	float: right;
	overflow: hidden;
	text-indent: -999em;
	margin-top: -45px;
}

/* [GOOGLE MAP]
-------------------------------------------------------*/
.map-wrapper {
	width: 300px;
	height: 250px;
	overflow: hidden;
	position: relative;
	margin-bottom: 1.83em;
}
/* Small Map */
.map-wrapper.sml {
	width: 200px;
	height: 150px;
}
/* Large Map */
.map-wrapper.lrge {
	width: 500px;
	height: 400px;
}
	.map-shadow {
		position: absolute;
		display: block;
		left: 0;
		top: 0;
		width: 6px;
		height: 100%;
		background: url("../images/template/map-shadow-l.png") repeat-y 0 0;
	}
	.map-shadow.top {
		width: 100%;
		height: 6px;
		background: url("../images/template/map-shadow-t.png") repeat-x 0 0;
	}

/* [CMS MODULES]
-------------------------------------------------------*/
/* --Search Results-- */
#search-results h3 {margin-bottom: .4em;}
	#search-results h3 a img {
		margin-right: 5px;
		vertical-align: middle;
	}
#search-results p {margin: 0;}
	#search-results p em {
		background-color: #ffff99;
		font-style: normal;
	}

/* --Image Library-- */
#img-lib {
	margin-left: 0;
	list-style: none;
	width: 672px;
}
	#img-lib li {
		float: left;
		width: 168px;
		position: relative;
	}
	/* Separator - clears a row */
	#img-lib li.separator {
		width: 672px;
		height: 5px;
		clear: both;
		display: block;
		float: none;
		line-height: 0;
		font-size: 0;
		overflow: hidden;
	}
		/* Caption */
		#img-lib p {
			padding: .41em .83em;
			text-align: center;
			margin: 0;
		}
		/* Thumbnail */
		#img-lib div {
			text-align: center;
			width: 168px;
			height: 130px;
			display: table-cell;
			vertical-align: middle;
			overflow: hidden;
		}
		#img-lib div * {vertical-align: middle;}
			#img-lib div a img {
				border: 2px solid #CECECE;
				max-width: 130px;
				max-height: 110px;
			}
			#img-lib div a:hover img, #img-lib div a:focus img {
				border-color: #CD5A13;
				box-shadow: 1px 1px 5px #666;
				-moz-box-shadow: 1px 1px 5px #666;
				-webkit-box-shadow: 1px 1px 5px #666;
			}

/* --Doc Library-- */
#doc-lib li {margin-bottom: .8em;}
	#doc-lib img {
		vertical-align: middle;
		margin-right: .2em;
	}
	#doc-lib a {font-weight: bold;}
	#doc-lib em {
		display: block;
		padding: .16em 0 0 1.66em;
	}
	
	
/* [REVIEWS]
-------------------------------------------------------*/
/* Ratings Stars */
.form-column .rating li {
	float: left;
	padding-bottom: 0;
}
.rating .rating-cancel,
.rating .star {
	width: 18px;
	height: 16px;
	text-indent: -9999em;
	overflow: hidden;
}
	.rating a {
		display: block;
		float: left;
		width: 16px;
		height: 16px;
		text-decoration: none;
	}
	.rating .star a,
	#rating-average .star {background: url('../images/icons/rating-star.gif') no-repeat 0 0;}
	.rating .star-on a,
	#rating-average .star-on {background-position: 0 -16px;}
	.rating .star-hover a,
	.rating .star-live a:hover,
	.rating .star-live a:focus {background-position: 0 -32px;}
	.rating .rating-cancel a {background: url('../images/icons/rating-delete.gif') no-repeat 0 0;}
	.rating .rating-cancel a:hover {background: url('../images/icons/rating-delete.gif') no-repeat 0 -16px;}
/* Previous Reviews */
#review-listings {
	margin: 0 0 1em;
	overflow: hidden;
	list-style: none;
}
	#review-listings li {
		margin-bottom: .5em; 
		width: 100%;
		float: left;
	}
		#review-listings p {margin: 0;}
		/* Author/Timestamp */
		#review-listings .datetime-author {
			padding: 10px 20px 2px 0;

			background: url("../images/template/comments-bg.gif") no-repeat 100% 18px;
		}
			#review-listings .datetime-author cite {
				font-weight: bold;
				font-style: normal;
			}
			#review-listings .datetime-author span {
				display: block;
				font-size: .91em;
				color: #888;
			}
		/* Comments */
		#review-listings blockquote {
			padding: 1em 1.5em;
			background-color: #f8f8f8;
			margin: 0;
			border: 1px solid #f2f2f2;
			color: #666;
		}
	
	
/*
 * CSS Styles that are needed by jScrollPane for it to operate correctly.
 *
 * Include this stylesheet in your site or copy and paste the styles below into your stylesheet - jScrollPane
 * may not operate correctly without them.
 */

.jspContainer
{
	overflow: hidden;
	position: relative;
}

.jspPane
{
	position: absolute;
}

.jspVerticalBar
{
	position: absolute;
	top: 0;
	right: 3px;
	width: 4px;
	height: 100%;
}

.jspHorizontalBar
{
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 16px;
	background: red;
}

.jspVerticalBar *,
.jspHorizontalBar *
{
	margin: 0;
	padding: 0;
}

.jspCap
{
	display: none;
}

.jspHorizontalBar .jspCap
{
	float: left;
}

.jspTrack
{
	background: #c8c8ca;
	position: relative;
	width: 4px;
}

.jspDrag
{
	background: #939498;
	position: relative;
	top: 0;
	left: -3px;
	cursor: pointer;
	width: 10px
}

.jspHorizontalBar .jspTrack,
.jspHorizontalBar .jspDrag
{
	float: left;
	height: 100%;
}

.jspArrow
{
	background: #50506d;
	text-indent: -20000px;
	display: block;
	cursor: pointer;
}

.jspArrow.jspDisabled
{
	cursor: default;
	background: #80808d;
}

.jspVerticalBar .jspArrow
{
	height: 16px;
}

.jspHorizontalBar .jspArrow
{
	width: 16px;
	float: left;
	height: 100%;
}

.jspVerticalBar .jspArrow:focus
{
	outline: none;
}

.jspCorner
{
	background: #eeeef4;
	float: left;
	height: 100%;
}

/* Yuk! CSS Hack for IE6 3 pixel bug :( */
* html .jspCorner
{
	margin: 0 -3px 0 0;
}