/* _________________________________________________

320 and Up boilerplate extension
Andy Clarke http://about.me/malarkey
Version: 2
URL: http://stuffandnonsense.co.uk/projects/320andup/
License: http://creativecommons.org/licenses/MIT/
_____________________________________________________

1 ROOT
2 HEADINGS
3 TYPOGRAPHY
4 LINKS
5 FIGURES & IMAGES
6 TABLES
7 FORMS
8 BANNER
9 NAVIGATION
10 CONTENT
11 MAIN
12 COMPLEMENTARY
13 CONTENTINFO
14 GLOBAL OBJECTS
15 VENDOR-SPECIFIC 
16 MODERNIZR
17 TEMPLATE SPECIFICS
18 MEDIA QUERIES

COLOURS 

Light Green rgba(216,235,191,1) #cce5ac
Dark Green 	rgba(140,198,63,1) #8cc63f
Blue 		rgba(91,131,162,1) #527692

*/
html,
body {
	margin: 0;
	padding: 0;
}

h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
cite,
code,
del,
dfn,
em,
img,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
dd,
dl,
dt,
li,
ol,
ul,
fieldset,
form,
label,
legend,
button,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td {
	margin: 0;
	padding: 0;
	border: 0;
	font-weight: normal;
	font-style: normal;
	font-size: 100%;
	line-height: 1;
	font-family: inherit;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
nav,
section {
	display: block;
}

audio[controls],
canvas,
video {
	display: inline-block;
	*display: inline;
	*zoom: 1;
}

/* 320 and Up _________________________________________________

320 and Up
Andy Clarke http://about.me/malarkey
LESS Version: 2
URL: http://stuffandnonsense.co.uk/projects/320andup/
License: http://creativecommons.org/licenses/MIT/

Includes:


__________________________________________________________ */

@font-face {
	font-family: 'ModernPictogramsNormal';
	src: url('../fonts/modernpics-webfont.eot');
	src: local('☺'), url('../fonts/modernpics-webfont.eot?#iefix') format('embedded-opentype'),
		url('../fonts/modernpics-webfont.woff') format('woff'),
		url('../fonts/modernpics-webfont.ttf') format('truetype'),
		url('../fonts/modernpics-webfont.svg#ModernPictogramsNormal') format('svg');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'PolyItalic';
	src: url('../fonts/Poly-Italic-webfont.eot');
	src: local('☺'), url('../fonts/Poly-Italic-webfont.eot?#iefix') format('embedded-opentype'),
		url('../fonts/Poly-Italic-webfont.woff') format('woff'),
		url('../fonts/Poly-Italic-webfont.ttf') format('truetype'),
		url('../fonts/Poly-Italic-webfont.svg#PolyItalic') format('svg');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'PolyRegular';
	src: url('../fonts/Poly-Regular-webfont.eot');
	src: local('☺'), url('../fonts/Poly-Regular-webfont.eot?#iefix') format('embedded-opentype'),
		url('../fonts/Poly-Regular-webfont.woff') format('woff'),
		url('../fonts/Poly-Regular-webfont.ttf') format('truetype'),
		url('../fonts/Poly-Regular-webfont.svg#PolyRegular') format('svg');
	font-weight: normal;
	font-style: normal;
}

.sans-serif {
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
}

.serif {
	font-family: "Cambria, Georgia, Times, " Times New Roman;
}

.monospace {
	font-family: "Monaco", Courier New, monospace;
}

.clearfix {
	zoom: 1;
}

.clearfix:before,
.clearfix:after {
	content: "\0020";
	display: block;
	height: 0;
	overflow: hidden;
}

.clearfix:after {
	clear: both;
}

html {
	overflow-y: scroll;
	/*background: #ffffff url(../img/tmp/grid.png) repeat-y 50% 0;*/
	background: #edeeeb;
	font-size: 62.5%;
}

body {
	margin: 0 auto;
	padding: 0;
	width: 90%;
	/* 252px; */
	font-size: 16px;
	font-size: 1.6rem;
	font-family: PolyRegular, Times New Roman, serif;
	color: #282828;
	background-color: transparent;
}

button,
input,
select,
textarea {
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
	color: #404040;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: PolyRegular, "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-weight: bold;
	-webkit-hyphens: none;
	-moz-hyphens: none;
	hyphens: none;
}

h1 {
	margin-bottom: 0.75em;
	font-size: 48px;
	font-size: 4.8rem;
	line-height: 1.2;
}

h2 {
	margin-bottom: 0.75em;
	font-size: 32px;
	font-size: 3.2rem;
	line-height: 1.2;
}

h3 {
	margin-bottom: 1em;
	font-size: 24px;
	font-size: 2.4rem;
	line-height: 1.3;
}

h4 {
	margin-bottom: 1em;
	font-size: 18px;
	font-size: 1.8rem;
	line-height: 1.25;
	color: #527692;
	color: rgba(91, 131, 162, 1);
}

h5 {
	margin-bottom: 1.5em;
	font-size: 16px;
	font-size: 1.6rem;
}

h6 {
	font-size: 16px;
	font-size: 1.6rem;
}

p,
ol,
ul,
dl,
address {
	margin-bottom: 1.5em;
	font-size: 16px;
	font-size: 1.6rem;
}

p {
	hyphens: auto;
	text-align: justify;
	line-height: 1.5em;
}

ul,
ol {
	margin: 0 0 1.5em -24px;
	padding: 0 0 0 24px;
	list-style-position: inside;
}

li ul,
li ol {
	margin: 0;
	font-size: 16px;
	font-size: 1.6rem;
}

li {
	line-height: 1.5em;
}

ul li {}

dl,
dd {
	margin-bottom: 1.5em;
}

dt {
	font-weight: normal;
}

blockquote {
	margin: 0 0 1.5em -24px;
	padding-left: 24px;
	border-left: 1px solid #bfbfbf;
	font-style: italic;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
	content: '';
	content: none;
}

abbr[title] {
	border-bottom: 1px dotted;
	cursor: help;
}

b,
strong {
	font-weight: bold;
}

dfn {
	font-style: italic;
}

hr {
	display: block;
	margin: 1em 0;
	padding: 0;
	height: 1px;
	border: 0;
	border-top: 1px solid #bfbfbf;
}

ins {
	background-color: #c3d9e6;
	color: #000000;
	text-decoration: none;
}

mark {
	background-color: #c3d9e6;
	color: #000000;
	font-style: italic;
	font-weight: bold;
}

pre,
code,
kbd,
samp {
	font-family: "Monaco", Courier New, monospace;
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 1.5em;
}

pre {
	white-space: pre;
	white-space: pre-wrap;
	word-wrap: break-word;
}

q {
	quotes: none;
}

q:before,
q:after {
	content: "";
	content: none;
}

small {
	font-size: 14px;
	font-size: 1.4rem;
}

sub,
sup {
	font-size: 12px;
	font-size: 1.2rem;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sup {
	top: -0.5em;
}

sub {
	bottom: -0.25em;
}

a {
	color: #a29785;
}

a:visited {
	color: #a29785;
}

a:hover {
	color: #514A3E;
}

a:focus {
	outline: thin dotted;
	color: #514A3E;
}

a:hover,
a:active {
	outline: 0;
}

figure {
	margin-bottom: 1.5em;
}

figure img,
figure object,
figure embed {
	margin-bottom: 0.75em;
	max-width: 100%;
}

figcaption {
	display: block;
	font-weight: normal;
}

img {
	max-width: 100%;
	height: auto;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	border: 4px solid #fff;
	margin-bottom: 1.5em;
}

svg:not(:root) {
	overflow: hidden;
}

table {
	text-align: left;
	border-collapse: collapse;
	border-spacing: 0;
	margin-bottom: 1.5em;
	width: 100%;
	font-size: 14px;
	font-size: 1.4rem;
}

th,
td,
caption {
	padding: 0.1875em 10px 0.1875em 5px;
	line-height: 2em;
}

tfoot {
	font-style: italic;
}

caption {
	/* background-color: transparent;*/
	background-color: #527692;
	background-color: rgba(91, 131, 162, 1);
	color: #edeeeb;
}

tbody tr:nth-child(even) td {
	background-color: #cce5ac;
	background-color: rgba(216, 235, 191, 1);
}

form {
	margin: 0;
}

fieldset {
	margin-bottom: 1.5em;
	padding: 0;
	border-width: 0;
}

legend {
	*margin-left: -7px;
	padding: 0;
	border-width: 0;
}

label {
	font-weight: normal;
	cursor: pointer;
}

button,
input,
select,
textarea {
	font-size: 12px;
	font-size: 1.2rem;
	margin: 0;
	vertical-align: baseline;
	*vertical-align: middle;
}

button,
input {
	line-height: normal;
	*overflow: visible;
}

button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	cursor: pointer;
}

input[type="checkbox"],
input[type="radio"] {
	box-sizing: border-box;
}

input[type="search"] {
	box-sizing: content-box;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
	padding: 0;
	border: 0;
}

textarea {
	overflow: auto;
	vertical-align: top;
}

html {
	-webkit-overflow-scrolling: touch;
	-webkit-tap-highlight-color: #c3d9e6;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
}

::-webkit-selection {
	background: #e6e6e6;
	color: #fafafa;
	text-shadow: none;
}

::-moz-selection {
	background: #7bacc8;
	color: #fff;
	text-shadow: none;
}

::selection {
	background: #7bacc8;
	color: #fff;
	text-shadow: none;
}

button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	-webkit-appearance: button;
}

::-webkit-input-placeholder {
	font-size: 14px;
	font-size: 1.4rem;
}

input:-moz-placeholder {
	font-size: 14px;
	font-size: 1.4rem;
}

.ie7 img,
.iem7 img {
	-ms-interpolation-mode: bicubic;
}

input[type="checkbox"],
input[type="radio"] {
	box-sizing: border-box;
}

input[type="search"] {
	-webkit-box-sizing: content-box;
	-moz-box-sizing: content-box;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
	padding: 0;
	border: 0;
}

p {
	-webkit-hyphens: auto;
	-webkit-hyphenate-character: "\2010";
	-webkit-hyphenate-limit-after: 1;
	-webkit-hyphenate-limit-before: 3;
	-moz-hyphens: auto;
}

.ir {
	display: block;
	overflow: hidden;
	background-repeat: no-repeat;
	text-align: left;
	text-indent: -999em;
	direction: ltr;
}

.ir br {
	display: none;
}

.hidden {
	display: none;
	visibility: hidden;
}

.visuallyhidden {
	position: absolute;
	margin: -1px;
	padding: 0;
	height: 1px;
	width: 1px;
	overflow: hidden;
	border: 0;
	clip: rect(0 0 0 0);
}

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
	position: static;
	margin: 0;
	height: auto;
	width: auto;
	overflow: visible;
	clip: auto;
}

.invisible {
	visibility: hidden;
}

/* 8 BANNER   ======================================================================================== */

#main_header {
	padding-top: 24px;
	padding-top: 2.4rem;
	margin-top: 12px;
	margin-top: 1.2rem;
}

#branding {
	width: 288px;
	margin: 24px auto;
}

h1 {
	color: #8cc63f;
	color: rgba(140, 198, 63, 1);
}

#branding img {
	border: 0;
	margin-bottom: 0;
}

#call_now {
	display: none;
}

/* 9 NAVIGATION  ===================================================================================== */



#menu {
	position: absolute;
	text-align: right;
	width: 100%;
	background: #527692;
	background: rgba(91, 131, 162, 1);
	top: 0;
	right: 0;
	z-index: 100;
	border-bottom: 1px solid #8cc63f;
	border-bottom: 1px solid rgba(140, 198, 63, 1);
}

.mobileMenu {
	margin: .5em 5%;
}


/* 10 CONTENT ======================================================================================== */



.content {
	margin-top: 0;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 24px;
	margin-bottom: 2.4rem;
}

[role="main"] {
	width: 100%;
	float: left;
}

.strapline {
	font-size: 24px;
	font-size: 2.4rem;
	line-height: 1.2;
	font-weight: normal;
	text-align: center;
	border-bottom: 1px solid #8cc63f;
	border-bottom: 1px solid rgba(140, 198, 63, 1);
	padding-bottom: 24px;
	padding-bottom: 2.4rem;
	margin-bottom: 0;
}

.blue {
	color: #527692;
	color: rgba(91, 131, 162, 1);
}

.no_border {
	border: none;
}

.no-js .carousel {
	display: none;
	visibility: hidden;
}

.grid_4 {
	float: left;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-moz-background-clip: padding-box !important;
	-webkit-background-clip: padding-box !important;
	background-clip: padding-box !important;
	border-bottom: 1px solid #8cc63f;
	border-bottom: 1px solid rgba(140, 198, 63, 1);
	padding-top: 36px;
	padding-top: 3.4rem;
	text-align: center;
}

.grid_5 {
	width: 100%;
	float: left;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-moz-background-clip: padding-box !important;
	-webkit-background-clip: padding-box !important;
	background-clip: padding-box !important;
	border-bottom: 1px solid #8cc63f;
	border-bottom: 1px solid rgba(140, 198, 63, 1);
	padding-top: 36px;
	padding-top: 3.4rem;
	text-align: center;
}

.grid_7 {
	float: left;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-moz-background-clip: padding-box !important;
	-webkit-background-clip: padding-box !important;
	background-clip: padding-box !important;
	border-bottom: 1px solid #8cc63f;
	border-bottom: 1px solid rgba(140, 198, 63, 1);
	padding-top: 36px;
	padding-top: 3.4rem;
	text-align: center;
}

.grid_4 ul {
	text-align: justify;
}

.grid_5 ul {
	text-align: justify;
}

.grid_7 ul {
	text-align: justify;
}

/*.row .grid_4:first-child {
	border-top: 1px solid rgba(140,198,63,1);
}

.row .grid_5:first-child {
	border-top: 1px solid rgba(140,198,63,1);	
}
.row .grid_7:first-child {
	border-top: 1px solid rgba(140,198,63,1);	
}*/

.row .grid_4:last-child {
	border-bottom: none;
}

.row .grid_5:last-child {
	border-bottom: none;
}

.row .grid_7:last-child {
	border-bottom: none;
}

.vcard {
	text-align: left;
}

.adr,
.tel,
.email {
	display: block;
	margin-bottom: 32px;
	margin-bottom: 3.2rem;
	font-size: 14px;
	font-size: 1.4rem;
}

.vcard p {
	float: left;
}

.vcard a {
	text-decoration: none;
}

.street-address,
.locality,
.county,
.postal-code {
	display: block;
	text-align: left;
}

.map_link {
	position: relative;
	top: -3em;
	text-align: right;
}

.map_link a {
	text-decoration: none;
}

.footer {
	border-top: 1px solid #527692;
	border-top: 2px solid rgba(91, 131, 162, 1);
	padding-top: 24px;
	padding-top: 2.4rem;
}

.footer p {
	color: #666;
	font-size: 14px;
	font-size: 1.4rem;
	text-align: center;
}

.footer a {
	text-decoration: none;
}

/* 17 TEMPLATE SPECIFICS ============================================================================= */


/*
 * jQuery FlexSlider v1.4
 * http://flex.madebymufffin.com
 *
 * Copyright 2011, Tyler Smith
 * Free to use under the MIT license.
 * http://www.opensource.org/licenses/mit-license.php
 */

/* FlexSlider Necessary Styles
*********************************/
.flexslider {
	margin: 0 auto 2em;
	padding: 0;
}

.flexslider .slides li {
	display: none;
	line-height: 0;
}

/* Hide the slides before the JS is loaded. Avoids image jumping */

.flexslider .slides {
	max-width: 100%;
	display: block;
	height: auto;
	margin-bottom: 0;
	/*overflow: hidden;*/
}

.flexslider img {
	margin-bottom: 0;
}

/* FlexSlider Default Theme
*********************************/
.flexslider {
	position: relative;
	background: #fff;
	border: none;
	/*-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	-o-border-radius: 5px;
	border-radius: 5px;*/
}

.flexslider ul,
.flexslider li {
	list-style: none;
	margin-bottom: 0;

}

.flexslider .slides li {
	position: relative;
}

/* Suggested container for "Slide" animation setups. Can replace this with your own, if you wish */
.flexslider-container {
	position: relative;
}


/* Caption style */
.flex-caption {
	width: 96%;
	padding: 2%;
	position: absolute;
	left: 0;
	bottom: 0;
	background: rgba(0, 0, 0, .3);
	color: #fff;
	text-shadow: 0 -1px 0 rgba(0, 0, 0, .3);
	font-size: 15px;
	line-height: 18px;
}

/* Direction Nav */
.flex-direction-nav li a {
	width: 52px;
	height: 52px;
	margin: -13px 0 0;
	display: block;
	background: url(theme/bg_direction_nav.png) no-repeat 0 0;
	position: absolute;
	top: 50%;
	cursor: pointer;
	text-indent: -9999px;
}

/* set negative margin-top equal to half the height on the directional-nav for perfect vertical centering */
.flex-direction-nav li a.next {
	background-position: -52px 0;
	right: -21px;
}

.flex-direction-nav li a.prev {
	background-position: 0 0;
	left: -21px;
}

/* Control Nav */
.flex-control-nav {
	margin-left: -31px;
	position: absolute;
	bottom: -30px;
	left: 50%;
}

/* set negative margin-left equal to half the width on the control-nav for perfect centering */
.flex-control-nav li {
	margin: 0 0 0 5px;
	float: left;
}

.flex-control-nav li:first-child {
	margin: 0;
}

.flex-control-nav li a {
	width: 13px;
	height: 13px;
	display: block;
	background: url(theme/bg_control_nav.png) no-repeat 0 0;
	cursor: pointer;
	text-indent: -9999px;
}

.flex-control-nav li a:hover {
	background-position: 0 -13px;
}

.flex-control-nav li a.active {
	background-position: 0 -26px;
	cursor: default;
}

.cards-accepted {
	text-align: center;
}

.cards-accepted img {
	float: none !important;
	border: 0;
}


.alert {
	position: relative;
	padding: .75rem 1.25rem;
	margin-bottom: 1rem;
	border: 1px solid transparent;
	border-radius: 1rem;
	color: #1b1e21;
	background-color: #d6d8d9;
	border-color: #c6c8ca
}

/*******************************************************************************/
/* Roseblade Added Styles
/*******************************************************************************/

.no-underline {
	text-decoration: none;
}

.bfc-btn {
	display: inline-block;
	margin-bottom: 0;
	font-weight: 400;
	text-align: center;
	white-space: nowrap;
	vertical-align: middle;
	-ms-touch-action: manipulation;
	touch-action: manipulation;
	cursor: pointer;
	background-image: none;
	border: 1px solid transparent;
	padding: 6px 12px;
	font-size: 14px;
	line-height: 1.42857143;
	border-radius: 4px;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	text-decoration: none;
}

.bfc-btn-primary {
	color: #fff !important;
	background-color: #527692;
	border-color: #405c71;
}

.bfc-btn-primary:hover {
	color: #fff !important;
	background-color: #405c71;
}

.bfc-btn-secondary {
	color: #fff !important;
	background-color: #8cc63f;
	border-color: #71a230;
}

.bfc-btn-secondary:hover {
	color: #fff !important;
	background-color: #71a230;
}