@charset "UTF-8";
/* CSS Document */
/*********************************************************************************/
/* Below 1800px                                                                   */
/*********************************************************************************/
@media (max-width: 1800px) { 

	.wrapper {
		max-width: 1500px;
	}
	.mainbanner .mainimage .caption {
		top: 200px;
	}
	.mainbanner .mainimage .caption h1,
	.mainbanner .mainimage .caption p {
		font-size: 2.5em
	}
	#menuwrapper {
		max-width: none;
		float: right;
		width: auto;
	}
}

/*********************************************************************************/
/* Below 1500px                                                                   */
/*********************************************************************************/
@media (max-width: 1500px) { /* 1500px */

	.wrapper {
		max-width: 1200px;
	}
	.mainbanner .mainimage .caption {
		top: 200px;
	}
	.mainbanner .mainimage .caption h1,
	.mainbanner .mainimage .caption p {
		font-size: 2.5em
	}
	#menuwrapper {
		max-width: none;
		float: right;
		width: auto;
	}
}

/*********************************************************************************/
/* Below 1250px                                                                   */
/*********************************************************************************/
@media (max-width: 1250px) {

	.wrapper {
		width: 98%;
		margin: 0 auto;
		max-width: none;
	}
	#header #logo {
		float: none;
		margin: 1em auto .5em auto;
	}
	#header #logo h1 {
		font-size: 1.75em;
	}
	
	#header #contactwrapper {
	float: left;
	width: 100%;
	max-width: none;
	margin: .75em 0;
	}
	#header #contactwrapper #clientlogin p {
	text-align: center;
	}
	#header #contactwrapper #contact p {
	text-align: center;
	}
	
	#menu {
		display:none;
	}
	
	.slicknav_menu {
		display:block;
		text-align: center;
	}
	#menu ul li.responsive {
		display: block;
	}
	
	#menuwrapper {
		float: none;
		display: block;
		background: #FFFFFF;
	}
	
	.mainbanner .mainimage {
		overflow: hidden;
		height: 400px;
	}
	.mainbanner .mainimage img {
		position: absolute;
		top: -9999px;
		bottom: -9999px;
		left: -9999px;
		right: -9999px;
		margin: auto;
		width: auto;
		height: 100%;
	}
	.mainbanner.mainvideo {
		height: 300px;
	}
	
	
	.mainbanner .mainimage .caption {
		top: 150px;
	}
	.mainbanner .mainimage .caption h1,
	.mainbanner .mainimage .caption p {
		font-size: 2em
	}
	
	.mainbanner .mainimage .wrapper {
		width: 100%;
		margin: 0;
	}
	
	.contentsection .contentwrap p.blurb {
		min-height: 150px;
	}
}

/*********************************************************************************/
/* Below 960px                                                                   */
/*********************************************************************************/
@media (max-width: 960px) { /* 960px */

	.captionresponsive {
		display: block;
	}
	.mainbanner .mainimage .caption {
		display: none;
	}
	.mainbanner.mainvideo {
		height: 250px;
	}
	
	.homehighlightwrapper .highlightrow .highlightbox .title h2 {
		font-size: 1.25em;
	}
	.contentblock.contentcentre {
		width: 90%;
		margin: 0 5%;
	}
	.fullwidthpromo.benefits .textblock ul {
		width: 90%;
		margin: 1rem 5%;
	}
	
	.fullwidthpromo .textblock h2 {
		font-size: 1.5rem;
	}
	.fullwidthpromo.benefits .textblock p, 
	.fullwidthpromo.benefits .textblock li {
		font-size: 1.25rem;
	}
	.contentblock .aboutimage {
		width: 35%;
	}
	
	.map-responsive {
		padding-bottom: 56.25%;
	}
	.fullwidthpromo {
		align-items: flex-start;
	}
	.fullwidthpromo.imgsmall .imgblock {
		width: 50%;
	}
	.fullwidthpromo.imgsmall .textblock {
		width: 40%;
		padding: 1rem 5%;
	}
	
	#footer #creditswrapper #copyright,
	#footer #creditswrapper #webcredit {
		width: 98%;
		margin: 1em 1%;	
	}
	#footer {
		text-align: center;	
	}
	#footer #creditswrapper #webcredit {
		text-align: center; 	
	}

	#footer #address,
	#footer #social,
	#footer #logos {
		float: none;
		width: 100%;
		margin: .5em auto;
		text-align: center;
		display: inline-block;
	}
	#footer #address {
		display: inline-block;
		background: url('_gfxlib/footerlogo171.png') top center no-repeat;
	}
	
	#footer #social img,
	#footer #logos img {
		float: none;
		margin: .5em;
		display: inline-block;
	}
	
	#contentform .orderformlayout {
		width: 100%;
		margin: 0;
	}
	#contentform .formobject,
	#contentform .formfileobject,
	#contentform textarea {
		font-size: 1em;
	}
	.reviewsblock {
		display: none;
	}
	

}

/*********************************************************************************/
/* Below 768px                                                                   */
/*********************************************************************************/
@media (max-width: 768px) {
	
	#pagewrapper {
		padding-bottom: 1rem;
	}
	
	.mainbanner .mainimage {
		height: 300px;
	}
	.captionresponsive h1,
	.captionresponsive p {
		font-size: 1.5rem;
	}
	.contentblock.contentcentre {
		width: 98%;
		margin: 0 1%;
	}
	
	#header #logo {
		height: 159px;
		width: 350px;
	}
	.mainbanner .mainimage .caption h1,
	.mainbanner .mainimage .caption p {
		font-size: 1.25rem
	}
	
	.homehighlightwrapper .highlightrow .highlightbox .title h2 {
		font-size: 1.125rem;
	}
	
	.homehighlightwrapper .highlightrow .highlightbox .content p,
	.homehighlightwrapper .highlightrow .highlightbox .content p a {
		font-size: 1em;
	}
	.contentflex .thirdwidth {
		width: 98%;
		display: flex;
		flex-direction: column;
		position: relative;
		background: #EBE9E0;
		margin-bottom: 1rem;
	}
	.contentsection .contentwrap p.blurb {
		min-height: inherit;
	}
	
	#contentwrapper {
		margin: 1rem 0;
	}
	
	#content {
		padding: 1rem 0;
		margin-top: 1rem;
	}
	#centrewrapper {
		float: left;
		width: 98%;
		margin: 0 1%;
	}
	#centrewrapper h1 {
		font-size: 1.5em;
	}
	#centrewrapper h2 {
		font-size: 1.125em;
	}
	#centrewrapper p,
	#centrewrapper .contentlist li,
	#centrewrapper ol li {
		font-size: 1em;
	}
	#centrewrapper .standfirst {
		font-size: 1.25em;
	}
	#centrewrapper #paypal {
	width: 90%;
	padding: 1em 5%;
	}
	.contentblock .aboutimage {
		width: 45%;
	}
	.fullwidthpromo,.testimonial {
		flex-wrap: wrap;
	}
	.fullwidthpromo.imgsmall .imgblock,
	.testimonial .imgblock {
		width: 80%;
		margin: 1rem 10%;
	}
	.fullwidthpromo.imgsmall .textblock,
	.testimonial .textblock {
		width: 80%;
		padding: 1rem 10%;
	}
	#rightwrapper {
		width: 98%;
		margin: 1rem 1% 0 1%;
	}
	#rightwrapper h1 {
		font-size: 1.125em;
	}

}
/*********************************************************************************/
/* Below 650px                                                                   */
/*********************************************************************************/
@media (max-width: 650px) {

	#header #logo {
		height: 113px;
		width: 250px;
	}
	#header #contactwrapper,
	#header #contactwrapper #clientlogin {
		text-align: center;
	}
	#header #contactwrapper #clientlogin p {
		font-size: 1em;
		text-align: center;
		display: inline-block;
		float: none;
	}
	#header #contactwrapper #clientlogin p a {
		margin: 1em auto;
	}
	#header #contactwrapper #contact p {
		font-size: 20px;
	}
	#header #contactwrapper #contact p .label {
		font-size: 15px;
	}
	.mainbanner.mainvideo {
		height: 150px;
	}
	.fullwidthpromo.imgsmall .imgblock {
		width: 94%;
		margin: 1rem 3%;
	}

	.homehighlightwrapper .highlightrow .highlightbox {
		float: left;
		width: 100%;
		margin: 0 0 1em 0;
		padding: 0;
	}

	.homehighlightwrapper .highlightrow .highlightbox .content {
		margin: 1em 2%;
	}
	
	.contentblock .aboutimage {
		margin: 1rem 10%;
		width: 80%;
	}

}
/*********************************************************************************/
/* Below 480px                                                                   */
/*********************************************************************************/
@media (max-width: 480px) {

	
	.mainbanner .mainimage {
		height: 200px;
	}
	.mainbanner.mainvideo {
		height: 125px;
	}
	
	.captionresponsive h1,
	.captionresponsive p,
	.mainvideocaption h1,
	.mainvideocaption p {
		font-size: 1.25rem;
	}

}