html {  -ms-text-size-adjust: 100%;  -webkit-text-size-adjust: 100%;}
article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary {  display: block;}
audio,canvas,progress,video {  display: inline-block;   vertical-align: baseline; }
a {  background: transparent;}
a:active,a:hover {  outline: 0;}
b,strong,.bold {  font-weight: bold;}
.tiny {  font-size: 60%;}
small,.small {  font-size: 80%;}
.smaller {  font-size: 90%;}
sub,sup {  font-size: 75%;  line-height: 0;  position: relative;  vertical-align: baseline;}
sup {  top: -0.5em;}
sub {  bottom: -0.25em;}
img {  border: 0;}
svg:not(:root) {  overflow: hidden;}



body { padding:0px; margin:0px; background:#fff; color:#333; font-size:16px;font-weight:300;
font-family:Hind,Helvetica Neue,Open Sans,Source Sans Pro,sans-serif; line-height:1.3;}
main a { color:#46f; }
main a:visited { color:#46f; }

#all {}
.content { position:relative; max-width:900px; margin:0 auto;box-sizing:border-box;}

#social { display:inline-block; height:30px; vertical-align:middle; margin-left:1.2em; position:relative; top:-2px;} 
#social a { height:100%; border:1px solid transparent; border-radius:3px; display:inline-block;} 
#social a:hover { border:1px solid rgba(255,255,255,.8); box-shadow:0px 0px 3px white;} 
#social a img { height:100%; } 

header { height:200px; background:linear-gradient(to bottom, #fff 0%,#ddf 100%); box-sizing:border-box; margin-bottom:50px;}
header > .content { height:200px; box-sizing:border-box; }
main { margin-top:52px; }
main .content {padding:0; max-width:800px; }
main .text { max-width:450px; margin:0 1em !important;}

#all > footer { padding:2em; text-align:center; color:#ccc; clear:both; font-family:sans-serif;}
#all > footer  a, footer a:visited { color:#aaa; }


#topnav { background:#f1f1f1; padding:0; position:absolute; 
background: linear-gradient(to bottom, #5535aF 0%,#25057F 100%); border-top:1px solid white;
border-bottom:1px solid white; top:200px; left:0; right:0; z-index:10;
font-family:sans-serif;
}
#topnav  #logo { display:inline-block; width:250px; vertical-align:bottom; margin-right:-10px;}
header  #nav {  display:inline-block; margin-bottom:8px;}

#topnav .tabs { display:inline-block; }
#topnav ul  { margin:0px;  padding:0px; font-size:15px;}
#topnav ul li {
display:inline-block;
list-style-type:none;
margin:0px 0 0 0; 
#social {display:block;}
}
@media only screen and (min-width : 860px)  {
  #topnav ul li { margin:0px 0 0 .5em; }
}
@media only screen and (min-width : 960px)  {
  #topnav ul li { margin:0px 0 0 1em; }
}


#topnav ul li.selected a {  background:#3b8fe1; color:#fff; }
#topnav ul li a { display:inline-block; color:#ccc; text-decoration:none; 
padding:5px 10px; border:1px solid transparent; border-radius:.4em; 
}
#topnav ul li a:hover { border:1px solid #fff; border-color:rgba(255,255,255,.5); }



.inline { display:inline-block; vertical-align:middle; }
.vtop { vertical-align:top !important;}

.alignl { text-align:left !important; }
.alignr { text-align:right !important; }
.alignc { text-align:center !important; }
.floatr { float:right; margin-left:3em;}
.floatl { float:left;  margin-right:3em;}
.inliner { float:right; margin-left:3em; max-width:33%;}
.inlinel { float:left;  margin-right:3em; max-width:33%;}
.clear { clear:both; }

.margin { margin:1em; }
.margin2 { margin:2em; }
.padding { padding:1em; }
.principle { padding:.25em; margin:.2em 0; border:1px solid white; border-radius:1em; color:#fff; text-shadow:1px 1px 1px black; font-size:90%;}
.big { font-size:140%; }
.huge { font-size:200%; }
.container { overflow:hidden; }
.bd { border:1px solid black; }
.bdb { border-bottom:1px solid black;}
.bdt { border-top:1px solid black;}

.minhalf {  width:40%; display:inline-block; vertical-align:top; min-width:160px; text-align:left;margin:.5em 1.5em;}
.minthird {  width:26%; display:inline-block; vertical-align:top; min-width:140px; text-align:left;margin:.5em 0.7em;}
.minhalf:last-child,
.minthird:last-child{  margin-right:.5em;}
.minhalf:first-child,
.minthird:first-child{  margin-left:.5em;}

.width_max { width:100%; box-sizing:border-box;}
.width_full { width:80%;}
.width_most { width:60%;}
.width_half { width:50%;}
.width_some { width:40%;}
.width_third { width:33%;}
.width_quarter{ width:25%;}

.width_20 { width:20em; }

input, select { margin:0px; padding:0em .5em; outline:0px; border:1px solid #ccc;  }

#feedback { position:absolute; right:0px; top:25px;  width:250px; white-space:normal;
height:150px; text-align:center; font-family:constantia,serif;
background:url(bubble.png) no-repeat; background-size:contain;}
#feedback:before {content:"\201c\a0"; font-size:1000%;  position:absolute; color:#009; top:-65px; left:20px;}

#feedback table { width:100%; height:100%; }
#feedback table td { vertical-align:top; }

#feedback div { display:none; opacity:0;  -webkit-transition: opacity .5s; padding:1em 1em 0; margin:15px 30px 0 0; text-shadow:1px 1px 1px white;}
#feedback div.visible { opacity:1;}

#feedback div span:first-child {  font-size:18px;line-height:normal; color:#009;}

#feedback div span:last-child {display:block; font-size:10px; margin:1em 2em 0 0; text-align:right;}


aside.testimonial { font-size:100%; color:#66c; text-align:center; padding:1em; margin-top:2em; font-family:constantia,serif; position:relative; display:inline-block;white-space:normal;}
.hover,
aside.testimonial .quote { background:#fff; border-radius:.5em; box-shadow:5px 5px 15px 2px #aaa; padding:1.5em; font-style:italic; line-height:1.5; }
aside.testimonial .quote::before {content:"\201c\a0"; font-size:900%;  position:absolute; color:#aaf; top:-.37em; left:.2em; text-shadow:5px 5px 5px aaa;}
aside.testimonial .name { position:relative; padding:1.5em 2em 0 0; font-family:Hind,open sans,sans-serif; text-align:right; font-weight:bold;}
aside.testimonial .name::before {
    content: "";  position: absolute;  width: 0;  height: 0;  top:0; right: 25%;
    border: .75em solid white;
    border-color: transparent transparent white white;
    transform-origin: 0 0;  transform: rotate(-45deg);
    box-shadow: -3px 5px 5px 0px #bbb;
  }
aside.testimonial .name.noshadow::before { box-shadow:none;}

aside.testimonial a,aside.testimonial .business { padding:0 2em 0 0; display:block; font-family:Hind,open sans,sans-serif; text-align:right;}

.headtext { position:absolute; top:15%; left:10%;}
header div.title { font-family:constantia,serif; font-size:36px;margin:0; padding:0;font-weight:normal;}
header div.subtext { font-size:16px; font-style:italic; font-face:sans-serif;}
.shadow {   color:#fff; text-shadow:1px 1px 1px black;}
header div.title.shadow {  color:#fff; text-shadow:1px 1px 2px black; }






.but {cursor:pointer;display:inline-block;  border-radius:.4em; vertical-align:middle;
  position:relative;text-decoration:none;margin:2px 1px;
	background:#090;
        background-image: -webkit-linear-gradient(#6d6, #090);
        background-image: linear-gradient(#6d6, #090);
	line-height:normal;
	font-size:100%;
  border:1px solid #666;
}

.but.width_full { text-align:center; margin:5px 0px;}
.but button, .but input,.but span.text {padding: .3em 34px .4em 11px;display:block;color:white;zoom:1;
	border:0px;
        margin:0px;
        font-family:sans-serif;
	background-size:30px 100%;
	background-repeat:no-repeat;
	background-position:left center;
	background-color:transparent;
}
.but:hover {
	background:#0a0;
        background-image: -webkit-linear-gradient(#6e6, #0a0);
        background-image: linear-gradient(#6e6, #0a0);

}
.but:active span.text,.but.active span.text {border-color:#666;border-color:rgba(0,0,0,.4);}
.but:active,.but.active {
	background-color:#0a0;
	background-image: -webkit-gradient(linear, left top, left bottom, from(#006600),to(#66cc66));
        background-image: -webkit-linear-gradient(#060, #6c6);
        background-image: -o-linear-gradient(#060, #6c6);
        background-image: -ms-linear-gradient(#060, #6c6);
        background-image: -moz-linear-gradient(#060, #6c6);
        background-image: linear-gradient(#060, #6c6);
}
.but.left input,.but.left span.text { padding: .3em 11px .4em 34px;}
.but.fb span.text { background-image:url(/fb.gif);}
.but.pass span.text { background-image:url(/pass.gif);}
.but.noicon span.text{  padding: .3em 11px .4em 11px; }
.but.joinr,.but.joinr span.text { border-radius:.5em 0 0 .5em; margin-right:0px;}
.but.joinr span.text { padding-right:8px; }
.but.joinl,.but.joinl span.text { border-radius:0 .5em .5em 0; margin-left:0px;}
.but.joinl span.text { padding-left:8px;}
.but img { position:absolute; height:100%; width:30px; left:1px; top:0px; border-radius:10px 0 0 8px; border-right:1px solid #bbf;}
.but.img span.text { padding:.3em 11px .4em 40px; }

.but.mini { border-radius:4px;margin:2px; }
.but.mini span.text {border-radius:4px; padding:.1em .3em .12em;font-size:90%;}
.but.mini.img span.text { padding:.1em .3em .12em 22px; background-size:15px 100%}
.w100 { width:100%; }

.icon { width:18px; height:18px; position:absolute; right:10px; top:50%; 
margin-top:-9px;background-image:url(/icons18.png);
padding:0px!important; border:0px!important; background-position:-37px 50%;}


.but.go .icon,.but .icon { background-position:-109px 50% }
.back .icon { background-position:-145px 50% }
.but.plus .icon { background-position:0px 50% }
.cancel .icon { background-position:-72px 50% }
.home .icon { background-position:-324px 50% }
.info .icon { background-position:-288px 50% }
.save .icon { background-position:-253px 50% }
.but .icon { background-color:transparent; background-color:rgba(0, 0, 0, .3);box-shadow:0px
1px 0px 0px rgba(255, 255, 255, .4);border-radius:1em; right:8px;}
.left .icon {right:auto; left:10px; }

section { padding:0; clear:both; overflow:hidden;}
section p { line-height:1.5; }
section .overlay_w,
section .text { }

.homelinks  b { color:#0e0;}
.hometext {  white-space:nowrap; color:#ddd; font-style:italic; text-indent:0px; }


h1,h2,h3,h4,h5 { color:#aaf; line-height:1.3; font-family:Hind,Helvetica Neue,Open Sans,Source Sans Pro,sans-serif;}
h1 { font-size:200%; font-weight:bold; margin:0; padding:.25em 0;}

h2 { margin:0; color:#aaf; }
h3 { font-size:150%; color:#333; font-weight:300; margin:1em 0 .5em 0;}
h4 { font-size:120%; color:#333; font-weight:700; margin:0 0 .5em 0;}

.outline {  border:.2em solid #aaf; border-radius:.5em;  text-align:center; margin:0 auto; color:#aaf;box-size:border-box;}
.color,.number {  border:.15em solid #aaf; border-radius:2em; width:1.5em; height:1.5em; line-height:1.5em; text-align:center; margin:0 auto; font-size:140%; color:#aaf;font-family:sans-serif;}
span.color,span.number { margin:0 .4em 0 0;  padding:.1em .2em; font-size:120%; }
span.color { color:#fff; padding:0 .5em; border-color:#000;border-width:.1em;padding:0em 0em;  display:inline-block;}

center,.center { text-align:center; margin:0 auto;}
.header { font-weight:bold; font-size:150%; clear:both; }
.text.hang { padding-left:3em; }
.text.hang h3 { text-indent:-2em;}

.text_w { color:#fff; }
.text_b { color:#333; }
.text_color { color:#99f; }

.overlay_w { background:#fff; background-color:rgba(255,255,255,.9); padding:1em; border-radius:.5em;}
.logo { width:100px; display:inline-block; float:right;}
.logo img { width:100%; }


ul.buttonlist {  display:inline-block; margin:0px;  padding:0px; font-size:90%;font-family:sans-serif;}
ul.buttonlist li  {display:inline-block; list-style-type:none; margin:0px 0 0 0;  vertical-align:middle;}
ul.buttonlist li  a,ul.buttonlist li  a:visited
 { display:block; border:1px solid #999; padding:.4em; margin:.4em; border-radius:.4em; color:#333; text-decoration:none;
 background:#f0f0f0;}
ul.buttonlist li  a:hover
 { background:#e6e6e6; color:#000;}
ul.buttonlist.vertical li {display:block;}
 

#topnav ul li.selected a {  background:#8f8fff; color:#fff; }
#topnav ul li a { display:inline-block; color:#ccc; text-decoration:none; 
padding:.15em .5em; border:1px solid transparent; border-radius:.4em; 
}
#topnav ul li a:hover { border:1px solid #fff; border-color:rgba(255,255,255,.5); }


.bg_A { background-color:rgb(222,24,22); }
.bg_R { background-color:rgb(255,126,11); }
.bg_M { background-color:rgb(220,220,0); }
.bg_P { background-color:rgb(6,165,85); }
.bg_I { background-color:rgb(125,209,241); }
.bg_T { background-color:rgb(0,105,179); }
.bg_S { background-color:rgb(188,97,160); }
.bg_C { background-color:#000; }
.bg_H { background-color:#ccc; }


.left { width:49%; float:left; box-sizing:border-box;}
.right { width:49%; float:right; box-sizing:border-box;}

.slider { white-space:nowrap; overflow:hidden; font-size:0;}
.slider_left,.slider_right{
  position:absolute;  top:0; bottom:0; width:20%;z-index:2;
    padding-top:25%;
	cursor:pointer;
  }
  .slider_left div,.slider_right div { border-radius:2em;font-size:400%;
  width:1em; height:1em;line-height:1em;text-align:center;
  display:inline-block;
  background:#aaf;
  color:#fff;
  position:relative;top:-.5em;
  box-shadow:1px 1px 3px black;
  font-family:sans-serif;
  text-align:center;
  }
  .slider_left:hover div,.slider_right:hover div { background:#ddf;}
  
.slider_left {  left:0; background:linear-gradient(to right, #eee 0%,transparent 100%); text-align:left;}
.slider_right{ right:0; background:linear-gradient(to left, #eee 0%,transparent 100%); text-align:right;}
.slider .testimonial { box-sizing:border-box; margin:1em 4em 0 0; width:24em; left:-12em; vertical-align:middle; font-size:16px;}

#testimonials aside.testimonial:first-child { margin-left:50%;}
.noshadow { text-shadow:none !important; box-shadow:none !important;}

#subscribeWrapper { width:270px; height:24em; margin:0em 2em 0 1em;  padding:0; border:0px;}
#subscribe { padding:1em 1em 0 1em; background:#f0f0f0;}
#subscribe input.inp { background:#fff; margin:2px 0;}



#copyright { font-size:90%; }

form { margin:1em 0px; }
textarea,select,input { padding:.5em; margin:0; border-radius:5px; border:1px solid #999; background:#f0f0ff;}
input[type=text]:focus ,
input[type=email]:focus { box-shadow:0px 0px 3px blue; border-color:transparent; }
select {}

div.inp { clear:left;  margin-bottom:.3em;}
div.inp>label { float:left; width:14em; text-align:right; font-weight:bold;padding:.35em;}
.fields .text, .fields>label { display:inline-block; padding:.4em 0; margin:0 !important;line-height:1.5;}
div.inp .fields { padding-left:15.5em; position:relative;}
div.inp .fields input[type=text]:not([size]),
 div.inp .fields input[type=email]:not([size]) { width:80%; }
div.inp .fields textarea:not([cols="*"]) { width:80%; }
.indent input[type="radio"] { width:1em; margin-left:0px; margin-right:0px; }
.indent { padding-left:1em; text-indent:-1em; }

.select select { margin:0px; width:110px; border:none; outline:none; background:#e6e6e6; font-size:12px;}
.select { background:#e6e6e6; padding:1px 2px; border-radius:4px; margin:0px 0px 0px 0px; 
border:1px solid rgba(0,0,0,.2); display:inline-block;}

fieldset {border-radius:.5em; padding:1.5em 0; margin:1em 0px 0px; border-left:none; border-bottom:none; border-right:none;   }
fieldset.open { border:none; padding:0;}
fieldset legend { background:#fff; margin:0px 0px .15em 1em; color:#aaa; font-weight:bold; font-size:140%; font-style:italic; padding-bottom:.1em; }

.hide { display:none; }



.radiodivs { font-family:calibri,arial,sans-serif; text-align:center;}
.radiodiv { display:inline-block; margin:0 0 0 2.8%; vertical-align:top;  text-align:center; }
.radiodiv:first-child { margin:0 0 0 0; }
.radiodiv label {
  display:block; background:#e6e6e6; border-radius:6px;
  border:2px solid white;
}
.radiodiv span.title {
  display:block;
  background:#060; color:#fff;
  border-radius: 6px 6px 0px 0px;  border-bottom:1px solid #cfc;
  line-height:16px; text-transform:uppercase; font-size:16px; text-align:center;
  padding:.5em 0 1.5em 0;
}
.radiodiv span.text {
  display:block; padding:10px; 
}

.radiodiv label:hover { background:#bfb;  background-image:url(/bg_dn.png);
  background-repeat: no-repeat;
  background-position:center 0em;
}
#courses .radiodiv label:hover {  background-position:center 1em;}
.radiodiv input {
  position:relative; top:3.5em;
}
#courses .radiodiv input { top:4.5em; }
.radiodiv input:checked + label {
  background:#bfb; box-shadow:0px 0px 3px 3px rgba(0,0,0,.5); 
  background-image:url(/bg_dn.png);
  background-repeat: no-repeat;
  background-position:center 0em;
}
#courses .radiodiv input:checked + label { background-position:center 1em; }
.radiohl label {display:block; padding:0.2em 1em .2em 2em; }
.radiohl input { position:absolute; margin:.5em .8em;}
.radiohl input:checked + label {  background:#dfd; }
.radiohl label:hover { background:#bfb !important; }


#costs { margin:0 15%;}
#costs div { text-align:right; }
#costs div .cost { float:right; width:6em; color:#000; margin-left:1em; }


#materials_total,#grand_total,#training_item {font-weight:bold;font-size:110%; margin-top:3px;}
#materials_total .cost,#grand_total .cost,#training_item .cost {color:#00f !important; }


#materials_total .cost { border-top:1px solid black; position:relative; top:-1px;}
#grand_total .cost { border-top:3px double black; position:relative; top:-3px;}


#product_list { border-top:1px solid #666; margin:1em 0;}
.product { display:block; position:relative;
font-size:90%;
border-bottom:1px solid #666; font-family:sans-serif;
text-decoration:none; color:#666; padding:1em .5em 1em 9em; 
}
.product:hover { background:#f6f6f6; }

.product img { position:absolute;  width:6em;  top:1em; left:1em; }
.product .title { font-size:120%; text-decoration:underline; padding-right:5em;}
.product .description { padding:.5em; color:#666; font-family:Hind,Helvetica Neue,Open Sans,Source Sans Pro,sans-serif; }
.product .price{ position:absolute; text-align:right; right:.5em; top:.833em; font-size:120%;}

.sans {font-family:sans-serif;}
.notice { background:#ffb; padding:1em; margin:.5em;}
#overlay { position:fixed; top:0; bottom:0; left:0; right:0; z-index:100; background-color:#000; background-color:rgba(0,0,0,.75);}
#overlay #popup{ position:absolute; top:50%; margin-top:-25%; left:50%; margin-left:-25%; width:50%;
background:#f0f0f0; border-radius:.5em; overflow:hidden; }


  header #menu { display:none; }
#portrait { vertical-align:middle; width:250px;  position:relative; left:0px; }

@media only screen and (max-width : 815px)  {
  header #nav { display:none; position:absolute; right:0; top:52px; background:#25057F; padding-bottom:.5em;}
  header #menu { display:block; color:#fff; position:absolute; top:0px; right:0; height:50px; line-height:50px; font-size:42px; padding:0 .25em; cursor:pointer;}
  header #nav  ul { font-size:20px;}
  header #nav .tabs  ul li { display:block;  }
  header #nav .tabs  ul li a{ display:block; margin:.5em 1em;  box-sizing:border-box; width:60%; width:calc(100% - 2em);}
  header #feedback { display:none;}
  .width_quarter { width:45%; }
  .width_third { width:80%; }
  .width_some { width:80%; }
  .width_half { width:80%; }
  .width_most { width:80%; }
  .minthird { width:80%; }
  .minhalf { width:80%; }
  .right,.left { width:100%; float:none; }
  main .text { max-width:100%;}
  .floatl,.floatr { float:none;}
  .narrowbg { background-image:none !important;}
  .sidebar { display:none; }
  div.inp>label { float:none; width:auto; text-align:left; font-weight:bold;padding:.35em;}
  div.inp .fields { padding-left:2em; position:relative;}
  .radiodiv { width:80% !important; margin:1em 0 !important;}
  #overlay #popup{ top:10%;  left:10%; right:10%; max-height:90%; width:auto; margin:0; overflow:auto;}
  #topnav { top:100px;}
  header {height:100px;}
  header > .content { height:100px;}
  #portrait { width:150px;  left:-40px; }
  #portrait  + div{ position:relative; left:-40px; }
  header div.title { font-size:24px; }
  header div.subtext { font-size:14px; }font-style
}
.nowrap { white-space:nowrap; }
em { font-style:normal; }
ins { display:none; }

.prompt {  margin:0px 0px 20px 0px; position:relative; max-width:415px;}
.err    { background:#c00; padding:10px; color:#fff;  border-radius:6px; border:2px solid 
  white;  box-shadow: 0px 0px 0px 1px rgba(0,0,0,.5); }
  .err ul { margin:5px;  padding-left:0px; list-style-type:none;}
  .err a:link,.err a:visited { color:#fff; }
.notice    { background:#ff9; padding:10px; color:#000;  border-radius:6px; border:1px solid  #aaa; }
  .notice ul { margin:5px; padding-left:0px; list-style-type:none;}
  .notice a:link,.notice a:visited { color:#000; }
  .notice .color { color:#900; }
  .notice ul ul { padding-left:2em; list-style-type:circle;}

