@charset "utf-8";
html {font-size: 62.5%; height: 100%;
    min-height: 100%; background-color:#01425e }
/*include padding etc in size*/
html {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}
*, *:before, *:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  }
header, section, footer, aside, nav, main, article, figure {display: block;} 

body {   margin:0 0 0 0; font-size: 1.7em /* bug fix */;  }
.body-container {background-color: #fff;position: relative; max-width: 1024px; /*site width*/ margin: 0 auto; /*centrebox-sizing: border-box; box-shadow: 25px 0 15px -15px #f57643, -25px 0 15px -15px #f57643;*/}

.full-width-header {position:relative;  /* give header a stacking higher than mainContent */
	height:9%;background: #FFF;}

.full-background-image { margin:0% auto 0;background-color: #fcfbe7 !important; /* pull down header */	
	min-height:100%;max-width: 100%; background: url(../images/skin/background-rays3.png) no-repeat center top fixed;
/*.full-background-image {background: url(../images/skin/background-rays.png) no-repeat center top fixed; }*/
	/*background-position-x: 50%;background-position-y: 50%;  */ }

	.logo  {background-repeat: no-repeat;width: 100%;height: 0; padding-top: 16%;background-size: contain; background-image:url(../images/skin/logo-full.png);background-position: center top; }		
	
.bluebutton {background-color: #01425e; padding:5px}

a.bluebutton  {background-color: #01425e; color: #FFF; }
a:hover.bluebutton  {color: #FFF;background-color: #3e8f54 !important; text-decoration:none !important }
		
.img-float-right { float:right;}
.img-float-left { float:left;}
/*MAIN FLEXBOX*/
/*how should main flex work*/
.flex-columns {display: flex; flex-wrap: wrap;flex-direction:row; margin:10px 0px 10px 0px}
.flex-columns-home-reverse {display: flex; flex-wrap: wrap;flex-direction:row}
.flex-columns-reverse {display: flex; flex-wrap: wrap;flex-direction:row-reverse}

blockquote {font-style:italic;display:inline;
margin-inline-start: 0px;}

blockquote:before { 
    
    font-weight: bold;
    font-size:50px;
  	position: relative;
    top: 20px;
    padding-right:7px;font-family:  Georgia, "Times New Roman", Times, serif;
	line-height:20px !important;
	content: "\201C";
	color:#3e8f54 /*01425e*/
	}
	
	.home-list {text-align:left}
blockquote:before.footer-quote { color:#FFF;} 
	
	.reviews {margin-top:50px}
	.review-text { font-weight: 400;}
	.child-review-text { font-weight: 400;  font-family: "Schoolbell", cursive; }
	
	blockquote:after { 
   
    font-weight: bold;
    font-size:50px;
  	position: relative;
    top: 27px;
    padding-left:7px;font-family:  Georgia, "Times New Roman", Times, serif;
	line-height:0px !important;content: "\201D";
	color:#3e8f54
	}

.back-to-top {
  text-decoration: none;
  padding: 10px;
  font-family: sans-serif;
  color: #fff;
  background: #01425e;
  border-radius: 100px;
}



.testimonials {padding:0px 50px 0px 50px;}
.blue-line {margin:30px 160px 30px 160px; border-bottom: 10px solid #01425e}

li::marker {
  color:#3e8f54;
  content: "►";
}


.main {margin:0px 35px 0px 35px;}

/*what  should boxes be in*/
.order-left {order:1;} 
.order-mid {order:2;}
.order-mid-left {order:2;}
.order-mid-right {order:3;}
.order-right {order:4;}

/*box images*/
.box-fit {max-width:100%; max-height:auto;}




/*--------------------------SKIN---------------------------------*/
body {background-color: #FFF; color: #444;
         line-height: 2.6; font-weight: 300;
      font-family: "Lato", sans-serif;  }

.full-row { margin:0px 20px 0px 20px }

.padded-row {padding:20px;}
.box-row {padding:8px;}
.border-green {border-style: solid; border-width: 8px 8px 8px 8px; border-radius: 8px; border-color:#3e8f54; margin:20px 0px 20px 0px; padding:0px 20px 0px 20px} /*used with flex*/
.border-blue {border-style: solid; border-width: 8px 8px 8px 8px; border-radius: 8px; border-color:#01425e; margin:20px 0px 20px 0px; padding:0px 20px 0px 20px} 
.border-red {border-style: solid; border-width: 8px 8px 8px 8px; border-radius: 8px; border-color:#d44622; margin:20px 0px 20px 0px; padding:0px 20px 0px 20px} 
.border-yellow {border-style: solid; border-width: 8px 8px 8px 8px; border-radius: 8px; border-color:#fcc200; margin:20px 0px 20px 0px; padding:0px 20px 0px 20px} 



.top-border {border-style: solid; border-width: 8px 0px 0px 0px; border-radius: 8px; border-color:#01425e; margin:20px 0px 20px 0px; padding:0px 20px 0px 20px} /*used with flex*/
.review-box {padding: 0px 20px 0px 25px; margin:20px 0px 20px 0px}

.fullwidth-border {border-style: solid; border-width: 8px; border-color:#666; margin:0px 20px 0px 20px !important}/*used with stand-alone row*/
.centermobile {padding:0px 10px 0px 10px; margin-top:0px; width:100%;height:auto; } 
.centerlogo {padding:0px !important; margin-top:0px; max-width:30%;width:30%;height:auto} 
.review-centermobile {padding:0px !important; margin-top:0px; max-width:98%;height:auto} 

.main-title {margin-top:3px}
.title {text-align:center; margin-bottom:-10px}

/*how many default columns*/
.box2 {flex: 1; min-width: 48%;padding:10px 10px 10px 10px;}
.box3 {flex: 1; min-width: 31%;padding:10px 15px 10px 15px; max-width:33%}
.box4 {flex: 1; width: 24%;padding:10px 10px 10px 10px;object-fit:contain}
.first2thirds {flex: 1; min-width: 66%;padding:0px 30px 0px 20px;}
.lastthird {flex: 1; min-width: 33%;padding:20px 10px 0px 10px;}
.firstthird {flex: 1; min-width: 33%;padding:20px 10px 0px 0px;}
.last2thirds {flex: 1; min-width: 66%;padding:0px 20px 0px 22px;}
.firsthalf {flex: 1; min-width: 50%;padding:20px 10px 0px 0px;}
.secondhalf {flex: 1; min-width: 50%;padding:20px 0px 0px 10px;}
/*.carousel {padding:0px !important;}*/
.footer-box-left {flex: 1; min-width: 31%;padding:10px 15px 0px 15px; max-width:33%; text-align:center }
.footer-box-mid {flex: 1; min-width: 31%;padding:10px 0px 0px 20px; max-width:33%; text-align:center}
.footer-box-right {flex: 1; min-width: 31%;padding:10px 15px 0px 15px; max-width:33%;text-align:center }
/*flexible logo
.logo img {  max-width:100%;max-height:100%; }
.logo  {flex: 1; min-width: 69%; }*/

/*image logo
.logo  {background-repeat: no-repeat;width: 100%;height: 0; padding-top: 17.85%;background-size: contain; background-image:url(../images/skin/); }*/

/*header*/
.flex-header {flex: 1; min-width:: 29%; margin: 20px 20px 0 0; display: flex; flex-wrap: wrap;flex-direction:column; max-height:169px !important}



/*footer*/
footer {color:#FFF; background-color:#01425e; font-weight:600; padding: 0 20px;display:block;}
.footerlink {background-color:#FFF; color:#01425e}
.footerlink-nofollow {color: #FFF; }
.footerlink-privacy {color: #FFF; }
.footerlink-white {color: #FFF; }



/* Typography
–––––––––––––––––––––––––––––––––––––––––––––––––– 

p {margin: 10px 0px 0px 0px;}
*/
/* Links
–––––––––––––––––––––––––––––––––––––––––––––––––– */
a {color: #444; }
a:hover {color: #2b96a8; }

a {color: #01425e; font-weight:bold;text-decoration:none}
a:hover { text-decoration:none  }

h1, h2, h3 {
  color:#01425e;/* s colour */  
  margin-bottom: 20px;
  font-weight: bold;
font-family: "Lato", sans-serif;
   text-align:center
}

h1 { font-size: 3rem; line-height: 1.2;  letter-spacing: 4px;}
h2 { font-size: 3rem; margin-bottom: 1rem !important; line-height: 1.2; letter-spacing: 6px;margin-top: 10px; }
h3 { font-size: 2.8rem; margin-bottom: 1rem !important; line-height: 1.2; letter-spacing: 3px;margin-top: 10px; }


/*GENERAL LINKS BEHAVIOUR

a:link, a:visited {color:#000; text-decoration:none}
a:hover, a:active{color:#000; text-decoration:underline}*/

/*SPECIFIC LINKS BEHAVIOUR
.navbar a:link {color:#FFF}
.navbar a:visited {color: #FFF}
.navbar a:hover {color: #FFF; text-decoration:underline}
.navbar a:active {color: #FFF}*/

/* Images
––––––––––––––––––––––––––––––––––––––––––––––––– */
.fullwidth-img {width:100%;}
.testimonial-bar {width:60%;margin: auto;display:block; padding-top:30px; padding-bottom:30px}
.halfwidth-img {width:50%;margin: auto;display:block; min-width:300px }
.first-para {margin-top:25px}

/* Lists
–––––––––––––––––––––––––––––––––––––––––––––––––– */
ul {list-style: none;  }
ol {list-style: decimal inside; }
ol, ul {padding-left: 20px; }
ul ul, ul ol, ol ol, ol ul {padding-left:20px; font-size: 90%; }
li {padding-left:10px; list-style-position:inside }

.company-info {text-align:center; font-size:0.8em !important; margin-top: -20px;}

@media (max-width: 1480px) {.logo {padding-top: 16%;}
/*.full-background-image {background: url(../images/skin/background-rays.png) no-repeat center top fixed; }*/}
@media (max-width: 1200px) {.logo {padding-top: 16%;}

}

@media (max-width: 1150px)  {.box3 {min-width: 99%;  padding:10px 10px 10px 10px} .logo {padding-top: 16%;}}

@media (max-width: 990px) { 
.company-info {margin-top: 0px;}
body { line-height: 2; font-size:1.6em}
.title {text-align:center; margin-bottom:-25px}
.reviews {margin: 10px 10px 20px 0px}
.flex-columns-home-reverse {display: flex; flex-wrap: wrap;flex-direction:column-reverse !important}
.first2thirds {flex: 1; min-width: 99%;padding:10px 0px 0px 0px !important;}
.lastthird {flex: 1; min-width: 99%;padding:0px 0px 20px 0px !important;}
.firstthird {flex: 1; min-width: 99%;padding:10px 0px 0px 0px !important;}
.last2thirds {flex: 1; min-width: 99%;padding:0px 0px 20px 0px !important;}
.firsthalf {flex: 1; min-width: 99%;padding:10px 0px 0px 0px !important;}
.secondhalf {flex: 1; min-width: 99%;padding:0px 0px 20px 0px !important;}
.centermobile {max-width:93%; margin: auto; display: block; max-height:auto;}
.first-para {margin-top:0px !important}
.logo {padding-top: 13%;} .home-list {text-align:center}
li::marker {
  color:#01425e;
  content: "►";
}
ol, ul, li {padding-left: 0px; }}

@media (max-width: 960px)  {
	.flex-columns-reverse {flex-direction:row !important}		
	 .footer-box-left {min-width: 48%; max-width: 49%; padding:10px 15px 0px 15px}
	 .footer-box-mid {min-width: 48%; max-width: 49%; padding:20px 15px 0px 15px}
     .footer-box-right {flex: 1; min-width: 98% !important;padding:0px 15px 10px 15px; max-width:99% !important;text-align:center}
	 .footer-box-right-p {margin-top:-20px}
	 .box2 {flex: 1; min-width: 98%;padding:10px 10px 10px 10px;}
	
	 	}
		


@media (max-width: 780px) {
						                    .full-row { margin:0px 0px 0px 0px }
						   .border {border-style: solid; border-width: 8px 8px 8px 8px; border-radius: 8px; border-color:#01425e; margin:20px 0px 20px 0px; padding:0px 0px 0px 0px !important}   
						        .main {margin:15px 20px 25px 20px}
								.logo {padding-top: 15%;} }

@media (max-width: 660px)  {
	 .footer-box-left {min-width: 98%; max-width: 99%; padding:10px 0px 0px 0px; text-align:center}
	 .footer-box-mid {min-width: 98%; max-width: 99%; padding:0px 15px 0px 15px}
     .footer-box-right {flex: 1; min-width: 98% !important;padding:0px 15px 10px 15px; max-width:98% !important;text-align:center}
	 .footer-box-right-p {margin-top:-20px}}
	 
	 @media (max-width: 460px)  {
	.logo {background-image:url(../images/skin/logo-mobile.png)}}
	
<!--ipad footer bug fix-->

<!--@media (max-width: 640px) {h2 {font-size:2.8rem !important; font-weight:800}  }-->
@media (max-width: 600px) {.logo {padding-top: 17%;}  p {font-size: 1.3em} .testimonials {padding-left:25px; padding-right:20px; }.box4 {min-width: 49%}}

<!--@media (max-width: 480px) { .logo {padding-top: 23%} ; .mobile-email-web { font-size:1em !important}} -->

<!--@media (max-width: 400px) { .logo {padding-top: 23%;} } -->

.clearfix:before, .clearfix:after{display: table; content: " ";}
.clearfix:after{ clear: both;}