#socialLogin h2 {
    font-family: 'Montserrat', 'Helvetica', 'Arial', sans-serif;
    font-weight: bold;
    font-style: normal;
    font-size: 22px;
    margin: 0 0 30px 0;
}

#socialLogin .sfba-social-btn,
#socialLoginLink .sfba-social-btn-link {
    box-sizing: border-box;
    position: relative;
    margin: 0 auto 10px auto;
    padding: 0 15px 0 55px;
    border: none;
    text-align: left;
    line-height: 50px;
    white-space: nowrap;
    border-radius: 0.2em;
    font-size: 18px;
    color: #FFF;
    display: block;
    width: 100%;
    font-family: 'Montserrat', 'Helvetica', 'Arial', sans-serif;
}

.sfba-social-btn:before,
.sfba-social-btn-link:before {
    content: "";
    box-sizing: border-box;
    position: absolute;
    top: 5px;
    left: 5px;
    width: 40px;
    height: 83%;
    bottom: 5px;
}

.sfba-social-btn:focus,
.sfba-social-btn-link:focus {
    outline: none;
}

.sfba-social-btn:active,
.sfba-social-btn-link:active {
    box-shadow: inset 0 0 0 32px rgba(0, 0, 0, 0.1);
}

/* Google */
.sfba-login-with-google-btn {
    background-color: #DD4B39;
    background-image: linear-gradient(#DD4B39, #df5341);
    text-shadow: 0 -1px 0 #df5341;
}

.sfba-login-with-google-btn:before {
    border-right: #b13c2d 1px solid;
    background: url('images/Google.svg') center center no-repeat;
    background-size: 70%;
}

.sfba-login-with-google-btn:hover,
.sfba-login-with-google-btn:focus {
    background-color: #ec5440;
    background-image: linear-gradient(#ec5440, #ec5440);
}

/* Facebook */
.sfba-login-with-facebook-btn {
    background-color: #4C69BA;
    background-image: linear-gradient(#4C69BA, #3B55A0);
    text-shadow: 0 -1px 0 #354C8C;
}

.sfba-login-with-facebook-btn:before {
    border-right: #364e92 1px solid;
    background: url('images/Facebook.svg') center center no-repeat;
    background-size: 70%;
}

.sfba-login-with-facebook-btn:hover,
.sfba-login-with-facebook-btn:focus {
    background-color: #5B7BD5;
    background-image: linear-gradient(#5B7BD5, #4864B1);
}

/* Twitter */
.sfba-login-with-twitter-btn {
    background-color: #1bb2e9;
    background-image: linear-gradient(#1bb2e9, #1B8EB8);
    text-shadow: 0 -1px 0 #1B8EB8;
}

.sfba-login-with-twitter-btn:before {
    border-right: #1B8EB8 1px solid;
    background: url('images/Twitter.svg') center center no-repeat;
    background-size: 70%;
}

.sfba-login-with-twitter-btn:hover,
.sfba-login-with-twitter-btn:focus {
    background-color: #5ac6ee;
    background-image: linear-gradient(#5ac6ee, #5ac6ee);
}

/* Apple */
.sfba-login-with-apple-btn {
    background-color: #000;
    background-image: linear-gradient(#000, #000);
    text-shadow: 0 -1px 0 #000;
}

.sfba-login-with-apple-btn:before {
    border-right: #858585 1px solid;
    background: url('images/Apple.svg') center center no-repeat;
    background-size: 70%;
}

.sfba-login-with-apple-btn:hover,
.sfba-login-with-apple-btn:focus {
    background-color: #000;
    background-image: linear-gradient(#2d2d2d, #2d2d2d);
}

#socialLoginLink .sfba-social-btn-link {
    display: none;
}

#socialLoginLink .link-message {
    margin: 20px 0px 20px 0px;
}

#socialLoginLink .link-message .provider-name {
    font-weight: bold;
}

/* Preferences Template tabs */
/* .preferences-list ul {
    -moz-column-count: 4;
    -moz-column-gap: 3em;
    -webkit-column-count: 4;
    column-count: 4;
    column-gap: 1em;
} */

.preferences-list li {
    font-family: 'Montserrat', 'Helvetica', 'Arial', sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 16px;
    line-height: 30px;
    list-style: none;
    float: left;
    width: 24%;
    margin: 0 10px 10px 0;
}

.search-preferences {
    border-radius: 4px;
    font-family: 'Montserrat', 'Helvetica', 'Arial', sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 14px;
    line-height: 38px;
    border: 1px solid #CCC !important;
    background-color: inherit;
    height: 38px;
    color: #000 !important;
    text-indent: 12px;
    width: 98.5%;
    margin: 0 0 20px 0;
}

.preferences-list li a {
    float: left;
    font-family: 'Montserrat', 'Helvetica', 'Arial', sans-serif;
    font-weight: 600;
    font-style: normal;
    font-size: 12px;
    line-height: 18px;
    color: #050505;
    width: 100%;
    border: 1px solid #ededed;
    display: flex;
    align-items: center;
}

.preferences-list li a:hover {
    color: #fc5f00;
}

.preferences-list ul li a span {
    padding: 0 10px;
    display: inline-block;
    width: 90%;
    /* this code clamps based on specified lines */
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    display: -webkit-box;
}

.preferences-list ul li a span:first-child {
    border-right: 1px solid #ededed;
}

.preferences-list ul li a span.pref-add {
    color: #009b1a;
    float: right;
    padding: 10px;
    /* border-left: 1px solid #ededed; */
    width: 10%;
    text-align: center;
}

.preferences-list ul li a span.pref-delete {
    color: #ff0000;
    float: right;
    padding: 10px;
    /* border-left: 1px solid #ededed; */
    width: 10%;
    text-align: center;
}

.preferences-box {
    padding-top: 100px;
}

.preferences-box .tab-nav li {
    display: inline-block;
    vertical-align: top;
    margin-right: 0;
}

.preferences-box .tab-nav li:hover>span,
.preferences-box .tab-nav li.active>span {
    background-color: #fc5f00;
}

.preferences-box .tab-nav li span {
    text-transform: capitalize;
    color: #FFF;
    transition: all 0.25s ease-in-out;
    cursor: pointer;
    font-weight: bold;
    user-select: none;
    font-family: 'Montserrat', 'Helvetica', 'Arial', sans-serif;
    font-size: 16px;
    background-color: #242477;
    padding: 15px 25px;
    display: block;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
}

.preferences-box .tabs .tab {
    display: none;
}

.preferences-box .tabs .tab.active {
    display: block;
    padding: 30px;
    border: 1px solid #CCC;
    border-top-right-radius: 5px;
    border-bottom-right-radius: 5px;
    border-bottom-left-radius: 5px;
}

.preferences-box .button.reset-btn {
    background-color: #FFF;
    color: #242477;
    line-height: 30px;
    height: 40px;
    border: 1px solid #242477;
}

.preferences-box a.socialLogin {
    font-family: 'Montserrat', 'Helvetica', 'Arial', sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 13px;
    line-height: 18px;
    color: #242477;
}

.preferences-box a.socialLogin:hover {
    border-bottom: 1px solid #fc5f00;
}

.preferences-box .hidden {
    display: none;
}

.modal.preferences-box a.close-modal {
    top: 2px;
    right: 2px;
}

.preferences-box .tab-nav li.add-btn button {
    color: #242477;
    background-color: #FFF;
    border: 1px solid #242477;
    line-height: 0;
    border-radius: 100%;
    font-weight: 700;
    font-size: 20px !important;
    width: 40px;
    height: 40px;
    padding: 0 !important;
}

.preferences-box .tab-nav li.add-btn button:hover {
    color: #fc5f00;
    border: 1px solid #fc5f00;
}

.socialLogin,
.socialLogout {
    font-family: 'Montserrat', 'Helvetica', 'Arial', sans-serif;
    font-weight: 700;
    font-style: normal;
    color: #242477;
    font-size: 13px;
    padding: 7px;
    background-color: #FFF;
}

.socialLogin img,
.socialLogout img {
    width: 20px;
    height: 20px;
}

.socialLogin:hover,
.socialLogout:hover {
    background-color: #f3f6f7;
    padding: 7px;
    border-radius: 4px;
}

.preference-account.dropdown {
    position: relative;
    display: inline-block;
}

.preference-account .dropdown-content {
    display: none;
    position: absolute;
    background-color: #f3f6f7;
    min-width: 160px;
    z-index: 1;
    top: 30px;
    right: 0;
}

.preference-account .dropdown-content a {
    padding: 12px 16px;
    text-decoration: none;
    display: block;
    font-family: 'Montserrat', 'Helvetica', 'Arial', sans-serif;
    font-weight: 700;
    font-style: normal;
    color: #242477;
    font-size: 13px;
}

.preference-account .dropdown-content a:hover {
    background-color: #F1F1F1;
    color: #fc5f00;
}

.preference-account.dropdown:hover .dropdown-content {
    display: block;
}

.preference-account.dropdown:hover .dropbtn {
    background-color: #f3f6f7;
}

.preferences-box p {
    font-family: 'Montserrat', 'Helvetica', 'Arial', sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 16px;
    line-height: 32px;
    margin-bottom: 24px;
}

div#all-artists,
div#all-tags {
    overflow-y: scroll;
    height: 600px;
}

#sfba-filterButtons {
    margin-bottom: 20px;
}

#sfba-filterButtons .filterButton {
    background-color: #FFF;
    padding: 8px 15px;
    font-family: 'Montserrat', 'Helvetica', 'Arial', sans-serif;
    border: 2px solid #CCC;
    border-radius: 5px;
    font-size: 16px;
    margin-bottom: 5px;
}

#sfba-filterButtons .filterButton:hover,
#sfba-filterButtons .filterButton.active {
    color: #fc5f00;
    border-color: #fc5f00;
}

form.preferences-form input[type=text] {
    margin-bottom: 0;
}

.dropdown-content .sfba-before-login {
    position: absolute;
    background-color: #ffffffe6;
    width: 100%;
    height: 100%;
}

.dropdown-content .sfba-before-login img {
    width: 30px;
    position: relative;
    top: 30%;
    left: 35%;
}

.sfba-show,
.sfba-show-pref {
    border: 0;
    cursor: pointer;
}

.sfba-close,
.sfba-close-pref {
    position: absolute;
    top: 0;
    right: 0;
    width: 35px;
    height: 30px;
    background: #000;
    color: #fff;
    cursor: pointer;
    border: 0;
}

.sfba-mask,
.sfba-mask-pref {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgb(0 0 0 / 80%);
    z-index: 50;
    visibility: hidden;
    opacity: 0;
    transition: 0.7s;
}

.sfba-modal,
.sfba-modal-pref {
    position: fixed;
    width: 90%;
    max-width: 400px;
    background: #fff;
    padding: 20px;
    top: 25%;
    left: 50%;
    transform: translate(-50%, 0);
}

.sfba-modal-pref {
    max-width: 1300px;
    top: 17%;
}

.sfba-link-mask {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgb(0 0 0 / 80%);
    visibility: hidden;
    opacity: 0;
    z-index: 51;
    transition: 0.7s;
}

.sfba-link-modal {
    position: fixed;
    width: 90%;
    max-width: 400px;
    background: #fff;
    padding: 20px;
    top: 25%;
    left: 50%;
    transform: translate(-50%, 0);
}

.sfba-link-close {
    position: absolute;
    top: 0;
    right: 0;
    width: 35px;
    height: 30px;
    background: #000;
    color: #fff;
    cursor: pointer;
    border: 0;
}

.sfba-active {
    visibility: visible;
    opacity: 1;
}

.sfba-active+.sfba-modal,
.sfba-active+.sfba-modal-pref {
    visibility: visible;
    opacity: 1;
    transform: translateY(0);
}

.sfba-active+.sfba-link-modal {
    visibility: visible;
    opacity: 1;
    transform: translateY(0);
}

#all-preferences {
    width: 90%;
    max-width: 1450px;
}

.tab .form-data {
    display: flex;
    grid-template-columns: 80% 20%;
    gap: 10px;
}

button.button.search-pref-btn {
    line-height: 37px;
    background-color: #242477;
    color: #FFF;
    border: none;
}

button.button.search-pref-btn:hover {
    background-color: #fc5f00;
}

@media only screen and (max-width: 1024px) {
    /* .preferences-list ul {column-count: 3;} */
}

@media only screen and (max-width: 800px) {

    /* .preferences-list ul {
        column-count: 1;
    } */
    .preferences-list li {
        width: 100%;
    }

    .preferences-box .tabs .tab.active,
    .preferences-box .tab-nav li span {
        padding: 15px;
        font-size: 14px;
    }

    #sfba-filterButtons .filterButton {
        width: 23%;
        margin-bottom: 5px;
    }

    .preferences-form {
        width: 100%;
        margin: 0 0 20px 0;
    }

    .preference-account .dropdown-content {
        right: 0;
    }

    div#all-artists,
    div#all-tags {
        height: 550px;
    }
}

@media only screen and (max-width: 600px) {

    div#all-artists,
    div#all-tags {
        height: 475px;
    }

    #all-preferences {
        width: 80%;
    }

    .sfba-modal-pref {
        top: 22%;
    }
}

@keyframes spinner-border {
    to {
        transform: rotate(360deg);
    }
}

#loginSpinner {
    /* display: none; */
    align-items: center;
    display: flex;
    flex-direction: column;
    align-content: center;
    justify-content: space-evenly;
    padding: 40px;
}

.spinner {
    display: inline-block;
    width: 2rem;
    height: 2rem;
    vertical-align: -0.125em;
    color: #da361c;
    border: 0.25em solid currentcolor;
    border-right-color: transparent;
    border-radius: 50%;
    -webkit-animation: .75s linear infinite spinner-border;
    animation: .75s linear infinite spinner-border;
}

.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.popup-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    display: none;
    z-index: 999;
}

.sfba-close,
.sfba-close-pref {
    padding: 0;
    border-radius: 0;
}