/* BASIC FORM ELEMENTS */
label { margin: 10px 0; display: block; }
.body-inner-container form .label { line-height: 45px; }
.body-inner-container form label { float: left; padding-right: 20px; margin: 15px 0; }
input { margin: 0; }
input[type="text"], input[type="password"], input[type="submit"], input[type="button"], input[type="search"] {
    -webkit-appearance: none !important;
}
form { width: 100%; }
.formfield { background: #ffffff; }
.formfield, textarea.formfield, .dropdown-skin { border: 2px solid #e9e9e9; margin-bottom: 10px; border-radius: 5px; color: #343434; height: 45px; width: 100%; padding: 12px; font-family: "Proxima Nova Regular", 'Helvetica Neue', Arial, Helvetica, sans-serif; font-size: 1em; }
html.iphone .formfield:disabled, html.ipad .formfield:disabled { -webkit-text-fill-color: #343434; opacity: 0.7; }

.formfield:focus, .formfield-pword:focus { border-color: #1aa98d; }

/* DROPDOWNS */
.dropdown-container { float: left; width: 100%; }
.dropdown-skin { width: 100%; display: block; background-color: #e9e9e9; position: relative; float: left; height: 45px; padding: 0; }
.dropdown-arrow { width: 30px; line-height: 45px; position: absolute; right: 0; }
.windows.firefox .dropdown-arrow { line-height: 39px; }
.dropdown-command { text-align: left; white-space: nowrap; text-overflow: ellipsis; overflow: hidden; padding: 12px 0 12px 16px; float: left; width: -webkit-calc(100% - 50px); width: calc(100% - 50px); display: inline-block; }
.windows.firefox .dropdown-command { padding-top: 10px; }
.dropdown-skin select.formfield { width: 100% !important; position: absolute; left: 0; top: 0; bottom: 0; opacity: 0; padding: 0; border: 0; cursor: pointer; margin-bottom: 0; }
.dropdown-skin select option { letter-spacing: 1px; }

/* CHECKBOXES AND RADIOS */
input[type=checkbox] { position: absolute; overflow: hidden; height:1px; width:1px; margin:-1px; padding:0; border:0; clip: rect(0 0 0 0); right: 100000px; }
input[type=checkbox] + label.checkbox-label, input[type=radio] + label.radio-label { min-height: 28px; display:inline-block; padding-top: 5px; cursor: pointer; background-repeat: no-repeat; background-position: 0 0; }
.checkbox-label{ background-image: url("../../images/png/checkbox.png"); background-image: url("../../images/svg/checkbox.svg"), none; background-repeat: no-repeat; background-position: 0 0; padding-left: 40px; height:30px; }
input[type=checkbox]:checked + label.checkbox-label { background-image: url("../../images/png/checkbox-selected.png"); background-image: url("../../images/svg/checkbox-selected.svg"), none; background-repeat: no-repeat; background-position: 0 0; }
input[type=radio] { display:none; }
.radio-label { color: #343434; background-image: url("../../images/png/radio.png"); background-image: url("../../images/svg/radio.svg"), none; background-repeat: no-repeat; background-position: 0 0; padding-left: 40px;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
.checkbox-label { color: #343434; }
input[type=radio]:checked + label.radio-label { background-image: url("../../images/png/radio-selected.png"); background-image: url("../../images/svg/radio-selected.svg"), none; background-repeat: no-repeat; background-position: 0 0; }

/* GENDER SECTION */
#gender-container { border: 0 none; padding: 0; height: 45px; margin-top: 10px; }
#gender-container label { float: left; margin: 0 20px 0 0;  width: auto; }

/* BIRTHDAY SECTION */
.birth-date-container { float: left; width: 70%; }
.body-inner-container form .birth-date-container .dropdown-container { width: 40%; padding: 0 5%; float: left; }
.body-inner-container form .birth-date-container .dropdown-container:first-of-type, .body-inner-container form  .birth-date-container .dropdown-container:last-of-type { width: 25%; padding: 0; }

/* PASSWORD */
input#password { width: 100%; }
input#password-text { display: none; }

/* THANK YOU, ERROR AND SUCCESS MESSAGES */
.thankyou { float: left;  margin-bottom: 30px; background: #1aa98d; width: -webkit-calc(100% + 80px); width: calc(100% + 80px); margin-left: -40px; padding: 40px; }
.thankyou h2 { color: #ffffff; border-bottom: 2px solid #ffffff; }
.thankyou p, .inner-container .thankyou p { color: #ffffff; margin-bottom: 0; }

.symfony-form li, .error { color: #aa0000; clear: both; }
.symfony-form li, p.error, div.error { font-size: 0.9em; }
.symfony-form ul li { margin: 0; padding: 0; }
.symfony-form li { margin: 0; padding: 0; }

input.error, textarea.error, span.dropdown-skin.error { border: 2px solid #aa0000; clear: none; }
.success { color: #1aa98d !important; }

/* MISC */
.no-highlight {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
.formfield + .primary-button, .dropdown-container + .primary-button { margin-top: 10px; }
.required { margin-top: 20px; float: left; }
.button-container { margin-top: 20px; }
#gender-error { display: none; }