/* Globals */
body{
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: center;

    font-family: Roboto, sans-serif;
    font-size: 16px;
    margin: 0px;

    height: 100vh;
}
body.has-branded-image{
    justify-content: flex-start;
}

.branded_-background{
    padding: 0px;
}
    button a{
        color: inherit;
        text-decoration: none;
    }
    button a:visited{
        color: inherit;
    }
    #activation-link:hover{
        text-decoration: underline;
    }
    #activation-link{
        text-decoration: none;
    }
    .entry{
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;

        align-items: center;
        flex-direction: column;
        width: 100% !important;
        overflow-y: scroll;
        max-height: 100%;
        box-sizing: border-box;

        margin: auto;
        padding: 3% 0;

    }
    .entry-wrapper{
        margin: 0px 64px;
    }
        *:focus {
            outline: none;
        }

        h1{
            font-weight: 300;
            font-size: 48px;
            margin-bottom: 36px;
            /* color: #700C29; */
        }
        h2{
            font-weight: 400;
            font-size: 24px;
            margin-top: 16px;
            margin-bottom: 0px;
            /* color: #7f7f7f; */
        }
        h3{
            font-weight: 400;
            font-size: 14px;
            margin-top: 16px;
            margin-bottom: 0px;
            /* color: #7f7f7f; */
        }
        h3 a{
            text-decoration: none;
            /* color: #7f7f7f; */
        }
        label {
            font-size: 16px;
            font-weight: 400;
            margin-bottom: 13px;
            display: block;
        }
        input{
            height: 40px;
            width: 327px;
            font-size: 16px;
            padding-left: 16px;
            box-sizing: border-box;
            border: 1px solid #cdcdcd;
            border-radius: 4px;
        }
        input::placeholder{
            font-size: 16px;
            /* color: #B7B7B7; */
            margin: 16px;
        }

        input[type=text]:focus, [type=password]:focus{
            border-color: #0008FB;
            border-radius: 4px;
            box-shadow: none;
            border-radius: 3px;
        }
        input[type="submit"]:disabled{
            background: #F2F2F2;
            border-color: #F2F2F2;

            color: #bfbfbf;
        }

        label.checkbox{
            display: flex;
        }
        input[type=checkbox]{
            height: auto;
            width: auto;
            margin-right: 12px;
        }
        button, .btn{
            height: 54px;
            width: 327px;
            text-align: center;
            text-decoration: none;
            display: flex;
            align-items: center;
            justify-content: center;
            text-transform: uppercase;
             color: #000000;
        }
        input[type=submit], .input-btn{
            font-size: 16px;
            margin-bottom: 16px;
            text-transform: capitalize;
            text-align: center;
            height: 54px;
            width: 327px;
            padding: 0;
            font-weight: bold;
            text-decoration: none;
        }
        .control-label{
            text-align: left;
            color: rgb(51, 51, 51);
            font-size: 14px;
            font-weight: normal;
        }
        .login-button{
            border-radius: 4px;
            background-color: transparent;
            border: 1px solid rgb(127, 127, 127);
            cursor: pointer;
        }
        .btn{
            cursor: pointer;
        }
        .btn:disabled{
            cursor: default;
        }
        .styled-button {
            color: #bfbfbf;
            height: 51px;
            display: inline-flex;
            justify-content: center;
            align-items: center;
            white-space: nowrap;
            vertical-align: middle;
            line-height: 24px;
            padding: 8px 24px;
            border-radius: 4px;
            border: 1px solid rgb(127, 127, 127);
            font-size: 14px;
        }
        .positive-button {
            background: #28a745;
            color: #FFF;
        }

        .h2{
            /* color: #0C191F; */
            text-align: center;
            font-size: 24px;
            margin: 0px;
            margin-bottom: 36px;
        }

        .subtitle{
            font-size: 12px;
            /* color: #B7B7B7; */
            margin-top: -6px;
            margin-bottom: 22px;
        }
        .community-name-wrapper{
            display: flex;
            height: 208px;
            width: 375px;
            background-color: #f2f2f2;
            margin-bottom: 3rem;
        }
        .community-name{
            align-self: center;
            flex-grow: 1;
            color: rgb(51, 51, 51);
            font-size: 1.5rem;
        }
        .logo{
            margin-bottom: 72px;
            text-align: center;
            display: flex;
            flex-direction: column;
            align-items: center;
        }
        .set-password-header {
            padding: 0 16px;
        }
        .set-password-description {
            text-align: left;
        }
        .flex-column {
            display: flex;
            text-align: center;
            flex-direction: column;
            align-items: center;
        }
        @media only screen and (min-width: 992px) {
            .logo {
                margin-bottom: 48px;
            }
        }

        .branded-image-section{
            flex-shrink: 0;
            align-self: center;
            background-repeat: no-repeat;
            background-position: center;
            background-size: cover;
        }
        .logo-img{
            height: 208px;
            width: 375px;
            align-self: center;
            background-repeat: no-repeat;
            background-position: center;
            background-size: cover;
        }
        .form-field{
            margin-bottom: 24px;
            /* color: #555555 */
        }
        .required{
            font-size: 16px;
            margin-top: 0px;
            color: rgb(51, 51, 51);
        }
        .terms{
            font-size: 14px;
            color: rgb(127, 127, 127);
            margin-top: 160px;
        }
        .step{
            /* color: #BFBFBF; */
        }

        form{
            display: flex;
            align-content: center;
            flex-direction: column;
            max-width: 327px;
        }

/* helper styles */
    .fl{
        float: left;
    }
    .fr{
        float: right;
    }

    .tac{
        text-align: center;
    }

    .pointer{
        cursor: pointer;
    }
    .btm-margin-lrg{
        margin-bottom: 36px;
    }
    .btm-margin-md{
        margin-bottom: 24px;
    }

/* error styles */
    .error span.help-block{
        display: block;
        font-size: 12px;
        font-weight: 400;
        margin: 8px 0px;
        color: #FF1744;
        max-width: 327px;
        text-align: left;
    }

    .error input{
        background-color: rgba(255, 23, 68, 0.1) !important;
        border: 1px solid #FF1744 !important;
    }
    .error .birthday-dropdown{
        background-color: rgba(255, 23, 68, 0.1) !important;
        border: 1px solid #FF1744 !important;
    }
    .login .alert-block{
        display: flex;
        max-height: 327px;
        font-size: 14px;
        line-height: 20px;
        margin-bottom: 36px;
        padding: 12px 16px;
        color: #333333;
        font-weight: 400;

        background: #FFF3F6;
        border: 1px solid #FF1744;
        box-sizing: border-box;
        border-radius: 4px;
    }
    .login .alert-block svg {
        margin-right: 12px;
    }
    .login .alert-block ul{
        margin: 0;
        text-align: left;
        list-style-type: none;
        padding-inline-start: 0px;
    }
    .reset-button{
        background: rgb(255, 23, 68);
        color: white;
        border: none;
    }
    .entry .asteriskField{
        color: #FF1744;
    }

/* Specific styles */
    .login{
        text-align: center;
    }
        .login img{
            height: 208px;
        }
        .login span{
            font-weight: bold;
            /* color: #700C29; */
        }
        .login input::placeholder{
            /* color: #7f7f7f; */
            text-align: center;
        }
        .login .branded-button{
            background-image: none;
        }
        .help-text {
            margin-bottom: 16px;
            text-decoration: none;
            color: #cdcdcd !important;
        }
        .invitation-accepted{
            padding: 16px 0px;
            margin-bottom: 16px;
            border-radius: 3px;
            border: 1px solid #7EB827;
            color:#7EB827;
            min-width: 327px;
        }

    .registration h2{
        margin-top: 0;
    }
            .registration_title{
                margin: 0;
            }
            .icon-ic_leftarrow{
                height: 24px;
                width: 24px;
                margin-bottom: 2px;
            }
            .icon-ic_rightarrow{
                height: 24px;
                width: 24px;
                margin-bottom: 2px;
            }
            .registration_content_block{
                max-width: 327px;
            }
            .registration-header{
                display: inline-block;
                width: 327px;
                margin-bottom: 30px;
            }
            .registration-paginator{
                color: #cdcdcd;
                font-size: 16px;
            }
            .registration-step .button{
                cursor: pointer;
                height: 54px;
            }
            .registration-step .branded-button{
                background-image: none;
            }
            .registration h2 {
                /* color: #700C29; */
            }

            .registration h3 {
                margin-bottom: 16px;
                margin-top: 0px;
                /* color: #700C29; */
            }

            .registration label{
                text-transform: capitalize;
            }

            .birthday-dropdown-area .controls{
                display: flex;
                align-content: space-between;
                flex-wrap: wrap;
            }

            #id_birthday_1{
                flex-grow: 1;
                margin: 0 5px;
            }
            .birthday-dropdown,
            .sex-dropdown{
                padding: 8px 12px;
            }

            .birthday-dropdown{
                font-size: 16px;
                border: 1px solid #cdcdcd;
                background: #ffffff;
            }
            .help-block,
            .birthday-text {
                color: rgb(127, 127, 127);
                font-size: 12px;
                font-weight: normal;
            }
            .birthday-text{
                margin-top: -1em;
            }
            .sex-dropdown{
                font-size: 16px;
                border: 1px solid #cdcdcd;
                background: #ffffff;
                flex-grow: 1;
            }
            .sex-dropdown-area .controls{
                display: flex;
            }
            .plain_button{
                border: none;
                background-color: transparent;
                font-size: 14px;
                font-weight: 300;
            }
            .active{
                color: #333333;
            }

            .required-field-text{
                font-size: 16px;
                color: rgb(127, 127, 127);
                padding-bottom: 67px;
            }
    .email_message{
        font-weight: 400;
    }
    .join-text{
        margin-top: 48px;
    }
    .confirmation{
        text-align: center;
    }
        .confirmation img{
            margin-bottom: 16px;
            filter: grayscale(100%);
        }


    /* terms accept */


@media only screen and (min-width: 1000px) {
    .branded-image-section{
        width: 50%;
        height: 100%;
        background-repeat: no-repeat;
        background-size: cover;

    }
    .entry {
        margin:auto 0;
    }
}

#div_id_password {
    margin-bottom: 36px;
}
.password-reset {
    margin: auto 16px;
}
.forgot_password {
    margin-top: 0px;
    margin-bottom: 48px;
}
.forgot_password a {
    color: #7F7F7F;
}
.no_account {
    font-family: Roboto, sans-serif;
    font-size: 14px;
    line-height: 20px;
    font-weight: normal !important;
    color: #333333;
}
.no_account a {
    font-weight: bold;
    color: #0074FF;
}
.login-button {
    background: #0074FF;
    border: none;
    color: #FFFFFF;
    font-family: Roboto, sans-serif;
    font-size: 14px !important;
    line-height: 24px;
    margin-bottom: 24px !important;
}
.svg-icon{
    flex-shrink: 0;
    display: inline-block;
    width: 1em;
    height: 1em;
    fill: currentColor; /* set default to be parent color */
}
.svg-icon-24x24{
    width: 24px;
    height: 24px;
}
.svg-icon-error {
    fill: #FF1744 !important;
}
#div_id_password .controls, #div_id_password1 .controls, #div_id_password2 .controls {
    position: relative;
}
#div_id_password .controls svg, #div_id_password1 .controls svg, #div_id_password2 .controls svg {
    position: absolute;
    right: 16px;
    top: 50%;
    transform: translate(0, -50%);
    fill: #7F7F7F !important;
}

#div_id_password .controls .icon-ic_eye_disable, #div_id_password1 .controls .icon-ic_eye_disable, #div_id_password2 .controls .icon-ic_eye_disable {
    display: none;
}

#div_id_password .controls.password_hidden .icon-ic_eye_disable, #div_id_password1 .controls.password_hidden .icon-ic_eye_disable, #div_id_password2 .controls.password_hidden .icon-ic_eye_disable {
    display: block;
}

#div_id_password .controls.password_hidden .icon-ic_eye, #div_id_password1 .controls.password_hidden .icon-ic_eye, #div_id_password2 .controls.password_hidden .icon-ic_eye {
    display: none;
}

/* Change Password */
.strength_area .strength_bar {
    height: 4px;
}
.strength_area .bar {
    background-color: #e5e5e5;
}
.strength_area.strength_message {
    color: #FF1744;
}
.strength_area.strength_1 .bar_1 {
    background-color: #FF1744;
}
.strength_area.strength_2 .bar_1, .strength_area.strength_2 .bar_2 {
    background-color: #7f7f7f;
}
.strength_area.strength_2 .strength_message {
    color: #7f7f7f;
}
.strength_area.strength_3 .bar_1, .strength_area.strength_3 .bar_2, .strength_area.strength_3 .bar_3 {
    background-color: #7ECA8F;
}
.strength_area.strength_3 .strength_message {
    color: #7ECA8F;
}
.strength_area.strength_4 .bar_1, .strength_area.strength_4 .bar_2, .strength_area.strength_4 .bar_3, .strength_area.strength_4 .bar_4 {
    background-color: #28A745;
}

.strength_area.strength_4 .strength_message {
    color: #28A745;
}

.password_must {
    color: #7f7f7f;
    font-size: 14px;
    font-weight: 700;
}

.requirement {
    color: #7f7f7f;
}
.requirement .requirement_failed {
    fill: #7f7f7f;
}
.requirement.failed {
    color: #FF1744;
}

.requirement.failed .requirement_failed {
    fill: #FF1744;
}
.requirement .requirement_passed {
    fill: #0040C1;
    display: none;
}
.requirement.passed {
    color: #0040C1;
}
.requirement.passed .requirement_passed {
    display: block;
}
.requirement.passed .requirement_failed {
    display: none;
}
#password_match_section {
    margin-top: 13px;
}
#password_match_section .match {
    color: #28A745;
}
#password_match_section .no_match {
    color: #FF1744;
}
#password_match_section.empty .no_match {
    color: #7f7f7f;
}
