html {
    height: 100%;
}

html, body {
    font-size: 16px;
    line-height: 1;
    color: #757575;
    font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

p {
    margin: 0;
}

a {
    color: #3366CC;
}

ul {
    margin-left: 1rem;
}

.row {
    margin-right: -0.3125rem;
    margin-left: -0.3125rem;
}

.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1,
.col-xs-2, .col-sm-2, .col-md-2, .col-lg-2,
.col-xs-3, .col-sm-3, .col-md-3, .col-lg-3,
.col-xs-4, .col-sm-4, .col-md-4, .col-lg-4,
.col-xs-5, .col-sm-5, .col-md-5, .col-lg-5,
.col-xs-6, .col-sm-6, .col-md-6, .col-lg-6,
.col-xs-7, .col-sm-7, .col-md-7, .col-lg-7,
.col-xs-8, .col-sm-8, .col-md-8, .col-lg-8,
.col-xs-9, .col-sm-9, .col-md-9, .col-lg-9,
.col-xs-10, .col-sm-10, .col-md-10, .col-lg-10,
.col-xs-11, .col-sm-11, .col-md-11, .col-lg-11,
.col-xs-12, .col-sm-12, .col-md-12, .col-lg-12,
.container-fluid {
    padding-right: 0.3125rem;
    padding-left: 0.3125rem;
}

#documents li {
    margin-bottom: 0.5rem;
}

.radio+.radio, .checkbox+.checkbox {
    margin-top: 0px;
}

input[type=radio], input[type=checkbox] {
    margin-top: 1px;
}

#sheerid-container {
    max-width: 600px;
    margin: 3.75rem auto 0 auto;
    background-color: #F9F9F9;
    position: relative;
}

.centered {
    text-align: center;
}

button[type=submit], button[type=submit]:hover, button[type=submit]:focus,
.action, .action:hover, .action:focus {
    width: 100%;
    height: 3rem;
    font-size: 1.125rem;
    font-weight: 500;
    text-transform: uppercase;
    color: #FFFFFF;
    background-color: #000000;
    padding: 0.75rem;
}

#sheerid-header {
    min-width: 20rem;
    max-width: 37.5rem;
    margin-bottom: 1.3625rem;
}

#sheerid-body, #sheerid-footer, #faq-link {
    min-width: 17rem;
    max-width: 27rem;
    margin: 0 auto;
}

#logo-container {
    min-width: 20rem;
    max-width: 37.5rem;
    height: 7.5rem;
    padding: 1.5rem;
    position: relative;
}

#logo-container img {
    max-height: 100%;
    max-width: 100%;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    padding: 1.5rem;
}

#offer, #step-title, .margin-bottom {
    margin-bottom: 1.875rem;
}

#sheerid-body {
    margin-bottom: 0.8388rem;
}

#sheerid-footer {
    margin-bottom: 1.5625rem;
}

#faq-link {
    margin-bottom: 2.1875rem;
}

#powered-by {
    color: #333333;
    margin-bottom: 0.5rem;
}

.form-group {
    margin-bottom: 0.625rem;
}

.form-control, .radio.radio-inline {
    margin-bottom: 0.625rem;
}

#step-title p {
    font-size: 1.125rem;
    font-weight: 700;
    text-transform: uppercase;
    color: #333333;
}

label {
    font-size: 1rem;
    font-weight: 500;
    color: #333333;
    margin-bottom: 0.5rem;
}

.form-control {
    height: 3rem;
    padding: 0 0.75rem 0 1rem;
    font-size: 1rem;
    font-weight: 400;
    color: #000000;
    background-color: #FFFFFF;
    border: 1px solid #CCCCCC;
    border-radius: 3px;
}

select.form-control {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-image: url("https://s3.amazonaws.com/com.sheerid.resources/common/images/arrow_form_field.png");
    background-repeat: no-repeat;
    background-position: right 0.75rem top 55%;
}

.date-formatted {
    letter-spacing: 1px;
}

option {
    height: 2.75rem;
    padding: 0.75rem 1rem 0 1rem;
    background-color: #FFFFFF;
}

select:hover {
    background-color: #F5F5F5;
}

.form-control:focus {
    border: 2px solid #666666;
}

.form-control.error, .fileinput-button.error {
    background-color: #FFCCCC;
    border: 2px solid #FF0033;
    margin-bottom: 0.5rem;
}

.form-control:focus, .form-control.error {
    padding: 0 0.75rem 0 1rem;
}

.help-block {
    font-size: 0.875rem;
    margin-bottom: 0.625rem;
    margin-top: 0;
}

p.error {
    color: #FF0033;
}

#error-back-form, #error-try-again {
    margin-top: 2rem;
}

body.error p.error, body.upload_only p.error {
    text-align: center;
}

/* these placeholder style rules require each to have its own block to work */
::placeholder {
    color: #757575;
    font-size: 1rem;
    font-style: italic;
}

::-webkit-input-placeholder {
    color: #757575;
    font-size: 1rem;
    font-style: italic;
}

:-moz-placeholder {
    color: #757575;
    font-size: 1rem;
    font-style: italic;
}

::-moz-placeholder {
    color: #757575;
    font-size: 1rem;
    font-style: italic;
}

:-ms-input-placeholder {
    color: #757575;
    font-size: 1rem;
    font-style: italic;
}

.month {
    padding-right: 0.3125rem;
}

.day {
    padding-left: 0.3125rem;
    padding-right: 0.3125rem;
}

/*.year {
    padding-left: 0.3125rem;
}*/

.fine {
    font-size: 0.875rem;
}

.radio.radio-inline {
    margin-top: 0;
}

ul.sheerid-combo-list li a {
    height: 2.75rem;
    padding: 0.75rem 1rem 0 1rem !important;
}

.fileinput-button, .fileblock, .btn-block {
    font-size: 1rem;
    font-weight: 500;
    height: 3rem;
    padding: 0.75rem 1rem;
    background-color: #FFFFFF;
    border: 1px solid #CCCCCC;
    border-radius: 0;
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
}

.fileinput-button, .fileblock {
    display: inline-block;
    margin-right: 1rem;
}

.fileinput-button.link {
    border: none;
    color: #3366CC;
    background-color: #F9F9F9;
    padding: 0;
    height: 1.5rem;
}

#upload-btn-container {
    margin-bottom: 0.5rem;
}

#upload-btn-container #file-label {
    display: inline-block;
}

.fileblock {
    margin-bottom: 0.5rem;
    margin-right: 0;
    min-width: 60%;
    color: #333333;
    padding-right: 0.75rem;
    padding-top: 0.95rem;
}

.filename {
    margin-right: 1rem;
}

#file-selected {
    display: inline-block;
}

#upload {
    margin-bottom: 1rem;
}

#upload button[type=submit], #upload button[type=submit]:hover {
    margin-top: 1.375rem;
}

.cancel, .cancel:hover {
    color: #757575;
    float: right;
    cursor: pointer;
}

.rewardCodeLabel {
    color: #333333;
    font-weight: 500;
}

.rewardCode {
    color: #333333;
    font-weight: 700;
    font-size: 2.25rem;
    margin-top: 0;
    margin-bottom: 1.875rem;
}

/* Failure page */
#async-header {
    margin-bottom: 2rem;
}

#async-btns .btn-block {
    margin-bottom: 1rem;
}

/* FAQ style */
#faq-container {
    display: none;
    background-color: #F9F9F9;
    position: absolute;
    top: 0;
    width: 100%;
    max-height: 100%;
    z-index: 999;
    margin-bottom: 1.5rem;
}

#faq-container #faq-header {
    padding-left: 1.5rem;
    padding-right: 1rem;
    height: 4.688rem;
}

#faq-container #faq-title {
    color: #333333;
    font-weight: 300;
    font-size: 1.5rem;
    display: inline-block;
    line-height: 4.688rem;
}

#faq-container #faq-close {
    display: inline-block;
    float: right;
    margin-top: 0.25rem;
    line-height: 4rem;
}

#faq-container hr {
    padding-left: 0;
    padding-right: 0;
    border-top: 1px solid #CCCCCC;
    margin-top: 0;
    margin-bottom: 1.5rem;
}

#faq-body {
    padding-left: 1.5rem;
    padding-right: 2.5rem;
    max-height: 100%;
    overflow: scroll;
}

#faq-body dt {
    color: #333333;
    font-weight: 700;
    margin-bottom: 1rem;
    display: list-item;
    list-style-type: disc;
    margin-left: 1.0rem;
    text-indent: -0.5rem;
}

#faq-body dd {
    color: #333333;
    margin-left: 0.5rem;
    margin-bottom: 1.875rem;
}

#comments {
    min-height: 8rem;
}

body.upload_only #sheerid-footer {
    margin-bottom: 0.5rem;
}

@media only screen
    and (max-device-width: 599px) {

    #sheerid-container {
        margin-top: 0;
    }

    #sheerid-header {
        margin-bottom: 1.5625rem;
    }

    #sheerid-body {
        margin-bottom: 1.5638rem;
    }

    .form-control {
        height: 3rem;
        padding: 1rem;
    }

    .radio-inline+.radio-inline,
    .checkbox-inline+.checkbox-inline {
        margin-left: 0;
    }
}

@media only screen
    and (max-device-width: 479px) {

    #wrap-BIRTH_DATE .col-xs-5.inline-left {
        width: 38%;
    }

    #wrap-BIRTH_DATE .col-xs-7.inline-right {
        width: 62%;
    }

    #wrap-BIRTH_DATE .col-xs-6.inline-left {
        padding-right: 0.3125rem;
        width: 50%;
    }

    #wrap-BIRTH_DATE .col-xs-6.inline-right {
        padding-left: 0.3125rem;
        width: 50%;
    }

    .col-xs-6.inline-left {
        padding-right: 1rem;
        width: 100%;
    }

    .col-xs-6.inline-right {
        padding-left: 1rem;
        width: 100%;
    }
}
