*{
  margin: 0;
  padding: 0;
}

body{
  font-family: 'Muli', sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height:24px;
}
body.bg{
  background-color: #DFE3E2;
  background-image: url(images/gradient.png);
  background-repeat: repeat-x;
  background-attachment:fixed;
}
img{
  border: 0;
  max-width:100%;
}

a{
  text-decoration: none;
  cursor:pointer;
    transition:.7s color;
    color:#006633;
}
a:focus{
  outline: none;
}
a:hover{
  transition:.3s color;
  color:#000000;
}

b,strong{
  font-weight:600;
}

h2{
  font-weight: 600;
  font-size: 30px;
  line-height: 30px;
  color:#495654;
  margin-bottom: 15px;
}
h3{
  font-weight: 600;
  font-size: 20px;
  line-height: 20px;
  margin: 30px 0 10px 0;
  color:#495654;
}

p{
  margin-bottom: 15px;
}

ul, ol{
  margin: 0 0 15px 30px;
}
b,strong{
  font-weight:600;
}

#header{
  color:#FFFFFF;
  text-align:center;
  padding: 20px 0 0 0;
}
#header h1{
  font-size: 40px;
  line-height: 60px;
  text-shadow: -2px 2px 3px #495654;
}
#header h1 img{
  height: 80px;
  vertical-align:middle;
}
#header h2{
  font-size: 25px;
  line-height: 30px;
  text-shadow: -2px 2px 3px #495654;
  color:#FFF;
}

#header ul{
  list-style-type: none;
  margin:40px 0 0 0;
}
#header ul li{
  display: inline;
}
#header ul li a{
  display: inline-block;
  color: #FFFFFF;
  font-size: 24px;
  line-height: 27px;
  padding: 0 3px 5px 3px;
  margin: 0 10px;
  border-bottom: 0px;
}
#header ul li a.current{
  border-bottom: 8px solid #758481;
}
#header ul li a:hover{
  color:#DFE3E2;
}

#header.smallheader{
  padding: 10px 0;
}
#header.smallheader h1{
  font-size: 20px;
  line-height: 40px;
}
#header.smallheader h1 img{
  height: 45px;
}
#header.smallheader h2, #header.smallheader ul{
  display: none;
}

.clear{ clear:both; }

#main{
  background-color:#FFF;
  padding: 40px;
  border-radius: 10px;
  width: 96%;
  max-width: 1150px;
  box-sizing: border-box;
  margin: 0 auto;
}
#main #content{
  float: left;
  width: 70%;
}
#main  a{
  text-decoration: underline;
}
#main #side{
  float: left;
  width: 27%;
  box-sizing: border-box;
  padding: 20px;
  margin-left: 3%;
  border-left: 1px solid #CCCCCC;
  font-size:14px;
  line-height:22px;
  background-color:#f1f1f1;
  border-top-right-radius: 10px;
}
#main #side h3{
  margin: 0 0 15px 0;
}
#main a{
  font-weight:600;
}

.button{
  box-sizing:border-box;
  display: inline-block;
  border-radius: 5px;
  background-image: url(images/gradient.png);
  background-size: 100% 100%;
  background-position: bottom left;
  color:#FFFFFF;
  padding: 10px 30px;
  transition: .7s background-size;
  border:0;
  cursor: pointer;
  font-family: 'Muli', sans-serif;
  font-size: 16px;
  line-height:16px;
  font-weight:400 !important;
  text-decoration:none !important;
}
.button:hover{
  color:#fff;
  background-size: 100% 150%;
  transition: .5s background-size;
}

.button.next{
  float:right;
}

.button.back{
  opacity:.5;
  transition: .7s opacity;
}
.button.back:hover{
  opacity: 1;
  transition: .3s opacity;
}

.bigbutton{
  display: block;
  border-radius: 5px;
  background-image: url(images/gradient.png);
  background-size: 100% 100%;
  background-position: bottom left;
  color: #FFFFFF;
  padding: 20px;
  transition: .7s background-size;
}
.bigbutton .link{
  display: block;
  text-align:right;
  margin-top: 10px;
}
.bigbutton:hover, .button:hover{
  color:#fff;
  background-size: 100% 150%;
  transition: .5s background-size;
}


#lines{
  margin: 100px 0 40px 0;
  height: 2px;
  border-top: 1px solid #9AA5A4;
  border-bottom: 1px solid #9AA5A4;
}

#logos{
  text-align: center;
}
#logos a{
  margin: 0 30px;
}
#logos img{
  height: 100px;
}

#copy{
  width: 96%;
  max-width: 1150px;
  box-sizing: border-box;
  margin: 10px auto;
  color: #545454;
  font-size: 11px;
  text-align:right;
}
#copy a{
  color: #545454;
}
#copy a:hover{
  color:#000000;
}
#copy #phone{
  float: left;
}

.gone{ display: none; }
.here{ display: block; }

.error{
  border: 2px solid #FF0000;
  text-align:center;
  padding: 10px;
  margin-bottom: 15px;
  border-radius: 5px;
  color: #FF0000;
}

.question{
  border: 1px solid #CCCCCC;
  margin: 30px 0;
  border-radius: 3px;
  overflow:hidden;
}
.question.incomplete{
  border-color:#FF0000;
}
.question .omitlink{
  float:right;
  display:block;
  padding: 5px;
  text-decoration:none !important;
  font-size: 10px;
}
.question .q{
  background-color:#f1f1f1;
  padding: 10px;
}
.question .a{
  padding: 10px;
}
.question label{
  display: block;
}
.question .omit{
  display:none;
}
.question.omitted .q{
  opacity: .5;
}
.question.omitted .omitlink{
  display:none;
}
.question.omitted .a{
  display:none;
}
.question.omitted .omit{
  display: block;
  padding:10px;
  font-style:italic;
}

.input, .textarea, .select{
  box-sizing: border-box;
  width: 100%;
  padding: 10px;
  border-radius: 3px;
  border: 1px solid #CCCCCC;
  color:#333333;
  font-family:arial;
  font-size: 13px;
  transition: .3s box-shadow;
}
.textarea{
  height: 80px;
}
.textarea.high{
  height: 350px;
}
.input:focus, .textarea:focus{
  box-shadow: 0 0 5px #006633;
  transition: .3s box-shadow;
}

.select.date{
  width:32%;
  margin-right: 2%;
}
.select.date:nth-child(3){
  margin-right:0;
}
.select.rank{
  width: 50px;
  margin-right: 10px;
}

.terms{
  color:#666;
  font-size: 12px;
  line-height:16px;
  font-style:italic;
  margin-top: 10px;
}

.g-recaptcha{
  margin-bottom: 30px;
}


.question .dev{
  display: inline;
  color:red;
  margin-left:5px;
}
.question .q .dev{
  float:right;
}


#loading{
  position:Fixed;
  left:0;
  top:0;
  width:100%;
  height:100%;
  background-color: rgba(0,0,0,.8);
}
#loading #loadingmsg{
  position: absolute;
  top: 45%;
  width:100%;
  text-align:Center;
  color:#FFF;
}
