@charset "UTF-8";
@import url('https://fonts.googleapis.com/css?family=Josefin+Slab:400|Merriweather:400,700|Milonga|Titillium+Web:400,700');
/*********************************************************************************/
/* Reset                                                                         */
/*********************************************************************************/
* {
	margin:0; padding:0;
	-webkit-overflow-scrolling: touch;
}
html {
	margin: 0;
	height: 100%;
}
html, body {
	width: 100%;
	overflow-x: hidden; /* Fix wider background */
}
body {
	font-family: 'Merriweather', serif;
	background: #362415;
	font-weight: normal;
	text-rendering: optimizeLegibility;
	-webkit-font-smoothing: subpixel-antialiased;
}
img {
	display:block;
} /* Resets images to avoid gap beneath when using Strict doctype */
h1, h2, h3, h4, p, li {
	font-weight: 400;
	font-size: 1em;
}
a {
	text-decoration: none;
	color: #40638D;
}
a:hover {
	color: #E60000;
}
strong {
	font-weight: 700;
}
/*********************************************************************************/
/* Wrappers                                                                      */
/*********************************************************************************/
.wrapper {
	max-width: 1200px;
	margin: 0 auto;
}
.overflow {
	overflow: hidden;
}
#pagewrapper {
	float: left;
	width: 100%;
	padding: 0;
	background: url('_gfxlib/bg.jpg') repeat;
	position: relative;
	z-index: 999;
}
#pagewrapper::before {
	content: " ";
	width: 100%;
	height: 10px;
	position: absolute;
	top: 0;
	margin-top: -10px;
	background: url('_gfxlib/banner-border.png') center center repeat-x;
	display: block;
	transform: rotate(-180deg);
}
#contentwrapper {
	float: left;
	width: 100%;
	margin: 2em 0;
}
.centre {
	text-align: center;
}
.sectionblock {
	margin: 0;
}
.largemargin {
	margin-top: 4em;
}
.halfwidth {
	float: left;
	width: 44%;
	margin: 3%;
}
.test {
	float: left;
	width: 100%;
	background: #DEB400;
}
.moreboxres {
	display: none;
}
/*********************************************************************************/
/* Colours                                                                       */
/*********************************************************************************/
.back1 {
	background: rgba(242,230,206, .5);
}
.back2 {
	background: #F2E6CE;
}
/*********************************************************************************/
/* Header                                                                        */
/*********************************************************************************/
#header {
	float: left;
	position: relative;
	width: 100%;
	background: url('_gfxlib/bg.jpg') repeat;
	z-index: 999;
}
#header::after {
	content: " ";
	width: 100%;
	height: 10px;
	position: absolute;
	bottom: -10px;
	background: url('_gfxlib/banner-border.png') center center repeat-x;
	display: block;
}
#header #logo {
	width: 276px;
	height: 155px;
	margin: 10px 0;
	float: left;
	background: url('_gfxlib/logo276x155.png') no-repeat center;
	background-size: 100%;
	position: relative;
}
#header #logo a {
	display: block;
	width: 100%;
	height: 100%;
}
#header #strap {
	float: right;
	width: 50%;
	max-width: 560px;
	margin: 1em .5em 0 0;
}
#header #strap p {
	font-style: italic;
	font-size: 20px;
	margin-top: 40px;
	text-align: center;
	color: #643E00;
	font-weight: 400;
	
}
/*********************************************************************************/
/* Menu                                                                          */
/*********************************************************************************/
#menu {
	margin: 50px 0 0 0;
	float: right;
}
#menu ul {
	padding:0;
	z-index: 999;
	text-align: center;
}
#menu ul li {
	display: inline-block;
	list-style: none;
	font-size: 18px;
	text-transform: uppercase;
	font-weight: 700;
	font-family: 'Titillium Web', sans-serif;
}
#menu ul li.bullet:before {
	font-size: 12px;
 	content:'\2666';
 	color: #D93600;
}
#menu ul li a {
	text-decoration: none;
	color: #362416;
	display: inline-block;
	padding: .75em .75rem;
	-moz-transition: color ease-out .5s;
	-o-transition: color ease-out .5s;
	-webkit-transition: color ease-out .5s;
	transition: color ease-out .5s;
}

#menu ul li a.selected,
#menu ul li a:hover {
	color: #41638E;
}
.slicknav_menu {
	display:none;
}
#menu ul .menuhighlight {
	background: #0ac25a;
	margin-left: 3%;
}
#menu ul .menuhighlight a:hover {
	background: #0BDA66;
}
/*********************************************************************************/
/* Main Banner                                                                   */
/*********************************************************************************/
.mainbanner {
	float: left;
	width: 100%;
	max-height: 700px;
	position: relative;
	background: #000000;
	display: inline-block;
	overflow: hidden;
	z-index: 900;
}
.mainbanner .mainimage {
	float: left;
	background: #000000;
	width: 100%;
	position: relative;
	display: inline-block;
	overflow: hidden;
}
.mainbanner .mainimage img {
	float: left;
	width: 100%;
	height: auto;
}
.mainbanner .mainimagebright img {
	opacity: 0.85;
}
.homebanner,
.contentbanner {
	background: url('_gfxlib/banner-bg.jpg') repeat;
}
.contentbanner .bannerimage {
	float: left;
	width: 50%;
	margin: 1em 5% 1em 0;
}
.contentbanner .bannerimage {
	float: left;
	width: 50%;
	margin: 1em 5% 1em 0;
}
.contentbanner .bannertitle {
	float: left;
	width: 45%;
	padding: 200px 0;
}
.contentbanner .bannertitle h1 {
	font-family: 'Josefin Slab', serif;
	color: #40638D;
	font-size: 50px;
}
.texture-edge {
	display: block;
	position: relative;
	z-index: 1;
	overflow: hidden;
	-webkit-mask-image: url('_gfxlib/featured-image.png');
	mask-image: url('_gfxlib/featured-image.png');
	-webkit-mask-size: 100% 100%;
	mask-size: 100% 100%;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
}
.texture-edge .img-holder {
	width: 100%;
	height: 100%;
	min-height: 447px;
	background: #000000 center center no-repeat;
	background-size: cover;
}
.homebanner .texture-edge {
	margin: 2em 0;
}
.homebanner .texture-edge .img-holder {
	min-height: 600px;
}
/*********************************************************************************/
/* Content                                                                       */
/*********************************************************************************/
#content {
	float: left;
	width: 100%;	
	padding: 2em 0;
}
#centrewrapper {
	float: left;
	width: 58%;
	margin: 0 10%;
}
.homewrapper #centrewrapper {
	width: 100%;
	margin: 0;
}
#content .centrewide {
	width: 80%;
}
#centrewrapper h1 {
	font-family: 'Josefin Slab', serif;
	color: #40638D;
	font-size: 40px;
	margin-bottom: .75em;
}
#centrewrapper h1 .verysmall {
	font-size: .5em;
}
#centrewrapper h2 {
	font-family: 'Josefin Slab', serif;
	color: #40638D;
	font-size: 30px;
	margin-bottom: .5em;
}
#centrewrapper h3 {
	color: #6D8EAC;
	font-weight: 700;
	font-size: 1.25em;
	margin-bottom: .5em;
}
#centrewrapper p {
	color: #333333;
	margin-bottom: 1.25em;
	line-height: 150%;
	font-size: 16px;
}
#centrewrapper p a {
	color: #40638D;
	font-weight: 400;
}
#centrewrapper p a:hover,
#centrewrapper li a:hover {
	text-decoration: underline;
}
#centrewrapper .owlbreak {
	float: left;
	width: 100%;
	height: 86px;
	background: url('_gfxlib/owl-break.png') no-repeat center;
	margin: 1em 0 2em 0;
}
#centrewrapper ol {
	float: left;
	width: 100%;
	margin-bottom: 1em;
}
#centrewrapper .contentlist {
	float: left;
	width: 100%;
	margin-bottom: 1em;
	text-indent: -1.5em;
	padding-left: 1.5em;
	margin-left: 0;
}
#centrewrapper .contentlist li {
	list-style-type: none;
}
#centrewrapper .contentlist li:before {
    content: "\25A0  ";
	font-family:"Arial Black";
    color: #6D8EAC;
	padding-right: .5em;
}
#centrewrapper .contentlist ul {
	float: left;
	width: 100%;
	margin: 1em 0;
	text-indent: -1.5em;
	padding-left: 1.5em;
}
#centrewrapper .contentlist li,
#centrewrapper ol li  {
	margin: 0 3em 1em 2em;
	color: #333333;
	font-size: 16px;
	list-style-position: outside;
	line-height: 150%;
	margin-left: 1em;
}
#centrewrapper li a {
	color: #6A5833;
}
#centrewrapper .standfirst {
	font-family: 'Milonga', cursive;
	text-align: center;
	font-size: 30px;
	color: #342414;
	margin: 0 0 3em 0;
}
#centrewrapper .standfirst .small {
	font-size: 18px;
}
#centrewrapper .quotewrapper {
	float: left;
	background-image: url(_gfxlib/quote95.png);
	background-repeat: no-repeat;	
	width: 100%;
	margin-bottom: 1.5em;
}
#centrewrapper .quotewrapper p {
	margin: 0;
}
#centrewrapper .quotewrapper .quote {
	float: left;
	margin: 1em 1.25em 0 110px;
}
#centrewrapper .quotewrapper .quote .quotesource {
	font-size: 0.75em;
	font-weight: 400;
	margin: 0;
}
#centrewrapper .imageborder {
	border: solid 5px #B5AF9C;
	/*width: inherit;  /* This makes the next two lines work in IE8. */
    max-width: 100%;
    height: auto;
	margin-left: auto;
	margin-right: auto;	
	margin-bottom: 20px;	
}
#centrewrapper .right {
	float: right;
	margin: 0 0 1em 1em;
}
#centrewrapper .caption {
	font-size: .8em;
	margin-top: -20px;	
	text-align: center;
}
#centrewrapper .thumbwrapper {
	float: left;
	margin: .5em 0 1.5em 0;
	width: 96%;
	padding: .5em 1%;
	background: #F2E8D4;
	border: #CCCCCC 1px solid;
}
#centrewrapper .thumbwrapper a {
	display: block;
}
#centrewrapper .thumbwrapper img {
	float: left;
	width: 20%;
	height: auto;
	border: #CCCCCC solid 1px;
	margin: 0 5% 0 0;
}
#centrewrapper .imagewrap {
	float: left;
	width: 100%;
	margin: 2em 0;
	text-align: center;
}
#centrewrapper .imagewrap img {
	margin: 0 auto;
}
#centrewrapper .contentleft {
	float: left;
	width: 60%;
	margin: 0 5% 0 0;
}
#centrewrapper .contentleft .contentimage {
	max-width: 100%;
	height: auto;
}
#centrewrapper .contentright {
	float: left;
	width: 35%;
}
.homewrapper #centrewrapper .contentflex {
	display: flex;
}
.homewrapper #centrewrapper .contentflex .contentleft {
	width: 50%;
	margin: 0 5% 0 0;
}
.homewrapper #centrewrapper .contentflex .contentright {
	width: 45%;
}
#centrewrapper .readmore a {
	font-family: 'Titillium Web', sans-serif;
	color: #31271D;
	font-weight: 700;
	text-transform: uppercase;
	-moz-transition: color ease-out .5s;
	-o-transition: color ease-out .5s;
	-webkit-transition: color ease-out .5s;
	transition: color ease-out .5s;
}
#centrewrapper .readmore a:hover {
	color: #41638E;
	text-decoration: none;
}
/*********************************************************************************/
/* Testimonial.                                                                  */
/*********************************************************************************/
#testimonialwrapper {
	float: left;
	width: 100%;
	padding: 5em 0;
	background: #6D8EAC;
}
.testimonial {
	float: left;
	width: 80%;
	margin: 0 10%;
	background: url('_gfxlib/quote40.png') no-repeat;
}
.testimonial .quote {
	margin: 20px 0 0 50px;
}
#testimonialwrapper .testimonial .quote p {
	font-family: 'Milonga', cursive;
	color: #FFFFFF;
	font-size: 22px;
	line-height: 150%;
	margin-bottom: .5em;
}
#testimonialwrapper .testimonial .quote p.name {
	color: #FFFFFF;
	font-style: normal;
	font-size: 14px;
	font-weight: 300;
	line-height: 150%;
}
#testimonialwrapper .testimonial .quote p a {
	color: #FFFFFF;
}
#centrewrapper .testimonials {
	float: left;
	width: 90%;
	margin: 1em 5% 1em 5%;
	background: url('_gfxlib/quote-blue40.png') no-repeat top left;
	background-size: auto;
	min-height: 100px;
}
#centrewrapper .testimonials .testcontent {
	float: left;
	margin: 0 0 1em 0;
}
#centrewrapper .testimonials .testcontent p {
	font-family: 'Milonga', cursive;
	font-size: 18px;
	color: #342414;
	margin: 1em 0 0 50px;
	font-style: italic;
}
#centrewrapper .testimonials .testcontent p.name {
	font-size: 14px;
	font-style: normal;
	color: #6C8DAC;
	margin: 10px 0 0 50px;
}
/*********************************************************************************/
/* Content Table                                                                 */
/*********************************************************************************/
.contenttable,
.qualtable {
	display: inline-block;
	width: 100%;
	margin: 1em 0;
}
.qualtable {
	font-family: 'PT Sans', sans-serif;
}
.contenttable th,
.contenttable td,
.qualtable th,
.qualtable td {
	font-size: 95%;
	padding: .5em;
}
.contenttable th {
	text-align: center;
	background: #ab9d87;
	color: #FFF;
}
.contenttable td {
	text-align: left;
	background: #eae6e1;
	color: #333;
}
.qualtable td,
.qualtable th {
	text-align: center;
	vertical-align: middle;
}
.qualtable th {
	font-size: 1.125em;
	background: #a09078;
	color: #FFF;
}
.qualtable td {
	background: #eae6e1;
	color: #333;
}
/*********************************************************************************/
/* Form                                                                          */
/*********************************************************************************/
#contentform {
	float: left;
	width: 100%;
	margin: 1em 0;
}
#contentform h2 {
	float: left;
	font-weight: 400;
	width: 100%;
	margin: 2em 0 1em 0;
}
#contentform h3 {
	font-size: 1.5em;
	color: #6A5833;
	font-weight: 400;
}
#contentform .formlayout {
	float: left;
	width: 100%;
}
#contentform .orderformlayout {
	float: left;
	width: 70%;
}
#contentform .formlayout li,
#contentform .orderformlayout li {
	width: 98%;
	margin: .75em 1%;
	list-style-type: none;
}
#contentform .orderformlayout .halffield {
	width: 50%;
}
#contentform .orderformlayout .formlist {
	float: left;
	padding: .5em 1%;
	width: 98%;
	background: #F9F9F9;
	margin: .5em 1%;
}
#contentform .orderformlayout .formlist input {
	margin-right: 3%;
}
#contentform .orderformlayout .formlist label {
	font-size: 1.125em;
	color: #666666;
}
#contentform .orderformlayout .formlist label sup {
	color: #6D8EAC;
}
#contentform .orderformlayout .formlistnote {
	background: #FFFFFF;
}
#contentform .orderformlayout .formlistnote label {
	font-size: 1em;
}
#contentform .formobject,
#contentform .formfileobject,
#contentform textarea {
	width: 98%;
	border: 1px solid #999999;
	font-size: 1em;
	padding: .5em;
	background: #F9F9F9;
}
#contentform .formfileobject {
	color: #666666;
	border: 0;
}
#contentform textarea {
	resize: none; /* disables resizability */
}
#contentform .formbutton {
	display: inline-block;
	background: #362416;
	text-decoration: none;
	color: #FFFFFF;	
	padding: .5em 2em;
	margin: 1em 0;
	border: 0;
	font-size: 1.125em;
	-moz-transition: background-color ease-out .5s;
	-o-transition: background-color ease-out .5s;
	-webkit-transition: background-color ease-out .5s;
	transition: background-color ease-out .5s;
}
#contentform .formbutton:hover {
	background: #6d482c;
}
#contentform .successmsg p,
#contentform .errormsg p {
	font-size: 1em;
	color: #40638D;
	font-weight: 700;
}
#contentform .errormsg p {
	color: #C70000;
}
.pseudobuttonwrapper {
	float: left;
	width: 100%;
}
.pseudobutton {
	float: left;
	background: #362416;
	text-decoration: none;
	color: #FFFFFF;	
	padding: .5em 2em;
	margin: 1em 0;
	border: 0;
	font-size: 1.125em;
	-moz-transition: background-color ease-out .5s;
	-o-transition: background-color ease-out .5s;
	-webkit-transition: background-color ease-out .5s;
	transition: background-color ease-out .5s;
}
.pseudobutton:hover {
	background: #6d482c;
}
.pseudobutton a {
	color: #FFFFFF;
}
/*********************************************************************************/
/* Right Wrapper                                                                 */
/*********************************************************************************/
#rightwrapper {
	float: left;
	width: 20%;
	margin: 3em 2% 0 0;
}
#rightwrapper h1 {
	font-size: 1.5em;
	margin-bottom: .5em;
	color: #6A5833;
}
#rightwrapper .contentblock {
	float: left;
	width: 90%;
	padding: .5em 5%;
	background: #F5F5F4;
	margin-bottom: 1em;
}
#rightwrapper .contentblock .title h1 {
	color: #6A5833;
	font-size: 1.5em;
}
#rightwrapper .contentblock .text {
	float: left;
	width: 100%;
	margin: .5em 0
}
#rightwrapper .contentblock .text h2 {
	font-size: 1.125em;
	color: #002D50;
	font-weight: 400;
	line-height: 135%;
}
#rightwrapper .contentblock .text h2 a {
	color: #002D50;
}
#rightwrapper .contentblock .text h2 a:hover {
	text-decoration: underline;
}
#rightwrapper .contentblock .text p {
	font-size: 1em;
	margin-bottom: .5em;
	font-weight: 400;
	line-height: 135%;
}
#rightwrapper .contentblock p .more {
	float: left;
	width: 100%;
	margin: .5em 0;
	font-size: 1em;
	color: #6A5833;
}
#rightwrapper .contentblock .text p .more a {
	color: #8C7B58;
}
#rightwrapper .contentblock .text p .more a:hover {
	text-decoration: underline;
}
#rightwrapper .imageblock {
	float: left;
	width: 100%;
	margin-bottom: 1em;
}
#rightwrapper .imageblock img {
	float: left;
	width: 100%;
	height: auto;
}
#rightwrapper .adblock {
	float: left;
	width: 100%;
	margin-bottom: 1em;
}
#rightwrapper .adblock img {
	max-width: 100%;
	height: auto;
}
/*********************************************************************************/
/* Footer                                                                        */
/*********************************************************************************/
#footer {
	float: left;
	width: 100%;
	background: #362415;
}
#footermenu {
	float: left;
	margin: 0 1%;
	width: 98%;
}
#footermenu ul,
#bottommenu ul {
	text-align: center;
	padding:0;
	z-index: 999;
}
#footermenu ul li,
#bottommenu ul li {
	display: inline-block;
	list-style:none;
	font-size: 1em;
}
#footermenu ul li a,
#bottommenu ul li a {
	text-decoration: none;
	color: #000000;
	display: block;
	padding: .5em 1.5em;
	font-weight: 400;
}
#footermenu ul li a:hover,
#bottommenu ul li a:hover {
	text-decoration: underline;
}
#footer #blog,
#footer #logos {
	float: left;
	width: 98%;
	margin: 0 1%;
}
#blog h2 {
	font-size: 30px;
	color: #6D8EAC;
	margin-bottom: 1em;
	font-weight: 400;
}
#blog ul {
	list-style-type: none;
}
#blog li {
	font-size: 1em;
	margin-bottom: 1em;
}
#blog li a {
	color: #000000;
}
#blog li a:hover {
	color: #6D8EAC;
}
#footer #logos #social {
	float: right;
	text-align: right;
	width: 100%;
}
#footer #logos #social img {
	margin: 2em auto .5em auto;
	padding: 0 .5em;
	display: inline-block;
}
#footer #logowrapper #logos img,
#footer #logowrapper #clients img {
	margin: 0 .25em;
	display: inline-block;
	width: auto;
	height: 100%;
	max-height: 50px;
}
#bottom {
	float: left;
	width: 100%;
	font-family: 'Titillium Web', sans-serif;
}
#bottom #creditswrapper #copyright,
#bottom #creditswrapper a {
	color: #FFF;
}
#bottom #creditswrapper {
	width: 98%;
	margin: .75em 1%;
	display: flex;
}
#bottom #creditswrapper #copyright,
#bottom #creditswrapper #webcredit,
#bottom #creditswrapper #bottommenu  {
	font-size: 12px;
	width: 33%;
}
#bottommenu ul li {
	padding: 0 1em;
}
#bottommenu ul li a {
	padding: 0 1em;
}
#bottom #creditswrapper #copyright {

}
#bottom #creditswrapper #webcredit {
	text-align: right;
}
#bottom #creditswrapper #copyright a:hover {
	text-decoration: underline;
}
#bottom #creditswrapper #webcredit #beachshore:hover {
	color: #56D5FB;
}
#bottom #creditswrapper #webcredit #beachshore #beachshorebold {
	font-weight: 700;
}