/*
 * Copyright (c) 2020 Carol Herbert - http://sleepyfrog.com
 */
/*MAIN BODY*/
#mainBody {
width: 90%;
margin: 0 auto 20px auto;
}

/*HEADER*/
.headblock {
	width: 90%;
	margin: auto;
	z-index: 999;
}

.header {
display: flex;
flex-direction: row;
 justify-content: space-between;
  align-items: flex-end;
  align-content: stretch;  
	background-color: #ffffff;
	padding-bottom: 5px;
	box-sizing: border-box;
	flex-wrap: nowrap;
}
.headleft {
display: flex;
flex-direction: row;
 justify-content: flex-start;
  align-items: flex-end;
  align-content: stretch;  
	height: auto;
	flex: 1;
}
.headmid img {
width: auto;
height: 100px;
border: 0;
margin: 0 20px 0 20px;
}
.headright {
display: flex;
flex-direction: column;
 justify-content: stretch;
  align-items: flex-end;
  align-content: flex-end;  
	height: auto;
}
.logo img {
width: auto;
height: 100px;
border: 0;
margin-right: 5px;
}
.logotext {
	color: #006600;
	font-size: 36px;
	font-weight: bold;
	text-transform: uppercase;
}
.tagline {
	color: #CC6600;
	font-size: 16px;
	font-weight: normal;
	margin-bottom: 15px;
}
.telephone a {
	color: #006600;
	font-size: 36px;
	font-weight: normal;
	padding: 10px 0 10px 0;
	margin: 0px;
	text-decoration: none;
}
.telephone a:hover {
color: #FF6600;
}
.mobileonly {
display: none;
visibility: hidden;
}

.homeboxblock {
width: 100%;
margin: auto;
display: flex;
flex-direction: row;
 justify-content: space-between;
  align-items: stretch;
  align-content: stretch;  
	box-sizing: border-box;
	flex-wrap: nowrap;
	position: relative;
}
.Hboxinner {
max-width: 32%;
	position: relative;
	height: 100%;
box-sizing: border-box;
}
.Hboxhead {
padding: 10px;
background-color: #FF9900;
color: #ffffff;
font-size: 110%;
border-radius: 4px 4px 0 0;
	position: relative;
}
.Hboxtext {
padding: 10px 10px 30px 10px;
background-color: #DDDDDD;
font-size: 90%;
border-radius: 0 0 4px 4px;
	position: relative;
	min-height: 100%;
	color: #333333;
	line-height: 1.2em;
}
.Hboxlink a {
padding: 5px 10px 5px 10px;
background-color: #FF9900;
color: #FFFFFF;
text-decoration: none;
position: absolute;
bottom: 0;
right: 0;
border-radius: 4px 0 4px 0;
}
.Hboxlink a:hover {
background-color: #333333;
color: #FFFFFF;
text-decoration: none;
}
.homeContent {
width: 100%;
margin: 20px auto;
display: flex;
flex-direction: row;
 justify-content: space-between;
  align-items: stretch;
  align-content: stretch;  
	box-sizing: border-box;
	flex-wrap: nowrap;
	position: relative;
}
.homeleft {
width: 31%;
}
.homeright {
width: 65%;
}
.Qtext {
	color: #CC6600;
	font-family: Georgia, "Times New Roman", Times, serif;
	font-size: 100%;
	font-style: italic;
	line-height: 1.2em;
	padding-bottom: 5px;
	margin-top: 20px;
}
.Qtext img {
width: 16px;
height: 16px;
margin: 0 5px;
}
.Qname {
	color: #666666;
	font-family: Georgia, "Times New Roman", Times, serif;
	font-size: 90%;
	line-height: 1.5em;
}

#curvebox {
	width: auto;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	border:1px solid #000000;
	background-color: #993300;
	-webkit-box-shadow: #B3B3B3 4px 4px 4px;
	-moz-box-shadow: #B3B3B3 4px 4px 4px; 
	box-shadow: #B3B3B3 4px 4px 4px;
	margin-top: 10px;
	padding: 5px;
}
#signup {
	color: #FFFFFF;
	padding-bottom: 10px;
}
#signup h2 {
	color: #FFFFFF;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 100%;
	padding: 4px 0 4px 5px;
	font-weight: bold;
	margin: 0 0 4px 0;
}
.indicates-required {
	color: #ffffff;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 80%;
	padding: 0px 0px 10px 5px;
}
.mc-field-group {
	color: #ffffff;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 90%;
	padding-left: 5px;
	margin-bottom: 5px;
}
.mc-field-group label {
	padding-bottom: 5px;
}	
.mailbutton {
-moz-border-radius:6px;
-webkit-border-radius:6px;
border-radius:6px;
display:inline-block;
font-size:17px;
padding:4px 8px;
text-decoration:none;
cursor:pointer;
margin: 4px 0 4px 4px;
-moz-box-shadow: 0px 1px 0px 0px #fff6af;
-webkit-box-shadow: 0px 1px 0px 0px #fff6af;
box-shadow: 0px 1px 0px 0px #fff6af;
background:-webkit-gradient(linear, left top, left bottom, color-stop(0.05, #ffec64), color-stop(1, #ffab23));
background:-moz-linear-gradient(top, #ffec64 5%, #ffab23 100%);
background:-webkit-linear-gradient(top, #ffec64 5%, #ffab23 100%);
background:-o-linear-gradient(top, #ffec64 5%, #ffab23 100%);
background:-ms-linear-gradient(top, #ffec64 5%, #ffab23 100%);
background:linear-gradient(to bottom, #ffec64 5%, #ffab23 100%);
filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffec64', endColorstr='#ffab23',GradientType=0);
background-color:#ffec64;
border:1px solid #ffaa22;
color:#333333;
text-shadow:0px 1px 0px #ffee66;
}	
.mailbutton:active {
position:relative;
top:1px;
}
.mailbutton:hover {
background:-webkit-gradient(linear, left top, left bottom, color-stop(0.05, #ffab23), color-stop(1, #ffec64));
background:-moz-linear-gradient(top, #ffab23 5%, #ffec64 100%);
background:-webkit-linear-gradient(top, #ffab23 5%, #ffec64 100%);
background:-o-linear-gradient(top, #ffab23 5%, #ffec64 100%);
background:-ms-linear-gradient(top, #ffab23 5%, #ffec64 100%);
background:linear-gradient(to bottom, #ffab23 5%, #ffec64 100%);
filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffab23', endColorstr='#ffec64',GradientType=0);
background-color:#ffab23;
}

.mc-field-group input {
border: 0;
font-size: 110%;
margin-bottom: 4px;
padding: 5px;
border-radius: 4px;
width: 80%;
}



/*FOOTER*/
.footer {
width: 90%;
margin: auto;
	box-sizing: border-box;
	border-radius: 6px 6px 0 0;
}

.footerinner {
display: grid;
grid-template-columns: 40% 20% 40%;
 justify-content: space-between;
  align-items: flex-start;
  align-content: flex-start;  
	z-index: 999;
	padding: 10px 10px 30px 10px;
	box-sizing: border-box:
}
.botlinks {
font-size: 90%;
line-height: 1.5em;
}
.botlinks a {
color:#ffffcc;
text-decoration: none;
}
.botlinks a:hover {
color: #FFFFFF;
}
.icon-wrapper {
display: -webkit-box; /* OLD - iOS 6-, Safari 3.1-6 */
display:-webkit-flex;
display: -moz-box;    /* OLD - Firefox 19- (buggy but mostly works) */
display: -ms-flexbox;  /* TWEENER - IE 10 */
display: -webkit-flex; /* NEW - Chrome */
display: flex; 
flex-direction: row;
flex-wrap: wrap;
justify-content: flex-end;
align-items: center;
align-content: space-between;
	 margin: 10px auto 10px auto;
	 position: relative;
	 width: auto;
	 text-align: right;
}
.icon-wrapper div {
margin-left: 10px;
}
.copyright {
color: #cccccc;
	line-height: 1.5em;
	font-size: 85%;
}
.credits {
	line-height: 1.5em;
	font-size: 85%;
	text-align: right;
}
.credits, .credits a {
color: #999999;
text-decoration: none;
}
.credits a:hover {
color: #ffcc00;
}
.credits {
	font-size: 80%;
}
.Fphone, .Fphone a {
color: #ffffcc;
font-size: 30px;
text-decoration: none;
margin-bottom: 4px;
}
.Fphone:hover, .Fphone a:hover {
color: #ffffff;
}
.Femail, .Femail a {
color: #ffffcc;
font-size: 24px;
text-decoration: none;
margin-bottom: 8px;
}
.Femail:hover, .Femail a:hover {
color: #ffffff;
}
.address {
color: #FFFFFF;
margin-bottom: 4px;
}
.bothead {
color: #ffffff;
font-size: 110%;
text-decoration: none;
text-decoration: underline;
	line-height: 1.5em;
}

.flexdefault {
display: -webkit-box; /* OLD - iOS 6-, Safari 3.1-6 */
display:-webkit-flex;
display: -moz-box;    /* OLD - Firefox 19- (buggy but mostly works) */
display: -ms-flexbox;  /* TWEENER - IE 10 */
display: -webkit-flex; /* NEW - Chrome */
display: flex; 
flex-direction: row;
flex-wrap: wrap;
justify-content: space-between;
align-items: stretch;
align-content: stretch;
	 margin: 0;
	 position: relative;
	 width: auto;
	 box-sizing: border-box;
	 width: 100%;
}
.mainContent {
width: 100%;
margin: 20px auto;
display: flex;
flex-direction: row;
 justify-content: space-between;
  align-items: stretch;
  align-content: stretch;  
	box-sizing: border-box;
	flex-wrap: nowrap;
	position: relative;
}

.homeContent p, .mainContent p {
font-size: 100%;
line-height: 1.5em;
margin-bottom: 6px;
}
.homeContent h2, .mainContent h2 {
font-size: 130%;
line-height: 2em;
margin-bottom: 10px;
}
.homeContent ul {
font-size: 110%;
margin-bottom: 10px;
margin-left: 30px;
}
.mainContent ul {
font-size: 100%;
margin-bottom: 10px;
margin-left: 30px;
}

.homeContent ul li, .mainContent ul li {
line-height: 1.5em;
}
.homeContent a, .mainContent a {
	color: #cc0000;
	text-decoration: none;
}
.homeContent a:hover, .mainContent a:hover {
	color: #ff9900;
	text-decoration: none;
}
.layoutR {
max-width: 500px;
min-width: 300px;
}
.layoutL {
margin-right: 30px;
width: 100%;
min-height: 40vw;
}
.docheader {
font-size: 1.5vw;
font-weight: normal;
color: #FF9900;
line-height: 2em;
}
#videos {
	float: left;
	width: 420px;
	max-width: 420px;
}
#videos iframe {
	margin: 10px 20px 5px 0;
	width: 400px;
	max-width: 400px;
	float: left;
	margin-right: 10px;
}
.datesblock {
width: 100%;
	position: relative;
display: flex;
flex-direction: row;
 justify-content: flex-start;
  align-content: flex-start;  
	box-sizing: border-box;
	flex-wrap: nowrap;
}
.gridtwo {
display: grid;
grid-template-columns: 100px auto;
column-gap: 10px;
}
.gridtwo div {
margin-bottom: 4px;
font-size: 90%;
line-height: 1.5em;
}
.courseblock {
margin-top: 20px;
margin-bottom: 20px;
box-sizing: border-box;
}
#listcols {
margin: auto;
width: 100%;
}
#listcols th {
font-weight: bold;
background-color: #D1EFD2;
}
#listcols th,
#listcols td,
#listcols2 ht,
#listcols2 td {
padding: 4px 15px 4px 10px;
border: 1px solid #666666;
font-size: 90%;
vertical-align: middle;
}
#listcols td img {
display: inline;
margin: 3px 5px 0 5px;
}
.pboxblock {
padding: 10px;
border: 1px solid #CC0000;
box-sizing: border-box;
font-size: 90%;
-moz-border-radius:10px;
-webkit-border-radius:10px;
border-radius:10x;
	-webkit-box-shadow: #B3B3B3 4px 4px 4px;
	-moz-box-shadow: #B3B3B3 4px 4px 4px; 
	box-shadow: #B3B3B3 4px 4px 4px;
	margin-bottom: 20px;
}

.docimageblock {
max-width: 100%;
box-sizing: border-box;
-moz-border-radius:10px;
-webkit-border-radius:10px;
border-radius:10x;
	margin-bottom: 20px;
object-fit: contain;
text-align: center;
}
.docimageblock div img {
max-width: 100%;
}
.docimageblock div.caption {
font-size: 90%;
text-align: center;
}


#gallimagebox {
	height: 200px;
	margin: 0 5px 5px 0;
	padding: 5px;
	text-align: center;
	border: 1px solid #cccccc;
	width: auto;
    display: inline-block;
}
#gallimagebox img {
	max-height: 100%;
	vertical-align: middle;
	display: inline-block;
}
.formleft {
min-width: 200px;
color: #333333; 
text-decoration: none; 
}
.enqformleft {
min-width: 200px;
color: #333333; 
text-decoration: none; 
}
.gridtwoform {
display: grid;
grid-template-columns: auto auto;
column-gap: 10px;
width: 100%;
min-width: 800px;
}
.gridtwoform div {
margin-bottom: 10px;
max-width: 600px;
}
.forminput {
display: block;
min-width: 300px;
font-size: 100%;
color: #006600;
}

.contactform input, .contactform textarea, .contactform select {
border-radius: 6px;
padding: 5px;
display: block;
}
.contactimg {
font-size: 80%;
text-align: center;
float: left;
margin-right: 10px;
margin-bottom: 10px;
}
.layoutL iframe {
min-width: 100%;
min-height: 35vw;
max-height: 35vw;
}
.datesblock {
text-align: left;
margin-bottom: 10px;
}
.dateleft {
min-width: 170px;
max-width: 170px;
}
.dateright {
text-align: left;
line-height: 1.2em;
}