html {overflow: -moz-scrollbars-vertical;}

@viewport{
    zoom: 1.0;
    width: extend-to-zoom;
}

@-ms-viewport{
    width: extend-to-zoom;
    zoom: 1.0;
}

img {
	display: block;
	margin-left: auto;
	margin-right: auto;
	max-width: 100%;
	height: auto;
	outline:none;
	border-style:none;
}

body {
	margin-top:0px;
	background-color: white;
	font-family: Arial,Sans-Serif;
	font-size: 11px;
	border:0px solid blue;
}

#content{
	position:relative;
	margin:0px auto;
	max-width:100%;
	width:90em;
	text-align:left;
	background-color:transparent;
	border:0px solid green;
}

#header{
	position:relative;
	max-width:100%;
	width:auto;
	margin:10px 0px 10px 0px;
	text-align:center;
	background-color:transparent;
	border:0px solid red;
}
/* START OF HEADER ELEMENTS */
div#logo{
	display:inline-block;
	margin:20px 20px 20px 20px;
	border:0;
 	max-width: 100%;
  	left: 0px;
  	top: 0px;
	max-height: 100%;
	vertical-align:middle;
 	z-index: 0;
}

div#companyDetails{
	display:inline-block;
	margin:20px 20px 20px 20px;
	font-family: Arial,Sans-Serif;
	font-size: 1.5em;
	font-weight:600;
	text-align:center;
	vertical-align:middle;
	background-color:transparent;
	border:0px solid blue;
}

div#hours{
	display:inline-block;
	margin:20px 20px 20px 20px;
	font-family: Arial,Sans-Serif;
	vertical-align:middle;
}

div#hours table{
	border:0px solid #cccccc;
	font-size: 0.75em;
	text-align:center;
	margin: 0 auto;
	width:auto;
}

div#hours td{
	border:1px solid #cccccc;
	font-weight:400;
	text-decoration:none;
	background-color:#ffffff;
}

div#social{
	display:inline-block;
	margin:2px 2px 2px 2px;
	border:0;
	width:4em;
 	max-width: 100%;
	height: auto;
	vertical-align:middle;
 	z-index: 0;
}

/* END OF HEADER ELEMENTS (except NAV) */

#detail{
	position:relative;
	margin:0 auto;
	width:auto;
	max-width:100%;
	text-align:center;
	background-color:transparent;
	border:0px solid yellow;
}

h1{
	font-size: 2.5em;
	font-weight:600;
	line-height: 1.5;
	text-align:center;
}

h2{
	font-size: 1.75em;
	font-weight:600;
	line-height: 1.5;
	text-align:center;
}

p {
	font-family: Arial,sans-serif;
	font-size: 1.5em;
	font-weight:600;
	line-height: 1.5;
	text-align:justify;
	background-color:white;
	margin:0px 90px 10px 90px;
	padding:10px 20px 10px 20px;
	border:1px solid black;
	border-radius:15px;
}

p.left{margin:0px 140px 10px 40px;}
p.middle{margin:0px 90px 10px 90px;}
p.right{margin:0px 40px 10px 140px;}

label{
	font-size: 1.5em;
	font-weight:600;
	line-height: 1.5;
}

/* Column used by Javascript for list of Products */
.column{
  /*column-count: 3;
  column-gap: 20px;*/
}
/* end of Column used for list of Products */

ul {
	list-style-type:none;
	width:auto;
	padding:0px 0px 5px 15px;
	margin:0px;

}

ul  li{
	font-family: Arial,sans-serif;
	font-size: 1.25em;
	font-weight:600;
	line-height: 1.5;
	text-align:left;
	text-decoration:none;
	color:black;
}	

ul.sub1 li{
	font-family: Arial,sans-serif;
	font-size: 1.2em;
	font-weight:600;
	line-height: 1.5;
	text-align:left;
	color:#006600;
	list-style-type:disc;
}

ul.sub2 li{
	font-family: Arial,sans-serif;
	font-size: 1.2em;
	font-weight:600;
	line-height: 1.5;
	text-align:left;
	color:#009966;
	list-style-type:circle;
}

ul#directions li
{
	font-family: Arial,sans-serif;
	font-size: 1.5em;
	font-weight:300;
	line-height: 2;
	color:black;
	text-align:left;
}

.centred{
	text-align:center;
}	

.instructions{
	text-align:left;
	font-size:1em;
	color:#006;
}

table {
	background-color:transparent;
	text-align:center;
	margin-left:auto;
	margin-right:auto;
	width:auto;
	max-width:100%;
	border:0px solid #cccccc;
}
	
td {
	border:0px solid #000000;
	font-size:1.5em;
	background-color:white;
	text-align:center;
	padding:2px 5px 2px 5px;
	border-radius:15px;
} 

/* START OF ENTRY TABLE */
table.entry {
	border:0px solid #ccf;
	font-size:1.2em;
	background-color:transparent;
	text-align:left;
}

table.entry td{
	border:0px solid #ccf;
	font-size:1em;
	background-color:transparent;
	text-align:left;
	vertical-align:top;
	color:#006;
	padding-left:10px;
	padding-right:10px;
	padding-top:5px;
	padding-bottom:5px;
} 

table.entry td.prompt{
	border:0px solid #ccf;
	font-size:1em;
	background-color:transparent;
	text-align:right;
	vertical-align:top;
	color:#006;
	padding-left:10px;
	padding-right:0px;
	padding-top:5px;
	padding-bottom:5px;
} 
/* END OF ENTRY TABLE */	

	
table.hours{
	border:0px solid #cccccc;
	text-align:center;
	margin: 0 auto;
	width:auto;
}

td.hours_head{
	font-weight:600;
	text-decoration:none;
}
	
/* START OF CLASSES TABLE */
table#classes{
	text-align:center;
	margin-left:auto;
	margin-right:auto;
	width:auto;
	max-width:100%;
	border:0px solid #cccccc;
}

td.class_head  {
	font-size:1.5em;
	font-weight:600;
	text-decoration:none;
	padding-top:10px;
	padding-right:10px;
	padding-bottom:10px;
	padding-left:10px;
	background-color:#cfe9ff;
}

td.class_details{
	font-size:1.25em;
	padding-top:10px;
	padding-right:10px;
	padding-bottom:10px;
	padding-left:10px;
	background-color:#f0f8ff;
}

td.class_details a:link{
	color:black;
	text-decoration: none;
}

td.class_details a:visited{
	color:black;
	text-decoration: none;
}

td.class_details a:hover{
	color:blue;
	text-decoration: underline;
}

td.class_details_places{
	font-size:1.25em;
	width: 5em;
	padding-top:10px;
	padding-right:10px;
	padding-bottom:10px;
	padding-left:10px;
	background-color:#f0f8ff;
}

td.class_highlight_places{
	font-size:1.25em;
	color:red;
	font-weight:600;
	background-color:#f0f8ff;
}
/* END OF CLASSES TABLE */

td.head{
	font-weight:700;
	text-align:center;
	text-decoration:none;
	width:auto;
}

td.description{
	text-align:left;
	padding:15px 10px 15px 10px;
}

td.details{
	text-align:left;
	padding-top:5px;
	padding-bottom:5px;
}

td.details_bold{
	text-align:left;
	padding-top:10px;
	padding-bottom:10px;
	font-weight:700;
}	

td.title{
	text-align:left;
	font-size:2em;
	font-weight:700;
	
}

td.form_title{
	font-size:1.33em;
	font-weight:600;
	color:#6600CC;
	text-align:left;
}

td.form_prompt{
	text-align:right;
}

.formFieldInError{
	color:#FF0000;
	font-weight:600;
	font-size:11px;
}

.formField{
	display:none;
}

td.blank{
	background-color:transparent;
	border:0px solid #ccf;
	text-align:center;
	vertical-align:top;
	width:auto;
	padding-left:0px;
	padding-right:0px;
	padding-top:5px;
	padding-bottom:5px;
}
/*
.red{background-color:#ffdfff;}
.yellow{background-color:#ffffcf;}
.blue{background-color:#cfffff;}
*/
td.highlight{
	color:red;
	#font-weight:600;
	font-size:1.25em
	text-align:left;
	background-color:#ffffcf;
}

p.highlight
{
	max-width:100%;
	font-size:1.25em;
	color:blue;
	border:0px solid red;
	background-color:#ffffcc;
	margin:60px 0px 70px 0px;
	padding:10px 0px 10px 0px;
	font-weight:900;
	text-align:center;
}

.highlight
{
	font-size:1.25em;
	color:red;
	background-color:#ffffcf;
}

.red_superscript{
	color:red;
	font-size:x-small;
	vertical-align: super;
}
	
#nav{
	position:relative;
	font-family: Arial,sans-serif;
	margin: 0 auto;
	width:auto;
	max-width:100%;
	padding:8px 0px 7px 0px;
	text-align:center;
	border:0px solid red;
}

#nav a:link{
	margin: 0 auto;
	padding: 1px 10px 2px 10px;
	color: #5721CC;
	font-family: Arial,sans-serif;
	font-size: 1.25em;
	font-weight: 900;
	text-decoration: none;
	text-align: center;
}

#nav a:visited {
	margin: 0 auto;
	padding: 1px 10px 2px 10px;
	color: #5721CC;
	font-family: Arial,sans-serif;
	font-size: 1.25em;
	font-weight: 900;
	text-decoration: none;
	text-align: center;
}

#nav a:hover{
	margin:0 auto;
	padding: 1px 10px 2px 10px;
	text-decoration: none;
	color:#5721CC;
	border-radius:20px 20px 20px 20px;
}

#nav a:active{
	margin:0 auto;
	padding: 1px 10px 2px 10px;
	text-decoration:none;
	color:#5721CC;
}

#nav ul{
	display: inline;
	width:auto;
	padding: 15px 10px 11px 10px;
	border:0px solid black;
	background-color:white;
	border-radius:20px 20px 20px 20px;
}

#nav li{
	margin-left: 0;
	width:auto;
	list-style: none;
	display: inline;
	padding:1px 5px 0px 5px;
}

a:link#here {
	margin: 0 auto;
	color: #5721CC;
	padding: 1px 10px 2px 10px;
	font-family: Arial,sans-serif;
	font-size: 1.25em;
	font-weight: 900;
	text-decoration:none;
	text-align: center;
	border-radius:20px 20px 20px 20px;
	background-color: #F4F2FA;
	border:1px solid #5721CC;
}

a:visited#here {
	color:#5721CC;
	padding: 1px 10px 2px 10px;
	font-size: 1.25em;
	font-weight: 900;
	text-decoration:none;
	text-align: center;
	border-radius:20px 20px 20px 20px;
	background-color: #F4F2FA;
	border:1px solid #5721CC;
}

a:hover#here {
	margin: 0 auto;
	color:#5721CC;
	padding: 1px 10px 2px 10px;
	font-family: Arial,sans-serif;
	font-size: 1.25em;
	font-weight: 900;
	text-decoration:none;
	text-align: center;
	background-color: #F4F2FA;
	border-radius:20px 20px 20px 20px;
}

a:active#here {
	margin: 0 auto;
	color: #5721CC;
	padding: 1px 10px 2px 10px;
	font-family: Arial,sans-serif;
	font-size: 1.25em;
	font-weight: 900;
	text-decoration:none;
	text-align: center;
	background-color: #F4F2FA;
	border-radius:20px 20px 20px 20px;
}

#detail>a {
	background-color: transparent;
	color: #00ffff;
	font-family: Arial,sans-serif;
	font-size: 1.25em;
	text-decoration: none;
	text-align: center;
	padding: 20px 15px 20px 15px;
	display:inline;
}

div#newsletter{
	font-family: Arial,sans-serif;
	font-size: 1.5em;
	font-weight:600;
	line-height: 1.5;
	text-align:justify;
	background-color:#ffffcc;
	margin:0px 90px 10px 90px;
	padding:10px 10px 10px 10px;
	border:2px solid black;
	border-radius:15px;
}

div#newsletter p{
	font-family: Arial,sans-serif;
	font-size: 1em;
	font-weight:300;
	line-height: 1.25;
	text-align:justify;
	background-color:transparent;
	margin:0px 0px 0px 0px;
	padding:0px 5px 0px 5px;
	border:0px solid black;
}

#footer{
	position:relative;
	font-family: Arial,sans-serif;
	font-size: 1.2em;
	width:auto;
	max-width:100%;
	text-align:center;
}

p.footer {
	font-size: 1.2em;
	line-height: 1.5;
	font-weight: 600;
	text-align:center;
	background-color:white;
	margin:5px 0px 5px 0px;
	padding:8px 0px 6px 0px;
	border:0px solid black;
	border-radius:20px 20px 20px 20px;
}

p.footer_base {
	font-size: 1em;
	line-height: 1.5;
	font-weight: 600;
	text-align:center;
	background-color:transparent;
	margin:5px 0px 5px 0px;
	padding:0px 10px 0px 10px;
	border:0px solid red;
}

span.links img
{
	vertical-align:middle;
	margin:0px 40px 0px 10px;
}

/* START OF - Display LINKS page graphics in a responsive grid*/
.row {
  display: flex;
  flex-wrap: wrap;
  padding: 4px 4px;
}

/* Create four equal columns that sits next to each other */
.column {
  flex: 25%;
  max-width: 25%;
  padding: 4px 4px;
}

.column img {
  margin: 10px;
  padding: 20px;
  vertical-align: middle;
  width: 100%;
}

/* Responsive layout - makes a two column-layout instead of four columns */
@media screen and (max-width: 800px) {
  .column {
    flex: 50%;
    max-width: 50%;
  }
}

/* Responsive layout - makes the two columns stack on top of each other instead of next to each other */
@media screen and (max-width: 600px) {
  .column {
    flex: 100%;
    max-width: 100%;
  }
}
/* END OF - Display LINKS page graphics in a responsive grid*/

.back-to-top {
    background-color: #000000;
    color: #FFFFFF;
    opacity: 0;
    transition: opacity .6s ease-in-out;
    z-index: 999;
    position: fixed;
    right: 20px;
    bottom: 20px;
    width: 50px;
    height: 50px;
    box-sizing: border-box;
    border-radius: 50%;
  }

  a.back-to-top {
    font-weight: 1000;
    letter-spacing: 2px;
    font-size: 14px;
    text-transform: uppercase;
    text-align: center;
    line-height: 1.6;
    padding-left: 2px;
    padding-top: 14px;
  }

  .back-to-top:hover, .back-to-top:focus, .back-to-top:visited {
    color: #FFFFFF;
  }

  .back-to-top.show {
    opacity: 1;
  }