body {
    font-family: 'Open Sans', sans-serif;
    background: #fff;
    background-size: cover;
}

#login_form {
    width: 720px;
    min-height: 100%;
    padding: 20px;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
}

#login_form_inner,
#login_footer {
    margin: auto;
    width: 452px;
    text-align: center;
}

#login_form_inner .title {
    min-height: 166px;
    font-family: "Montserrat", sans-serif;
    padding-bottom: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
}

#login_form_inner .title-container {
    font-size: 24px;
    line-height: 46px;
    font-weight: 600;
    color: #fff;
    display: block;
}

#login_form_inner .subtitle-container {
    font-weight: 300;
    font-size: 16px;
    font-family: "Roboto", sans-serif;
    color: #fff;
}

#login_form_inner .subtitle-container div {
    padding-top: 10px;
    color: #fff;
    font-style: italic;
}

#login_form_inner .title .logo-container {
    padding-bottom: 12px;
}

#login_form_inner .title .logo-container svg {
    width: 152px;
    height: 188px;
}

#login_form_inner .title .logo-container img {
    height: 188px;
}

#login_form .base-input-text-element {
    text-align: left;
    margin-bottom: 20px;
    position: relative;
}

#login_form .base-input-text-element.password {
    margin-bottom: 10px;
}

#login_form .base-input-text-element label {
    font-family: "Roboto", sans-serif;
    font-weight: 300;
    font-size: 14px;
    line-height: 38px;
    position: absolute;
    display: block;
    width: 30px;
    height: 30px;
    padding: 0;
    top: 8px;
    left: 8px;
}

#login_form .base-input-text-element label svg {
    fill: #879aab;
    margin-left: 5px;
}

#login_form .base-input-text-element.focus label svg path {
    fill: #796BFB;
}

#login_form .base-input-text-element input {
    width: 100%;
    line-height: 46px;
    height: 46px;
    padding-left: 44px;
    border-color: #fff;
    background: #fff;
    border-radius: 13px;
    box-shadow: inset 0 3px 2px rgba(0, 0, 0, .1);
    font-size: 16px;
}

#login_form .base-input-text-element.focus input{
    border-color: #796BFB;
}

#login_form .base-input-text-element:not(:has(svg)) {
    label {
        display: none;
    }

    input {
        padding-left: 20px;
    }
}

#login_form .base-input-text-element input::-webkit-input-placeholder { /* Chrome/Opera/Safari */
    color: #aaa;
    font-weight: 300;
    font-size: 16px;
}

#login_form .base-input-text-element input::-moz-placeholder { /* Firefox 19+ */
    color: #aaa;
    font-weight: 300;
    font-size: 16px;
}

#login_form .base-input-text-element input:-ms-input-placeholder { /* IE 10+ */
    color: #aaa;
    font-weight: 300;
    font-size: 16px;
}

#login_form .base-input-text-element input:-moz-placeholder { /* Firefox 18- */
    color: #aaa;
    font-weight: 300;
    font-size: 16px;
}

#login_form .base-input-text-element input:-webkit-autofill {
    -webkit-box-shadow: inset 0 3px 2px rgba(0, 0, 0, .1);
    -webkit-text-fill-color: #333;
}

#login_form .base-input-text-element input:-webkit-autofill:focus {
    -webkit-box-shadow: inset 0 3px 2px rgba(0, 0, 0, .1);
    -webkit-text-fill-color: #333;
}

#login_form .submit {
    background: var(--primary-button-background);
    border: none;
    border-radius: var(--primary-button-radius);
    font-family: var(--default-font-family);
    font-style: normal;
    font-weight: 500;
    font-size: 16px;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: var(--login-button-height);
    line-height: var(--login-button-height);
    margin: 20px 0;

    &:hover:not(.disabled) {
        background: var(--primary-button-hover-background) !important;
        box-shadow: none !important;
    }
}

#login_form .disabled .submit {
    background: #b0c6d2 !important;
    box-shadow: none !important;
    background-image: none !important;
}

#login_form_inner .remember-me.base-checkbox-element .base-checkbox-icon, .base-checkbox-element .base-checkbox-label,
#login_form_inner .remember-me.base-checkbox-element input[type="checkbox"]:checked ~ label .base-checkbox-label {
    font-size: 13px !important;
    font-weight: 400 !important;
    color: #707070;
}

#login_form_inner .remember-me {
    margin-bottom: 60px;
}

.links-container {
    text-align: center;
    color: #707070;
    font-size: 16px;
}

.links-container > div {
    display: inline-block;
}

#login_form_inner .forgot-password,
#login_form_inner .back,
#login_form_inner a {
    text-align: center;
    font-family: "Roboto", sans-serif;
    font-weight: 400;
    text-decoration: underline;
    cursor: pointer;
    color: #fff;
    font-size: 16px;
    line-height: 20px;

    &:hover {
        text-decoration: none;
    }
}

#login_form_inner .forgot-password,
#login_form_inner .back {
    display: inline-block;
}

#login_form_inner .forgot-password {
    text-align: center;
    margin-bottom: 16px;
    font-size: 13px;
}

#login_form_inner .create-account {
    font-size: 16px;
    color: #fff;
    text-align: center;
    background: rgba(122, 102, 255, 0.7);
    line-height: 20px;
    border-radius: 23px;
    padding: 12px 11%;
    display: inline-block;
}

#login_footer {
    font-size: 13px;
    line-height: 24px;
    font-family: "Roboto", sans-serif;
    font-weight: 400;
    color: #fff;
    padding-top: 60px;
    padding-bottom: 40px;
    text-align: center;
    margin: auto auto 0 auto;
}

#login_footer a {
    color: #fff;
    text-decoration: underline;

    &:hover {
        text-decoration: none;
    }
}

.notification-element {
    margin: 0 0 20px 0 !important;

    .notification-text {
        font-size: 16px !important;
    }
}

#placeholder {
    width: 720px;
    min-height: 100%;
    background: #f6fcff;
    padding: 20px;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
}

#login_container {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 100%;
    width: 100%;
    background: linear-gradient(180deg, #4F59B9 0%, #584398 100%);
}

#placeholder_container {
    display: none;
    /*
        display: table-cell;
        height: 100%;
        width: 100%;
        position: relative;
        background: #5253AF url(/images/authentication/chat_bubbles_bg-min.png) no-repeat top left;
        cursor: pointer;
        display: table-cell;
        height: 100%;
        width: 100%;
        position: relative;
        background: #5253AF url(/images/authentication/login-background.jpg) no-repeat top left;
        background-size: cover;
        vertical-align: top;*/
}

#placeholder_container .placeholder-text {
    position: absolute;
    width: 766px;
    height: 464px;
    padding-top: 434px;
    background: url(/images/common/no_mentions.png) no-repeat top center;
    background-size: contain;
    top: 50%;
    left: 50%;
    margin-left: -383px;
    margin-top: -232px;
    text-align: center;
}

#placeholder_container .placeholder-text div {
    position: absolute;
    top: 173px;
    left: 110px;
    font-size: 42px;
    font-family: "Roboto", sans-serif;
    color: #C6C4D9;
    font-weight: 500;
    transform: rotateX(31deg) rotateY(3deg) rotateZ(-36deg);
}

#placeholder_container .placeholder-text.good-morning {
    background: url(/images/authentication/good_morning-min.png) no-repeat top center;
}

#placeholder_container .placeholder-text.good-afternoon {
    background: url(/images/authentication/good_afternoon-min.png) no-repeat top center;
}

#placeholder_container .placeholder-text.good-evening {
    background: url(/images/authentication/good_evening-min.png) no-repeat top center;
}

#placeholder_container .post-cards-placeholder {
    position: absolute;
    width: 670px;
    height: 290px;
    background: url(/images/authentication/fresh_on_blog-min.png) no-repeat top center;
    background-size: contain;
    top: 50%;
    left: 50%;
    margin-left: -335px;
    margin-top: -290px;
    text-align: center;
    font-family: "Lato", "Helvetica Neue", helvetica, arial, sans-serif;
}

#placeholder_container .post-cards-placeholder .header-element {
    position: absolute;
    top: 94px;
    left: 188px;
    font-size: 22px;
    font-family: "Roboto", sans-serif;
    color: #C6C4D9;
    font-weight: 500;
    transform: rotateX(31deg) rotateY(3deg) rotateZ(-36deg);
}

#placeholder_container .post-cards-placeholder .bottom-element {
    padding-top: 330px;
}

/* Post Cards */

.post-card {
    margin: 0 1%;
    display: inline-block;
    width: 31%;
    border: solid 1px #ced8e1;
    border-radius: 3px;
    padding: 1px;
    box-sizing: border-box;
    max-width: 214px;
    height: 260px;
    text-align: center;
    background: #f6fafd;
    margin-bottom: 20px;
    vertical-align: top;
    text-decoration: none !important;
}

.post-card:hover {
    margin-top: -4px;
    box-shadow: 0px 8px 32px 8px rgba(44, 52, 105, 0.5);
}

.post-card .article-image {
    width: 100%;
    height: 110px;
}

.post-card .article-image img {
    display: block;
    margin: 0 auto;
    width: auto;
    max-height: 100%;
}

.post-card .text-container {
    padding: 0px 30px;
    text-align: center;
}

.post-card .main-category {
    border: none !important;
    height: 22px;
    line-height: 22px;
    display: inline-block;
    border-radius: 3px;
    padding: 1px 10px;
    text-transform: uppercase;
    background: #312763;
    font-size: 12px;
    font-weight: 700;
    color: #fff;
}

.post-card .text-container h4 {
    color: #495160;
    font-size: 14px;
}


@media (max-width: 1280px),(max-width: 1490px) {
    html, body {
        background: #f6fcff !important;
        width: 100%;
        min-width: 100% !important;
    }

    #login_form {
        width: 452px;
        max-width: 100%;
        margin: 0 auto;
    }

    #login_form_inner, #login_footer {
        width: 100%;
    }

    #placeholder_container {
        display: none;
    }
}
