.signin-form-element h4 {
    text-align: center;
    margin-bottom: 30px;
    font-size: 25px;
}

.signin-form-element input {
    font-size: 14px;
    padding: 18px;
    padding-top: 4px;
    padding-bottom: 4px;
    margin-bottom: 10px;
}

.signin-form-element .or-bar {
    overflow: hidden;
    text-align: center;
    font-size: 16px;
    color: #CCC8C8;
    text-transform: uppercase;
    margin-top: 10px;
    margin-bottom: 20px;
}

/* Based on: http://jsfiddle.net/Puigcerber/vLwDf/1/ */
.signin-form-element .or-bar:before,
.signin-form-element .or-bar:after {
    background-color: #ccc;
    content: "";
    display: inline-block;
    height: 1px;
    position: relative;
    vertical-align: middle;
    width: 50%;
}

.signin-form-element .or-bar:before {
    right: 0.5em;
    margin-left: -50%;
}

.signin-form-element .or-bar:after {
    left: 0.5em;
    margin-right: -50%;
}

.signin-form-element .external-logins {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    align-items: center;
}

.signin-form-element .external-login-button {
    display: inline-block;
    text-align: center;
    padding: 6px;
    margin-bottom: 10px;
    max-width: 33%;
}

.signin-form-element .external-login-button a {
    color: #40B4E5;
}

.signin-form-element .external-login-button .login-text {
    margin-top: 6px;
    display: block;
    font-size: 14px;
}

.signin-form-element .external-login-button i.fa {
    font-size: 46px;
    width: auto !important;
}

.signin-form-element .external-login-button img {
    width: 50% !important;
    max-width: 80px;
    margin-bottom: 6px;
}
