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

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

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

.inc {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.messageForm{padding:20px; width:80%; border-solid: 1px #018997; background-color:#F8F9FA; margin:30px;  }
.messageForm h2{font-size:16px; line-height:16px; text-transform:uppercase; }
.clearAll{clear:both;}

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

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

.showOnClick{clear:both;}

/* MAIN LAYOUT */
body {
    margin: 0;
    background: #fff;
    min-width: 240px;
    -webkit-text-size-adjust: none; /* The text size is not adjusted for Safari on iPhone */
}
	.ie7 body,
	.ie8 body {
	    min-width: 860px; /* media queries are not supported in ie7/8 without a polyfill */
	}
	.main {
	    background: #fff;
	    padding: 40px 0 60px;
	    min-height: 300px;
	}
	.inner {
	    max-width: 1400px;
	    margin: 0 auto;
	    padding: 0 30px;
	}
	.mainImagefolio .innerStop{overflow:hidden;}
	.innerStop{
	    max-width: 1400px;
	    margin: 0 auto;

	}	
	.ie6 .inner {
	    width: 960px;
	}
	.no-sidebar .content-container {
	    float: left;
	    width:100%; /* makes content container full width when there is no sidebar */
	}
	.sidebar { /* this is the sidebar element */
	    margin-top: 12px;
	}
	.no-sidebar .sidebar {
		display: none;
	}


/* HEADER */
.header {
    background: #fff url('../images/img-header-bkgr-pattern.gif');
	background-repeat:no-repeat;
	background-size:contain;
	background-position:right;
	z-index:40;
}

.HomePage .header .inner{
    background: #fff url('../images/img-header-bkgr-pattern.gif');
	background-repeat:no-repeat;
	background-size:contain;
	background-position:right;
	z-index:40;
	padding:0;
}

.HomePage .header .search-barHeader{right:0; padding-left:30px;}

.HomePage .header {
    background: #fff;
	background-repeat:no-repeat;
	background-size:contain;
	background-position:right;
	z-index:40;
}

.header .headerMainLogo{max-width:340px; float:left; z-index:301; padding:20px 0 30px 30px;}
.header .search-barHeader{z-index:301; position:absolute; top:0; right:30px;}
.header .barFormHeader{padding-top:15px; float:left; position:relative;}
.headerSocial{ background:url('../images/img-header-socialbar.png'); background-size:cover; float:right; padding:20px 40px 10px 10px; margin-left:20px; width:80px;}
.headerSocial .socialIcon{float:left;}
.headerSocial .socialIcon img{width:24px; margin-left:10px;}
.header .search-barHeader form{width:auto; max-width:400px; position:relative; padding-left:30px;}
.search-bar form input.text, .search-barHeader form input.text {
    width: 200px;
    padding: 10px 34px 10px 15px;
    color: #000;
    margin: 0;
    border: none;
    -moz-border-radius: 10px;
    border-radius: 20px;
    background-color: #E6E7E8;
	position:relative;

}
.search-barHeader form input.action {
    font-size: 14px;
    position: absolute;
    right: 0px;
    top: 14px;
    cursor: pointer;
    border: none;
    padding: 0 5px;
    background: url(../images/icon-search-30px.png);
    background-size: 30px 30px;
    height: 30px;
    width: 30px;
    color: transparent;
    border-radius: 0;
    margin: 0;
}

.search-barHeader form input.action:hover {
    background: url(../images/icon-search-on.png);
    background-size: 30px 30px;
    color: transparent;
}

.search-barHeader form input.submit {margin-top:10px; }
 .search-barHeader fieldset {float:left;}
.search-barHeader .btn-toolbar{float:right;}
.header .headerMainLogo img{max-width:100%;}
	.header .inner {
	    position: relative;
	    min-height: 72px;
	}

	/* Brand */
	header .brand, header .brand:hover {
	    float: left;
	    color: #fff;
	    display: inline-block;
	}
		.brand h1 {
		    margin: 0;
		    padding: 0;
		    font-size: 48px;
		    font-family: "HelveticaNeueLTPro-Bd", "Helvetica Neue LT Pro Bold", "HelveticaNeueBold", "HelveticaNeue-Bold", "Helvetica Neue Bold", "Helvetica Neue LT Pro", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
		    color: #fff;
		    font-weight: 600;
		    font-stretch: normal; /* default value. No font stretching */
		    line-height: 1em;
		}
		.brand p {
		    color: #888;
		    margin-bottom: 22px;
		}





.float-panel {
    width: 100%;
    
    z-index: 300;
	height:82px;
    padding: 15px 0;
    transition: all 0.5s;
	left:0;
	
}

.fixed {
	background: white;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
    padding: 4px 0;
    animation: slide-down 0.7s;
    opacity: 0.9;
}

.float-panel.fixed .float-panelInner {max-width:1100px; margin:0 auto; position:relative; height:80px; padding-bottom:30px;}
		


	/* Search form */

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

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



/* NAVIGATION */

	.navMenu{padding-top:70px; margin-bottom:2px;}
	.fixed .navMenu{padding-top:30px;}

	/* Primary navigation */
	.header .inner .unit {
		position: relative; /* used to position the main navigation */
	}
	.header .primary ul {
		position:relative;
		float:right;
		bottom:0;
		right:0; /* positions the main navigation */
	}
	.header .primary li {
	    float: left;

	    margin: 0 5px;
	    position: relative;
	    white-space: nowrap; /* forces text to never wrap onto a second line */
	}
	.header .primary li a {
	    color: #000;
	    font-size: 15px;
	    font-family: 'cabinbold', Arial, Helvetica, sans-serif;
	    padding: 6px 8px 12px 8px;
	    display: block;
		text-transform:uppercase;
		border-bottom:solid 8px transparent;
	}
	.header .primary li a:hover {
	    color: #1aae8e;
		border-bottom:solid 8px #1aae8e;
	}
	.header .primary li.section a,
	.header .primary li.current a {
	    color: #1aae8e;
		border-bottom:solid 8px #1aae8e;
		
	}
	.header .primary li.section:after,
	.header .primary li.current:after {
	   
	}
	
		#coolMenu{ /* IE6 needs this */  list-style:none; }
	#coolMenu li{position:relative;}
	#coolMenu li.submenu {padding-right:20px; transition: all 0s ease;}
	#coolMenu li.submenu:after {
		    content: '{'; /* adds triangle beneath current nav item ('}' is renders as a triangle when WebSymbolsRegular is set as the font) */
		    display: block;
		    position: absolute;
		    right: 0;
		    top:5px;
		    font-family: 'WebSymbolsRegular';
		    font-size: 30px;
		    color:#c1d72f;
		    text-align: center;
		    line-height: 20px;
			
	}
	

	#coolMenu li ul li { 
		display: block; 
		text-decoration: none; 
		list-style: none;
		margin-right:0;
		float:none;
		min-width:100px;
		background-color:#000;

		} 

	#coolMenu ul {     
		position: absolute;
		top:45px;
		width:auto;
		display: none; 
		z-index: 99999;
		float:none;
		text-align:left;	
		background-color:#000;
	
		} 
	
		#coolMenu li {margin:0; padding-bottom:0; padding:0 10px; }
		#coolMenu ul li a {  
		padding:5px 2px;
		font-size:16px;
		color:#fff;
		border-bottom:solid 1px #fff;

			} 
		#coolMenu ul li.lastMenu a {  

		border-bottom:none;

			} 			
			
	#coolMenu ul li:hover{background-color:#414042;}			
		
		#coolMenu li:hover ul {  
			transition-delay: 2s; 
			 -webkit-transition-delay: 2s; 	
			display: block; 
			
			
			} 	

	

	/* Tablet Navigation */
	/* When navigation and logo overlap tablet-nav is initialized */
	.tablet-nav .brand p {
	    margin-bottom: 0;
	}
	.tablet-nav .header .inner {
	    padding-top: 20px;
	}
	.tablet-nav .header .primary ul {

	}
		.tablet-nav .header .primary ul li {
		    white-space: nowrap;
		}
			.tablet-nav .header .primary ul li a { /* there is no hover on touch devices so no transition on hover is necessary */
			    -moz-transition: none;
			    -webkit-transition: none;
			    transition: none;
			}
	.tablet-nav .footer .right {
	    float: left;
	    width: 100%;
	}

	/* Secondary navigation */
	.main .secondary h3 {
	    font-size: 16px;
	    color: #018997;
	    margin: 0 0 8px 0;
	    font-weight: normal;
		text-transform:uppercase;
		font-family: 'cabinbold', Arial, Helvetica, sans-serif;		
	}
	.main .secondary {
	    border-bottom: 1px solid #e5e5e5;
	}
		.main .secondary ul {
		    padding: 0;
		    margin: 0;
		}
		.main .secondary li {
		    border-top: 1px solid #e5e5e5;
		    position: relative;
		    list-style-type: none;
		    margin-bottom: 0;
		}
		
		.main .secondary li a { /* side nav link styling */
		    padding: 10px 0;
		    display: block;
		    text-transform: uppercase;
		    font-size: 11px;
		    color: #333;
		    line-height: 17px;
		    border-bottom: none;
			background-color:#f2f2f2;
			font-family: 'cabinbold', Arial, Helvetica, sans-serif;
			
		}
		.main .secondary li .text {
		    padding-left: 28px;
		    display: block;
		}
		.main .secondary li.current a.current {
			color: #1aae8e;
			background-color: #EDEDED;
		}
		.main .secondary li.section,
		.main .secondary li.current {
		    background-color: #F3F3F3;
		}
			.main .secondary li.section a,
			.main .secondary li.current a {
			    color: #000;
			}


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

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

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

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

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

.searchform {
    width: 100%;
    padding: 0;
    margin-bottom: 20px;
	
}
#coolSearch li.topmenuli h3 a{
    font-size: 16px;
    margin-bottom: 1px;
    line-height: 16px;
    margin-top: 10px;
	color:#000;
	padding-bottom:10px;
	border-bottom: solid 1px #000;
	text-transform:uppercase;
}
#coolSearch li.topmenuli {
    position: relative;
    list-style-type: none;
    margin-right: 20px;
    font-size: 16px;
    line-height: 22px;
}
ul#coolSearch{margin:0;}
#coolSearch ul.topmenu {
    position: absolute;
	top:36px;
    display: none;
    margin: 0;
	padding:20px; background-color:#fff;
    z-index: 80;
    float: none;
}

		#coolSearch li:hover ul {     
			display: block; 
			
			}

.mainImagefolio{width:100%; z-index:10; overflow:hidden;}
.mainImagefolio img{width:100%;}

.slideshow, .slideshow li {
    position: relative;
}
.slideshow .flexslider {
    border: none;
	margin:0;
}

.slideshow .flexslider .flex-active-slide{
    overflow:hidden;
}

.slideshow li .sliderCallOut{position:absolute; top:0; bottom:0; right:0; width:33.3%; background:url('../images/tile-header-colourfade-aqua.png'); padding:60px 30px;}
.slideshow li .sliderCallOut h2{font-size:60px; line-height:60px; color:#fff; text-align:right; font-family:cabinbold;}
.slideshow li .sliderCallOut p{ color:#fff; text-align:right; font-size:24px; line-height:32px;}

.slidelink.hvr-underline-from-center{text-align:right;}
#Form_BusinessSearchForm {
    background-color: #885e82;
	padding:10px 20px 40px 20px;
	width:auto;
	
}

#Form_BusinessSearchForm label{color:#fff; font-size:14px; text-transform:uppercase;}

.fmmess{clear:both; padding:10px; background-color:#F1F1F1; border:solid 1px #ccc;}			

.townLeft{float:left; width:50%;}
.townRight{float:right; width:50%;}


.CategoryListings {
    background-color: #fff;
    margin-top: 30px;
    padding: 30px 0 0 0;
}

.businessCardWrap{padding:10px; width:33.33%; float:left; text-align:left; display:flex; position:relative; }
.flex.ContainterListings{display:flex;  flex-wrap:wrap; width:100%;}
.businessCardWrap.widdenClass{width:100%; padding:30px; background-color:#E6E7E8; float:none; text-align:left; margin:30px auto; clear:both; }
.businessCardInview{display:block; width:100%;}
.businessCardWrap.widdenClass .businessCardInview{width:50%; float:left;}
.businessCardWrap.widdenClass .businessCardImage{height:auto;}
.businessCardWrap.widdenClass .businessCard .smallIntro{display:none;}
.businessCardWrap.widdenClass .busReadMore{width:50%; float:right; text-align:left; padding:0 30px; }
.businessCardWrap.widdenClass .busReadMore p {font-size:16px; line-height:24px; }
.listingsWithSearch .businessCardWrap{padding:5px; width:100%; width:33.33%; float:left; text-align:left; position:relative;}

.businessCard{width:100%; background-color: #E6E7E8; min-height:240px; color:#000; padding:10px 20px 30px 20px;}
.businessCard .linkIcons img{padding:0 2px;}
.businessCard .linkIcons img:hover{opacity:0.8;}
.businessCardWrap.meet .businessCard{ min-height:120px; text-align:center; }
.businessCard h2 {font-family: 'cabinbold'; color:#000; font-size:24px; line-height:24px; text-align:center; border-bottom:solid 1px #885e82; padding-bottom:5px; margin-bottom:5px; }
.businessCard h2 a{font-family: 'cabinbold'; color:#000; text-align:center; font-size:24px; line-height:24px; }

.businessCard p, .businessCard a{color:#000; font-size:16px; line-height:24px; margin-bottom:10px; text-align:center;}
.businessCardImage{width:100%; display:block; line-height:0; height:280px;  position:relative; text-align:center; overflow:hidden; background-color:#fff;}
.businessCardImage img{ position: relative; width:100%; }
.businessCardImage:hover{opacity:0.8; }
.businessCardImage.constrain img{ position: relative; width:auto; vertical-align:middle; }
.helper {display: inline-block; height: 100%; vertical-align: middle;}
.BusNameTitle {border-top:solid 1px #E6E7E8; border-bottom:solid 1px #E6E7E8; height:62px; }
.PhoneNumberMain{height:25px;}
.PhoneNumberMain h4 {text-align:center;}
.businessCard .businessContact {min-height:200px;  border-top:solid 1px #E6E7E8; border-bottom:solid 1px #E6E7E8;}
.businessCard .websiteListing{height:35px; overflow:hidden;}
.businessCard .websiteListing p {color:#885e82; font-family: 'cabinbold';}
.businessCard .websiteListing a {color:#885e82; }
.BusNameAdd{height:65px; border:solid 1px #E6E7E8;}
.busReadMore h4, .busReadMore h4 a{font-family: 'cabinbold'; color:#885e82; font-size:18px; line-height:36px; text-align:left; }
.businessCard .smallIntro {height:100px; border-top:solid 1px #E6E7E8; border-bottom:solid 1px #E6E7E8;}
.businessCardTxt{width:60%; float:left;}

.businessCard .listingReadMore{text-align:center; padding-top:10px;}
.more{ display: none; position: relative; }


.linkIcons p{font-size:16px; line-height:27px;}
.fa-phone{color:#885E82;}
.fa-facebook{color:#517CBE}
.fa-instagram{color:#606264}
.fa-twitter-square{color:#65CDF0}
.fa-envelope-square{color:#885E82}


.businessMain{float:left; width:70%; padding-right:20px;}
.businessContacts{float:left; width:28%; padding:20px; background-color:#414042;}
.mainBusinessPageLogo{text-align:center;}
.mainBusinessPageLogo img{max-width:100%;}
.businessGallery {width:100%;}
.businessGallery img{width:23%; padding-left; 2px; float:left;}
.socialMedia{ width:100%;}
.socialMedia h3{color:#000; font-size:14px; line-height:15px; margin-bottom:10px;}
.businessContact h4{color:#000; font-size:14px; line-height:15px; margin-bottom:0;}
.businessContact p, .businessContact h2{color:#000;}
.businessCardContacts{margin-bottom:20px;}
.busButtons{ height:26px;}
.busContact{ padding-right:10px;}
.busReadMore{ margin:0 auto; text-align:center;}


/* ATTRACTIONS */

.dzWwaf-qqvbed .qqvbed-tJHJj{background-color:#1aae8e}

/* PEOPLEPAGE */

.peopleCardWrap{padding:10px; width:25%; float:left; text-align:left; }
.peopleCardWrap {width:100%; padding:30px; background-color:#E6E7E8; float:none; text-align:left; margin:30px auto; clear:both; }
.wbdaStaff .peopleCardWrap {background-color:#eaf7f7;  }
.peopleCardWrap .businessCardInview{width:30%; float:left;}
.peopleCardWrap .businessCardImage{height:auto;}
.peopleCardWrap .businessCard .smallIntro{display:none;}
.peopleCardWrap .busReadMore{width:70%; float:right; text-align:left; padding:0 30px; }

.listingsWithSearch .businessCardWrap{padding:5px; width:100%; width:33.33%; float:left; text-align:left; position:relative;}

.peopleCardWrap .businessCard{width:100%; background-color: #E6E7E8; min-height:auto; color:#000; padding:10px 10px 30px 10px;}
.wbdaStaff .peopleCardWrap .businessCard{width:100%; background-color: #eaf7f7; min-height:auto; color:#000; padding:10px 10px 30px 10px;}
.peopleCardWrap.meet .businessCard{ min-height:120px; text-align:center; }
.peopleCardWrap .businessCard h2{font-family: 'cabinbold'; color:#000; font-size:24px; line-height:32px; text-align:center; border-bottom:solid 1px #018997; padding-bottom:5px;}
.peopleCardWrap .businessCard h3, .peopleCardWrap .businessCard h4{text-align:center;}
.peopleCardWrap h2.position {color:#018997; border-bottom:none;}
.peopleCardWrap .businessCard p, .businessCard a{color:#000; font-size:16px; line-height:24px; margin-bottom:10px; text-align:center;}
.peopleCardWrap .businessCardImage{width:100%; line-height:0; position:relative; text-align:center; overflow:hidden; background-color:#fff;}
.peopleCardWrap.businessCardImage img{ position: relative; width:100%; }
.peopleCardWrap .businessCardImage.constrain img{ position: relative; width:auto; }
.peopleCardWrap .BusNameTitle{min-height:70px;}
.peopleCardWrap .businessCard .businessContact {min-height:24px;}
.peopleCardWrap .businessCard .websiteListing{min-height:24px;}
.peopleCardWrap .businessCard .websiteListing p {color:#885e82; font-family: 'cabinbold';}
.peopleCardWrap .businessCard .websiteListing a {color:#885e82; }
.peopleCardWrap .BusNameAdd{min-height:60px;}

.peopleCardWrap .businessCard .smallIntro {height:100px;}
.peopleCardWrap .businessCardTxt{width:60%; float:left;}

.peopleCardWrap.businessCard .listingReadMore{text-align:center;}

/* BUSINESSBUDDYPAGE */
.currentBuddies .businessCardImage{width:100%; line-height:0; position:relative; text-align:center; overflow:hidden; background-color:#fff;}
.currentBuddies .businessCardImage.constrain img{width:100%;}
.contactForm, .pageContent{width:50%; float:left;}
.hvr-underline-from-center a, a.hvr-underline-from-center {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px rgba(0, 0, 0, 0);
    position: relative;
    overflow: hidden;
	color:#000;
	background-color:#fff;
	padding:5px 20px;
	border-radius:20px;
	text-transform:uppercase;
	font-size:14px; line-height:14px;
}

.hvr-underline-from-center a:before, a.hvr-underline-from-center:before {
    content: "";
    position: absolute;
    z-index: -1;
    left: 51%;
    right: 51%;
    bottom: 0;
    background: #885e82;
    height: 4px;
    -webkit-transition-property: left, right;
    transition-property: left, right;
    -webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out;
}

.hvr-underline-from-center a:hover:before, .hvr-underline-from-center:hover:before, .hvr-underline-from-center a:focus:before, .hvr-underline-from-center:focus:before, .hvr-underline-from-center a:active:before, .hvr-underline-from-center:active:before {
    left: 0;
    right: 0;
}

.kenburns-top {
	-webkit-animation: kenburns-top 40s ease-out infinite alternate both;
	        animation: kenburns-top 40s ease-out infinite alternate both;
}

/* ----------------------------------------------
 * Generated by Animista on 2020-6-1 9:7:22
 * Licensed under FreeBSD License.
 * See http://animista.net/license for more info. 
 * w: http://animista.net, t: @cssanimista
 * ---------------------------------------------- */

/**
 * ----------------------------------------
 * animation kenburns-top
 * ----------------------------------------
 */
@-webkit-keyframes kenburns-top {
  0% {
    -webkit-transform: scale(1) translateY(0);
            transform: scale(1) translateY(0);
    -webkit-transform-origin: 50% 16%;
            transform-origin: 50% 16%;
  }
  100% {
    -webkit-transform: scale(1.25) translateY(-15px);
            transform: scale(1.25) translateY(-15px);
    -webkit-transform-origin: top;
            transform-origin: top;
  }
}
@keyframes kenburns-top {
  0% {
    -webkit-transform: scale(1) translateY(0);
            transform: scale(1) translateY(0);
    -webkit-transform-origin: 50% 16%;
            transform-origin: 50% 16%;
  }
  100% {
    -webkit-transform: scale(1.25) translateY(-15px);
            transform: scale(1.25) translateY(-15px);
    -webkit-transform-origin: top;
            transform-origin: top;
  }
}





/* HOMEPAGE */
.promoboxes {width:100%; clear:both; line-height:0;}
.promobox {width:33.33%; float:left; text-align:center; position:relative; overflow:hidden;}
.promobox:hover{opacity:0.9;}
.promobox h2{font-size:60px; line-height:60px; color:#fff; margin-bottom:30px; text-transform:uppercase; font-family:cabinbold;}
.promobox p{font-size:21px; line-height:26px; color:#fff;}
.promobox.promo1 p{color:#7FC4CA; }
.promobox.promo2 p{color:#9BD6C4;}
.promobox.promo3 p{color:#C3AEC1;}

.promobox.promo1 .hvr-underline-from-center a:before, .promobox.promo1 a.hvr-underline-from-center:before {background: #018997;}
.promobox.promo1 .hvr-underline-from-center a{color:#018997;}

.promobox.promo2 .hvr-underline-from-center a:before, .promobox.promo1 a.hvr-underline-from-center:before {background: #1aae8e;}
.promobox.promo2 .hvr-underline-from-center a{color:#1aae8e;}

.promobox img{width:100%;}
.promobox img.kenburns-top:hover{}
.promobox .promoContent{position:absolute; top:20px; text-align:center; width:100%; padding:40px;}

.promobox .slidelink.promobx{position:relative; width:100%; text-align:center; padding-top:60px;}


/* EVENTS PAGE */
.homeEvents{width:100%; clear:both; margin:30px auto; text-align:center; background-color:#fff;}
.homeEvents h2{font-family:cabinbold; font-size:24px; line-height:30px; color:#018997}
.eventImage{line-height:0;}
.news-events-list_item {width:33.33%; float:left; padding: 10px; text-align: center; }
.EventsPage .news-events-list_item {width:50%; }
.EventsPage .news-events-list_item.ListStyle .news-events-inner{ margin-bottom:20px; }
.EventsPage .news-events-list_item.ListStyle{width:100%; float:none;}
.EventsPage .news-events-list_item.ListStyle .event-summary__header{width:33.33%; float:left; min-height:auto; height:auto;}
 .EventsPage .news-events-list_item.ListStyle .event-summary__content, .EventsPage .news-events-list_item.ListStyle .event-summary__footer{width:66.66%; float:right; min-height:auto; height:auto;}
.news-events-inner{padding:10px 10px 30px 10px; background-color:#E6E7E8; position:relative; }
.eventImage img{max-width:100%; }

.event-summary__header{min-height:120px;}
.event-summary__header, .event-summary__content, .event-summary__footer{padding:20px 20px 0 20px; }
.event-summary__content{ padding: 20px; height:200px}

.event-summary__header h3{font-family:cabinbold; font-size:24px; line-height:30px; color:#000; border-bottom:solid 1px #018997;}
.event-summary__header h3 a{font-family:cabinbold; font-size:24px; line-height:30px; color:#000;}

.event-summary__header p{font-size:18px; line-height:26px; margin-top:20px;}
.event-summary__header p.green{font-size:18px; line-height:26px;  margin-top:20px; color: #018997;}
.event-summary__content p{font-family:cabinbold; font-size:16px; line-height:24px; color:#000; }
.event-summary__footer a{color:#000;}

ul.pagination li {float:left; list-style-type: none; font-size:20px; margin:0 5px;}
ul.pagination li a {float:none; font-size:20px;}
ul.pagination li a:hover {text-decoration:underline; }
.pagination__item--prev{margin:0 5px;}
.lookLink{position:absolute; right:0; bottom:0; line-height:0;}

.eventCalendarLB{width:40%; float:left; padding:10px;}
.eventCalendarLB .calendar-widget, .event-calendar-controls{max-width:400px;}
.eventCalendarLB th a {color:#555555;}
.eventCalendarLB .calendar-widget-table tbody .today{color:#018896}
.eventCalendarLB .calendar-widget-table tbody .hasEvent {color:#885E82;}
.eventCalendarListInfo{width:60%; float:right; padding:10px;}
.eventCalendarListInfo ul{margin:0;}
.eventCalendarListInfo ul li.vevent{margin:0; list-style-type:none; padding:20px 0; border-bottom:1px solid #ccc;}

/* REGISTRATIONPAGE */
#Form_AddForm_FirstName_Holder, #Form_AddForm_Surname_Holder, #Form_AddForm_PhoneNumber_Holder, #Form_AddForm_Mobile_Holder{width:49%; float:left;}
#Form_AddForm_Surname_Holder, #Form_AddForm_Mobile_Holder{padding-left:2%;}

#Form_RegisterForm_FirstName_Holder, #Form_RegisterForm_Surname_Holder, #Form_RegisterForm_PhoneNumber_Holder, #Form_RegisterForm_Mobile_Holder, #Password_Password_Holder, #Password_ConfirmPassword_Holder{width:49%; float:left;}
#Form_RegisterForm_Surname_Holder, #Form_RegisterForm_Mobile_Holder, #Password_ConfirmPassword_Holder{padding-left:2%;}
#Form_RegisterForm_Email_Holder:before{clear:both;}

#Form_RegisterForm_FirstName_Holder:before{
	 content: "Your Details ";
	 font-size:16px;
	 text-transform:uppercase;
	border-bottom: solid 1px #1aae8e; clear:both;	
}
#Form_RegisterForm_Surname_Holder:before{
	 content: ".";
	 font-size:16px;
	 color:#fff;
	 text-transform:uppercase;
	border-bottom: solid 1px #1fff; clear:both;	
}

#Form_RegisterForm_BusinessName_Holder:before{
	 content: "Business Details ";
	 font-size:16px;
	 margin-top:20px;
	 text-transform:uppercase;
	border-bottom: solid 1px #1aae8e;	
}
/* MIXED */
header:after,
.main:after,
#Root:after,
.search-bar:after,
header .inner:after,
footer:after { /* clearfix */
    height: 0;
    content: ".";
    display: block;
    clear: both;
    visibility: hidden;
}
.search-bar form input.action,
.header .primary li a,
.footer a { /* adds color transition when links/inputs on hover */
    -moz-transition: color 0.2s;
    -webkit-transition: color 0.2s;
    transition: color 0.2s;
}
.footer a.brand { color: #333; margin-left: 0; }
.footer a.brand:hover { color: #1aae8e; }
body h1 span.amp {
    font-family: Baskerville,"Goudy Old Style","Palatino","Book Antiqua",Georgia;
    font-style: italic;
}


/* FOOTER */
.footer {
    color: #999;
    background:url('../images/tile-pattern-dark.jpg');
    padding: 20px 0;
    font-size: 11px;
    line-height: 22px;
	margin-top:40px;
}
	.footer a {
	    color: #999;
	}
	.footer a:hover {
	    color: #B90000;
	}
	.footer .left {
	    float: left;
	    color: #000;
	    display: block;
	    margin-bottom: 10px;
	}
	.footer .right {
	    float: right;
	    display: block;
	    margin-bottom: 10px;
	}
	.footer span {
	    padding: 0 3px;
	    color: #bbb;
	}
	.footer .primary,
	.footer .primary ul {
	    display: inline;
	    margin: 0;
	    padding: 0;
	}
		.footer .primary li {
		    display: inline;
		}
	.ie6 .footer .primary li,
	.ie7 .footer .primary li { /* this is a bugfix for ie6/7 */
	    display: inline;
	    zoom: 1;
	    margin-right: 10px;
	}
	.footer .primary li:after { /* adds '/' to separate the footer navigation items */
	    padding: 0 3px 0 5px;
	    content: '/';
	    color: #999;
	}
	.footer .primary li:last-child:after {
	    content: ''; /* makes sure last nav item doesn't have a '/' following it */
	}
	.footer .arrow {
	    padding: 0 8px 0 5px;
	    color: #1aae8e;
	    font-size: 13px;
	}
	.footer .primary .nav-open-button {
	    display: none; /* the footer includes the primary nav include - this makes sure the nav open close button doesn't show up */
	}

/* PAGE SPECIFIC LAYOUT */

	/* Homepage */
		/* currently no Hompage specific styles - feel free to add your own */

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

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

@media only screen and (max-width: 1200px) {
.businessCardImage{height:200px; }
.BusNameTitle{min-height:60px;}
.slideshow li .sliderCallOut h2{font-size:40px; line-height:40px;}
.promobox h2{font-size:40px; line-height:40px; margin-bottom:20px; }
.promobox p{font-size:16px; line-height:22px; }
}

@media only screen and (max-width: 1100px) {
	.businessCardWrap{padding:10px; width:50%; float:left; text-align:left; }
	.businessCardImage {height: 240px;}
}

/* BREAKPOINT 960px */

@media only screen and (max-width: 960px) {
	.content img {
	    max-width: 97%;
	    height: auto;
	}
		.header{background:none;}
		
	.HomePage .header .inner{	background:none;}
	.header .primary ul {
	    margin-left: -12px;
	    -webkit-padding-start: 0px; /* removes default webkit padding on ul items */
	}
	
	.float-panel{height:110px;}
	


	.slideshow li .sliderCallOut h2{font-size:30px; line-height:30px;}

	.promobox h2{font-size:30px; line-height:30px; margin-bottom:15px; }
	.promobox p{font-size:16px; line-height:22px; }	
	.promobox .slidelink.promobx {bottom:40px;}
	
	.news-events-list_item{width:50%; }
	
}

@media only screen and (max-width: 860px) {
	.businessCardImage {height: 200px;}
	.slideshow li .sliderCallOut {display:block; position:relative; width:100%;}
	.contactForm, .pageContent{width:100%; float:none; margin-bottom:30px;}

	.closeReadMore{}
}


@media only screen and (max-width: 780px) {
	.businessCardImage {height: 160px;}
}

/* BREAKPOINT 760px */

/* when changing the breakpoint below, change it ito the same value in the script.js file as well */
@media only screen and (max-width: 760px) {
	body {
	    max-width: 760px;
	}
	#media-query-trigger {
	    visibility: visible;
	}
	.inner{padding:0 20px;}
	.header .headerMainLogo img{max-width:90%; width:400px;}

	/* Navigation*/

	 .tablet-nav .header .float-panel.fixed .primary .nav-open-button{top:0;}

	.tablet-nav .header .brand {
	    float: none;
	    display: inline-block;
	    margin-left: 22px;
	    margin-bottom: 22px;
	}
		.brand h1 {
		    font-size: 40px;
		}
		.brand h1 {
		    padding-right: 100px; /* padding stops .brand text from overlapping the search and nav buttons */
		}
	.tablet-nav .header {
	    padding: 0px;
	}
		.tablet-nav .header .inner {
		    padding:100px 20px 0 20px;
		    min-height: 0;
		}
		.tablet-nav .header .primary .nav-open-button { /* styling and positioning of the nav toggle button */
		    z-index: 100;
		    height: 20px;
		    position: relative;
		    right: 0;
		    top: 0;
		    display: block;
		    cursor: pointer;
		    font-family: 'WebSymbolsRegular';
		    font-size: 20px;
		    color: #1aae8e;
			float:right;
		}
		.tablet-nav .header .primary ul {
		    z-index: 10;
		    position: relative;
		    display: none; /* initially hiding the navigation */
		    float: left;
		    margin: 0;
		    padding: 0;
		    white-space: normal;
		    width: 100%;
		}
			.tablet-nav .header .primary #coolMenu li {
			    width: 100%;
			    margin: 0;
			    padding: 0;
			    float: none; /* displays list items vertically */
			    background: none;
			    position: relative;
			    text-shadow: 0 1px #fff;
			}
			.tablet-nav .header .primary ul li:after { /* creates the arrow for the primary nav links */
			    content: '\003e';
			    display: block;
			    position: absolute;
			    right: 20px;
			    top: 0px;
			    font-family: 'WebSymbolsRegular';
			    font-size: 14px;
			    color: #999;
			    text-align: center;
			    vertical-align: middle;
			    line-height: 38px;
			}
			.tablet-nav .header .primary ul li a,
			.tablet-nav .header .primary ul li.current a,
			.tablet-nav .header .primary ul li.section a { /* styling the  top level nav links */
			    padding: 10px 0 10px 22px;
			    font-weight: bold;
			    border-bottom: 1px solid #bbb;
			    color: #434343;
			    background: #e7e7e7;
			}
			.tablet-nav .header .primary ul li.current a,
			.tablet-nav .header .primary ul li.section a {
				background: #CCCCCC; /* makes background on current top level page slightly darker */
			}
			.tablet-nav .header .primary ul li a:hover {
			    color: inherit;
			}
			.tablet-nav .header .primary li.section:after,
			.tablet-nav .header .primary li.current:after {
			    display: none; /* hides the link arrow on current top level page */
			}
			.tablet-nav .tablet-nav .header nav.primary ul li {
				padding: 0;
			}
			
			#coolMenu ul{position:relative; width:100%; top:0; }
			#coolMenu ul li a {padding-left:40px; color:#000; border-bottom: solid 1px #000; }
			
			.header .barFormHeader{display:none;}
			
			.headerSocial{position:absolute; top:0; right:0;}

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

	.header .headerMainLogo { max-width: 100%; padding-top:0; padding:0; float:none;}
	.header .search-barHeader{right:auto; padding-top:10px; width:100%; position:absolute; top:0; right:0;}
	.float-panel{height:40px; }
	.fixed .navMenu{padding-top:10px; padding-right:20px;}
	.navMenu{padding-top:20px;}

	.header .search-barHeader form{}

	.slideshow li .sliderCallOut h2 {font-size:24px; line-height:30px;}
	.slideshow li .sliderCallOut p {font-size:18px; line-height:24px;}
	.slideshow li .sliderCallOut{padding:30px 20px;}
	.search-barHeader form input.action{}
	.businessCardWrap {width:100%; padding:10px 0; position:relative;  display:block;}
	.businessCard{padding:20px 10px;}
	.businessCardImage, .BusNameAdd, .businessCard .smallIntro{min-height:auto; height:auto; }
	.businessCardWrap.widdenClass .busReadMore{padding:0;}
	.businessCard .websiteListing{height:auto;}
	.businessCardImage img{max-width:100%;}
	.BusNameTitle, .businessCard .businessContact, .BusNameAdd, .businessCard {height:auto;}
	.businessCardWrap.widdenClass .businessCardInview, .businessCardWrap.widdenClass .busReadMore {
    width: 100%; float: none; display:block;  position:relative; clear:both; text-align:center;}
	.EventsPage .news-events-list_item{width:100%; float:none;}
	.HomePage .news-events-list_item{width:100%; float:none;}
	.event-summary__content{ min-height:auto; height:auto}
	.event-summary__header{ min-height:auto; height:auto}
	.EventsPage .news-events-list_item.ListStyle .event-summary__header{width:100%; float:none; }
 .EventsPage .news-events-list_item.ListStyle .event-summary__content, .EventsPage .news-events-list_item.ListStyle .event-summary__footer{width:100%; float:none; min-height:auto; height:auto;}

	#Form_RegisterForm_FirstName_Holder, #Form_RegisterForm_Surname_Holder, #Form_RegisterForm_PhoneNumber_Holder, #Form_RegisterForm_Mobile_Holder, #Password_Password_Holder, #Password_ConfirmPassword_Holder{width:100%; float:none;}
	
	#Form_RegisterForm_Surname_Holder, #Form_RegisterForm_Mobile_Holder, #Password_ConfirmPassword_Holder{padding-left:0;}

	/* Main Content */
	.main {
	    padding: 20px 0 45px; /* decrease padding so that more content can fit on screen */
	}
	.content-container,
	.sidebar {
	    width: 100%; /* sidenav is now shown above the page content */
	    margin-bottom: 30px;
	}
		.typography h1 { /* decrease size of page heading due to smaller screen */
		    font-size: 30px;
			line-height:35px;
		    margin-bottom: 15px;
		    padding-bottom: 10px;
		}
		.typography p {
		    font-size: 14px;
		    line-height: 23px;
		}
	p.intro {
	    font-size: 19px;
	    line-height: 27px;
	}
	.main .inner {
	    padding: 0 20px;
	}
	/* Secondry Nav */
	.secondary li a {
	    line-height: 24px;
	}
	.secondary li .arrow {
	    line-height: 26px;
	}
	.promobox{width:100%; margin:0 auto; float:none; padding-bottom:30px;}
	.promobox h2{font-size:40px; line-height:40px; margin-bottom:20px; }
	.promobox p{font-size:16px; line-height:22px; }	
	.promobox .slidelink.promobx {}
	.promobox .bkgrImg{position:absolute;}
	.promobox .promoContent, .promobox .slidelink.promobx{position:relative; bottom:auto;}
	.promobox{overflow:hidden;}
	
	.peopleCardWrap .businessCardInview, .peopleCardWrap .busReadMore{width:100%; float:none;}

	
	/* Footer */
	.footer .right {
	    float: left;
	    width: 100%;
	}
}

/* Print Styles */

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

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

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

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

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

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