* {
    box-sizing: border-box;
}

* html #poststuff {
    height: 100%; /* kill peekaboo bug in IE */
}

/* This is the Holly Hack \*/
* html .wrap {
    height: 1%
}

/* For Win IE's eyes only */

body {
    border: none;
}

a {
    border-bottom: 1px solid #69c;
    color: #00019b;
    text-decoration: none;
}

em {
    font-family: "Lucida Sans", "Lucida Sans Unicode", Tahoma, Verdana, sans-serif;
}

p.lead-in {
    font-size: 1.1em;
    line-height: 1.8em;
    color: #777;
}

a:link,
a:visited {
    color: #61889b;
}

a:hover,
a:active {
    color: #a2ad00;
}

body {
    background: #fff;
    color: #eee;
    margin: 0;
    padding: 0;
}

form, label input {
    margin: 0;
    padding: 0;
}

img {
    border: 0;
}

input:focus, textarea:focus, label:focus {
    outline: 0;
}

li, dd {
    margin-bottom: 6px;
}

p, li, dl, dd, dt {
    line-height: 140%;
}

textarea, input, select {
    background: #f4f4f4;
    border: 1px solid #b2b2b2;
    color: #000;
    margin: 1px;
    padding: 3px;
}

.checkbox {
    background: #fff;
    border: none;
    margin: 0;
    padding: 0;
}

.clear {
    clear: both;
    height: 2px;
}

.hidden {
    display: none;
}

.submit input, .submit input:focus, .button, .button:focus {
    outline: 0;
}

* html .button {
    padding: 0;
}

* html .wrap h2 {
    margin-top: 1em;
}

textarea.all-options, input.all-options {
    width: 250px;
}

input.disabled, textarea.disabled {
    background: #ccc;
}

* html #postexcerpt .dbx-toggle-open, * html #postexcerpt .dbx-toggle-open {
    padding-right: 8px;
}

#login {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 100vh;
    padding: 20px;
    position: relative;
    overflow: hidden;
    font-family: "Inter", sans-serif;
}

#login::before, #login::after {
    border-radius: 50%;
    content: '';
    display: block;
    position: absolute;
}

#login::before {
    background: linear-gradient(225deg, rgba(36, 162, 201, 0.48) 0%, rgba(36, 162, 201, 0.0672) 100%);
    height: 320px;
    left: 0;
    top: 0;
    width: 320px;
    transform: rotate(328deg);
    left: -106px;
    top: -132px;
    border-radius: 0;
}

#login::after {
    background: linear-gradient(225deg, rgba(245, 156, 2, 0.48) 0%, rgba(245, 156, 2, 0.0672) 100%);
    bottom: 0;
    height: 480px;
    right: 0;
    width: 480px;
    transform: rotate(67deg);
    right: -117px;
    bottom: -194px;
    border-radius: 0;
}

.login-box {
    width: 100%;
    max-width: 480px;
    background-color: #fff;
    text-align: center;
}

.login-box h2 {
    color: #181818;
    font-size: 32px;
    font-weight: 400;
    line-height: 40px;
    margin-bottom: 9px;
    margin-top: 0px;
}

#login form {
    width: 100%;
}

#login #login_error {
    background: #0e3350;
    border: 1px solid #2571ab;
    color: #ebcd4e;
    font-size: 11px;
    font-weight: bold;
    padding: .6em;
    width: 310px;
    margin: 0 50px;
    text-align: center;
}

#login p {
    color: #656565;
    margin-bottom: 31px;
    margin-top: 0;
}

#login p.message {
    width: 310px;
    margin: 0 auto 1em;
}

#login #login_error a {
    color: #ebcd4e;
    border-color: #ebcd4e;
}

#login #send {
    color: #fff;
    text-align: left;
    font-weight: normal;
    font-size: 1.1em;
    _width: 325px;
    _margin: 0 auto 15px;
}

#login h1 a {
    margin: 0 auto;
    height: 88px;
    width: 320px;
    display: block;
    border-bottom: none;
    text-indent: -9999px;
}

#login .message {
    font-size: 10pt;
    text-align: center;
}

#login .register {
    font-size: 20px;
}

.login ul, #protected #login .bottom {
    list-style: none;
    width: 325px;
    margin: 0 auto;
    padding: 0;
    line-height: 1.2;
}

.login ul li {
    font-size: 11px;
}

.login ul li a {
    color: #0d324f;
    border: none;
}

#login ul li a:hover {
    color: #fff;
}

#login .input {
    background: #fff;
    border: 1px solid #DFDFDF;
    border-radius: 8px;
    font-size: 16px;
    height: 52px;
    margin-bottom: 15px;
    padding: 14px;
    width: 100%;
}

#login .input:hover, #login .input:focus {
    border-color: #A3A3A3;
}

#login p label {
    font-size: 13px;
}

#login #pwtext p {
    margin-bottom: 14px;
}

#login #pwtext p:last-of-type {
    margin-bottom: 30px;
}

#login #submit, #login .login-lostpw {
    background: #62A0C1;
    border: 0;
    border-radius: 8px;
    color: #ffffff;
    cursor: pointer;
    font-size: 16px;
    letter-spacing: 1.3px;
    line-height: 24px;
    margin-bottom: 34px;
    margin-top: 18px;
    padding: 16px;
    text-transform: uppercase;
    width: 100%;
}

#login #submit:hover {
    background: #1B7A97;
}

#login .login-lostpw {
    display: inline-block;
}

#login .fullwidth {
    width: 320px;
}

#login a {
    border: none;
    color: #656565;
    text-decoration: none;
    transition: 0.3s all;
}

#login a:hover {
    opacity: 0.7;
}

#login div.warning-box {
    padding-top: 20px;
    width: 400px;
    margin: auto;
    position: fixed;
    bottom: 0;
}

#login .warning {
    background: #dd6666;
    padding: 10px;
    border: 2px solid #ff6666;
    color: #660000;
}

#securityIcon {
    display: none;
}

#logo {
    margin-bottom: 92px;
    height: 40px;
}

* html #template div {
    margin-right: 0;
}

.logo-section {
    position: absolute;
    display: flex;
    top: 100px;
}

.login-wrapper {
    display: flex;
    width: 100%;
    align-items: center;
    align-content: center;
    flex-direction: column;
}

.error-message {
    color: #181818;
    border: 1px solid #EA585F;
    background: #FBF2F2;
    padding: 10px 15px;
    border-radius: 8px;
    text-align: left;
    font-size: 16px;
}

.separator {
    width: 250px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    height: 100%;
}

.separator:before {
    content: "";
    width: 1px;
    height: 100%;
    background: #DFDFDF;
    position: absolute;
}

.separator span {
    color: #656565;
    font-size: 16px;
    background: #fff;
    border-radius: 50%;
    width: 60px;
    height: 60px;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}


.has_buttons .login-box {
    display: flex;
    max-width: inherit;
    align-items: center;
    justify-content: center;
}

.has_buttons .logo-section {
    position: relative;
    top: unset;
}


.has_buttons .login-wrapper, .login_buttons_wrapper {
    width: 460px;
}

.has_buttons #logo {
    width: 180px;
    margin-bottom: 45px;
}


.login_buttons_wrapper ul {
    margin: 0 0;
    width: 100%;
    display: flex;
    flex-direction: column;
}

.login_buttons_wrapper ul li {
    width: 100%;
}

.login_buttons_wrapper ul li a {
    width: 100% !important;
    border: 1px solid #DFDFDF !important;
    border-radius: 8px;
    color: #181818 !important;
    font-size: 18px;
    font-weight: 500;
    height: 52px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    margin: 15px 0;
}

.login_buttons_wrapper ul li a img {
    margin-right: 8px;
}

.login_buttons_wrapper a:hover {
    background: #f9f9f9;
    border-color: #d8d8d8 !important;
    opacity: 1!important;
}

@media screen and (max-height: 700px) {
    #login:not(.has_buttons) .logo-section {
        position: relative;
        top: unset;
        margin-bottom: 25px;
    }
    #login:not(.has_buttons) #logo {
        margin-bottom: 50px;
    }
}