body,
input,
button,
select,
textarea {
    font-family: Arial, Helvetica, sans-serif;
}

body {
    padding:0;
    margin: 0; /* to avoid margins */
    text-align: center; /* to correct the centering IE bug*/
    font: 1em/1.4em 'Lato',arial,helvetica, sans-serif;
    color:#555555;
    background: #fff;
}

a {
    outline: none
}

a:link,
a:visited {
    font-weight: bold;
    text-decoration: none;
    color: #d47c18;
}

a:hover,
a:active {
    font-weight: bold;
    text-decoration: underline;
    color: #d47c18;
}


p {padding:0; margin:10px  0 15px 0;font-weight:700;}

h1 {
    color: #D47C18;
    font-size: 42px;
    font-weight: 100;
    margin: 4.5% 0 0;
}
h2 {font-size:26px;color:#d47c18; margin:0 0 20px 0;font-weight:100;}
h3 {
    font-size:18px;
    color:#fff; 
    margin:35px 0 10px 0;
    font-weight:100;
    background:#9cbbd4;
    padding:2px 10px;
    -moz-border-radius: 14px 14px 14px 14px;
    -webkit-border-radius: 14px 14px 14px 14px;
    -khtml-border-radius: 14px 14px 14px 14px;
    border-radius: 14px 14px 14px 14px;
}


/* Custom Helper Classes */

/* Errors */

.errorMessage {
    color: #DD0000;
     display: block;
}

/* Buttons */

form.Wizard button {
    border-radius: 27px;
    box-shadow: 0 4px 0 rgba(0, 0, 0, 0.15);
    color: #FFFFFF;
    cursor: pointer;
    font-size: 1em;
    font-weight: 300;
    height: auto;
    margin: 0 20px 0 0;
    padding: 10px 25px;
    text-decoration: none;
    transition: background-color 0.3s ease 0s;
    width: auto;
    border: medium none;
}

form.Wizard button.saveButton {
    background-color: #EB9E5E;
}
form.Wizard button.saveButton:hover{
    background-color: #6ca36e;
}

form.Wizard button.cancelButton,
form.Wizard button.previousButton {
    background-color: #999999;
}
form.Wizard button.cancelButton:hover,
form.Wizard button.previousButton:hover {
    background-color: #333;
}

button.removeFile,
.linkLike,
.linkLike:visited {
    color: #404040 !important;
    text-decoration: none;
    padding: 5px 15px !important;
    background-color: #ddd;
}


button.removeFile:hover,
button.removeFile:active,
.linkLike:hover,
.linkLike:active {
    color: #000000;
    background-color: transparent;
}

/* Structure */

#header {
    /*
    background-image: url("images/guy.jpg");
    background-position: right bottom;
    background-repeat: no-repeat;
    background-size: 24%;
    */
    min-height: 299px;
    margin-left: 6.5%;
    margin-right: 7.5%;
    padding-right: 22%;
    padding-top: 2.5%;
}

#formContainer {
    width:100%;
    text-align:left;
    background:#fff;
    margin:0 auto;
    max-width:1080px;
}

#innerFormContainer {
    margin:0 1.5em 1.5em;
}

/* Wizard */

.Separator {
    font-size: 16px;
}

.FormHeader h3,
.Separator > span {
    background-color: #C3C3C3;
    color: #555;
    border-bottom: 0 solid #FFFFFF;
    border-radius: 14px;
    cursor: pointer;
    display: block;
    font-weight: 300;
    padding: 7px 0 7px 17px;
    cursor: pointer;
}

.Expanded .Separator > span {
    background-color: #2872AF;
    color: #ffffff
}


.Separator > span:hover {
    background-color: #2872AF;
    background-color: #9CBBD4;
    color: #000;  
}

.SeparatorDescription > span,
.fieldSpec.subTitle {
    display: block;
    font-size: 16px;
    font-weight: bold;
    margin: 22px 0 23px;
    padding: 0 0 0 20px;
}

h3 {
    background: transparent;
    font-size: 26px;
    color: #d47c18;
    margin: 0 0 10px 0;
    font-weight: 100;
    padding: 0;
}

#FormApplication h3 {
    background-color: #C3C3C3;
    color: #555;
    border-bottom: 0 solid #FFFFFF;
    border-radius: 14px;
    cursor: pointer;
    display: block;
    font-weight: 300;
    padding: 7px 0 7px 17px;
    cursor: pointer;
    font-size: 16px;
}
.formspecTitle {
    margin-bottom: 1em;
}
#FormApplication .fieldSpec {
    width: 98%;
    display: block;
    clear: both;
}
form#FormApplication .Section.Expanded {
    max-height: inherit;
    padding-bottom: 10px;
}
#FormApplication .formfieldSpec {
    padding: 0 1em;
}

form.Wizard {
    position: relative;
    z-index: 100;
    font-size: 13px;
    border: 0px solid blue;
    position: relative;/*fixes ie7 issue with overflo whidden*/
}
.WizardStep2 {
    padding-top: 10%;
}

form.Wizard .Section {
    overflow: hidden;
    position: relative;/*fixes ie7 issue with overflo whidden*/
    height: auto;
    max-height: 40px;
    -webkit-transition: all 0.4s ease-out;  /* Chrome 1-25, Safari 3.2+ */
    -moz-transition: all 0.4s ease-out;  /* Firefox 4-15 */
    -o-transition: all 0.4s ease-out;  /* Opera 10.50–12.00 */
    transition: all 0.4s ease-out;  /* Chrome 26, Firefox 16+, IE 10+, Opera 12.10+ */
    zoom:1;
}

form.Wizard .Section.Expanded {
    max-height: 2000px;
    padding-bottom: 10px;
}

form.Wizard .labelText {
    font-weight: 500;
    font-size: 16px;
}
form.Wizard .usePlaceholder .labelText, select {
    color: #666;
    font-size: 14px;
    font-weight: normal;
}
form.Wizard select {
    padding-bottom: 2px;
    padding-top: 2px;
}
form.Wizard .fieldSpec.usePlaceholder .labelText {
    left: 10px;
    position: absolute;
    top: 2px;
}
form.Wizard .fieldSpec.stateFormField .labelText {
    display: none !important; 
    /* For some reason, this labelText sometimes is switched to 
       display block through JS, this prevents is odd behaviour */
}
.body_IE7 form.Wizard .fieldSpec.usePlaceholder .labelText {
    left: 25px;
}
form.Wizard input:focus,
form.Wizard select:focus {
    border: 1px solid #777;
    color:#777; 
    box-shadow: 0 0 6px rgba(32, 103, 163, 1);
    -webkit-box-shadow: 0 0 6px rgba(32, 103, 163, 1);
    -moz-box-shadow: 0 0 6px rgba(32, 103, 163, 1);
}

form.Wizard input,
form.Wizard select {
    border: 1px solid #777;
    width:270px;
    vertical-align:top;
    padding:0.2em 0.6em;
    margin: 0 1em 0 0;
    font-size:1.2em;
    font-weight:300;
    border-radius: 5px;
    border-radius: 5px; 
    outline:none;
    transition: all 0.25s ease-in-out;
    -webkit-transition: all 0.25s ease-in-out;
    -moz-transition: all 0.25s ease-in-out;
    position: relative;
    background: transparent;
}

.body_IE7 form.Wizard .fieldSpec.stateFormField select {
    width: 290px;
}

form.Wizard input[type="checkbox"],
form.Wizard input[type="radio"]
 {
    vertical-align: middle;
    margin-right:3px
}

form.Wizard .gray * {
    color: #aaa
}

option {
    color: #000
}

.must {
    background-image: url(images/asterisk.png);
    background-color: transparent;
    background-repeat: no-repeat;
    background-position: 0 0;
    height: 9px;
    width: 9px;
    display: inline-block;
    overflow: hidden;
    text-align: left;
    text-indent: -99999px;
    color: red;
}

form.Wizard fieldset {
    border: 1px solid red;
    margin: 20px 0 10px 0;
}

form.Wizard button.cancelButton:hover {
    background: #666
}

form.Wizard textarea {
    border: 1px solid #cac9b9;
    color: #333;
    width: 300px;
    vertical-align: top;
    padding: 2px 0 0 4px;
    margin: 0;
    font: 12px arial, sans-serif;
    font-weight: normal;
    height: 120px;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    -khtml-border-radius: 5px;
    border-radius: 5px;
}


.fieldSpec {
    display: inline-block;
    *display: inline;
    zoom: 1;
    padding: 1em 1% 1em 2%;
    vertical-align: top; 
}
div.fieldSpec.column {
    display: block;
}
.fieldSpec.mobile {
    display: none;
}

.fieldSpec.terms {
    display: block;
}

.fieldSpec.RadioButtonListFormField,
.fieldSpec.CheckBoxListFormField {
    /*width: 100%;*/
    padding-right: 60px;
}
.CheckBoxListFormField .labelText {
    position: absolute;
    right: 10px;
    top: 0;
}
 .fieldSpec.wideList .labelText {    position: relative;}

.CheckBoxListFormField .fieldLabel {
    display: block;
}

.fieldSpec.clearer.dBlock {
    display: block !important;
    clear: both;
    width: 100%;
}

.Section5 .CheckBoxListFormField {
    margin-right: 23px
}

.fieldSpec.hr {
    border: 1px solid;
    color: #808080;
    margin: 1.5%;
    padding: 0;
    width: 96%;
}

.fieldLabel,
.formfieldLabel {
    display: block;
    position: relative;
}

.Wizard input,
.Wizard select,
.Wizard textarea {
    width: 50%;
}

.uploadedFile {
    display: block;
    margin-top: 1em;
}

.body_IE7 form.Wizard input,
.body_IE7 form.Wizard select {
    display: block;
}

/* Wizard particular fields */

.Wizard select[name*="month"],
.Wizard select[name*="dayOfTheMonth"] {
    width: 30%;
}

.Wizard select[name*="year"] {
    width: 40%;
}

.fieldSpec.AcceptCheckboxField .labelText {
    display: none;
}

.thanksPage {
    padding: 40px 0;
}

.wideList .cb {
    display: none;
}

.wideList label {
    margin: 0 12px 0 0;
    display: inline-block;
}
#footerContainer {
    color: #999999;
    font-size: 11px;
    margin: 20px 30px;
}
#footerContainer img {
    display: block;
}
.notice {
    font-size: 11px;
    font-style: italic;
    font-weight: 500;
    margin: 70px 0 0;
}
.notice .asterix {
    font-size: 18px;
}

.noticeChckbox {
    font-size: 1.2em;
    font-weight: 400;
    padding-bottom: 0;
}
.Section5 .noticeChckbox {
    width: 100%
}
.noticeChckbox strong {
    color: #D47C18;
}
.noticeSend {
    font-weight: 700;
    margin: 10px 16px 15px;
    padding: 0;
    width: 100%;
}
.AcceptCheckboxField {
    padding: 0 1em 1em;
    width: 100%;
}

.AcceptCheckboxField + .noticeChckbox {
    padding-top: 0;
}
.body_IE7 .Section5 {
    display: none !important;
}

/* Smartphones (portrait and landscape) ----------- */
@media (max-width: 670px) {
    #header {
        margin: 0 6.5%;
        min-height: 230px;
        padding: 0;
    }
    .notice {
        margin: 20px 0 0;
    }
    .fieldSpec,
    .fieldSpec.mobile {
        display: block;
    }
    form.Wizard input, form.Wizard select {
        width: 100%
    }   
}

.thanks .container {
    width:100%;
    text-align:center;
    background:#fff;
    margin:0 auto;
    max-width:1080px; 
}
#stateSelect {
    background: #ffffff;
}

.fieldSpec.SelectCountry.CountryField {
    position: absolute;
    visibility: hidden;
}