/* 
Theme Name: Bosworth Battlefield Heritage Centre
Author: Cyber Media Solutions
Author URI: http://www.cyber-media.co.uk
Version: 1.0
*/

/* COLOURS
white: #ffffff;
burgundy: #860038;
dark burgundy: #501d30;
beige: #f6efe4;
light beige: #f4ead8;
gold: #b89639;
black: #000000;
============================ */

/* FONTS ONLY
================================================================================ */
/*@import url('https://fonts.googleapis.com/css?family=Tinos|Open+Sans:400,700');*/
@import url('https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;700&display=swap');

/*@font-face {
    font-family: 'CharlemagneBoldRegular';
    src: url('fonts/charlb-webfont.eot');
    src: url('fonts/charlb-webfont.eot?#iefix') format('embedded-opentype'),
         url('fonts/charlb-webfont.woff') format('woff'),
         url('fonts/charlb-webfont.ttf') format('truetype'),
         url('fonts/charlb-webfont.svg#CharlemagneBoldRegular') format('svg');
    font-weight: normal;
    font-style: normal;
}*/

html, body, h5, h6, p, li, th, td, form, button, #cse, #cse *, #search input, .search .gsc-search-box input.gsc-input, .button {	
	font-family: 'Open Sans', Arial, Helvetica, sans-serif !important;
}

/* GENERAL
================================================================================ */
html {
	font-size: 16px; /* match foundation.css */
	color: #000;
}

body {
	background-color: #ffffff;
	font-size: 0.875rem;
}

h1, h2, h3, h4, h5, p, li, th, td, form, button, .h1, .h2, .h3, .h4, .h5, .p {	
	font-size: 0.875rem;
	line-height: 1.28; /* relative to computed font-size  */
	padding: 0;
	color: #000000;
}

h1, h2, h3, h4, h5, .h1, .h2, .h3, .h4, .h5 { 
	color: #860038;
	margin: 0.9375rem 0;
	letter-spacing: 0.025em;
	/*font-family: CharlemagneBoldRegular, 'Tinos', Arial, Helvetica, sans-serif;*/
}

h1, .h1 {
	font-size: 1.25rem;
	font-weight: 400;
	line-height: 1.5; /* relative to computed font-size  */
	/*text-transform: uppercase;*/
}

h2, .h2 {
	font-size: 1.125rem;
	font-weight: 400;
	/*text-transform: uppercase;*/
}

h3, .h3 {
	font-size: 1rem;
	font-weight: 400;	
	/*text-transform: uppercase;*/
}

h4, .h4 {
	font-size: 1.125rem;
	font-weight: 400;
}

h5, .h5 {
	font-size: 1rem;
	font-weight: 400;
}

p, .p {
	margin: 0.625rem 0;
	line-height: 1.71;
	font-size: 0.875rem;
}

ul {
	margin: 1.25rem 0;
	padding: 0;
	list-style: none;
	font-size: 0.875rem;
}
	ul li {
		margin: 0;
		padding: 5px 0 5px 25px;
		font-size: 0.875rem;
		line-height: 1.28;
		position: relative;
	}
		ul li:before {
			content: '';
			display: inline-block;
			border-radius: 50%;
			margin-right: 0.625rem;
			height: 6px;
			width: 6px;
			background-color: #000000;
			position: absolute;
			top: 9px;
			left: 0;
		}
		
		ul.no_bullet li:before {
			display: none;
		}
		
	ul.nostyle {margin: 0; padding: 0;}
	ul.nostyle li {margin: 0; padding: 0; background: none;}
	ul.nostyle li:before {display: none;}
ol {
	margin: 1.25rem 0;
	padding: 0;
	list-style: none;
	font-size: 0.875rem;
}
	ol li {
		margin: 0;
		margin-left: 25px;
		padding: 5px 0;
		font-size: 0.875rem;
		line-height: 1.28;
		margin-left: 25px;
		list-style-type: decimal;
}

a {
	color: #860038;
	outline: none;
	text-decoration: none;
}
	a:hover, a:focus, a.hover {
		color: #b89639;
		outline: none;
	}
	
hr {
	width: auto;
	margin: 0.9375rem 0;
	border: none;
	border-bottom: solid 1px #ebe5e7;
	clear: both;	
}
	hr.small {
		max-width: 100px;
		margin: 0.9375rem auto;	
	}

img {
	margin-left: auto;
	margin-right: auto;
}
	img.fill {width: 100%;}
	
blockquote {
	margin: 0; padding: 0;
	border: none;
}

/* Useful misc classes */
.centre {text-align: center;}
.center_small {text-align: center;}

.relative {position: relative;}
.visible {visibility: visible;}
.hidden {visibility: hidden; display: none !important;}
.clear {clear: both;}
.clear_right {clear: right;}
.clear_left {clear: left;}
.vert_centre {position: relative; top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); display: block; }

.right_small {float: right;}
.left_small {float: left;}

/* Margins */
.no_marg_top {margin-top: 0 !important;} .no_marg_bot {margin-bottom: 0 !important;} .no_marg_left {margin-left: 0 !important;} .no_marg_right {margin-right: 0 !important;} .no_marg {margin: 0 !important;}
.no_marg_small {margin: 0 !important;}
/* Paddings */
.no_pad_top {padding-top: 0 !important;} .no_pad_bot {padding-bottom: 0 !important;} .no_pad_left {padding-left: 0 !important;} .no_pad_right {padding-right: 0 !important;} .no_pad {padding: 0 !important;}
.no_pad_small {padding: 0 !important;}

.marg_top { margin-top: 30px;} .marg_left { margin-left: 30px;} .marg_right { margin-right: 30px;} .marg_bot { margin-bottom: 30px;}

.full {width: 100%;}

.aligncenter, .alignleft, .alignright {display: block;}

.sr_only {
	position: absolute;
	left: -10000px;
	top: auto;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

p.large_text {
    font-family: 'Open Sans', Arial, Helvetica, sans-serif;
    color: #b89639;
	font-size: 1.5rem;	
	text-transform: uppercase;
}
/* FOUNDATION ELEMENTS
================================================================================ */
.flex-video {margin-bottom: 0;}

.reveal-modal, dialog {
	border: none;
	min-height: 0;
}
	.reveal-modal .close-reveal-modal, dialog .close-reveal-modal {
		width: 20px;
		height: 20px;
		display: block;
		background: #a5a5a5;
		border-radius: 50%;
		position: absolute;
		top: 7px;
		right: 7px;
		color: #ffffff;
		font-weight: normal;
		cursor: pointer;
		text-align: center;
		font-size: 1.0rem;
		line-height: 1.25;
		z-index: 9999;
	}
		.reveal-modal .close-reveal-modal:hover, dialog .close-reveal-modal:hover {
			background: #f47f37;
		}
.reveal-modal-bg {
	background: rgba(255,255,255,0.75);	
}

/* HEADER
================================================================================ */
#header {
	background: url(img/style/head_bg_mob.jpg) top center no-repeat #860038;
	background-size: cover;
	position: relative;
	min-height: 100px;
}
#header.home {padding-bottom: 60px;overflow: hidden;}
#header + .beige_bg:not(.pad_top) {
	padding-top: 30px;
}

a#logo {
	display: inline-block;
	margin: 0 auto;
	width: 140px;
	position: absolute;
	z-index: 5;
	left: 50%;
	margin-left: -66px;
}

#mob_menu {
	position: absolute;
	right: 0.9375rem;
	top: 0;	
}

.neg_marg {
	position: relative;
	z-index: 1;	
}
.pad_top {padding-top: 50px;}
	
	
.alert {
	width: 100%;
	background: #b89639;
	padding: 0.9375rem 0;
	position: relative;
	z-index: 2;
	margin-top: 110px;
	margin-bottom: -110px;
}
	.alert p {
		color: #ffffff;
		font-weight: 400;
		font-size: 1rem;
		text-align: center;	
	}

/* NAVIGATION
================================================================================ */

/* SUBNAV ====================================================================== */
.subnav {
	overflow: hidden;
}
		
	.subnav ul {padding: 0; margin: 0;}
		.subnav ul li {padding: 0; margin: 0;}
		.subnav ul li:before {display: none;}
	.subnav a {
		color: #6f0748; 
		display: block;
		padding: 0.5rem 0;
		border-bottom: solid 1px rgba(111,7,72,0.2);
	}
		.subnav a:hover { color: #e2008d;}

	.subnav li.current-menu-item > a { color: #e2008d;}
	

.subnav ul li, .subnav ul li.current-menu-ancestor > a, .subnav ul li.current-menu-item > a {display: none;}

.subnav ul li.current-menu-item, 
.subnav ul li.current-menu-ancestor, 
.subnav ul li.current-menu-ancestor > ul > li,
.subnav ul li.current-menu-item > ul > li,
.subnav ul li ul.sub-menu li.current-menu-item > a, 
.subnav ul li ul.sub-menu li.current-menu-parent ul li,
.subnav ul li ul.sub-menu li.current-menu-ancestor > a  {display: block;}

.subnav ul.sub-menu ul.sub-menu li a {padding-left: 0.9375rem;}


/* BREADCRUMB
================================================================================ */

/* MAIN CONTENT
================================================================================ */
#banner .royalSlider {
	width: 100%;	
}
#banner .rsOverflow, #banner .rsSlide {overflow: visible;}

#banner {
	margin-top: 140px;
	padding-bottom: 0.9375rem;	
}
	#banner h1 {
		color: #ffffff;
		/*font-family: CharlemagneBoldRegular, 'Tinos', Arial, Helvetica, sans-serif;*/
		font-size: 2.25rem;
	}
	#banner h1 span {
		font-family: 'Open Sans', Arial, Helvetica, sans-serif;
		color: #b89639;
		font-size: 1rem;
	}
	#banner p {
		color: #ffffff;	
	}
	
	#banner a.button:hover { background: #501d30;}


.beige_bg {
	background: #f5efe3;
}
.lbeige_bg {
	background: url(img/style/lbeige_bg.png) repeat;	
}

.ribbon_bg {
	background: #ffffff;
	margin: -50px 0.625rem 1.875rem 0.625rem;
	box-shadow: 0 5px 5px rgba(0,0,0,0.05);
	border: solid 1px rgba(0,0,0,0.1);
	position: relative;
}

a.show_more {
	display: block;
	text-align: left;	
}
	a.show_more:after {
		content: '';
		display: inline-block;
		width: 20px;
		height: 20px;
		float: right;
		background: url(img/style/more_arrow_d.png) 0 0 no-repeat;	
	}
	
	a.show_more:hover {
		color: #501d30;	
	}
	a.show_more:focus {
		color: #860038;	
	}
	
	a.show_more.active:after {
		background: url(img/style/more_arrow_u.png) 0 0 no-repeat;	
	}


h3.ribbon {
	text-align: center;
	position: relative;
	background: url(img/style/line-l.png) left center no-repeat;
	padding: 0 0 0.8125rem 0;
	z-index: 5;
	/*font-family: CharlemagneBoldRegular, 'Tinos', Arial, Helvetica, sans-serif;*/
}
	h3.ribbon.no-line {
		background-image: none;
	}
	h3.ribbon:after {
		content: '';
		display: block;
		background: url(img/style/line-r.png) right center no-repeat;
		width: 100%;
		height: 100%;
		position: absolute;	
		top: 0;
	}
		h3.ribbon.no-line:after {
			background-image: none;
		}
	
	h3.ribbon span {
		display: inline-block;
		position: relative;
		z-index: 2;
		background: #eadfc3;
		padding: 0.4375rem 0.625rem 0.375rem 0.625rem;
	}
		h3.ribbon span:before, h3.ribbon span:after {
			content: '';
			display: block;
			width: 60px;
			height: 40px;
			position: absolute;	
			top:0;
			z-index: 1;
		}
		h3.ribbon span:before {
			left: -50px;
			background: url(img/style/ribbon-l.png);
		}
		h3.ribbon span:after {
			right: -50px;	
			background: url(img/style/ribbon-r.png);
		}


#event-list > span {
	padding:0 10px;
	display:none;
}

#event-list.empty > span {
	display:block;
}

.event {
	background: #ffffff;
	box-shadow: 0 5px 5px rgba(0,0,0,0.05);
	position: relative;
	/*padding-bottom: 60px;*/
}
	.event a {
		display: block;
	}
		.event a img {
			max-height: 200px;
			margin: 0 auto;
			display: block;
			width: 100%;
		}
	.event a .title {
		display: block;
		/*font-family: CharlemagneBoldRegular, 'Tinos', Arial, Helvetica, sans-serif;*/
		/*color: #ffffff;*/
		font-size: 1.125rem;
		/*text-transform: uppercase;*/
		padding: 0.9375rem 1.875rem 0.9375rem 0.9375rem;
		/*background: #830036 url(img/style/arrow-w.png) right center no-repeat;*/
		transition: background-color 200ms ease-in-out, color 200ms ease-in-out, border-color 200ms ease-in-out;
		position: relative;
		border-bottom: solid 1px #ebe5e7;
		border-top: solid 1px #ebe5e7;
	}
		.event a .title::after {
			content: "";
			position: absolute;
			top: 50%; right: 0.9375rem;
			transform: translateY(-50%) rotate(45deg) skew(6deg, 6deg);
			width: 0.8125rem; height: 0.8125rem;
			border-top: 2px solid #830036;
			border-right: 2px solid #830036;
			transition: border-color 200ms ease-in-out;
		}

		.event a .title > span {
			display: block;
			position: relative;
			top: 50%;
			transform: translateY(-50%);
			width: calc(100% - 45px);
		}
	.event a:hover .title {
		background-color: #830036;
		border-color: #830036;
		color: #fff
	}	
		.event a:hover .title::after {
			border-color: #fff;
		}
	
	.event p {
		padding: 0.9375rem;
		margin: 0;
	}

#event-list .large-block-grid-3>li {
	clear: none !important;
}

.filter-hide, .temporal-hide {
	display: none !important;
}


.events_filter p {
	font-size: 115%;
}
.events_filter ul {
	padding: 0 0 0.625rem 0; margin: 0;
	list-style: none;
}
.events_filter ul li {
	display: inline-block;
	margin: 0; padding: 0;
}
.events_filter ul li::before {
	content: none;
	display: none;
}
.events_filter ul li a {
	background: #fff;
	color: #000;
	border-radius: 0.9375rem;
	padding: 0.3125rem 0.75rem; margin: 0 0.625rem 0.625rem 0.625rem;
	cursor: pointer;
	transition: color 0.3s ease, background-color 0.3s ease;
	font-weight: 600;
	display: block;
	font-size: 110%;
}
	.events_filter ul li a:hover,.events_filter ul li a:focus  {
		background: #EADFC3;
	}
	.events_filter ul li a.active {
		background: #860038;
		color: #fff;
	}

/* EVENT CALENDAR =================================== */

.fullcalendar {
	width: 100%;
	border: none;
	background: none;
	display: block;
}
	.fullcalendar thead {
		background: #eadfc3;
		font-size: 0;
		display: block;
		width: 100%;
		margin: 0 0 1.25rem;
		box-shadow: 0 5px 5px rgba(0,0,0,0.05);
	}
		.fullcalendar thead tr {
			display: block;
			width: 100%;
		}
		.fullcalendar thead td {
			display: inline-block;
			vertical-align: middle;
			width: 36px;
		}
			.fullcalendar thead td.month_name {
				display: inline-block;
				position: relative;
				z-index: 2;
				/*font-family: CharlemagneBoldRegular, 'Tinos', Arial, Helvetica, sans-serif !important;*/
				color: #860038;
				width: calc(100% - 72px);
				text-align: center;
			}

	.fullcalendat tbody {

	}
		.fullcalendar .days-names {
			display: none;
		}
			.fullcalendar td.eventless, 
			.fullcalendar td.eventless-pre, 
			.fullcalendar td.eventless-post, 
			.fullcalendar td.eventless-today, 
			.fullcalendar td.eventful-pre, 
			.fullcalendar td.eventful-post {
				display: none;
			}
				.fullcalendar td.eventless-today, .fullcalendar td.eventful-today {
					background-color: #b89639 !important;
					color: white !important;
				}

			.fullcalendar tbody, .fullcalendar tbody tr {
				display: block;
				width: 100%;
				background: none !important;
			}

			.fullcalendar tbody td {
				display: block;
				width: 100%;
				background: #ffffff;
				box-shadow: 0 5px 5px rgba(0,0,0,0.05);
				margin: 0 0 1.25rem;
				padding: 0;
				font-size: 0;
				background: #830036;
			}
				.fullcalendar tbody td.eventful:hover, .fullcalendar tbody td.eventful-today:hover {
					background: #ad576e;
				}
				.fullcalendar .eventful > a, .fullcalendar .eventful-today > a {
					display: inline-block;
					/*font-family: CharlemagneBoldRegular, 'Tinos', Arial, Helvetica, sans-serif;*/
					text-align: center;
					color: #ffffff;
					font-size: 1rem;
					/*text-transform: uppercase;*/
					padding: 16px 15px;
					width: 50px;
					vertical-align: top;
				}
				.fullcalendar .eventful > ul, .fullcalendar .eventful-today > ul {
					display: inline-block;
					vertical-align: top;
					width: calc(100% - 50px);
					margin: 0;
					background: white;
				}
					.fullcalendar .eventful > ul li, .fullcalendar .eventful-today > ul li {
						padding: 0;
						border-bottom: 1px solid #860038;
					}
						.fullcalendar .eventful > ul li a, .fullcalendar .eventful-today > ul li a {
							padding: 16px 15px;
							display: block;
						}
						.fullcalendar .eventful > ul li:before, .fullcalendar .eventful-today > ul li:before {
							display: none;
						}

/* EVENT FILTERS ==================================== */

.all_categories {
	display: inline-block;
	background-color: #830036;
	color: white;
	padding: 10px 20px;
	line-height: 20px;
	transition: background-color .3s ease-in-out;
	text-align: left;
	margin-bottom: 15px;
}
	.all_categories:hover {
		background-color: #ad576e;
		color: white;
	}

.event-categories {

}
	.event-categories li {

	}
		.event-categories li a {
			display: block;
			background-color: #830036;
			color: white;
			padding: 15px 0 15px 60px;
			line-height: 20px;
			background-repeat: no-repeat;
			background-position: center left 5px;
			background-position-x: 5px;
			background-position-y: center;
			transition: background-color .3s ease-in-out;
			text-align: left
		}
			.event-categories li a:hover {
				background-color: #ad576e;
			}
			.event-categories li a.active {
				background-color: #b89639;
			}
			.event-categories li a.battle { background-image: url(img/icons/event-battle.png); }
			.event-categories li a.families { background-image: url(img/icons/event-family.png); }
			.event-categories li a.seasonal { background-image: url(img/icons/event-christmas.png); }
			.event-categories li a.easter { background-image: url(img/icons/event-easter.png); }
			.event-categories li a.falconry { background-image: url(img/icons/event-bird.png); }
			.event-categories li a.walks { background-image: url(img/icons/event-walk.png); }
			.event-categories li a.talks { background-image: url(img/icons/event-talk.png); }
			.event-categories li a.craft-workshop { background-image: url(img/icons/event-workshop.png); }
			.event-categories li a.concert { background-image: url(img/icons/event-concert.png); }
			.event-categories li a.concerts { background-image: url(img/icons/event-concert.png); }
			.event-categories li a.living-history { background-image: url(img/icons/event-helmet.png); }
			.event-categories li a.garden-plant { background-image: url(img/icons/event-plant.png); }
			.event-categories li a.paranormal { background-image: url(img/icons/event-paranormal.png); }
			.event-categories li a.theatre { background-image: url(img/icons/event-theatre.png); }
			.event-categories li a.cal { background-image: url(img/icons/event-cal.png); }
			.event-categories li a.list { background-image: url(img/icons/event-list.png); }
			.event-categories li a.tithe-barn { background-image: url(img/icons/event-food.png); }
			.event-categories li a.exhibition { background-image: url(img/icons/event-history.png); }
			.event-categories li a.fairs { background-image: url(img/icons/event-christmas.png); }
	
.tag {
	position: absolute;
	width: 70px;
	height: 90px;
	top: 0;
	right: 0.625rem;
	background: url(img/style/tag-b.png);
	text-align: center;
	padding: 0.625rem;
}
	.tag.featured {
		right: 0.625rem;
		background: url(img/style/tag-g.png);	
		color: #ffffff;
		/*font-family: CharlemagneBoldRegular, 'Tinos', Arial, Helvetica, sans-serif;*/
		text-transform: uppercase;
		padding-top: 0.9375rem;
	}
.inline-tag {
	display: inline-block;
	margin: 0 5px;
	padding: 0.9375rem 0.9375rem 0.625rem;
	/*font-family: CharlemagneBoldRegular, 'Tinos', Arial, Helvetica, sans-serif;*/
	color: white;
	background: #860038;
}
	.inline-tag.featured {
		background: #b89639;
	}
.tags_bottom {
	position: absolute;
	width: auto;
	height: 70px;
	bottom: 0; left: 0;
	background: url(img/style/tag-horizontal.png) right top no-repeat;	
	text-align: center;
	padding: 0 1rem 0.625rem 0;
}
	.tags_bottom .tag {
		position: static;
		float: left;
		background: none;
		width: 60px; height: 60px;
		padding: 0.625rem;
	}
.tags_top {
	position: absolute;
	height: 90px;
	top: 0; right: 0.625rem;
}
	.tags_top .tag {
		position: static;
		float: right;
	}
.tags_top + h1 {
	padding: 0 70px;
}

.cont_box {
	background: #ffffff;
	box-shadow: 0 5px 5px rgba(0,0,0,0.05);	
	margin-bottom: 0.9375rem;
	overflow: hidden;
}


	.cont_box img {
		display: block;
	}
	.cont_box.no_bg {
		background: transparent;
		box-shadow: none;	
	}

	.cont_box a {
		display: block;
		padding: 0.9375rem;
		min-height: 150px;
		position: relative;
		background-image: url(img/adverts/roses.jpg);
		background-position: bottom left;
		background-repeat: no-repeat;
		background-size: cover;
	}
	.cont_box.no_bg a {background: none;}
	.cont_box.small_box a { min-height: 0;}
	
	.cont_box .h3, .cont_box .h4 {
		/*font-family: CharlemagneBoldRegular, 'Tinos', Arial, Helvetica, sans-serif;
		text-transform: uppercase;*/
		font-size: 1.25rem;
		display: block;
		color: #860038;
	}
	.cont_box .h4 {
		font-size: 1rem;	
	}
		.cont_box.big_text .h3 {
			margin-bottom: 0.9375rem;
			text-align: center;
			padding: 0 50px;
		}
		.cont_box.big_text .h3:after {
			content: '';
			display: block;
			clear: both;	
		}
		
		.cont_box.big_text .h3 span {
			position: relative;
			display: inline-block;
			width: auto;
		}
		
		.cont_box.big_text .h3 span:before, .cont_box.big_text .h3 span:after {
			content: '';
			display: block;	
			width: 40px;
			height: 1px;
			position: absolute;
			border-bottom: solid 1px #caa5a8;
			top: 50%;
		}
		.cont_box.big_text .h3 span:before {left: -50px;}
		.cont_box.big_text .h3 span:after {right: -50px;}
		
	.cont_box .p {
		font-size: 0.8125rem;
		display: block;
		color: #000000;
		padding-bottom: 0.625rem;
	}
		
		.cont_box.big_text .p {
			font-size: 0.875rem;
			text-align: center;
			text-shadow: none;
		}
	
	.cont_box a .content {
		display: block;
		position: relative;
		z-index: 2;	
	}
	.cont_box a .hover {
		display: block;
		position: absolute;
		width: calc(100%);
		height: calc(100%);
		top: 0;
		left: 0;
		z-index: 1;
		background-color: rgba(134,0,56,0);
		transition: background-color 300ms ease-in-out;
	}
	
	.cont_box a:hover .hover {background-color: rgba(134,0,56,0.8); background-image: none;}
	.cont_box:hover .h3, .cont_box:hover .h4, .cont_box:hover .p {
		color: #ffffff;	
	}
	
	.cont_box .pad {
		padding: 0 0.9375rem 0.9375rem 0.9375rem; 
		display: block;
	}
	.cont_box .big_pad {
		padding: 0.9375rem;
		display: block;	
	}
	
	.cont_box .gold {background: #b89639;}
	.cont_box .burgundy {background: #860038;}
	
	.cont_box.white .h3, .cont_box.white .h4, .cont_box.white .p {color: #ffffff;}
	.cont_box.white .p {/* text-shadow: 0px 0px 5px black; */}
	
	.cont_box a:hover .gold .h3, .cont_box a:hover .gold .h4, .cont_box a:hover .gold .p {color: #860038;}

.cont_box .h3.ribbon {
	text-align: center;
	position: relative;
	display: inline-block;
	background: #860038;
	padding: 10px;
	color: #ffffff;
	margin-bottom: 0.9375rem;
}
.cont_box .h3.ribbon span {position: relative; z-index: 10;}

	.cont_box .h3.ribbon:before, .cont_box .h3.ribbon:after {
		content: '';
		display: block;
		z-index: 9;
		bottom: -11px;
		position: absolute;	
		width: 70px;
		height: 61px;
	}

		.cont_box .h3.ribbon:before {
			left: -47px;
			background: url(img/style/burg_rib_l.png);
		}
		.cont_box .h3.ribbon:after {
			right: -47px;	
			background: url(img/style/burg_rib_r.png);
		}


ul.social {
	text-align: center;
}
	ul.social li {
		display: inline-block;
		margin: 0 0.3125rem;
		padding: 0;	
	}
	ul.social li:before {display: none;}
	
	ul.social li a {display: block;}
	ul.social li a img {
		width: 32px;
		height: 32px;
		border-radius: 50%;
		overflow: hidden;
	}

#CDSWIDSSP {max-width: 100%;}
.beige_bg #CDSWIDSSP .widSSPData {background-color: transparent; padding: 0;}
ul.widSSPBullet li:before, ul.widSSPWriteReview li:before, ul.widSSPReadReview li:before {display: none;}

.doc img {margin-top: 0.9375rem;}
.doc_content {
	width: calc(100% - 90px);
	float: left;
	margin-left: 0.9375rem;
	border-bottom: 1px solid #caa5a8;
	margin-bottom: 1.875rem;
}
/* FORMS
================================================================================ */
form {
	margin: 0;
}
fieldset {
	padding: 0.4687rem 0;
	border: none;	
}
	form fieldset:nth-child(2n) {
		/* background: #fafafa; */
	}	

form em {font-size: 0.75rem;}

/* Labels */
label, p.lbl {
	color: #000000;
	cursor: default;
	font-size: 0.875rem;
	margin: 0 0 5px 0;
	padding: 6px 0 0 0;
}
	label .required, p.lbl .required {
		display: inline-block;
		margin-left: 5px;
		font-size: 0.625rem;
		background: #fee2be;
		border-radius: 5px;
		padding: 0.1875rem 0.3125rem;
		text-transform: uppercase;
		color: #666666;	
		line-height: 1.14;
	}
	label .format {
		font-size: 85%;
    	color: rgba(0,0,0,0.6);
	}

form .grid label, form .grid p.lbl {
	text-align: right;
}

span.wpcf7-list-item {
	display: inline-block;
}

/* Text fields */
input[type="text"], input[type="password"], input[type="date"], input[type="datetime"], input[type="datetime-local"], input[type="month"], input[type="week"], 
input[type="email"], input[type="number"], input[type="search"], input[type="tel"], input[type="time"], input[type="url"], input[type="color"], textarea {
	border: 1px solid #bcbcbc;
	box-shadow: none;

	color: #666666;
	font-size: 0.75rem;
	margin: 0 0 0.9375rem 0;
	height: 30px;
	padding: 5px;
	font-size: 0.875rem
}
	input[type="text"]:focus, input[type="password"]:focus, input[type="date"]:focus, input[type="datetime"]:focus, input[type="datetime-local"]:focus,
	input[type="month"]:focus, input[type="week"]:focus, input[type="email"]:focus, input[type="number"]:focus, input[type="search"]:focus, input[type="tel"]:focus, 
	input[type="time"]:focus, input[type="url"]:focus, input[type="color"]:focus, textarea:focus {
		background: #ffffff;
		border-color: #cccccc;
		box-shadow: none;
	}

input[type="checkbox"], input[type="radio"] {
	margin: 0.4687rem 0;		
}

/* Select fields */
select {
	margin: 0 0 0.9375rem 0;
	background-color: #ffffff;
	border: 1px solid #bcbcbc;
	font-size: 0.75rem;
	color: #666666;
	height: 30px;
	padding: 5px;
}
	select:hover {
		background-color: #ffffff;
		border-color: #cccccc;
	}
	
/* Checkboxes and radio buttons */
form.custom .custom.checkbox, form.custom .custom.radio {
	line-height: 1.42rem;
	font-size: 0.875rem;
	cursor: pointer;
}
	label.chk .custom.checkbox, label.chk .custom.radio {float: left;}

	form.custom .custom.checkbox.checked {}
	form.custom .custom.checkbox.checked:before {
		width: 8px; height: 8px;
		margin-top: 10px;
		margin-left: -4px;
		content: "";
		color: #ccc; background: #ccc;
	}
	
label.chk {
	clear: both;
	overflow: hidden;
}
	label.chk span.chk_text {
		display: block;
		float: left;
		margin-left: 10px;	
		width: 90%;
	}
		.medium-6 .medium-6 label.chk span.chk_text { width: 80%; }


		
/* Error messages */
p.error {
	margin: 5px 0 0 0;
	padding: 7px 0 0 0;
	background: url(../images/style/error_bg.png) -6px 0 no-repeat;	
}
	p.error span {
		padding: 5px 10px;
		color: #ffffff;
		font-weight: bold;
		background: #c60f13;
		display: block;	
		font-size: 0.8125rem;
	}

/* Buttons */
button.button {
	font-size: 0.875rem;
	max-height: 32px;
}

/* BUTTONS
================================================================================ */

.top-scroll-button {
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;
  	display: inline-block;
	height: 40px;
    width: 40px;
	position: fixed;
	bottom: 40px;
  	right: 10px;
 	box-shadow: 5px 0 5px rgba(0, 0, 0, 0.15);
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
	background: rgba(131, 0, 54, 0.8) url(img/style/up-arrow.png) no-repeat center 50%;
	color:#ffffff;
	visibility: hidden;
	opacity: 0;
	-webkit-transition: opacity .3s 0s, visibility 0s .3s;
	-moz-transition: opacity .3s 0s, visibility 0s .3s;
	transition: opacity .3s 0s, visibility 0s .3s;
	
}

.top-scroll-button:hover {
	background-color: #b89639;	
}

.top-scroll-button.cd-is-visible, .top-scroll-button.cd-fade-out, .no-touch .top-scroll-button:hover {
  -webkit-transition: opacity .3s 0s, visibility 0s 0s;
  -moz-transition: opacity .3s 0s, visibility 0s 0s;
  transition: opacity .3s 0s, visibility 0s 0s;
}
.top-scroll-button.cd-is-visible {
  /* the button becomes visible */
  z-index: 10;
  visibility: visible;
  opacity: 1;
}


.button, .button:focus {
	display: inline-block;
	width: auto;
	max-width: 610px;
	min-width: 120px;
	margin: 0;
	padding: 0.5rem 0.9375rem;
	line-height: 1.2;
	font-size: 0.875rem;
	color: #ffffff;
	text-transform: uppercase;
	font-weight: 400;
	text-align: center;
	border: none;
	background: #b89639;
	border-radius: 0.3125rem !important;
	margin: 0.625rem 0;
}

.enquire.button {
	border: 2px solid #b89639;
}

.enquire.button:hover{
	background-color: #ffffff;
}
	
	.button:hover, .button.hover, .button.active {	
		background-color: #860038;
		color: #ffffff;
	}

/* MAP
================================================================================ */
#map {
	width: 100%;
	height: 300px;
	margin-bottom: -39px;
	margin-top: -20px;
}
	
/* CROWN YOUR KING
================================================================================ */

.portrait {
	display: block;
	width: 250px;
	height: 250px;
	margin:  0 auto;
	border-radius: 150px;
	border: 5px solid #eadfc3;
	background-position: center;
	background-size: cover;
}

.king-blurb {
	font-size: 0.9375rem;
}

.stats {
	padding: 0.9375rem 0;
	margin: 0 -10px 25px;
	background-color: white;
	overflow: hidden;
}
	.stats p {
		padding: 0 0.9375rem;
	}

	.stat {
		/*font-family: CharlemagneBoldRegular, 'Tinos', Arial, Helvetica, sans-serif !important;*/
		line-height: 1.28;
		font-size: 1rem;
		position: relative;
		z-index: 2;
		z-index: 5;
	}
		.left-stats .stat {
			text-align: left;
			/* margin-left: -17px; */
			padding-left: 0px;
			background-image: url(img/style/fold-l.png);
			background-position: left bottom;
			background-repeat: no-repeat;
			position: relative;
			/* padding-top: 5px; */
		}
		.right-stats .stat {
			margin-right: -17px;
			padding-right: 17px;
			text-align: right;
			background-image: url(img/style/fold-r.png);
			background-position: right bottom;
			background-repeat: no-repeat;
			padding-top: 5px;
		}

		.stat span.title {
			color: #860038;
			background: #eadfc3;
			padding: 0.4rem 0.9375rem;
			border-bottom: none;
			display: inline-block;
			vertical-align: bottom;
		}

			.left-stats .stat:after {
				display: inline-block;
				content: "";
				width: 27px;
				height: 33px;
				background-image: url(img/style/ribbon-end-l.png);
				vertical-align: bottom;
				position: absolute;
				top: -1px;
			}

			.right-stats .stat:before {
				display: inline-block;
				content: "";
				width: 27px;
				height: 33px;
				background-image: url(img/style/ribbon-end-r.png);
				vertical-align: bottom;
			}

/* MAILING SIGN-UP
================================================================================ */
#newzapp_signupform {
	border:1px solid #CCCCCC;
	color:#666666;
	font-family:Arial, Helvetica, sans-serif;
	font-size:13px;
}

.newzapp_signupform_field {
	background-color:#f7f7f7;
	border:1px solid #CCCCCC;
	color:#666666;
	padding:3px;
	width:200px;
}

a.newzapp_signupform {
	color:#629C32;
	outline: none;
	text-decoration:underline;
}


.newzapp_signupform_poweredby {
	font-size:9px;
}				

/* MISC
================================================================================ */
table {border: solid 1px #fee2be;}
table thead {background: #fee2be;}
table thead tr th, table thead tr td, table tr th, table tr td {color: #000000;}
table tr.even, table tr.alt, table tr:nth-of-type(even) {background: #f7f2e2;}


/* FOOTER
================================================================================ */
#footer {
	background: #860038;
	padding-bottom: 1.25rem;
}
	#footer a, #footer p, #footer h3 {color: #ffffff;}
	#footer a:hover {color: #b89639;}
	
	#footer hr {
		border-color: #caa5a8;	
	}
	
	#footer a.show_more:after {background-image: url(img/style/more_arrow_d_w.png); }
	#footer a.show_more.active:after {background-image: url(img/style/more_arrow_u_w.png);}
	
	#footer ul {margin: 0; padding: 0;}
	#footer ul li {
		margin: 0;
		padding: 0 0 0.3125rem 0;
		color: #ffffff;	
	}
	#footer ul li:before {display: none;}

#TA_selfserveprop165 {
	padding-bottom: 30px;
}

/* SMALL (up to 640px)
==================================================================================================================================
=============================================================================================================================== */
@media only screen and (max-width: 20.062em) {

}

/* MEDIUM (640px up)
==================================================================================================================================
=============================================================================================================================== */
@media only screen and (min-width: 40.063em) {

/* GENERAL
================================================================================ */
h1 {font-size: 1.875rem;}
h2 {font-size: 1.25rem;}
h3 {font-size: 1.25rem;}
h4 {font-size: 1.125rem;}

#TA_selfserveprop165 {
	padding-bottom: 0;
}

.alert {
	margin: 0;
}

.no_pad_small {padding: 0 0.9375rem !important;}	
.center_small {text-align: left;}
.vert_centre_med_up {position: relative; top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); display: block; }
/* FOUNDATION ELEMENTS
================================================================================ */

/* HEADER
================================================================================ */
#header {
	background: url(img/style/head_bg.jpg) top center no-repeat #860038;
}
#header p, #header a {color: #ffffff;}
#header a:hover {color: #b89639;}
#header + .beige_bg:not(.pad_top) {
	padding-top: 0;
}

a#logo {
	margin: 0;	
	left: 0;
}
#banner {
	margin-top: 20px;	
}
#banner img {
	max-width: none;	
	width: calc(100% + 50%);
	margin-top: -50px;
	margin-left: -100px;
}

#banner .royalSlider { min-height: 500px;}

.banner_text {z-index: 2;}

.pad_top {padding-top: 30px;} .pad_left {padding-left: 30px;} .pad_bot {padding-bottom: 30px !important;} .pad_right {padding-right: 30px;}

/* BREADCRUMB
================================================================================ */
ul.breadcrumb {
	display: block; 
	padding: 0;
}
	ul.breadcrumb:after {


		content: '';
		display: block;
		clear: both;	
	}
	ul.breadcrumb li {
		float: left;
		margin: 0;
		padding: 0;
	}
	ul.breadcrumb li:before {display: none;}
		ul.breadcrumb li.separator {padding: 0 0.625rem; color: rgba(111,7,72,0.2);}
		
		ul.breadcrumb li a {
			color: #6f0748;


		}
		ul.breadcrumb li a:hover {
			color: #e2008d;	
		}
/* MAIN CONTENT
================================================================================ */
h3.ribbon {
	padding: 0 0 1.5rem 0;
}
	
	h3.ribbon span {
		padding: 0.875rem 0.625rem 0.75rem 0.625rem;
	}
		h3.ribbon span:before, h3.ribbon span:after {
			width: 80px;
			height: 63px;
		}
		h3.ribbon span:before {
			left: -80px;
			background: url(img/style/ribbon-large-l.png);
		}
		h3.ribbon span:after {
			right: -80px;	
			background: url(img/style/ribbon-large-r.png);
		}

.event hr {margin: 0 0.9375rem;}


ul.social li {
	display: block;	
	margin:  0.625rem 0;
}

.medium-block-grid-2>li:nth-of-type(2n+1) {
	clear:none;
}

/* FORMS
================================================================================ */
form fieldset:nth-child(2n) {
	/* background: #ffffff; */
}

/* BUTTONS
================================================================================ */

.top-scroll-button {
	right: 20px;
	bottom: 20px;
}

/* EVENT CALENDAR =================================== */

.fullcalendar {
	
font-size: 0;
}
	.fullcalendar thead {
		
	}
		.fullcalendar thead tr {
			
		}
		.fullcalendar thead td {
			
		}
			.fullcalendar thead td.month_name {
				
			}

	.fullcalendat tbody {

	}
		.fullcalendar .days-names {
			
		}
			.fullcalendar td.eventless, .fullcalendar td.eventless-pre, .fullcalendar td.eventless-post, .fullcalendar td.eventless-today {
				
			}

			.fullcalendar tbody {
				margin: 0 -7.5px;
				width: calc(100% + 15px);
				background: transparent;
			}

			.fullcalendar tbody td.eventful, .fullcalendar tbody td.eventful-today {
				display: inline-block;
				width: calc(50% - 15px);
				margin: 0 7.5px 1.25rem;
			}
				.fullcalendar .eventful > a {
					
				}
				.fullcalendar .eventful > ul {
					
				}
					.fullcalendar .eventful > ul li {
						
					}
						.fullcalendar .eventful > ul li:before {
							
						}
				
/* SOCIAL
================================================================================ */

ul.social li a img {
		width: 46px;
		height: 46px;
	}

/* MISC
================================================================================ */

/* MAP
================================================================================ */
#map {
	width: 100%;
	height: 400px;
	margin-bottom: -52px;
}

/* CROWN YOUR KING
================================================================================ */

	.stat {
		font-size: 1.25rem;
	}
		.left-stats .stat {
			/* margin-left: -27px; */
			/* padding-left: 27px; */
			background-image: url(img/style/fold-large-l.png);
			/* padding-top: 12px; */
		}
		.right-stats .stat {
			margin-right: -27px;
			padding-right: 27px;
			background-image: url(img/style/fold-large-r.png);
			padding-top: 12px;
		}

		.stat span.title {
			padding: 0.875rem 0.9375rem 0.75rem 0.9375rem;
		}

			.left-stats .stat:after {
				width: 42px;
				height: 51px;
				background-image: url(img/style/ribbon-end-large-l.png);
				background-position: right;
				top: 0;
			}

			.right-stats .stat:before {
				width: 42px;
				height: 51px;
				background-image: url(img/style/ribbon-end-large-r.png);
			}

/* FOOTER
================================================================================ */
#footer li {font-size: 0.75rem;}

#sponsors ul {
	text-align: center;	
}
	#sponsors ul li {
		display: inline-block;
		padding-left: 10px;
	}
	#sponsors ul li img {
		max-height: 75px;
	}
	#sponsors ul li:before {display: none;}	

}

/* Large (1020px up)
==================================================================================================================================
=============================================================================================================================== */
@media only screen and (min-width: 64.063em) {

/* GENERAL
================================================================================ */
	h1 {font-size: 1.875rem;}
	h2 {font-size: 1.25rem;}
	h3 {font-size: 1.25rem;}
	h4 {font-size: 1.125rem;}
		
/* FOUNDATION ELEMENTS
================================================================================ */
.row .row {
	margin-left: -25px;
	margin-right: -25px;
}

.column, .columns {
	position: relative;
	padding-left: 25px;
	padding-right: 25px;
	float: left;
}




/* HEADER
================================================================================ */
#banner h1 {font-size: 2.25rem;}
#banner h1 span {font-size: 1.5rem;}
#header.home {padding-bottom: 120px;}

/* NAVIGATION
================================================================================ */

/* BREADCRUMB
================================================================================ */

/* MAIN CONTENT
================================================================================ */
.beige_bg, .lbeige_bg {padding-bottom: 60px;}
h3.ribbon {margin-top: -37px;}


.ribbon_bg {
	padding: 1.875rem 0;
	max-width: 75rem;
	margin-left: auto;
	margin-right: auto;
	margin-top: -100px;
	position: relative;
	box-shadow: none;
	border: none;
	height: 306px;
}
	.ribbon_bg .row {
		z-index: 1;
		position: relative;
	}
	.ribbon_bg:before, .ribbon_bg:after {
		content: '';
		display: block;
		width: 224px;
		height: 355px;
		position: absolute;
		bottom: -49px;
		z-index: 0;
	}
	.ribbon_bg:before {
		left: -113px;
		background: url(img/style/white_ribbon_l.png);	
	}
	.ribbon_bg:after {
		right: -113px;
		background: url(img/style/white_ribbon_r.png);
		
	}
	

.row.cont_boxes {
	padding: 0 15px;
	margin-top: 50px;
}
	.cont_boxes .row {
		margin-left: -10px;
		margin-right: -10px;	
	}
.cont_boxes .columns {
	padding: 0 0.625rem 1.25rem;	
}
.cont_box {margin-bottom: 20px;}
	.cont_box a {
		min-height: 180px;
		position: relative;
	}


.cont_box.double_height {
	margin-top: -80px;	
}
	.cont_box.double_height a {
		min-height: 460px;	
		background: url(img/style/gold_bg.png) bottom center no-repeat;
	}

ul.social {text-align: left;}
ul.social li {
	line-height: 45px;
	border-bottom: solid 1px #caa5a8;
	padding: 0.625rem 0;
	margin: 0;	
}
ul.social li a img {
	float: left;
	margin-right: 0.625rem;
}
ul.social li a span {float: left;}
ul.social li:after {
	content: '';
	display: block;
	clear: both;	
}

/* FORMS
================================================================================ */

/* BUTTONS
================================================================================ */

.top-scroll-button {
	height: 60px;
	width: 60px;
	right: 30px;
	bottom: 30px;
}
				
/* SOCIAL
================================================================================ */

/* MISC
================================================================================ */

/* MAP
================================================================================ */
#map {
	width: 100%;
	height: 500px;
	margin-bottom: 0;
	margin-top: -60px;
}

/* EVENT CALENDAR =================================== */

.fullcalendar {
	font-size: 0;
}
	.fullcalendar thead {
		
	}
		.fullcalendar thead tr {
			
		}
		.fullcalendar thead td {
			
		}
			.fullcalendar thead td.month_name {
				font-size: 1.125rem;
				padding: 15px;
			}

	.fullcalendat tbody {

	}
		.fullcalendar .days-names {
			
		}
			.fullcalendar tbody td {
				min-height: 75px;
			}
			.fullcalendar td.eventless, .fullcalendar td.eventless-pre, .fullcalendar td.eventless-post, .fullcalendar td.eventless-today, .fullcalendar td.eventful-pre, .fullcalendar td.eventful-post {
				/*font-family: CharlemagneBoldRegular, 'Tinos', Arial, Helvetica, sans-serif !important;*/
				text-align: left;
				color: #ffffff;
				font-size: 1rem;
				padding: 15px;
				vertical-align: top;
				background-color: white;

				color: #860038;
				
			}
				.fullcalendar td.eventless-pre, .fullcalendar td.eventless-post, .fullcalendar td.eventful-post, .fullcalendar td.eventful-pre {
					background: #f7f2e2;	
				}
			.fullcalendar tbody {
				
			}

			.fullcalendar .eventful-post ul, .fullcalendar .eventful-pre ul {
				display: none;
			}

			.fullcalendar tbody td, .fullcalendar tbody td.eventful, .fullcalendar tbody td.eventful-today {
				display: inline-block !important;
				width: calc((100%/7) - 15.1px);
				margin: 0 7.5px 1.25rem;
				vertical-align: top;
				position: relative;
			}
				.fullcalendar .eventful > a {
					
				}
 				.fullcalendar .eventful > ul, .fullcalendar .eventful-today > ul {

					display: none;
				}
					.fullcalendar .eventful:hover ul, .fullcalendar .eventful-today:hover ul {

						display: block;
						width: 100%;
						position: absolute;
						left: 0px;
						top:0;
						z-index: 5;
						box-shadow: 0 5px 5px rgba(0,0,0,0.05);
						/* min-height: 100%; */
					} 
					.fullcalendar .eventful > ul li {
						
					}
						.fullcalendar .eventful > ul li:before {
							
						}
						
.large-block-grid-3 > li:nth-of-type(3n+1) {
	clear:none;
}


/* FOOTER
================================================================================ */
#footer {padding: 1.875rem;}
}


/* FORM RESPONSE OVERRIDES ====================================================== */

div.wpcf7 {
	margin: 0;
	padding: 0;
}

div.wpcf7-response-output {
	margin: 0;
	padding: 15px 0 0 0;
}

div.wpcf7 .screen-reader-response {
	position: absolute;
	overflow: hidden;
	clip: rect(1px, 1px, 1px, 1px);

	height: 1px;
	width: 1px;
	margin: 0;
	padding: 0;
	border: 0;
}

div.wpcf7-mail-sent-ok {
	border: none;
	border-top: 1px solid #860038;
	border-bottom: 1px solid #860038;
	font-weight: 400;
	padding: 15px 0px 15px 50px;
	color: black;
	background-color: transparent;
	font-size: 1rem;
	background-image: url(img/icons/check.png);
	background-position: center left;
	background-repeat: no-repeat;
} 

div.wpcf7-mail-sent-ng, div.wpcf7-spam-blocked, div.wpcf7-validation-errors {
	padding: 5px 10px;
	color: #ffffff;
	font-weight: bold;
	background: #b89639;
	display: block;
	font-size: 0.8125rem;
	border: none;
	clear: both;
}
	div.wpcf7-mail-sent-blocked {
		background-color: #c60f13;
	}

span.wpcf7-form-control-wrap {
	position: relative;
}

span.wpcf7-not-valid-tip {
	padding: 5px 10px;
    color: #ffffff;
    font-weight: bold;
    background: #c60f13;
    display: block;
    font-size: 0.8125rem;
}

.use-floating-validation-tip span.wpcf7-not-valid-tip { 
	position: absolute;
	top: 20%;
	left: 20%;
	z-index: 100;
	border: 1px solid #ff0000;
	background: #fff;
	padding: .2em .8em;
}

span.wpcf7-list-item {
	margin-right:1em;
	margin-left: 0;
	display: block;
}
.two_col {
	clear: both;
	display: block;
	overflow: hidden;
}
.two_col span.wpcf7-list-item {
	width: calc(50% - 1em);
	float: left;
}

.wpcf7-display-none {
	display: none;
}

div.wpcf7 img.ajax-loader {
	border: none;
	vertical-align: middle;
	margin-left: 4px;
}

div.wpcf7 div.ajax-error {
	display: none;
}

div.wpcf7 .placeheld {
	color: #888;
}
