/*Sign in*/
body {
    background: #E5E5E5;
}

.sign-in {
    padding: 80px 0 80px;
    margin: 0 0 60px;
}

/*.sign-in:after{
content: '';
position: absolute;
background-color: #fff;
display: block;
width: 200%;
height: 200px;
left: 0;
right: 0;
top: 80%;
transform: rotate(-4deg);
}*/

.sign-in-heading {
    flex-basis: 50%;
    padding: 20px 40px;
}

.snack-wrapper {
    max-height: unset !important;
}

button.btn.dropdown-toggle.btn-light {
    border-radius: 5px;
}

.donot-row.do-not-have-contractor {
    margin-bottom: 100px;
}

.sign-in-heading>h1 {
    color: #fff;
    font-size: 3.6rem;
    margin-bottom: 2rem;
    line-height: 1;
}

.sign-in-heading>p {
    color: #fff;
    margin-bottom: 1.6rem;
}

a#appt-login-main-email:hover,
p.button-get-access-email:hover,
p.button-get-access-mobile:hover {
    color: #0056b3;
}

input#p-password-confirm,
.datepicker--cell.datepicker--cell-day,
.datepicker--nav-title {
    color: #062A78;
}

.datepicker--day-name {
    color: #062A78 !important;
}

.datepicker--cell.-current- {
    color: #FF6347 !important;
}

.datepicker--nav {
    border: 0px !important;
}

.datepicker--day-name,
.datepicker--nav-title i {
    color: #062a78 !important;
    font-family: Montserrat-Medium;
}

.datepicker--cell.datepicker--cell-day.-current- {
    color: #ff6347;
}

.datepicker--cell.-selected- {
    background: #ff6347 !important;
    border-radius: 0px;
}

div.datepicker--cell {
    font-family: Montserrat-regular;
}

.datepicker--nav-title {
    margin-top: 10px;
    margin-bottom: 10px;
}

.datepicker--nav-title,
.datepicker--nav-title i {
    font-family: Montserrat-semibold;
    font-size: 16px;
}

.datepicker--nav-action path {
    stroke: #062a78 !important;
}

.filter-option:focus {
    box-shadow: 0 0 0 0.2rem rgb(0 123 255 / 25%);
}

.sign-in-form {
    flex-basis: 50%;
    position: relative;
    background: #fff;
    overflow: hidden;
    padding: 30px;
    max-width: 860px;
    box-shadow: 0px 0px 10px 0px #364659;
    border-radius: 15px;
    margin: auto;
}

.datepicker--cell.datepicker--cell-day:hover {
    background-color: #FF6347;
    color: #ffffff;
}

.section-heading {
    border-bottom: 1px dashed lightgrey;
    padding-bottom: 20px;
    /* margin:.5rem;*/
}

.section-heading>h3 {
    margin: 0;
    font-weight: 600;
    color: #3c8ab6;
}

img.expired-image {
    width: unset;
    margin-top: 40px;
    margin-bottom: 30px;
}

p.expired-text,
.expired-semi-text {
    color: #062A78;
}

p.expired-text {
    font-size: 18px;
}

.section-info {
    padding: 20px 0;
}


button#go-to-site {
    max-width: 246px;
    height: 52px;
}

.forgot {
    display: none;
}

.grouped:not(:last-child) {
    margin-bottom: 1.5rem;
    position: relative;
}

.grouped.grouped-centered {
    text-align: center;
}

.grouped.half--height {
    margin-bottom: .5rem;
}

.grouped.half--height a {
    font-size: .8rem;
    font-family: opensans-semibold;
    float: right;
}

.grouped2:not(:last-child) {
    margin-bottom: 1.5rem;
}

.grouped2.grouped-centered {
    text-align: center;
}

.grouped2.half--height {
    margin-bottom: .5rem;
}

.grouped2.half--height a {
    font-size: .8rem;
    font-family: opensans-semibold;
    float: right;
}

.input-icon {
    flex: 95%;
    border-radius: 4px;
    border: 1px solid lightgrey;
}

.input-icon>span:first-child {
    height: 100%;
    padding: 8px;
    border-right: 1px solid lightgrey;
    color: #838383;
    width: 40px;
    text-align: center;
}

.input-custom {
    height: 50px;
    border: none;
}

.input-custom:focus {
    outline: none;
    box-shadow: none;
}

.back-img {
    max-width: 620px;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
}

.cst-nav-tabs {
    border-bottom: 1px solid #efefef;
}

.cst-nav-item {
    flex: 1;
    text-align: center;
}

.cst-nav-item>.nav-link {
    font-size: 1.2rem;
    border: none;
    border-radius: 0px;
    position: relative;
}

.cst-nav-item.show .nav-link,
.cst-nav-item .nav-link.active {
    color: #4e96b8;
    background-color: #ffffff;
    border-bottom: 2px solid #519bbe;
}

.cst-nav-item .nav-link:not(.active) {
    opacity: .25;
}

.cst-nav-item:first-child .nav-link.active {
    /*transform: scale(1.1) translateX(10px);*/
    /*border-right: 2px solid #519bbe;*/
}

.cst-nav-item:last-child .nav-link.active {
    /*transform: scale(1.1) translateX(-10px);*/
    /*border-left: 2px solid #519bbe;*/
}

.cst-nav-item .nav-link.active:after {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    border-left: 12px solid #ffffff00;
    border-right: 12px solid transparent;
    border-top: 12px solid #519bbe;

}

.section-heading {
    /*border: 0;*/
}

.sign-in-form .tab-content {
    margin-top: 20px;
}

.grouped p.text-muted {
    line-height: 1.2;
    font-size: .85rem;
}

.grouped2 p.text-muted {
    line-height: 1.2;
    font-size: .85rem;
}

.btn-login,
.btn-login:focus {
    background: #519bbe;
    color: #fff;
    border: 2px solid;
    width: 100%;
    height: 50px;
    outline: none;
    box-shadow: none;
}

.btn-forgot-password,
.btn-forgot-password:focus {
    background: #a1a535;
    color: #fff;
    border: 2px solid #a1a535;
    width: 100%;
    height: 50px;
    outline: none;
    box-shadow: none;
}

.btn-disabled {
    pointer-events: none;
    opacity: .5;
    background: lightgrey;
    color: #101010;
    border-color: transparent;
}

.btn-login:hover,
.btn-login:active {
    background: #fff;
    color: #519bbe;
    outline: 0;
    box-shadow: none;
}

button.btn.btn-reset-password-email:hover,
button.btn.btn-reset-password-appt:hover,
button.btn.btn-reset-password-mobile:hover,
button.btn-reset-password-mobile-appt:hover,
button.btn-reset-password-email-appt:hover,
button.btn.btn-reset-password-email:active,
button.btn.btn-reset-password-appt:active,
button.btn.btn-reset-password-mobile:active,
button.btn-reset-password-mobile-appt:active,
button.btn-reset-password-email-appt:active {
    color: #ffffff;
    background: #EA5A40;
}


p.check {
    position: absolute;
    margin: 0;
    left: 50%;
    font-size: 0.8rem;
    font-family: opensans-semibold;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
}

p.check.success {
    color: green;
}

p.check.error {
    color: red;
}

p.check.account.error {
    color: red;
    background: #f4dbdb;
    padding: 5px 10px;
    border-radius: 4px;
    font-weight: 500;
}

.input-custom::-webkit-input-placeholder {
    opacity: .5
}

/* WebKit, Blink, Edge */
.input-custom:-moz-placeholder {
    opacity: .5
}

/* Mozilla Firefox 4 to 18 */
.input-custom::-moz-placeholder {
    opacity: .5
}

/* Mozilla Firefox 19+ */
.input-custom:-ms-input-placeholder {
    opacity: .5
}

/* Internet Explorer 10-11 */
.input-custom::-ms-input-placeholder {
    color: white;
}

/* Microsoft Edge */


.row.row-sign-in-prof {
    max-width: 360px;
    margin: auto;
    margin-top: 60px;
}

.sign-in-title {
    font-size: 24px;
    line-height: 26px;
    text-align: center;
    color: #062A78;
    font-family: Montserrat-semibold;
    margin-bottom: 30px;
}

p#pass-text {
    margin-top: 10px;
    font-size: 13px;
}

input#p-username,
input#p-username-reset,
input#p-username-appt,
input#p-username-reset-appt {
    height: 50px;
    border: 1px solid #C3C9D5;
    border-radius: 5px;
    margin-bottom: 10px;
}

#enter-appt-calendar {
    margin-top: 10px;
}

/* button.btn.dropdown-toggle.btn-light:focus,
button.btn.dropdown-toggle.btn-light:visited,
button.btn.dropdown-toggle.btn-light:focus-within {
    border: 1px solid #062a78;
} */

input#p-password-confirm {
    height: 48px;
    border: 1px solid #C3C9D5;
    border-radius: 5px;
    border: unset !important;
}

.button-get-access-mobile {
    margin-bottom: 150px;
}

input#p-password-confirm:focus {
    box-shadow: unset;
}

input#p-username::placeholder,
input#p-username-reset::placeholder,
input#p-username-reset-appt::placeholder,
input#p-username-appt::placeholder,
input#p-password-confirm::placeholder,
#forgot-mobile-reset::placeholder,
#forgot-mobile-reset-appt::placeholder,
#forgot-mobile::placeholder,
#p-username-appt-calendar::placeholder {
    color: #A9B2C3;
}

.or-text-sign-in span {
    background: #FCFCFF !important;
}

body {
    background-color: #FCFCFF !important;
}

.email-input-title,
.pass-input-title {
    font-size: 14px;
    color: #062A78;
    margin-bottom: 8px;
    font-family: Montserrat-semibold;
}

button.btn.btn-reset-password-email,
button.btn.btn-reset-password-mobile,
button.btn-reset-password-appt,
button.btn-reset-password-mobile-appt,
button.btn-reset-password-email-appt {
    margin-top: 18px;
}

button.btn.btn-continue-login-phone,
button.btn.btn-log-in,
button.btn.btn-continue-login-email,
button.btn-reset-password-email,
button.btn-reset-password-mobile,
button.btn-reset-password-mobile-appt,
button.btn-reset-password-appt,
button.btn-reset-password-email-appt,
button.btn.create-pass-login,
button#go-to-site {
    width: 100%;
    background: #FF6347;
    color: #fff;
    font-size: 17px;
    border: 1px solid #FF6347;
    border-radius: 2px;
    font-family: Montserrat-semibold;
    height: 50px;
}

button.btn.btn-continue-login-phone:hover,
button.btn.btn-log-in:hover,
button.btn.btn-continue-login-email:hover {
    background: #EA5A40;
}

.sign-in-title {
    margin-top: 22px;
    line-height: 1.2;
}

p.creat-account {
    font-size: 15px;
    color: #062A78;
    text-align: center;
    margin-bottom: 30px;
}

input#p-password::placeholder,
input#p-password-phone::placeholder {
    color: #A9B2C3;
    font-size: 15px;
}

div#snackbar,
div#snackbar-mobile {
    border-radius: 10px;
}

.back-image {
    cursor: pointer;
}

button#go-to-site {
    margin-top: 30px;
}

#snackbar,
#snackbar-mobile {
    visibility: hidden;
    min-width: 250px;
    background-color: #0E9A2E;
    color: #fff;
    border-radius: 2px;
    padding: 16px;
    position: fixed;
    z-index: 1;
    bottom: 30px;
    height: 104px;
    width: 324px;
}

#snackbar.show,
#snackbar-mobile.show {
    visibility: visible;
    -webkit-animation: fadein 3s, fadeout 3s 5.5s;
    animation: fadein 3s, fadeout 3s 5.5s;
}

span.snack-msg.medium {
    padding-top: 17px;
    font-size: 15px;
}

#p-username-appt-calendar,
#p-username-appt-calendar:active,
#p-username-appt-calendar:focus,
#p-username-appt-calendar:focus-visible {
    border: unset;
    box-shadow: unset;
}

#password-input-wrapper,
#password-input-wrapper-phone,
.password-input-wrapper,
#calendar-input-wrapper {
    display: flex;
    flex-direction: row;
    align-items: center;
    height: 50px;
    max-width: 2328px;
    background: #ffffff;
    border: 1px solid #C3C9D5;
    border-radius: 5px;
}

.text-outer {
    margin-bottom: 16px;
}

#pass-text,
#pass-text-mob {
    margin: 0px;
}

.continue-method {
    cursor: pointer;
}

input#p-username-reset,
input#p-username,
input#p-password,
input#forgot-mobile,
input#p-password-phone,
input#forgot-mobile-reset,
input#forgot-mobile-reset-appt,
#p-username-appt {
    color: #062A78 !important;
}

p#email_user,
p#phone_user {
    font-family: Montserrat-regular !important;
    font-size: 14px;
    color: #062A78;
    text-align: center;
    margin-bottom: 30px;
}

.welcome-in-title {
    font-size: 25px;
    line-height: 26px;
    text-align: center;
    color: #062A78;
    font-family: Montserrat-semibold;
    margin-bottom: 10px;
    margin-top: 22px;
}

input#p-password,
input#p-password-phone {
    border: unset !important;
}

input#p-password:focus,
input#p-password-phone:focus {
    box-shadow: unset;
}

.form-control {
    padding-left: 16px;
}

.eye,
.eye-mob,
.calendar-sign {
    height: 25px;
    width: 25px;
    margin-right: 19px;
    cursor: pointer;
}

.or-text-sign-in {
    width: 100%;
    text-align: center;
    border-bottom: 1px solid #C3C9D5;
    line-height: 0.1em;
    margin: 10px 0 20px;
}

.or-text-sign-in span {
    background: #E5E5E5;
    padding: 0 10px;
    color: #062A78;
}

.sign-in-or {
    margin-top: 35px;
    margin-bottom: 35px;
}

.continue-method.continue-phone,
.continue-method.continue-email {
    display: flex;
}

.switch {
    position: relative;
    display: inline-block;
    width: 60px;
    height: 34px;
}

.switch input {
    opacity: 0;
    width: 0;
    height: 0;
}

.slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #ccc;
    -webkit-transition: .4s;
    transition: .4s;
}

.slider:before {
    position: absolute;
    content: "";
    height: 19px;
    width: 19px;
    left: 2px;
    bottom: 2px;
    background-color: white;
    -webkit-transition: .4s;
    transition: .4s;
}

a.option.form-control.dropdown-item,
.filter-option-inner-inner, 
#p-username-reset-appt,
#forgot-mobile-reset-appt {
    color: #062A78;
}

div#password-input-wrapper-phone:active,
div#password-input-wrapper-phone:focus-within,
div#password-input-wrapper:active,
div#password-input-wrapper:focus-within,
div.password-input-wrapper:active,
div.password-input-wrapper:focus-within,
div#calendar-input-wrapper:active,
div#calendar-input-wrapper:focus-within {
    box-shadow: 0px 0px 0px 2px rgba(0, 127, 255, 0.28);
}

a.option.form-control.dropdown-item {
    border-radius: 0px;
}

span.text {
    padding-top: 4px;
}

input:checked+.slider {
    background-color: #007FFF;
}

.inner.show {
    overflow: hidden;
}

input:focus+.slider {
    box-shadow: 0 0 1px #062A78;
}

input:checked+.slider:before {
    -webkit-transform: translateX(19px);
    -ms-transform: translateX(19px);
    transform: translateX(19px);
}

/* Rounded sliders */
.slider.round {
    border-radius: 34px;
}

.slider.round:before {
    border-radius: 50%;
}

span.slider.round {
    width: 44px;
    height: 23px;
}

.continue-method.continue-phone,
.continue-method.continue-google,
.continue-method.continue-fb,
.continue-method.continue-email {
    width: 324px;
    height: 50px;
    border: 1px solid #DBDFE6;
    border-radius: 5px;
    display: flex;
    flex-direction: row;
    align-items: center;
    padding: 4px 10px;
    background: #ffffff;
    margin-top: 18px;
}

.continue-method.continue-phone:hover,
.continue-method.continue-google:hover,
.continue-method.continue-fb:hover,
.continue-method.continue-email:hover {
    border: 1px solid #062A78;
}

.btn-light,
.btn-light:hover,
.btn-light:not(:disabled):not(.disabled).active,
.btn-light:not(:disabled):not(.disabled):active,
.show>.btn-light.dropdown-toggle {
    background-color: white;
    border: 1px solid #c3c9d5;
    box-sizing: border-box;
    border-radius: 2px;
    color: #062a78;
    width: 328px !important;
    height: 50px;
    padding-top: 13px;
    outline: none !important;
    margin-bottom: 25px;
}

.dropdown-item.active,
.dropdown-item:active,
.dropdown-item:hover,
.dropdown-item:focus {
    background-color: #e6e6fa;
    color: #062a78 !important;
    height: 40px;
}

input#forgot-mobile,
input#forgot-mobile-reset,
input#forgot-mobile-reset-appt {
    width: 328px;
    height: 50px;
    border: 1px solid #C3C9D5;
    border-radius: 5px;
    margin-bottom: 10px !important;
    margin-top: 10px !important;
}

span.phone-icon {
    margin-right: 30px;
    margin-left: 10px;
}

.continue-method-text,
.continue-method-text-email,
.continue-method-text-phone {
    color: #062A78;
    font-family: Montserrat-semibold;
    font-size: 15px;
}

.donot-have-account {
    font-size: 13px;
    text-align: center;
    margin-top: 24px;
    color: #062A78;
}

.donot-row.do-not-have-contractor {
    margin-top: 18px;
}

.login-cust,
.link-create,
.reset-pass-with-email,
.reset-pass-with-mobile,
.button-reset-pass-mobile,
.button-reset-pass-email,
.button-get-access-email,
.button-get-access-mobile,
.button-get-access-appt,
.reset-pass-with-phone,
.appt-login,
#appt-login-main-email,
#appt-login-main-phone {
    color: #007FFF;
    text-decoration: underline;
    cursor: pointer;
}

.appt-login-outer {
    margin-top: 24px;
}

.appt-login-outer {
    text-align: center;
}

a.appt-login {
    font-size: 13px;
}

.reset-pass-with-email-forgot,
.reset-pass-with-mobile-forgot {
    color: #D71313;
    text-decoration: underline;
    cursor: pointer;
}

.dropdown-menu.show {
    width: 101%;
}

input#p-username-appt-calendar {
    color: #062A78;
}

p.button-reset-pass-mobile,
p.button-reset-pass-email,
p.button-get-access-email,
p.button-get-access-mobile,
p.button-get-access-appt {
    font-size: 13px;
    margin-top: 24px;
    text-align: center;
}

.dropdown-menu.show {
    left: -1px !important;
}

p.expired-text {
    font-family: Montserrat-semibold;
}

.btn-light:focus {
    background-color: #ffffff !important;
    box-shadow: none !important;
}

.bootstrap-select .dropdown-toggle:focus,
.bootstrap-select>select.mobile-device:focus+.dropdown-toggle {
    outline: 0px !important;
}

.email-alert,
.mobile-alert {
    width: 324px;
    height: 104px;
    background: #0E9A2E;
    border-radius: 10px;
    padding: 18px 16px 13px 16px;
    position: absolute;
    left: 18px;
    margin-top: 180px;
}

h4.check-emails {
    color: #ffffff;
    font-size: 15px;
    font-family: Montserrat-semibold;
}

p.p-check-emails {
    /* font-size: 15px; */
    color: #ffffff;
    font-family: Montserrat-regular !important;
}

#enter-email,
#enter-mobile,
#enter-appt,
#enter-appt-calendar,
#enter-email-reset,
#enter-email-reset-appt,
#password-must-contain,
#enter-phone-from-appt {
    font-size: 13px;
    color: #697E9A;
}

#enter-email-reset-appt {
    margin-top: 10px;
}

#password-list {
    margin: 5px;
}

img.back-image {
    width: 63px !important;
}

.forget-outer {
    display: flex;
    font-size: 13px;
    margin-top: 15px;
}

p.forgot-pass {
    margin-right: 4px;
    color: #062A78;
}

.ul-rules {
    padding-left: 5px !important;
}

.remember-me {
    font-size: 15px;
    color: #062A78;
}

img#first-icon,
img#second-icon,
img#third-icon {
    width: 19px;
}

.remember-outer {
    display: flex;
    margin-top: 24px;
}

@media all and (min-width: 767px) {
    .sign-in-inner {
        min-height: 500px;
    }
}

@media all and (max-width: 767px) {

    .basis {
        flex-basis: 100% !important;
    }

    .sign-in {
        padding: 60px 0 240px;
    }

    .sign-in:after {
        height: 0;
    }

    .sign-in-inner {
        flex-direction: column;
    }
}

@media screen and (max-width: 700px) {
    img.expired-image {
        width: 100px;
    }
}