/*
	(c)2017 - visuallizard.com

	General styles.
	Template, view, plugin and element specific, etc.
	
	Colours:
	Lt. Gray - rgba(141,18,83,1)
	************************************
	Attractions Orange - rgba(235,90,30,1)
	Food & Drink Yellow - rgba(252,182,47,1)
	About Sage - rgba(126,172,172,1)
	Target Zero Green - rgba(0,103,71,1)
	Shops Navy - rgba(0,70,119,1)
	Events Red - rgba(171,19,30,1)
	Business Blue - rgba(0,121,196,1)
	Support Purple - rgba(141,18,83,1)
	
*/
/* !development styles - disable these for launch */
.highlight { background: #f2ff00; }

/* !mobile menu styles */
.mobile-menu-toggle {
	display: block;
	position: absolute;
	top: 30px;
	right: 0;
	z-index: 1;
	width: 50px;
	min-height: 14px;
	padding: 0 10px;
	margin: 0;
}
	.mobile-menu-toggle:before {
		content: "";
		display: block;
		position: absolute;
		left: 10px;
		width: 30px;
		height: 3px;
		border-top: 9px double #000;
		border-bottom: 9px double #000;
	}
	nav.orange .mobile-menu-toggle:before,
	nav.blue .mobile-menu-toggle:before,
	nav.green .mobile-menu-toggle:before,
	nav.red .mobile-menu-toggle:before,
	nav.ltblue .mobile-menu-toggle:before,
	nav.purple .mobile-menu-toggle:before,
	nav.sage .mobile-menu-toggle:before,
	nav.dkgray .mobile-menu-toggle:before { border-top: 9px double #fff; border-bottom: 9px double #fff; }

/* !general styles */
.container img { max-width: 100%; height: auto; }
.img_left,
.img_right {
	display: block;
	position: relative;
	max-width: 50%;
	padding: 0;
	margin: 0;
}
.img_left { float: left; padding: 0 2% 2% 0; }
.img_right { float: right; padding: 0 0 2% 2%; }
.container img.beside_left,
.container img.beside_right {
	display: block;
	position: relative;
	max-width: 49%;
	padding: 0;
	margin: 0;
	vertical-align: top;
}
.container img.beside_left { float: left; padding-bottom: 15px; }
.container img.beside_right { float: right; padding-bottom: 15px; }
button:focus, button:active { box-shadow: none; }

ul li { padding: 5px 0; }
a { text-decoration: none; }
a:hover { text-decoration: underline; }
iframe { max-width: 100%; }
.icon > svg {
	width: 100%;
	height: 100%;
	max-height: 24px;
}


/* !flash message styles */
div.message,
div.error-message {
	display: block;
	position: relative;
	clear: both;
	float: left;
	width: 100%;
	padding: 30px;
	margin: 0 0 15px 0;
	background: rgba(255, 230, 128, 1);
}
div.message.success {
	font-size: 20px;
	background: rgba(67, 130, 36, 1);
	color: #fff;
}
div.message.error {
	font-size: 20px;
	background: rgba(181, 47, 47, 1);
	color: #fff;
}
	div.message i.icon {
		display: block;
		position: relative;
		float: left;
		padding: 0;
		margin: 0 10px 0 0;
	}


/* !canada day cover styles */
#holiday-cover {
	display: block;
	position: absolute;
	z-index: 10000;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	background: rgba(0,0,0,0.5);
}
#holiday-cover #holiday-link {
	display: block;
	position: relative;
	width: 550px;
	margin: 15% auto 0 auto;
	background: #e5342c;
	color: #fff;
}
#holiday-cover #holiday-link p {
	display: block;
	padding: 10px;
	font-size: 18px;
	line-height: 22px;
	text-align: center;
}
#holiday-cover #holiday-link img { max-width: 100%; }
#holiday-cover #holiday-link a.dismiss {
	display: block;
	position: absolute;
	z-index: 1;
	top: -15px;
	right: -15px;
	width: 30px;
	height: 30px;
	-webkit-border-radius: 30px;
	-moz-border-radius: 30px;
	border-radius: 30px;
	font-size: 20px;
	line-height: 30px;
	text-align: center;
	text-decoration: none;
	background: #666;
	color: #fff;
}

/* !pagination styles */
#content ul.pagination-links {
	display: flex;
	position: relative;
	clear: both;
	float: left;
	width: 80%;
	padding: 0;
	margin: 30px 10%;
	list-style: none;
}
	#content ul.pagination-links li {
		display: block;
		position: relative;
		float: left;
		flex-grow: 1;
		padding: 0;
		margin: 0;
		border-left: 1px solid #999;
	}
	#content ul.pagination-links li:first-of-type { border: none; }
		#content ul.pagination-links li a {
			display: block;
			position: relative;
			padding: 10px;
			margin: 0;
			text-align: center;
			text-decoration: none;
		}
		#content ul.pagination-links li.active a,
		#content ul.pagination-links li a:hover {
			background: rgba(200,200,200,0.1);
		}


/* !typography */
.center { text-align: center; }
/*
.red { color: rgba(171,19,30,1); }
.green { color: rgba(19,83,69,1); }
.yellow { color: rgba(253,215,134,1); }
*/
.small { font-size: 0.8em; line-height: 0.9em; }
h1.site-title {
	display: block;
	position: absolute;
	top: 28px;
	left: 50%;
	z-index: 100;
	width: 160px;
	height: 130px;
	margin: 0 0 0 -80px;
	font-size: 30px;
	text-align: center;
	text-indent: -9999em;
	background: url("../../img/logo_bk_home.png") no-repeat center center;
	background-size: 100%;
}
header.yellow h1.site-title { background: url("../../img/logo_bk_yellow.png") no-repeat center center; background-size: 100%; }
header.orange h1.site-title { background: url("../../img/logo_bk_orange.png") no-repeat center center; background-size: 100%; }
header.blue h1.site-title { background: url("../../img/logo_bk_blue.png") no-repeat center center; background-size: 100%; }
header.green h1.site-title { background: url("../../img/logo_bk_green.png") no-repeat center center; background-size: 100%; }
header.red h1.site-title { background: url("../../img/logo_bk_red.png") no-repeat center center; background-size: 100%; }
header.purple h1.site-title { background: url("../../img/logo_bk_purple.png") no-repeat center center; background-size: 100%; }
header.ltblue h1.site-title { background: url("../../img/logo_bk_ltblue.png") no-repeat center center; background-size: 100%; }
header.sage h1.site-title { background: url("../../img/logo_bk_sage.png") no-repeat center center; background-size: 100%; }
header.dkgray h1.site-title { background: url("../../img/logo_bk_dkgray.png") no-repeat center center; background-size: 100%; }
	h1.site-title a {
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		bottom: 0;
		right: 0;
		background: url("../../img/logo.png") no-repeat center center;
		background-size: 100%;
	}
	header.yellow h1.site-title a { background: url("../../img/logo.png") no-repeat center center; background-size: 100%; }
	header.orange h1.site-title a,
	header.blue h1.site-title a,
	header.green h1.site-title a,
	header.red h1.site-title a,
	header.purple h1.site-title a,
	header.ltblue h1.site-title a,
	header.sage h1.site-title a,
	header.dkgray h1.site-title a { background: url("../../img/logo-white.png") no-repeat center center; background-size: 100%; }

h2, h3, h4 { font-family: "nimbus-sans-extended", sans-serif; }
h2 { clear: both; margin: 0 0 15px 0; font-size: 2.75rem; line-height: 1.1; }
h3 { padding: 15px 0 0 0; margin: 0 0 15px 0; font-size: 2rem; line-height: 1.1; }
h4 { padding: 10px 0 0 0; margin: 0 0 5px 0; font-size: 1.5rem; line-height: 1.1; }
h5 { padding: 10px 0 0 0; margin: 0 0 5px 0; font-size: 1.25rem; line-height: 1.1; }
h6 { margin: 0 0 5px 0; font-size: 1.125rem; line-height: 1.1; }
p { margin: 0 0 15px 0; }
a.more {
	display: block;
	position: relative;
	clear: both;
	float: right;
	margin: 0.5em 0 0 0;
}
a { color: rgba(171,19,30,1); }
iframe { border: none; }
iframe.locmap { width: 100%; }


/* !header search form */
#search-block a.close-search {
	display: block;
	position: absolute;
	z-index: 1;
	top: 10px;
	right: 10px;
	width: 20px;
	height: 20px;
	line-height: 18px;
	color: #fff;
}
.search-form {
	display: block;
	position: relative;
	left: 50%;
	width: 300px;
	clear: both;
	float: left;
	margin: 0 0 0 -150px;
}
.input-search  {
	display: block;
	position: relative;
	float: left;
	width: 70%;
	padding: 0;
	margin: 0;
}
	.input-search p { display: none; }
	.search-form input[type="search"] {
		display: block;
		position: relative;
		float: left;
		width: 100%;
		height: 30px;
		padding: 5px;
		margin: 0;
		border: none;
		font-family: "nimbus-sans", Helvetica, sans-serif;
		font-size: 18px;
		font-weight: 300;
	}
	.search-form button[type="submit"] {
		display: block;
		position: relative;
		float: right;
		width: 30%;
		height: 30px;
		padding: 5px 0;
		margin: 0;
		border: none;
		font-family: "nimbus-sans", Helvetica, sans-serif;
		font-size: 18px;
		font-weight: 300;
		text-align: center;
		background: rgba(19,83,69,1);
		color: #fff;
	}
	header.sage .search-form button[type="submit"] { background: rgba(126,172,172,1); }
	header.orange .search-form button[type="submit"] { background: rgba(235,90,30,1); }
	header.red .search-form button[type="submit"] { background: rgba(171,19,30,1); }
	header.yellow .search-form button[type="submit"] { background: rgba(252,182,47,1); }
	header.blue .search-form button[type="submit"] { background: rgba(0,70,119,1); }
	header.ltblue .search-form button[type="submit"] { background: rgba(0,121,196,1); }
	header.green .search-form button[type="submit"] { background: rgba(0,103,71,1); }
	header.purple .search-form button[type="submit"] { background: rgba(141,18,83,1); }
	header.dkgray .search-form button[type="submit"] { background: rgba(20,20,20,1); }


/* !header social media */
ul.social {
	display: block;
	position: relative;
	float: right;
	right: 0;
	
	padding: 0;
	margin: 1em 25px 1em 0;
	list-style: none;
}
	ul.social li {
		display: block;
		position: relative;
		float: left;
		padding: 0;
		margin: 0 0 0 10px;
	}
	ul.social li:first-of-type { margin: 0; }
		ul.social li a {
			display: block;
			position: relative;
			width: 30px;
			height: 30px;
			padding: 5px 0 0 0;
			border: none;
			color: rgba(0,0,0,1);
			-webkit-transition: all 0.25s ease;
			-moz-transition: all 0.25s ease;
			transition: all 0.25s ease;
		}
		ul.social li a:hover { color: rgba(255,255,255,0.6); }
		header.home ul.social li a:hover { color: rgba(0,0,0,0.6); }
		header.orange ul.social li a,
		header.blue ul.social li a,
		header.green ul.social li a,
		header.red ul.social li a,
		header.ltblue ul.social li a,
		header.sage ul.social li a,
		header.purple ul.social li a,
		header.dkgray ul.social li a { color: rgba(255,255,255,1); }
		header.orange ul.social li a:hover,
		header.blue ul.social li a:hover,
		header.green ul.social li a:hover,
		header.red ul.social li a:hover,
		header.ltblue ul.social li a:hover,
		header.sage ul.social li a:hover,
		header.purple ul.social li a:hover,
		header.dkgray ul.social li a:hover { color: rgba(255,255,255,0.6); }



/* !announcement styles */
#announcement {
	display: block;
	position: relative;
	clear: both;
	background: #ffc400;
}
#announcement .container {
	padding: 50px 25% 30px 25%;
	text-align: center;
}



/* !home page banners */
.home-banners-video {
	display: block;
	position: relative;
	clear: both;
	float: left;
	width: 100%;
	min-height: 600px;
	padding: 0;
	margin: 0;
}
.home-banners-video div#bk-vid {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 0;
	width: 100%;
	height: 100%;
	pointer-events: none;
	overflow: hidden;
}
.home-banners-video iframe {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100vw;
	height: 56.25vw;
	min-height: 100vh;
	min-width: 177.77vh;
	background: none;
	transform: translate(-50%,-50%);
}
.banner { position: relative; }
.banner img { width: 100%; height: auto; }
.banner .banner-text {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 1;
	width: 960px;
	padding: 0;
	margin: -80px 0 0 -480px;
	text-align: center;
	color: #fff;
}
.banner .banner-text.upperleft { top: 30px; left: 50px; bottom: auto; right: auto; margin: 0; text-align: left; }
.banner .banner-text.upperright { top: 30px; left: auto; bottom: auto; right: 50px; margin: 0; text-align: right; }
.banner .banner-text.lowerleft { top: auto; left: 50px; bottom: 30px; right: auto; margin: 0; text-align: left; }
.banner .banner-text.lowerright { top: auto; left: auto; bottom: 30px; right: 50px; margin: 0; text-align: right; }
	.banner .banner-text h2 {
		font-size: 70px;
		font-weight: 100;
		line-height: 70px;
		text-shadow: 2px 2px 5px rgba(0,0,0,0.8);
	}
	.banner .banner-text h2 b { font-weight: 900; }
.home-banners ul.slick-dots {
	display: block;
	position: absolute;
	top: 30px;
	right: 30px;
	z-index: 1;
	padding: 0;
	margin: 0;
	list-style: none;
}
	.home-banners ul.slick-dots li {
		display: block;
		position: relative;
		margin: 0 0 10px 0;
	}
		.home-banners ul.slick-dots li button {
			display: block;
			position: relative;
			width: 0;
			height: 0;
			padding: 6px;
			text-indent: -9999em;
			border: 2px solid #fff;
			border-radius: 30px;
			background: rgba(255,255,255,0.5);
		}
		.home-banners ul.slick-dots li.slick-active button {
			background: rgba(255,255,255,1);
		}



/* !notifications */
#notifications .container div {
	display: block;
	position: relative;
	float: left;
	width: 20%;
	padding: 0.5em 0;
	margin: 0;
	text-transform: uppercase;
	font-family: "trumpsoftpro", sans-serif;
	font-size: 14px;
	line-height: 20px;
	letter-spacing: 1px;
	color: rgba(135,135,135,1);
}
#notifications .container div span { font-family: "nimbus-sans", sans-serif; font-size: 20px; text-transform: none; }
#notifications .container a#conditions {
	display: block;
	position: relative;
	float: right;
	width: 22%;
	padding: 0.5em 0;
	margin: 0;
	font-family: "trumpsoftpro", sans-serif;
	text-align: right;
	text-transform: uppercase;
	text-decoration: none;
	letter-spacing: 1px;
	color: rgba(135,135,135,1);
}
#notifications .container #conditions span { padding: 0; }
#notifications .container span.green { font-weight: 600; color: rgba(0,103,71,1); }
#notifications .container span.red { font-weight: 600; color: rgba(171,19,30,1); }

/* !home-posts blocking styles */
#home-posts div.banner {
	display: block;
	position: relative;
	width: 100%;
	min-height: 350px;
	padding: 0;
	margin: 0 0 1.5em 0;
	background: #ccc;
}
	#home-posts div.banner img {
		display: block;
		position: relative;
		z-index: 0;
		width: 100%;
		height: auto;
		padding: 0;
		margin: 0;
	}
	#home-posts .banner div.brief {
		display: block;
		position: absolute;
		top: 15%;
		left: 5%;
		z-index: 1;
		width: 50%;
		padding: 1.5em;
		margin: 0;
		background: rgba(255,255,255,0.2);
		color: #fff;
	}
		#home-posts .banner div.brief h3 { font-size: 24px; }
		#home-posts .banner div.brief a { color: #fff; }
#home-posts div.post {
	display: block;
	position: relative;
	float: left;
	width: 32%;
	min-height: 450px;
	padding: 0;
	margin: 0 0 15px 2%;
	border: 1px solid rgba(0,0,0,1);
}
#home-posts div.post:nth-of-type(3n+1) { margin: 0 0 15px 0; }
	#home-posts div.post img {
		display: block;
		position: relative;
		float: left;
		width: 100%;
		min-height: 140px;
		height: auto;
		padding: 0;
		margin: 0 0 15px 0;
	}
	#home-posts div.post h3 {
		padding: 0 15px;
		margin: 0 0 15px 0;
		font-size: 1.5rem;	
	}
	#home-posts div.post span.spacer {
		display: block;
		position: relative;
		clear: both;
		width: 20px;
		height: 0;
		margin: 0 0 15px 15px;
		border-top: 3px solid rgba(171,19,30,1);
	}
	#home-posts div.post p { width: 100%; padding: 0 15px; margin: 0 0 1.5em 0; }
	#home-posts div.post a {
		display: block;
		position: absolute;
		top: auto;
		left: 0;
		bottom: 0;
		right: 0;
		padding: 15px;
		margin: 0;
		border-top: 1px solid rgba(0,0,0,1);
		font-family: "trumpsoftpro", sans-serif;
		text-decoration: none;
		text-transform: uppercase;
		letter-spacing: 1px;
		color: rgba(171,19,30,1);
	}
	#home-posts a.more.blog {
		display: block;
		position: relative;
		float: none;
		width: 120px;
		padding: 0;
		margin: 0 auto;
		font-family: "trumpsoftpro", sans-serif;
		font-size: 18px;
		text-decoration: none;
		line-height: 40px;
		letter-spacing: 1px;
		color: rgba(135,135,135,1);
	}
	#home-posts a.more.blog i.icon {
		display: block;
		position: relative;
		float: left;
		width: 36px;
		height: 36px;
		margin: 0;
		line-height: 26px;
		color: rgba(171,19,30,1);
	}

/* !home-block general blocking styles */
.home-block h2 { font-weight: 300; line-height: 1.1; }
.home-block h2 strong { font-weight: 700; }
.home-block p { width: 70%; margin: 0 15% 1.5em 15%; }

/* !home-events blocking styles */
#home-events ul {
	display: flex;
	position: relative;
	z-index: 1;
	float: left;
	width: 100%;
	padding: 0;
	margin: 0
}
#home-events ul li.event {
	display: block;
	position: relative;
	float: left;
	flex-grow: 1;
	padding: 10px;
	margin: 0 10px 15px 10px;
	text-align: center;
	text-transform: uppercase;
	font-size: 10px;
	line-height: 14px;
	letter-spacing: 1px;
	background: rgba(230,230,230,1);
	color: rgba(98,98,98,1);
}
	#home-events ul li.event h3 {
		display: block;
		position: relative;
		float: left;
		width: 100%;
		padding: 0;
		margin: 0 0 5px 0;
		text-align: center;
		font-size: 36px;
		font-family: "nimbus-sans-extended", sans-serif;
		line-height: 36px;
		color: rgba(171,19,30,1);
	}
		#home-events ul li.event h3 span {
			display: block;
			position: relative;
			width: 100%;
			margin: 0;
			text-align: center;
			text-transform: uppercase;
			font-size: 14px;
			font-weight: 400;
			line-height: 14px;
			letter-spacing: 2px;
			color: rgba(106,68,71,1);
		}
/*
	#home-events ul li.event > a {
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		bottom: 0;
		right: 0;
		z-index: 1;
	}
	#home-events ul li.event > a:after {
		content: "click to view this day's events";
		display: block;
		position: absolute;
		top: -40px;
		left: 0;
		padding: 5px;
		margin: 0;
		border: 1px solid #f3f4f4;
		opacity: 0;
		background: #fff;
		color: #222;
		transition: all 0.25s ease;
	}
	#home-events ul li.event > a:hover:after {
		opacity: 1;
	}
*/
	#home-events ul li.event div.event-set {
		display: none;
		position: absolute;
		float: left;
		z-index: 0;
		top: 100%;
		left: 0;
		width: 250px;
		padding: 0;
		margin: 0;
		background: rgba(171,19,30,1);
		color: #fff;
	}
	#home-events ul li.event:hover div.event-set { display: block; z-index: 2; }
	#home-events ul li.event:hover:nth-of-type(7n) div.event-set {
		left: auto;
		right: 0;
	}
		#home-events ul li.event div.event-set ul {
			display: block;
			position: relative;
			float: left;
			width: 100%;
			padding: 0;
			margin: 0;
			list-style: none;
			font-family: "nimbus-sans-extended", sans-serif;
			font-size: 14px;
		}
			#home-events ul li.event div.event-set ul li {
				display: block;
				position: relative;
				clear: both;
				float: left;
				width: 100%;
				padding: 0;
				margin: 0;
			}
				#home-events ul li.event div.event-set ul li > a {
					display: block;
					position: relative;
					padding: 10px;
					line-height: 18px;
					text-align: left;
					text-decoration: none;
					text-transform: none;
					color: #fff;
				}
				#home-events ul li.event div.event-set ul li a:hover { background: rgba(0,0,0,0.1); }
		#home-events ul li.event.active div.event-set a.close-list {
			display: block;
			position: absolute;
			float: right;
			z-index: 10;
			top: 5px;
			left: auto;
			right: 5px;
			width: 25px;
			height: 25px;
			color: #fff;
		}
#home-events a.more.calendar {
	display: block;
	position: relative;
	float: none;
	width: 120px;
	padding: 0 0 0 35px;
	margin: 0 auto;
	font-family: "trumpsoftpro", sans-serif;
	font-size: 18px;
	text-decoration: none;
	line-height: 18px;
	letter-spacing: 1px;
	background: url("../../img/icon-calendar.png") no-repeat left center;
	background-size: 30px;
	color: rgba(135,135,135,1);
}

/* !home-food blocking styles */
#home-food .food-feature {
	display: block;
	position: relative;
	float: left;
	width: 100%;
	padding: 0;
	margin: 0 0 1.5em 0;
	border-bottom: 1px solid rgba(0,0,0,1);
}
	#home-food .food-feature div {
		display: block;
		position: relative;
		clear: both;
		float: left;
		width: 100%;
		padding: 0;
		margin: 0;
	}
	#home-food .food-feature div img {
		display: block;
		position: relative;
		float: right;
		width: 65%;
		padding: 0;
		margin: 0;
	}
	#home-food .food-feature div#location-feature {
		display: block;
		position: relative;
		clear: both;
		float: left;
		width: 100%;
		padding: 0;
		margin: 0;
	}
	#home-food .food-feature div#location-feature div.location {
		display: block;
		position: relative;
		clear: none;
		float: left;
		width: 50%;
	}
	#home-food .food-feature div#location-feature div.location#common { float: right; }
		#home-food .food-feature div#location-feature div.location p.actions {
			display: flex;
			position: absolute;
			bottom: 0;
			left: 0;
			right: 0;
			z-index: 2;
			width: 100%;
			padding: 0;
			margin: 0;
			border-top: 1px solid #fff;
			font-family: "trumpsoftpro", sans-serif;
			font-size: 18px;
			font-weight: 300;
			opacity: 0;
			transition: all 0.25s ease;
		}
		#home-food .food-feature div#location-feature div.location:hover p.actions { opacity: 1; }
			#home-food .food-feature div#location-feature div.location p.actions a {
				display: block;
				position: relative;
				float: left;
				padding: 10px 15px;
				text-decoration: none;
				text-transform: uppercase;
				letter-spacing: 2px;
				color: #fff;
			}
		#home-food .food-feature div#location-feature div.location div.location-info {
			display: block;
			position: absolute;
			top: 0;
			left: 0;
			bottom: 0;
			right: 0;
			z-index: 1;
			width: 100%;
			padding: 80px;
			background: rgba(149,17,32,0.8);
			opacity: 0;
			transition: all 0.25s ease;
		}
		#home-food .food-feature div#location-feature div.location:hover div.location-info { opacity: 1; }
		#home-food .food-feature div#location-feature div.location div.location-info h3,
		#home-food .food-feature div#location-feature div.location div.location-info p { width: 100%; color: #fff; }
			#home-food .food-feature div#location-feature div.location div.location-info h3 span { color: #fff; }
		#home-food .food-feature div#location-feature div.location div.location-info span.spacer { border-top: 3px solid #fff; }
		#home-food .food-feature div#location-feature div.location img {
			display: block;
			position: relative;
			z-index: -1;
			width: 100%;
			height: auto;
		}
		#home-food .food-feature div#location-feature div.location div.location-info h4 {
			display: block;
			position: absolute;
			left: 0;
			bottom: 0;
			border-top: 1px solid #fff;
		}
		#home-food .food-feature div#location-feature div.location div.location-info p {
			font-size: 20px;
			line-height: 26px;
		}


	#home-food .food-feature div h3,
	#home-food .food-feature div p {
		display: block;
		position: relative;
		float: left;
		width: 35%;
		padding: 30px;
	}
	#home-food .food-feature div h3 {
		padding-bottom: 0;
		margin: 0 0 10px 0;
		font-weight: 700;
		line-height: 1;
	}
	#home-food .food-feature div h3 span { font-weight: 300; }
	#home-food .food-feature div p { padding-top: 10px; margin: 0 0 15px 0; }
	#home-food .food-feature div span.spacer {
		display: block;
		position: relative;
		float: left;
		width: 20px;
		padding: 0;
		margin: 0 0 0 30px;
	}
	#home-food .food-feature div#feature-food span.spacer { border-top: 3px solid rgba(238,179,0,1); }
	#home-food .food-feature div#feature-retail span.spacer { border-top: 3px solid rgba(19,83,69,1); }
	#home-food .food-feature div#feature-food h4,
	#home-food .food-feature div#feature-retail h4 {
		display: block;
		position: absolute;
		bottom: 0;
		z-index: 1;
		padding: 10px 20px;
		margin: 0;
		border-top: 1px solid rgba(106,147,142,1);
		font-family: "trumpsoftpro", sans-serif;
		font-size: 24px;
		font-weight: 300;
		text-transform: uppercase;
		letter-spacing: 2px;
		color: #fff;
	}
	#home-food .food-feature div#feature-food h4 { right: 35%; border-top: 1px solid rgba(238,179,0,1); background: rgba(238,179,0,1); }
	#home-food .food-feature div#feature-retail h4 { left: 35%; border-top: 1px solid rgba(19,83,69,1); background: rgba(19,83,69,1); }
	#home-food .food-feature div#feature-food > a,
	#home-food .food-feature div#feature-retail > a {
		display: block;
		position: absolute;
		bottom: 0;
		width: 35%;
		padding: 10px 15px;
		margin: 0;
		border-top: 1px solid rgba(0,0,0,1);
		font-family: "trumpsoftpro", sans-serif;
		font-size: 18px;
		text-transform: uppercase;
		text-decoration: none;
		letter-spacing: 1px;
	}
	#home-food .food-feature div#feature-food > a { right: 0; color: rgba(238,179,0,1); }
	#home-food .food-feature div#feature-retail > a { left: 0; color: rgba(19,83,69,1); }
	#home-food .food-feature div#feature-food > a span,
	#home-food .food-feature div#feature-retail > a span { transition: all 0.25s ease; }
	#home-food .food-feature div#feature-food > a:hover span,
	#home-food .food-feature div#feature-retail > a:hover span { padding-left: 5px; }
	#home-food .food-feature div:nth-of-type(2n) img { float: left; }
	


/* !home-subscribe blocking styles */
#home-subscribe h2 { margin: 0 0 15px 0; }
#home-subscribe p { text-align: center; }
#home-subscribe span.spacer,
#home-sustainability span.spacer,
#home-support span.spacer {
	display: block;
	position: relative;
	width: 20px;
	padding: 0;
	margin: 0 auto 15px auto;
	border-top: 3px solid rgba(171,19,30,1);
}
#home-subscribe form {
	display: block;
	position: relative;
	left: 50%;
	float: left;
	width: 500px;
	padding: 0;
	margin: 0 0 0 -250px;
}
	#home-subscribe form div.input {
		display: block;
		position: relative;
		float: left;
		width: 50%;
		padding: 0 1em;
		margin: 0;
	}
	#home-subscribe form div.input label { margin: 0 0 5px 0; }
	#home-subscribe form div.input input[type="text"],
	#home-subscribe form div.input input[type="email"] { background: rgba(230,230,230,1); }
	#home-subscribe form button[type="submit"] {
		display: block;
		position: relative;
		width: 30%;
		padding: 10px 0;
		margin: 0 35%;
		border: none;
		border-radius: 4px;
		font-family: "trumpsoftpro", sans-serif;
		text-transform: uppercase;
		letter-spacing: 2px;
		background: rgba(171,19,30,1);
		color: #fff;
		cursor: pointer;
		transition: all 0.25s ease;
	}
	#home-subscribe form button[type="submit"]:hover { background: rgba(149,17,32,0.8); }


/* !home-sustainability blocking styles */
#home-sustainability .container p { text-align: center; }
#home-sustainability .container ul {
	display: block;
	position: relative;
	float: left;
	width: 60%;
	padding: 0;
	margin: 0 20%;
	font-size: 18px;
	font-weight: 300;
	
}
	ul button.slick-arrow {
		display: block;
		position: absolute;
		top: 50%;
		width: 0;
		height: 0;
		padding: 0;
		margin: -10px 0 0 0;
		border: none;
		text-indent: -9999em;
		background: none;
		cursor: pointer;
	}
	ul button.slick-prev {
		left: -50px;
		border: none;
		border-top: 10px solid transparent;
		border-right: 15px solid rgba(200,200,200,1);
		border-bottom: 10px solid transparent;
	}
	ul button.slick-prev:before {
		content: "";
		display: block;
		position: absolute;
		top: 50%;
		left: 3px;
		width: 0;
		height: 0;
		padding: 0;
		margin: -10px 0 0 0;
		border: none;
		border-top: 10px solid transparent;
		border-right: 15px solid rgba(255,255,255,1);
		border-bottom: 10px solid transparent;
	}
	ul button.slick-next {
		right: -50px;
		border: none;
		border-top: 10px solid transparent;
		border-left: 15px solid rgba(200,200,200,1);
		border-bottom: 10px solid transparent;
	}
	ul button.slick-next:before {
		content: "";
		display: block;
		position: absolute;
		top: 50%;
		right: 3px;
		width: 0;
		height: 0;
		padding: 0;
		margin: -10px 0 0 0;
		border: none;
		border-top: 10px solid transparent;
		border-left: 15px solid rgba(255,255,255,1);
		border-bottom: 10px solid transparent;
	}
	#home-sustainability .container ul li {
		display: block;
		position: relative;
		float: left;
		width: 20%;
		padding: 130px 0 0 0;
		margin: 0;
		font-family: "trumpsoftpro", sans-serif;
		text-align: center;
		text-transform: uppercase;
		letter-spacing: 1px;
		transition: all 0.25s ease;
		color: rgba(106,147,142,1);
	}
	#home-sustainability .container ul li.target { background: url("../../img/sustain-target-gray.png") no-repeat center top; background-size: 55%; }
	#home-sustainability .container ul li.biofuel { background: url("../../img/sustain-biofuel-gray.png") no-repeat center top; background-size: 55%; }
	#home-sustainability .container ul li.compost { background: url("../../img/sustain-composting-gray.png") no-repeat center top; background-size: 55%; }
	#home-sustainability .container ul li.water { background: url("../../img/sustain-water-gray.png") no-repeat center top; background-size: 55%; }
	#home-sustainability .container ul li.recycle { background: url("../../img/sustain-recycle-gray.png") no-repeat center top; background-size: 55%; }
	#home-sustainability .container ul li.geothermal { background: url("../../img/sustain-geothermal-gray.png") no-repeat center top; background-size: 55%; }
	#home-sustainability .container ul li.bees { background: url("../../img/sustain-bee-gray.png") no-repeat center top; background-size: 55%; }
	#home-sustainability .container ul li.cycletrack { background: url("../../img/sustain-cycle-gray.png") no-repeat center top; background-size: 55%; }
	#home-sustainability .container ul li.ecotour { background: url("../../img/sustain-ecotour-gray.png") no-repeat center top; background-size: 55%; }
										 
	#home-sustainability .container ul li.target:before { content: ""; background: url("../../img/sustain-target-green.png") no-repeat center top; background-size: 0 0; }
	#home-sustainability .container ul li.biofuel:before { content: ""; background: url("../../img/sustain-biofuel-green.png") no-repeat center top; background-size: 0 0; }
	#home-sustainability .container ul li.compost:before { content: ""; background: url("../../img/sustain-composting-green.png") no-repeat center top; background-size: 0 0; }
	#home-sustainability .container ul li.water:before { content: ""; background: url("../../img/sustain-water-green.png") no-repeat center top; background-size: 0 0; }
	#home-sustainability .container ul li.recycle:before { content: ""; background: url("../../img/sustain-recycle-green.png") no-repeat center top; background-size: 0 0; }
	#home-sustainability .container ul li.geothermal:before { background: url("../../img/sustain-geothermal-green.png") no-repeat center top; background-size:  0 0; }
	#home-sustainability .container ul li.bees:before { background: url("../../img/sustain-bee-green.png") no-repeat center top; background-size:  0 0; }
	#home-sustainability .container ul li.cycletrack:before { background: url("../../img/sustain-cycle-green.png") no-repeat center top; background-size:  0 0; }
	#home-sustainability .container ul li.ecotour:before { background: url("../../img/sustain-ecotour-green.png") no-repeat center top; background-size:  0 0; }
										 
	#home-sustainability .container ul li.target:hover { background: url("../../img/sustain-target-green.png") no-repeat center top; background-size: 55%; }
	#home-sustainability .container ul li.biofuel:hover { background: url("../../img/sustain-biofuel-green.png") no-repeat center top; background-size: 55%; }
	#home-sustainability .container ul li.compost:hover { background: url("../../img/sustain-composting-green.png") no-repeat center top; background-size: 55%; }
	#home-sustainability .container ul li.water:hover { background: url("../../img/sustain-water-green.png") no-repeat center top; background-size: 55%; }
	#home-sustainability .container ul li.recycle:hover { background: url("../../img/sustain-recycle-green.png") no-repeat center top; background-size: 55%; }
	#home-sustainability .container ul li.geothermal:hover { background: url("../../img/sustain-geothermal-gray.png") no-repeat center top; background-size: 55%; }
	#home-sustainability .container ul li.bees:hover { background: url("../../img/sustain-bee-gray.png") no-repeat center top; background-size: 55%; }
	#home-sustainability .container ul li.cycletrack:hover { background: url("../../img/sustain-cycle-gray.png") no-repeat center top; background-size: 55%; }
	#home-sustainability .container ul li.ecotour:hover { background: url("../../img/sustain-ecotour-gray.png") no-repeat center top; background-size: 55%; }
	#home-sustainability .container ul li:first-of-type { margin: 0; }
		#home-sustainability .container ul li a {
			display: block;
			position: absolute;
			top: 0;
			left: 0;
			bottom: 0;
			right: 0;
			z-index: 1;
		}

/* !home-support blocking styles */
#home-support .container .foundation-block {
	display: block;
	position: relative;
	width: 100%;
	float: left;
}
#home-support .container .foundation-block p { text-align: center; }
#home-support p img {
	width: 60px; height: auto;
}
#home-support a {
	font-family: "trumpsoftpro", sans-serif;
	text-transform: uppercase;
	letter-spacing: 1px;
	color: #000;
}


/* !home-social blocking styles */
#home-social a#instagram-link {
	display: block;
	position: relative;
	width: 80px;
	height: 80px;
	padding: 0;
	margin: 0px auto 20px auto;
	color: #fff;
}
	#home-social a#instagram-link .icon > svg {
		display: block;
		position: relative;
		width: 100%;
		max-height: 80px;
	}
#home-social h2,
#home-social p { color: #fff; }
#home-social .container div {
	display: block;
	position: relative;
	float: right;
	width: 100%;
	min-height: 250px;
	padding: 1.5em;
	margin: 0;
	background: #f4f4f4;
}
	#home-social .container div > div {
		display: block;
		position: relative;
		float: left;
		width: 32%;
		min-height: 240px;
		padding: 1em;
		margin: 0 0 1.5em 2%;
		background: #bbb;
	}
	#home-social .container div > div:nth-of-type(3n+1) { clear: both; margin: 0 0 1.5em 0;	}


/* !blog article styles */
h2.blog-heading {
	display: block;
	position: relative;
	padding: 0;
	margin: 0;
	font-weight: 900;
}
h2.blog-heading:after {
	content: "";
	display: block;
	position: relative;
	clear: both;
	width: 30px;
	padding: 0;
	margin: 30px 0;
	border-top: 3px solid rgba(20,20,20,1);
}
/* !blog features */
.feature-set {
	display: block;
	position: relative;
	clear: both;
	float: left;
	width: 100%;
	padding: 0;
	margin: 0 0 30px 0;
}
	.feature-set article.feature {
		display: block;
		position: relative;
		clear: both;
		float: left;
		width: 100%;
		padding: 0;
		margin: 0;
		border-bottom: 1px solid rgba(20,20,20,1);
	}
	.feature-set article.feature:first-of-type {
		border-top: 1px solid rgba(20,20,20,1);
	}
		.feature-set article.feature img {
			display: block;
			position: relative;
			float: left;
			width: 65%;
			padding: 0;
			margin: 0;
			background: #000;
		}
		.feature-set article.feature:nth-of-type(2n) img { float: right; }
		.feature-set article.feature div.article-body {
			display: block;
			position: relative;
			float: right;
			width: 35%;
			padding: 15px;
			margin: 0;
		}
		.feature-set article.feature:nth-of-type(2n) div.article-body { float: right; }
		.feature-set article.feature div.article-body p.author {
			font-size: 14px;
			margin: 0 0 5px 0;
		}
		.feature-set article.feature p.action-bar {
			display: block;
			position: absolute;
			bottom: 0;
			left: auto;
			right: 0;
			width: 35%;
			padding: 15px 0 15px 15px;
			margin: 0;
			border-top: 1px solid rgba(20,20,20,1);
		}
		.feature-set article.feature:nth-of-type(2n) p.action-bar { left: 0; right: auto; }
		.feature-set article.feature p.action-bar a.read-more {
			display: block;
			position: relative;
			clear: both;
			text-decoration: none;
			font-family: "trumpsoftpro", sans-serif;
			letter-spacing: 1.5px;
			color: rgba(20,20,20,1);
		}
		.feature-set article.feature .article-body p.posted {
			display: block;
			position: relative;
			font-size: 14px;
			color: rgba(20,20,20,1);
		}
		.feature-set article.feature .article-body p.posted:after {
			content: "";
			display: block;
			position: relative;
			clear: both;
			width: 30px;
			padding: 0;
			margin: 10px 0;
			border-top: 3px solid rgba(150,150,150,1);
		}

/* !blog articles */
article.list-item {
	display: block;
	position: relative;
	float: left;
	width: 100%;
	padding: 0 0 30px 0;
	margin: 0;
	font-weight: 100;
}
article.list-item:first-of-type { border: none; }
	article.list-item h3 span {
		display: inline-block;
		position: relative;
		float: left;
		width: 120px;
		padding: 0;
		margin: 0;
		font-family: "nimbus-sans", sans-serif;
		font-size: 16px;
		font-weight: 100;
		line-height: 34px;
	}
	article.list-item img.article-image {
		display: block;
		position: relative;
		float: left;
		width: 25%;
		height: auto;
		padding: 0;
		margin: 0;
		background: rgba(20,20,20,1);
	}
	article.list-item .article-body {
		display: block;
		position: relative;
		float: right;
		width: 75%;
		padding: 0 0 0 30px;
		margin: 0 0 10px 0;
	}
		article.list-item .article-body h3 { padding: 0; }
		article.list-item .article-body p.posted {
			display: block;
			position: relative;
			font-size: 14px;
			color: rgba(20,20,20,1);
		}
		article.list-item .article-body p.posted:after {
			content: "";
			display: block;
			position: relative;
			clear: both;
			width: 30px;
			padding: 0;
			margin: 10px 0;
			border-top: 3px solid rgba(150,150,150,1);
		}
	article.list-item p.action-bar {
		display: block;
		position: relative;
		clear: both;
		float: right;
		width: 75%;
		padding: 0 0 0 30px;
	}
	.feature-set article.list-item p.action-bar {
		display: block;
		position: relative;
		clear: both;
		float: right;
		width: 75%;
		padding: 0 0 0 30px;
	}
	article.list-item a.read-more {
		display: block;
		position: relative;
		clear: both;
		text-decoration: none;
		font-family: "trumpsoftpro", sans-serif;
		letter-spacing: 1.5px;
		color: rgba(20,20,20,1);
	}
.article-sidebar {
	display: block;
	position: relative;
	float: right;
	width: 30%;
	padding: 10px 30px;
	margin: 0;
}
	.article-sidebar h3 { padding: 0; }
	.article-sidebar ul {
		display: block;
		position: relative;
		clear: both;
		float: left;
		width: 100%;
		padding: 0;
		margin: 0;
		list-style: none;
	}
		.article-sidebar ul li {
			display: list-item;
			position: relative;
			float: left;
			width: 100%;
			padding: 0;
			margin: 0;
		}
			.article-sidebar a {
				display: inline-block;
				position: relative;
				width: 90%;
				padding: 5px;
				margin: 0;
				line-height: 18px;
				text-decoration: none;
			}
			.article-sidebar a:hover { text-decoration: underline; }
	.article-sidebar ul ul { padding: 0 0 0 15px; }
	.article-sidebar ul ul ul { list-style: circle; padding: 0 0 0 20px; }
		.article-sidebar ul ul ul a { display: block; width: 100%; }
article.full-article {
	display: block;
	position: relative;
	float: left;
	width: 70%;
	padding: 0;
	margin: 0;
}
	article.full-article h2 { font-size: 2em; font-weight: 900; line-height: 1.2em; }
	article.full-article img.article-image {
		display: block;
		position: relative;
		float: left;
		width: 100%;
		padding: 0;
		margin: 0 0 15px 0;
	}
	article.full-article p > iframe.instagram-media {
		display: block !important;
		position: relative;
		width: 90% !important;
		margin: 15px 5% !important;
		border: 1px solid #000 !important;
	}
	.categories {
		display: block;
		position: relative;
		clear: both;
		float: left;
		width: 100%;
		padding: 0;
		margin: 0 0 15px 0;
	}
		.categories ul {
			display: block;
			position: relative;
			clear: both;
			float: left;
			width: 100%;
			padding: 0;
			margin: 0;
			list-style: none;
		}
			.categories ul li {
				display: block;
				position: relative;
				float: left;
				padding: 0;
			}
				.categories ul li a {
					display: block;
					position: relative;
					padding: 2px 10px;
					border-left: 1px solid #000;
				}
				.categories ul li:first-of-type a { padding-left: 0; border: none; }


/* !event module styles */
#calendar-set {
	display: block;
	position: relative;
	float: right;
	width: 30%;
	padding: 0;
	margin: 0 0 30px 0;
}
	#calendar-set .calendar-nav {
		display: flex;
		position: relative;
		clear: both;
		float: left;
		width: 100%;
		padding: 0;
		margin: 0 0 25px 0;
	}
		#calendar-set .calendar-nav .prev,
		#calendar-set .calendar-nav .next {
			display: block;
			position: relative;
			float: left;
			flex-grow: 1;
			left: 0;
			padding: 0;
			margin: 0;
			font-size: 20px;
			text-align: left;
			text-decoration: none;
			color: rgba(200,200,200,1);
            width: 100%;
		}
		#calendar-set .calendar-nav h3 {
			display: block;
			position: relative;
			float: left;
			flex-grow: 2;
			padding: 0;
			margin: 0;
			font-family: "nimbus-sans", sans-serif;
			font-size: 24px;
			line-height: 26px;
			font-weight: 400;
			text-align: center;
		}
		#calendar-set .calendar-nav .next {
			float: right;
			left: auto;
			right: 0;
			text-align: right;
		}
	#calendar-set .calendar {
		display: block;
		position: relative;
		float: left;
		width: 100%;
		padding: 0;
		margin: 0;
	}
		#calendar-set .calendar .calendar-week {
			display: block;
			position: relative;
			clear: both;
			float: left;
			width: 100%;
			padding: 0;
			margin: 0 0 1px 0;
			font-family: "nimbus-sans-extended", sans-serif;
			font-size: 12px;
			font-weight: 400;
		}
			#calendar-set .calendar .calendar-week .label {
				display: block;
				position: relative;
				float: left;
				width: 14.275%;
				padding: 2px 5px;
				margin: 0;
				border: 1px solid transparent;
				font-size: 10px;
				font-weight: 600;
				line-height: 12px;
				text-align: center;
				text-transform: uppercase;
			}
			#calendar-set .calendar .calendar-week .day {
				display: block;
				position: relative;
				float: left;
				width: 14.275%;
				min-height: 40px;
				padding: 0;
				margin: 0;
				border-left: 1px solid #fff;
				background: rgba(240,240,240,1);
			}
			#calendar-set .calendar .calendar-week .day.today { background: rgba(255,255,255,1); }
			#calendar-set .calendar .calendar-week .day:first-of-type,
			#calendar-set .calendar .calendar-week .label:first-of-type { border: none; }
			#calendar-set .calendar .calendar-week .day.fade { opacity: 0.5; }
				#calendar-set .calendar .calendar-week .day span {
					display: block;
					position: absolute;
					top: 0;
					left: 0;
					bottom: 0;
					right: 0;
					padding: 10px 0;
					margin: 0;
					font-size: 16px;
					font-weight: 600;
					text-align: center;
				}
				#calendar-set .calendar .calendar-week .day span.events { color: rgba(171,19,30,1); }
				#calendar-set .calendar .calendar-week .day a {
					display: block;
					position: absolute;
					z-index: 1;
					top: 0;
					left: 0;
					bottom: 0;
					right: 0;
				}
				#calendar-set .calendar .calendar-week .day a:hover { background: rgba(171,19,30,0.1); }
	.calendar-filter {
		display: block;
		position: relative;
		clear: right;
		float: right;
		width: 30%;
		padding: 0;
		margin: 0 0 30px 0;
	}
		.calendar-filter .input-select {
			display: block;
			position: relative;
			float: left;
			width: 100%;
		}
/*
		.calendar-filter .input-select:after {
			content: "";
			display: block;
			position: absolute;
			top: 50%;
			right: 5px;
			border-top: 10px solid #000;
			border-left: 5px solid transparent;
			border-right: 5px solid transparent;
		}
*/
		.calendar-filter .input-datepicker {
			display: block;
			position: relative;
			clear: both;
			float: left;
			width: 100%;
			padding: 0;
			margin: 0 0 5px 0;
		}
			.calendar-filter .input-datepicker label { float: left; width: 20%; padding: 3px 0 0 0; text-align: center; }
			.calendar-filter .input-datepicker input[type="date"] { float: right; width: 80%; }
/*
			.calendar-filter .input-datepicker input#starting-date:before,
			.calendar-filter .input-datepicker input#closing-date:before {
				content: "From:";
				display: block;
				position: absolute;
				left: 0;
				width: 20%;
				font-size: 14px;
				text-align: center;
				color: #000;
			}
			.calendar-filter .input-datepicker input#closing-date:before { content: "To:"; }
*/
		.calendar-filter button[type="submit"] {
			display: block;
			position: relative;
			clear: both;
			float: left;
			width: 100%;
			padding: 15px 0;
			margin: 0;
			font-size: 24px;
			text-align: center;
			text-transform: uppercase;
			background: rgba(171,19,30,1);
			color: #fff;
		}
			.calendar-filter button[type="submit"] i.icon {
				display: block;
				position: absolute;
				top: 13px;
				right: 10px;
				float: right;
				padding: 0;
				margin: 0;
				width: 30px;
				height: 30px;
			}

.event-set {
	display: block;
	position: relative;
	clear: none;
	float: left;
	width: 68%;
	padding: 0;
	margin: 0;
}
.event-listing {
	display: block;
	position: relative;
	float: left;
	width: 100%;
	padding: 0;
	margin: 0 0 15px 0;
	background: rgba(200,200,200,0.2);
}
	.event-listing p.dates {
		display: block;
		position: relative;
		padding: 10px 15px;
		margin: 0;
		font-family: "nimbus-sans-extended", sans-serif;
		font-weight: 400;
		background: rgba(171,19,30,1);
		color: #fff;
	}
	.event-listing .body {
		display: block;
		position: relative;
		clear: both;
		float: left;
		width: 100%;
		padding: 0;
		margin: 0;
	}
		.event-listing .body h3,
		.event-listing .body h4,
		.event-listing .body p,
		.event-listing .body ul { padding-left: 15px; padding-right: 15px; }
		.event-listing .body ul { padding-left: 35px; }
	.event-listing .body img { height: auto; }
	.event-listing .body p.event-actions {
		clear: both;
		padding: 10px 15px;
		margin: 0;
		border-top: 1px solid #000;
		font-family: "trumpsoftpro", sans-serif;
		font-size: 20px;
		letter-spacing: 1px;
		text-transform: uppercase;
	}
	.body div#menu-container {
		display: block;
		position: relative;
		width: 100%;
		max-height: 600px;
		padding: 15px;
		margin: 0 0 15px 0;
		border: 1px solid #000;
		overflow: scroll;
	}
	.body div#menu-container p.website-hideable { display: none; }


/* !Trail Conditions styles */
div.trail-legend ul li svg.svg-icon,
div.trail-set ul li svg.svg-icon {
	display: block;
	position: relative;
	float: left;
	padding: 0;
	margin: 0 5px 5px 5px;
	border-radius: 30px;
	color: #fff;
}
div.trail-legend ul li svg.svg-icon.check,
div.trail-set ul li svg.svg-icon.check { background: green; }
div.trail-legend ul li svg.svg-icon.dash,
div.trail-set ul li svg.svg-icon.dash { background: gold; }
div.trail-legend ul li svg.svg-icon.closed,
div.trail-set ul li svg.svg-icon.closed { background: red; }
div.trail-legend ul {
	display: flex;
	position: relative;
	float: left;
	width: 50%;
	padding: 0;
	margin: 0 25% 15px 25%;
	list-style: none;
}
	div.trail-legend ul li {
		display: block;
		position: relative;
		float: left;
		flex-grow: 1;
		padding: 0;
		margin: 0;
		line-height: 30px;
	}
div.trail-set {
	display: block;
	position: relative;
	float: left;
	width: 65%;
	padding: 0;
	margin: 0;
}
	div.trail-set div.trail {
		display: block;
		position: relative;
		clear: both;
		float: left;
		width: 100%;
		padding: 0;
		margin: 0 0 15px 0;
	}
		div.trail-set div.trail h3 {
			padding: 0;
			font-weight: 900;
			color: rgba(171,19,30,1);
		}
		div.trail-set div.trail div.trail-image {
			display: block;
			position: relative;
			float: left;
			width: 50%;
			padding: 0;
			margin: 0;
		}
		div.trail-set div.trail > ul {
			display: block;
			position: relative;
			float: right;
			width: 45%;
			padding: 0;
			margin: 0 0 15px 0;
			list-style: none;
			font-family: "nimbus-sans-extended", sans-serif;
			font-size: 13px;
		}
			#content div.trail-set div.trail ul li {
				position: relative;
				padding: 5px 0;
				border-radius: 30px;
				line-height: 30px;
				transition: all 0.5s ease;
			}
			#content div.trail-set div.trail ul li:before {
				content: "<";
				display: block;
				position: absolute;
				top: 50%;
				left: -5px;
				margin: -15px 0 0 0;
				color: #fff;
				transition: all 0.5s ease;
			}
			#content div.trail-set div.trail ul li:hover { background: #f3f4f4; }
			#content div.trail-set div.trail ul li:hover:before {
				content: "<";
				display: block;
				position: absolute;
				top: 50%;
				left: -15px;
				margin: -15px 0 0 0;
				color: #999;
			}
			#content div.trail-set div.trail ul li.trail-heading { border-radius: 0 }
			#content div.trail-set div.trail ul li.trail-heading:hover { background: none; }
			#content div.trail-set div.trail ul li.trail-heading:hover:before { display: none; }
			div.trail-set div.trail > ul li ul {
				display: block;
				position: relative;
				width: 100%;
				padding: 5px;
				margin: 0;
				list-style: none;
				font-family: "nimbus-sans-extended", sans-serif;
				font-size: 13px;
				background: #f3f4f4;
			}
				#content div.trail-set div.trail ul li ul li:before {
					content: "<";
					display: block;
					position: absolute;
					top: 50%;
					left: -15px;
					margin: -15px 0 0 0;
					color: #fff;
					transition: all 0.5s ease;
				}
				#content div.trail-set div.trail ul li:hover ul li:hover { background: #fff; }
				#content div.trail-set div.trail ul li:hover ul li:hover:before {
					content: "<";
					display: block;
					position: absolute;
					top: 50%;
					left: -25px;
					margin: -15px 0 0 0;
					color: #999;
				}
		div.trail-set div.trail p {
			display: block;
			position: relative;
			clear: both;
			float: right;
			width: 45%;
			padding: 0;
			margin: 0;
			font-family: "trumpsoftpro", sans-serif;
			font-size: 20px;
			font-weight: 100;
			text-transform: uppercase;
		}
div.trail-side {
	display: block;
	position: relative;
	float: right;
	width: 35%;
	padding: 0 0 0 3%;
	margin: 0;
}
	div.trail-side div.notice {
		display: block;
		position: relative;
		clear: both;
		float: left;
		width: 100%;
		padding: 15px;
		margin: 0 0 15px 0;
		border: 2px solid rgba(171,19,30,1);
	}
		div.trail-side div.notice h2 {
			padding: 0;
			margin: 0 0 10px 0;
			font-family: "nimbus-sans", sans-serif;
			font-size: 20px;
			line-height: 24px;
			font-weight: 600;
			text-align: center;
			color: rgba(171,19,30,1);
		}
		div.trail-side div.notice ul {
			padding: 0 0 0 25px;
			margin: 0 0 15px 0;
		}
		div.trail-side div.notice p {
			text-align: justify;
		}
	div.trail-side div.weather-forecast {
		display: block;
		position: relative;
		clear: both;
		float: left;
		width: 100%;
		padding: 0;
		margin: 0;
	}
		div.trail-side div.weather-forecast div { overflow: hidden; background: rgba(0,70,119,1); }
		div.trail-side div.weather-forecast div:before {
			content: "";
			display: block;
			position: absolute;
			top: -40px;
			right: -40px;
			z-index: 0;
			width: 0;
			height: 0;
			padding: 90px;
			margin: 0;
			border-radius: 90px;
			background: rgba(255,255,255,0.7);
		}
		div.trail-side div.weather-forecast div:after {
			content: "";
			display: block;
			position: absolute;
			top: -5px;
			right: -5px;
			z-index: 0;
			width: 0;
			height: 0;
			padding: 55px;
			margin: 0;
			border-radius: 55px;
			background: #fff;
		}
		div.trail-side div.weather-forecast div:nth-of-type(2n) { background: rgba(235,90,30,1); }
		div.trail-side div.weather-forecast div:nth-of-type(2n):before { background: rgba(255,188,43,1); }
		div.weather-forecast-day {
			display: block;
			position: relative;
			clear: both;
			float: left;
			width: 100%;
			padding: 15px;
			margin: 0 0 15px 0;
			color: #fff;
		}
			div.trail-side div.weather-forecast div svg {
				display: block;
				position: absolute;
				top: 25px;
				right: 10px;
				z-index: 1;
				padding: 0;
				margin: 0;
				color: rgba(0,70,119,1);
			}
			div.trail-side div.weather-forecast div:nth-of-type(2n) svg { color: rgba(235,90,30,1); }
			div.weather-forecast-day p,
			div.weather-forecast-day ul {
				clear: both;
				float: left;
				z-index: 2;
				font-family: "nimbus-sans-extended", sans-serif;
			}
			div.weather-forecast-day p.date { font-size: 20px; font-weight: 400; }
			div.weather-forecast-day p.summary { width: 60%; }
			div.weather-forecast-day ul.temp-range {
				display: block;
				position: relative;
				clear: both;
				float: left;
				width: 60%;
				padding: 0;
				margin: 0 0 10px 0;
				list-style: none;
			}
				div.weather-forecast-day ul.temp-range li {
					display: block;
					position: relative;
					float: left;
					width: 50%;
					padding: 0;
					margin: 0;
					text-align: center;
					text-transform: uppercase;
				}
					div.weather-forecast-day ul.temp-range li span {
						font-size: 36px;
						font-weight: 700;
					}


/* !The Common Menu */
table.menu {
	width: 100%;
	
}
table.menu thead th {
	border-bottom: 2px solid #000;
}
table.menu thead th:nth-child(1) { width: 40%; }
table.menu thead th:nth-child(2) { width: 20%; }
table.menu thead th:nth-child(3) { width: 20%; }
table.menu thead th:nth-child(4) { width: 20%; }

table.menu tbody tr td { padding: 0.25rem 0.5rem; }
table.menu tbody tr:nth-child(odd) td { background: #f3f4f4; }
table.menu tbody td:nth-child(1) { width: 40%; }
table.menu tbody td:nth-child(2) { width: 20%; text-align: center; }
table.menu tbody td:nth-child(3) { width: 20%; text-align: center; }
table.menu tbody td:nth-child(4) { width: 20%; text-align: center; }


/* !product module styles */
form button[type="submit"] {
	display: block;
	position: relative;
	float: left;
	width: 50%;
	padding: 10px 0;
	margin: 0 25%;
	border: none;
	text-transform: uppercase;
	text-shadow: none;
	font-weight: 600;
	background: rgba(171,19,30,1);
	color: #fff;
	transition: all 0.2s ease;
}
form button[type="submit"]:hover {
	background: rgba(0,70,119,1);
	cursor: pointer;
}

div.product-set,
div.fee-set {
	display: block;
	position: relative;
	clear: both;
	float: left;
	width: 100%;
	padding: 0;
	margin: 0;
}
	div.product-set div.product-listing,
	div.fee-set div.fee-listing {
		display: block;
		position: relative;
		float: left;
		width: 32%;
		min-height: 450px;
		padding: 15px;
		margin: 0 0 25px 2%;
		background: #f3f4f4;
	}
	div.fee-set div.fee-listing { min-height: 0; }
	div.product-set div.product-listing:nth-of-type(3n+1),
	div.fee-set div.fee-listing:nth-of-type(3n+1) {
		clear: both;
		float: left;
		margin: 0 0 25px 0;
	}
		div.product-set div.product-listing div.product-image {
			display: block;
			position: relative;
			clear: both;
			float: left;
			width: 100%;
			min-height: 250px;
			padding: 0;
			margin: 0 0 10px 0;
			background: #fff;
		}
			div.product-set div.product-listing div.product-image img {
				display: block;
				position: absolute;
				top: 50%;
				left: 50%;
				transform: translate(-50%, -50%);
			}
		div.product-set div.product-listing h3,
		div.fee-set div.fee-listing h3 {
			padding: 0;
			font-family: "nimbus-sans", Helvetica, Arial, sans-serif;
			font-size: 18px;
			font-weight: 600;
		}
		div.product-set div.product-listing ul {
			display: flex;
			position: relative;
			width: 100%;
			padding: 5px 0;
			margin: 5px 0 15px 0;
			list-style: none;
			border-top: 1px solid #000;
			border-bottom: 1px solid #000;
		}
			div.product-set div.product-listing ul li {
				display: block;
				position: relative;
				float: left;
				flex-grow: 1;
				padding: 5px 10px;
				margin: 0;
				border-left: 1px solid #000;
				text-align: center;
			}
			div.product-set div.product-listing ul li:first-of-type {
				border: none;
			}
		div.product-set div.product-listing p.actions,
		div.fee-set div.fee-listing p.actions {
			display: block;
			position: relative;
			float: left;
			width: 100%;
			padding: 10px 0;
			margin: 0;
		}
			div.product-set div.product-listing p.actions span,
			div.fee-set div.fee-listing p.actions span {
				display: block;
				position: relative;
				float: left;
				font-size: 22px;
				line-height: 30px;
			}
			div.product-set div.product-listing p.actions a.button,
			div.fee-set div.fee-listing p.actions a.button {
				display: block;
				position: relative;
				float: right;
				padding: 5px 20px;
				margin: 0;
				text-transform: uppercase;
				font-weight: 600;
				background: rgba(171,19,30,1);
				color: #fff;
				transition: all 0.2s ease;
			}
			div.product-set div.product-listing p.actions a.button:hover,
			div.fee-set div.fee-listing p.actions a.button:hover {
				text-decoration: none;
				background: rgba(0,70,119,1);
			}


/* !product purchase display styles */
div.product-purchase {
	display: block;
	position: relative;
	clear: both;
	float: left;
	width: 100%;
	padding: 0;
	margin: 0;
}
	div.product-purchase p.actions {
		display: block;
		position: relative;
		clear: both;
		float: left;
		width: 100%;
		padding: 0;
		margin: 15px 0;
	}
	div.product-purchase h2 {}
	div.product-purchase div.product-image {
		display: block;
		position: relative;
		float: right;
		width: 49%;
		height: 450px;
		padding: 0;
		margin: 0;
		border: 1px solid #f3f4f4;
		text-align: center;
	}
		div.product-purchase div.product-image img {
			display: block;
			position: absolute;
			max-height: 100%;
			top: 50%;
			left: 50%;
			transform: translate(-50%, -50%);
		}
	div.product-purchase form.purchase-options {
		display: block;
		position: relative;
		float: left;
		width: 49%;
		padding: 30px;
		margin: 0;
		background: #f3f4f4;
	}
		div.product-purchase form.purchase-options .input-radio {
			display: flex;
			position: relative;
			float: left;
			flex-wrap: wrap;
			width: 100%;
			padding: 0;
			margin: 0 0 20px 0;
		}
			div.product-purchase form.purchase-options .input-radio > label {
				display: block;
				position: relative;
				clear: both;
				float: left;
				width: 100%;
				padding: 0;
				margin: 0 0 10px 0;
				font-size: 22px;
			}
				div.product-purchase form.purchase-options .input-radio div.input-radio-option {
					display: block;
					position: relative;
					float: left;
					flex-grow: 1;
					padding: 10px;
					margin: 0 5px;
					text-align: center;
					background: rgba(255,255,255,0.5);
				}
				div.product-purchase form.purchase-options .input-radio div.input-radio-option:first-of-type {
					clear: both;
				}
					div.product-purchase form.purchase-options .input-radio div.input-radio-option input[type="radio"] {
						margin: 0 0 10px 0;
					}
					div.product-purchase form.purchase-options .input-radio div.input-radio-option label {
						font-size: 18px;
						line-height: 20px;
						margin: 0;
					}
		div.product-purchase form.purchase-options .input-number {
			display: flex;
			position: relative;
			clear: both;
			float: left;
			flex-wrap: wrap;
			width: 100%;
			padding: 0;
			margin: 0 0 20px 0;
		}
			div.product-purchase form.purchase-options .input-number > label {
				display: block;
				position: relative;
				clear: both;
				float: left;
				width: 50%;
				padding: 0;
				margin: 0;
				font-size: 22px;
				line-height: 36px;
			}
			div.product-purchase form.purchase-options .input-number input[type="number"] {
				display: block;
				position: relative;
				float: right;
				width: 50%;
				padding: 5px;
				margin: 0 0 10px 0;
				font-size: 22px;
			}
/*
		div.product-purchase form.purchase-options button[type="submit"] {
			display: block;
			position: relative;
			float: left;
			width: 50%;
			padding: 10px 0;
			margin: 0 25%;
			border: none;
			text-transform: uppercase;
			text-shadow: none;
			font-weight: 600;
			background: rgba(171,19,30,1);
			color: #fff;
			transition: all 0.2s ease;
		}
		div.product-purchase form.purchase-options button[type="submit"]:hover {
			background: rgba(0,70,119,1);
			cursor: pointer;
		}
*/



/* !Gift Card form styles */
.form-block form.giftcard-form {
	padding: 30px 20%;
}
	form.giftcard-form .input.text,
	form.giftcard-form .input.select {
		display: block;
		position: relative;
		float: left;
		width: 100%;
		padding: 0;
		margin: 0 0 15px 0;
	}
		form.giftcard-form .input.text label,
		form.giftcard-form .input.select label {
			display: block;
			position: relative;
			float: left;
			width: 25%;
			padding: 0 5px;
			margin: 0;
			font-size: 18px;
			line-height: 38px;
			text-align: right;
		}
		form.giftcard-form .input.text label.error,
		form.giftcard-form .input.select label.error {
			clear: both;
			width: 100%;
			padding: 5px;
			margin: 5px 0;
			font-size: 16px;
			text-align: center;
			background: rgba(255,0,0,0.2);
		}
		form.giftcard-form .input.text span {
			display: block;
			position: relative;
			float: left;
			width: 25%;
			height: 40px;
			padding: 0;
			margin: 0;
			text-align: center;
		}
			form.giftcard-form .input.text span button {
				display: block;
				position: relative;
				width: 40px;
				height: 40px;
				padding: 0;
				margin: 0 auto;
				border: none;
				border-radius: 40px;
				font-family: monospace;
				font-size: 26px;
				line-height: 1;
				background: #ccc;
			}
			form.giftcard-form .input.text input[type="text"],
			form.giftcard-form .input.select select {
				display: block;
				position: relative;
				float: left;
				width: 25%;
				height: 40px;
				padding: 0 5px;
				margin: 0;
				border: none;
				text-align: center;
				font-size: 36px;
				line-height: 1;
			}
			form.giftcard-form .input.text input[type="text"] {
				background: none;
			}
			form.giftcard-form fieldset.shipping .input.text input[type="text"],
			form.giftcard-form fieldset.shipping .input.select select {
				width: 75%;
				font-size: 20px;
				text-align: left;
				background: #fff;
			}
			form.giftcard-form fieldset.shipping .input.text input[type="text"].error,
			form.giftcard-form fieldset.shipping .input.select select.error {
				background: rgba(255,0,0,0.2);
			}
	form.giftcard-form div.order {
		display: block;
		position: relative;
		clear: both;
		float: left;
		width: 100%;
		padding: 15px;
		background: rgba(255,255,255,0.7);
	}
		form.giftcard-form div.order h3 {
			margin: 0 0 15px 0;
		}
		form.giftcard-form div.order ul.line-items {
			display: block;
			position: relative;
			clear: both;
			float: left;
			width: 100%;
			padding: 15px;
			margin: 0;
			list-style: none;
			font-size: 16px;
		}
			form.giftcard-form div.order ul.line-items li {
				padding: 5px;
				margin: 0 0 5px 0;
				font-weight: 600;
				border-bottom: 1px solid #ccc;
				background:
					linear-gradient(
						to right,
						#fff,
						#f3f4f4
					);
			}
		form.giftcard-form div.order div.fees {
			display: block;
			position: relative;
			clear: both;
			float: left;
			width: 100%;
			padding: 15px;
			margin: 0;
			border-top: 1px solid #000;
		}
			form.giftcard-form div.order div.fees ul {
				display: block;
				position: relative;
				width: 100%;
				padding: 0;
				margin: 0;
				list-style: none;
			}
	form.giftcard-form div.total {
		display: block;
		position: relative;
		clear: both;
		float: left;
		width: 100%;
		padding: 30px 0;
		text-align: center;
	}
		form.giftcard-form div.total h4 {
			font-size: 40px;
		}
	.form-block form.giftcard-form .g-recaptcha {
		display: block;
		position: relative;
		clear: both;
		float: left;
		width: 100%;
		padding: 30px;
		margin: 0 0 15px 0;
		border: 1px solid #999;
		text-align: center;
	}
	.form-block form.giftcard-form button[type="submit"] {
		float: none;
		margin: 0 auto;
		background: #060;
		color: #fff;
	}
	.form-block form.giftcard-form button[type="submit"].disabled {
		opacity: 0.3;
	}



/* !purchase billing form styles */
form.billing-info-form {
	display: block;
	position: relative;
	clear: both;
	float: left;
	width: 100%;
	padding: 30px;
	background: #f3f4f4;
}
	form.billing-info-form div.input-text,
	form.billing-info-form div.input-select {
		
	}
		form.billing-info-form div.input-select select {
			border: 1px solid #ccc;
			border-radius: 0;
			background: #fff;
		}
		
/*
	form.billing-info-form button[type="submit"] {
		display: block;
		position: relative;
		float: left;
		width: 50%;
		padding: 10px 0;
		margin: 0 25%;
		border: none;
		text-transform: uppercase;
		text-shadow: none;
		font-weight: 600;
		background: rgba(171,19,30,1);
		color: #fff;
		transition: all 0.2s ease;
	}
	form.billing-info-form button[type="submit"]:hover {
		background: rgba(0,70,119,1);
		cursor: pointer;
	}
*/


/* !Shopping Cart styles */
table.cart-table {
	display: table;
	width: 100%;
	padding: 0;
	margin: 0;
	border-spacing: 0;
}
	table.cart-table thead th {
		padding: 10px 0;
		border-bottom: 1px solid #ccc;
		line-height: 30px;
		background: #f3f4f4;
	}
	.fee-listing table.cart-table thead th.i { text-align: left; }
	.fee-listing table.cart-table thead th.d,
	.fee-listing table.cart-table thead th.q { display: none; }
	table.cart-table tbody td {
		padding: 10px 5px;
		border-bottom: 1px solid #ccc;
		line-height: 30px;
	}
	table.cart-table tbody td[data-th="Action"] { vertical-align: top; }
	table.cart-table tbody td[data-th="Item"] { width: 40%; line-height: 1.25; }
	table.cart-table tbody td[data-th="Description"] { width: 20%; line-height: 1.25; }
	table.cart-table tbody td[data-th="Quantity"] { text-align: center; }
	table.cart-table tbody td[data-th="Price"] { text-align: center; }
	table.cart-table tbody td[data-th="Subtotal"] { text-align: center; }
	.fee-listing table.cart-table tbody td[data-th="Description"],
	.fee-listing table.cart-table tbody td[data-th="Quantity"] { display: none; }
	td a.cart-action { line-height: 16px; }
	td a.cart-action i {
		display: block;
		position: relative;
		float: left;
		width: 24px;
		height: 24px;
		padding: 0;
		margin: 0 5px 0 0;
	}
	p.order-total,
	p.order-owing,
	p.order-collected {
		padding: 10px 5px;
		margin: 0;
		border-bottom: 1px solid #ccc;
		font-size: 24px;
		text-align: right;
	}
	p.order-owing,
	p.order-collected {
		margin: 0 0 15px 0;
	}
	p.order-collected {
		color: #00cc00;
	}
	div.cc_form {
		display: block;
		position: relative;
		clear: both;
		float: left;
		width: 100%;
		padding: 30px;
		margin: 0 0 15px 0;
		background: #f3f4f4;
	}
		div.cc_form div.card-block,
		div.cc_form div.cvd-block,
		div.cc_form div.expiry-block {
			display: block;
			position: relative;
			float: left;
			width: 55%;
			padding: 0 10px;
			margin: 0;
		}
		div.cc_form div.cvd-block,
		div.cc_form div.expiry-block {
			width: 15%;
		}
			div.cc_form div input[type="text"],
			div.cc_form div select {
				margin: 0;
				border: 1px solid #ccc;
				background: #fff;
			}
		



/* !staff module styles */
div#staff-set {
	display: block;
	position: relative;
	clear: both;
	float: left;
	width: 100%;
	padding: 0;
	margin: 0;
}
	div#staff-set div.staff {
		display: block;
		position: relative;
		float: left;
		width: 24%;
		min-height: 515px;
		padding: 0;
		margin: 0 0 20px 0.75%;
		background: rgba(240,240,240,0.5);
	}
	div#staff-set.board div.staff { min-height: 15px; background: none; }
	div#staff-set div.staff:nth-of-type(4n+1) {
		clear: both;
		margin: 0 0 20px 0;
	}
	div#staff-set.board div.staff,
	div#staff-set.board div.staff:nth-of-type(4n+1) {
		display: block;
		position: relative;
		clear: both;
		float: left;
		width: 100%;
		padding: 15px;
		margin: 0;
		border-top: 1px solid #000;
	}
	div#staff-set.board div.staff:first-of-type { border: none; }
		div#staff-set div.staff img {
			display: block;
			position: relative;
			width: 100%;
			padding: 0;
			margin: 0;
		}
		div#staff-set.board div.staff img {
			float: right;
			width: 30%;
			padding: 0 0 0 2%;
		}
		div#staff-set div.staff h4 {
			display: block;
			position: relative;
			z-index: 1;
			padding: 10px;
			margin: 0;
			font-family: "nimbus-sans", sans-serif;
			font-size: 1.25rem;
			color: #000;
		}
			div#staff-set div.staff h4 > span {
				font-size: 1rem;
				font-weight: 400;
			}
		div#staff-set.board div.staff h4 {
			float: left;
			width: 100%;
			padding: 0;
			margin: 0 0 10px 0;
			font-family: "nimbus-sans-extended", sans-serif;
			font-size: 1.25rem;
			line-height: 1.1;
			background: none;
			color: #000;
		}
		div#staff-set div.staff p {
			font-size: 14px;
			padding: 0 10px;
		}
		div#staff-set.board div.staff p {
			float: left;
			width: 70%;
			padding: 0;
			margin: 0 0 15px 0;
		}
		div#staff-set.board div.staff.board p { width: 100%; }
		div#staff-set.board div.staff p:first-of-type { margin: 0 0 10px 0; }


/* !document module styles */
div.document-category {
	display: block;
	position: relative;
	float: left;
	width: 80%;
	padding: 0;
	margin: 0 10% 15px 10%;
}
	.document-category ul {
		display: block;
		position: relative;
		clear: both;
		float: left;
		width: 100%;
		padding: 0;
		margin: 0;
		border-top: 1px solid #f3f4f4;
		list-style: none;
	}
		.document-category ul li {
			display: block;
			position: relative;
			float: left;
			width: 100%;
			padding: 0;
			margin: 0;
			border-bottom: 1px solid #f3f4f4;
		}
			.document-category ul li p.document-title {
				display: block;
				position: relative;
				float: left;
				width: 80%;
				padding: 10px;
				margin: 0;
				font-weight: 700;
			}
			.document-category ul li a {
				display: block;
				position: relative;
				float: right;
				width: 20%;
				padding: 10px 0;
				margin: 0;
				text-align: center;
			}


/* !contact form styles */
.form-block {
	display: block;
	position: relative;
	clear: both;
	float: left;
	width: 100%;
	padding: 0;
	margin: 0 0 30px 0;
	background: rgba(150,150,150,0.1);
}
	.form-block form {
		display: block;
		position: relative;
		float: left;
		width: 100%;
		padding: 30px;
		margin: 0;
	}
		.form-block form .input-text,
		.form-block form .input-email,
		.form-block form .input-select {
			display: block;
			position: relative;
			float: left;
			width: 50%;
			padding: 5px;
			margin: 0;
		}
		.form-block form .input-textarea {
			display: block;
			position: relative;
			float: left;
			width: 100%;
			padding: 5px;
			margin: 0;
		}
			.form-block form .input-text label,
			.form-block form .input-email label,
			.form-block form .input-select label,
			.form-block form .input-textarea label {
				font-size: 20px;
				font-weight: 300;
			}
			.form-block form .required label:after {
				content: "*";
				display: inline-block;
				position: relative;
				padding: 0 5px;
				font-weight: 700;
			}
			.form-block form .input-select input {
				display: block;
				width: 100%;
				height: 2.5rem;
				padding: .5rem;
				margin-bottom: 1rem;
				border: 1px solid #ccc;
				border-radius: 0;
			}
		.form-block form .input-text div.error-message,
		.form-block form .input-email div.error-message,
		.form-block form .input-select div.error-message,
		.form-block form .input-textarea div.error-message,
		form.standard div.error-message {
			display: block;
			position: relative;
			clear: both;
			width: 100%;
			padding: 10px;
			margin: -1rem 0 0 0;
			background: rgba(204,0,0,0.1);
			color: #c00;
		}
		.form-block form .g-recaptcha {
			display: block;
			position: relative;
			clear: both;
			float: left;
			width: 100%;
			padding: 5px;
			margin: 0 0 15px 0;
		}
		.form-block form button[type="submit"] {
			display: block;
			position: relative;
			clear: both;
			float: left;
			width: 150px;
			padding: 10px 0;
			margin: 0 0 0 5px;
			border: none;
			font-family: "nimbus-sans", sans-serif;
			font-size: 20px;
			font-weight: 300;
			text-transform: uppercase;
			background: #e8e8e8;
			color: #000;
		}


/* !shop and restaurant profile styles */
#content .container .main-region > h2:first-of-type,
#content.dine .container .main-region > h2:first-of-type,
#content.shop .container .main-region > h2:first-of-type,
#content.dine .container .profile > h2:first-of-type,
#content.shop .container .profile > h2:first-of-type,
#content.blog .container > h2:first-of-type,
#content.events .container > h2:first-of-type,
#content .container .attraction > h2:first-of-type {
	padding: 0;
	margin: 0;
	font-weight: 900;
	text-align: center;
}
#content .container .main-region > h2:first-of-type:after,
#content.dine .container .main-region > h2:first-of-type:after,
#content.shop .container .main-region > h2:first-of-type:after,
#content.dine .container > .profile > h2:first-of-type:after,
#content.shop .container > .profile > h2:first-of-type:after,
#content.blog .container > h2:first-of-type:after,
#content.events .container > h2:first-of-type:after,
#content .container .attraction > h2:first-of-type:after {
	content: "";
	display: block;
	position: relative;
	clear: both;
	width: 25px;
	padding: 0;
	margin: 25px auto;
	border: none;
}
#content .container .main-region > h2:first-of-type:after,
#content.blog .container > h2:first-of-type:after { border-top: 3px solid rgba(20,20,20,1); }
#content.sage .container .main-region > h2:first-of-type:after { border-top: 3px solid rgba(126,172,172,1); }
#content.ltblue .container .main-region > h2:first-of-type:after { border-top: 3px solid rgba(0,121,196,1); }
#content.green .container .main-region > h2:first-of-type:after { border-top: 3px solid rgba(0,103,71,1); }
#content.purple .container .main-region > h2:first-of-type:after { border-top: 3px solid rgba(141,18,83,1); }
#content.red .container .main-region > h2:first-of-type:after,
#content.red .container .attraction > h2:first-of-type:after { border-top: 3px solid rgba(171,19,30,1); }
#content.orange .container .main-region > h2:first-of-type:after,
#content.orange .container .attraction > h2:first-of-type:after { border-top: 3px solid rgba(235,90,30,1); }
#content.events .container > h2:first-of-type:after { border-top: 3px solid rgba(171,19,30,1); }
#content.dine .container .main-region > h2:first-of-type:after,
#content.dine .container > .profile > h2:first-of-type:after { border-top: 3px solid rgba(252,182,47,1); }
#content.shop .container .main-region > h2:first-of-type:after,
#content.shop .container > .profile > h2:first-of-type:after { border-top: 3px solid rgba(0,70,119,1); }
#content.dine .container .main-region .cke .c1 > p:first-of-type,
#content.shop .container .main-region .cke .c1 > p:first-of-type {
	width: 60%;
	text-align: center;
	margin: 0 20% 20px 20%;
}
div#profile-set,
div#attraction-set {
	display: flex;
	position: relative;
	justify-content: center;
	flex-wrap: wrap;
	width: 100%;
	padding: 0;
	margin: 0;
}
#content.dine .container > div.profile,
#content.shop .container > div.profile {
	display: block;
	position: relative;
	clear: both;
	float: left;
	width: 100%;
	padding: 0;
	margin: 0;
}


/* !profile list styles */
	div#profile-set div.profile {
		display: block;
		position: relative;
		flex-basis: 23.5%;
		max-width: 23.5%;
		padding: 0;
		margin: 0 0 20px 2%;
		border: 1px solid #ccc;
	}
	div#profile-set div.profile:nth-child(4n+1) {
		clear: both;
		margin: 0 0 20px 0;
	}
		div#profile-set div.profile img {
			display: block;
			position: relative;
			width: 100%;
			padding: 0;
			margin: 0;
			background: #222;
		}
		div#profile-set div.profile h4{
			display: block;
			position: relative;
			width: 100%;
			min-height: 60px;
			padding: 10px;
			margin: 0;
			border-top: 1px solid #ccc;
			font-family: "nimbus-sans", sans-serif;
			font-size: 16px;
			font-weight: 300;
			line-height: 18px;
			text-align: left;
			background: rgba(255,255,255,1);
			color: #000;
		}
		div#profile-set div.profile a {
			display: block;
			position: absolute;
			z-index: 1;
			top: 0;
			left: 0;
			bottom: 0;
			right: 0;
			text-decoration: none;
		}

/* !profile individual view styles */
ul.photo-set button.slick-arrow {
	top: 100%;
	margin: 15px 0 0 0;
}
ul.photo-set button.slick-prev { left: 0; }
ul.photo-set button.slick-next { right: 0; }
ul.photo-set ul.slick-dots {
	display: flex;
	position: absolute;
	float: right;
	top: 100%;
	right: 30px;
	z-index: 1;
	width: 60px;
	padding: 0;
	margin: 17px 0 0 0;
	list-style: none;
}
	ul.photo-set ul.slick-dots li {
		display: block;
		position: relative;
		float: left;
		flex-grow: 1;
		margin: 0;
	}
		ul.photo-set ul.slick-dots li button {
			display: block;
			position: relative;
			width: 0;
			height: 0;
			padding: 6px;
			margin: 0 5px;
			text-indent: -9999em;
			border: 2px solid rgba(220,220,220,1);
			border-radius: 30px;
			background: rgba(220,220,220,0.5);
		}
		ul.photo-set ul.slick-dots li.slick-active button {
			background: rgba(220,220,220,1);
		}
#content.dine .container > div.profile,
#content.shop .container > div.profile {
	display: block;
	clear: both;
	float: left;
	width: 100%;
	padding: 0;
	margin: 0 0 50px 0;
}
	#content.dine .container > .profile ul.photo-set,
	#content.shop .container > .profile ul.photo-set {
		display: block;
		position: relative;
		float: left;
		width: 49%;
		padding: 0;
		margin: 0;
		list-style: none;
	}
		#content.dine .container > .profile ul.photo-set li,
		#content.shop .container > .profile ul.photo-set li {
			display: block;
			position: relative;
			float: left;
			width: 100%;
			padding: 0;
			margin: 0;
		}
			#content.dine .container > .profile ul.photo-set li img,
			#content.shop .container > .profile ul.photo-set li img {
				display: block;
				position: relative;
				float: left;
				width: 100%;
				padding: 0;
				margin: 0;
				background: #222;
			}
	#content.dine .container > .profile div.body,
	#content.shop .container > .profile div.body {
		display: block;
		position: relative;
		float: right;
		width: 49%;
		padding: 0;
		margin: 0;
	}
		#content.dine .container > .profile div.body p.contact-info,
		#content.shop .container > .profile div.body p.contact-info,
		p.contact-info {
			font-size: 12px;
			letter-spacing: 0.5px;
		}
		#content.dine .container > .profile div.body p.contact-info strong,
		#content.shop .container > .profile div.body p.contact-info strong,
		p.contact-info strong {
			font-family: "nimbus-sans-extended", sans-serif;
			text-transform: uppercase;
		}
		#content.dine .container > .profile div.body div.profile-links,
		#content.shop .container > .profile div.body div.profile-links {
			display: flex;
			position: relative;
			clear: both;
			width: 100%;
			max-height: 40px;
			padding: 0;
			margin: 0;
			border-top: 1px solid #f3f4f4;
		}
			#content.dine .container > .profile div.body div.profile-links a,
			#content.shop .container > .profile div.body div.profile-links a {
				display: block;
				position: relative;
				flex-grow: 1;
				float: left;
				padding: 10px 20px;
				margin: 0;
				border-left: 1px solid #f3f4f4;
				font-size: 16px;
				line-height: 18px;
				text-decoration: none;
				color: #000;
			}
			#content.dine .container > .profile div.body div.profile-links a.non-social,
			#content.shop .container > .profile div.body div.profile-links a.non-social {
				font-family: "trumpsoftpro", sans-serif;
				text-transform: uppercase;
				font-size: 20px;
				line-height: 24px;
				letter-spacing: 1px;
			}
			#content.dine .container > .profile div.body div.profile-links a:first-of-type,
			#content.shop .container > .profile div.body div.profile-links a:first-of-type { border: none; }
		#content.dine .container > .profile div.body div.qr-img {
			display: block;
			position: relative;
			clear: both;
			width: 50%;
			padding: 1em;
			margin: 1em auto;
			border: 1px solid #000;
		}


/* !attraction list styles */
div#attraction-set { margin: 0 0 30px 0; }
div#attraction-set div.attraction {
	display: block;
	position: relative;
	flex-basis: 32%;
	max-width: 32%;
	padding: 0;
	margin: 0 0 20px 2%;
	border: 1px solid #ccc;
}
div#attraction-set div.attraction:nth-of-type(3n+1) {
	clear: both;
	margin: 0 0 20px 0;
}
	div#attraction-set div.attraction img {
		display: block;
		position: relative;
		width: 100%;
		padding: 0;
		margin: 0;
		background: #222;
	}
	div#attraction-set div.attraction > h4 {
		display: block;
		position: relative;
		width: 100%;
		height: 90px;
		padding: 10px;
		margin: 0;
		border-top: 1px solid #ccc;
		font-family: "nimbus-sans-extended", sans-serif;
		font-size: 16px;
		font-weight: 300;
		line-height: 18px;
		text-align: left;
		background: rgba(255,255,255,1);
		color: #000;
	}
	div#attraction-set div.attraction a {
		display: block;
		position: absolute;
		left: 0;
		bottom: 0;
		right: 0;
		height: 60px;
		padding: 10px;
		font-family: "trumpsoftpro", sans-serif;
		font-size: 18px;
		font-weight: 300;
		letter-spacing: 1px;
		line-height: 18px;
		text-align: right;
		text-decoration: none;
		text-transform: uppercase;
		background: rgba(235,90,30,1);
		color: #fff;
	}
	#content.green div#attraction-set div.attraction a { background: rgba(0,103,71,1); }
	#content.red div#attraction-set div.attraction a { background: rgba(171,19,30,1); }
	#content.purple div#attraction-set div.attraction a { background: rgba(141,18,83,1); }
	div#attraction-set div.attraction div.brief {
		display: block;
		position: absolute;
		z-index: 1;
		top: 0;
		left: 0;
		bottom: 0;
		right: 0;
		padding: 10px;
		margin: 0;
		font-size: 16px;
		line-height: 20px;
		opacity: 0;
		background: rgba(255,255,255,0.85);
		transition: all 0.25s ease;
	}
	div#attraction-set div.attraction:hover div.brief { opacity: 1; }
		div#attraction-set div.attraction div.brief h4 {
			height: auto;
			padding: 0 0 5px 0;
			font-size: 16px;
			font-weight: 600;
			text-align: left;
			background: none;
		}

/* !attraction individual view styles */
.attraction .body > h2 { clear: none; }
.attraction img.logo {
	display: block;
	position: relative;
	clear: right;
	float: right;
	width: 220px;
	height: auto;
	padding: 0;
	margin: 0 0 0 30px;
}
.attraction img.hero-image {
	display: block;
	position: relative;
	float: right;
	width: 50%;
	height: auto;
	padding: 0;
	margin: 0 0 30px 30px;
}

/* !attraction callout styles */
.attractions-callout {
	position: fixed;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	z-index: 99;
	width: 100%;
	height: 100%;
	font-size: 15px;
	font-weight: 300;
	overflow: auto;
	background: rgba(60,177,210,0.95);
	color: #fff;
}
.attractions-callout a#callout-home-link {
	display: block;
	position: absolute;
	top: 30px;
	left: 50%;
	width: 160px;
	padding: 0;
	margin: 0 0 0 -80px;
}
.attractions-callout a#callout-home-link img {
	display: block;
	position: relative;
	width: 100%;
}
.attractions-callout .container {
	width: 1200px;
	max-width: none;
	margin: 165px auto 0 auto;
}
.attractions-callout h2 { text-align: center; }
.attractions-callout ul {
	list-style: none;
	columns: 4 300px;
	column-gap: 1em;
	padding: 0;
}
.attractions-callout ul li {
	display: block;
	position: relative;
	clear: both;
	float: left;
	margin: 0 0 5px 0;
}
.attractions-callout a {
	display: block;
	padding: 5px 10px;
	text-decoration: none;
	line-height: 18px;
	color: inherit;
}
.attractions-callout a#attractions-link { float: right; width: 20%; margin: 50px 0; text-align: center; }
.attractions-callout a:hover { background: rgba(0,0,0,0.1); text-decoration: underline; }
#attractions-callout-close {
	display: block;
	position: absolute;
	top: 20px;
	right: 20px;
	border: none;
	width: 50px;
	height: 50px;
	background: transparent;
	color: inherit;
	cursor: pointer;
}



/* !bibliography styles */
div.annote {
	display: block;
	position: relative;
	clear: both;
	float: left;
	width: 100%;
	padding: 15px;
	margin: 0 0 15px 0;
	background: #f3f4f4;
}
	div.annote h4 {}
		div.annote h4 img {
			display: block;
			position: relative;
			float: right;
			padding: 0;
			margin: 0 0 10px 10px;
		}
.form-block form.bibliosearch .input-text { width: 100%; }
.form-block form.bibliosearch .submit input[type="submit"] {
	display: block;
	position: relative;
	clear: both;
	float: left;
	width: 150px;
	padding: 10px 0;
	margin: 0 0 0 5px;
	border: none;
	font-family: "nimbus-sans", sans-serif;
	font-size: 20px;
	font-weight: 300;
	text-transform: uppercase;
	background: #e8e8e8;
	color: #000;
}

/* !support section - corporate sponsorship table */
table.sponsors {
	display: table;
	width: 100%;
}
	table.sponsors td.sponsor-logo {
		width: 25%;
		padding: 10px;
		vertical-align: top;
		border-top: 1px solid #000;
	}
	table.sponsors td.sponsor-copy {
		width: 75%;
		padding: 10px;
		border-top: 1px solid #000;
	}


/* !search result styles */
ul.search-results {
	display: block;
	position: relative;
	padding: 0 0 0 20px;
}
ul.search-results li {
	position: relative;
	width: 100%;
	padding: 0 0 15px 0;
}


/* !board members area styles */
#form-container > a { display: none; }
form.login-form,
form.reset-form {
	display: block;
	position: relative;
	clear: both;
	float: left;
	width: 100%;
	padding: 30px;
	margin: 0;
	background: #e3e4e4;
}
	form.login-form div.controls,
	form.reset-form div.controls {
		display: block;
		position: relative;
		clear: both;
		float: left;
		width: 100%;
		padding: 0;
		margin: 0;
	}
	form.login-form p,
	form.reset-form p { font-size: 1.5rem; line-height: 1.5rem; }
	form.login-form label,
	form.reset-form label { font-size: 1.2rem; font-weight: 300; }
	form.login-form div.input-text,
	form.login-form div.input-password,
	form.reset-form div.input-email {
		display: block;
		position: relative;
		float: left;
		width: 49%;
		padding: 0;
		margin: 0;
	}
	form.login-form div.input-password { float: right; }
		form.login-form div.input-text input[type="text"],
		form.login-form div.input-password input[type="password"],
		form.reset-form div.input-password input[type="password"],
		form.reset-form div.input-email input[type="email"] {
			font-family: "nimbus-sans", Helvetica, sans-serif;
			font-size: 22px;
			font-weight: 300;
		}
	form.login-form button[type="submit"],
	form.reset-form button[type="submit"] {
		display: block;
		position: relative;
		float: left;
		width: 30%;
		padding: 10px 0;
		margin: 0;
		border: none;
		font-family: "nimbus-sans", Helvetica, sans-serif;
		font-size: 18px;
		font-weight: 300;
		text-transform: uppercase;
		text-align: center;
		background: rgba(0,0,0,1);
		color: #fff;
	}
	form.login-form .controls a,
	form.reset-form .controls a {
		display: block;
		position: relative;
		float: right;
		padding: 10px 0;
		font-size: 18px;
	}


/* !footer styles */
.footer-info h2 {
	margin: 0 0 5px 0;
	font-family: "nimbus-sans", sans-serif;
	font-size: 1.5rem;
	font-weight: 400;
	line-height: 1;
	text-transform: lowercase;
	color: rgba(182,158,96,1);
}
.footer-info p {
	font-size: 14px;
	font-weight: 300;
	line-height: 18px;
	color: #fff;
}
	.footer-info p em { color: #fff; }
.footer-info ul {
	display: block;
	position: relative;
	float: left;
	width: 100%;
	padding: 0;
	margin: 0;
	list-style: none;
	font-size: 14px;
	font-weight: 300;
}
	.footer-info ul li { line-height: 18px; color: #fff; }
	.footer-info a { color: #fff; text-decoration: none; }
	.footer-info a:hover { text-decoration: underline; }

ul.footer-legal-nav {
	display: flex;
	position: relative;
	float: left;
	width: 40%;
	padding: 0;
	margin: 0 30%;
	list-style: none;
	font-size: 12px;
	line-height: 20px;
}
	ul.footer-legal-nav li {
		display: block;
		position: relative;
		float: left;
		flex-grow: 1;
		text-align: center;
	}
		ul.footer-legal-nav li a {
			display: block;
			padding: 10px 0;
			text-decoration: none;
			color: #fff;
		}
		ul.footer-legal-nav li a:hover { text-decoration: underline; }
p.copyright {
	clear: both;
	font-size: 12px;
	line-height: 16px;
	text-align: center;
	color: #fff;
}
