:root {
    --navbar-color1: #090f20;
    --navbar-color2: #fff;
    --navbar-color3: #ffc600;
}

#site-navbar {
    background: var(--navbar-color1);
    transition: .2s background-color ease-out;
}

body:not(.animated-color-scheme) #site-navbar {
    transition: none !important;
}

#site-navbar .navbar-main {
    position: relative;
    display: flex;
    height: 5rem;
    background: var(--navbar-color1);
    transition: .2s background-color ease-out;
}

body:not(.animated-color-scheme) .navbar-main {
    transition: none !important;
}

#site-navbar .brand-logo {
    padding: .7rem 0;
    padding-left: 1rem;
    min-width: 8rem;
    display: block;
}

#site-navbar .brand-logo img {
    position: absolute;
    width: 5rem;
    transition: 1s opacity ease-out;
}

body:not(.animated-color-scheme) .brand-logo img {
    transition: none !important;
}

#site-navbar .brand-logo img.black {
    opacity: 0;
}

#site-navbar.alternate-navbar-color-scheme .brand-logo img.white {
    opacity: 0;
}

#site-navbar.alternate-navbar-color-scheme .brand-logo img.black {
    opacity: 1;
}

#site-navbar ul {
    display: flex;
    margin: 0;
    padding: 0;
    list-style: none;
}

#site-navbar .menu-item a {
    display: flex;
    align-items: center;
    height: 100%;
    font: var(--font-condensed);
    font-size: 1.4rem;
    font-weight: 700;
    text-transform: uppercase;
    color: var(--navbar-color2);
}

#site-navbar .menu-item a:hover,
#site-navbar .menu-item a:focus {
    text-decoration: none;
    opacity: .8;
}

#site-navbar .menu-item.current-menu-item a {
    color: var(--navbar-color3);
}

#site-navbar .primary-menu>.menu-item>a {
    padding: 0 1.25rem;
    white-space: nowrap;
}

#site-navbar .menu-item.menu-item-has-children>a::after {
    content: "\f078";
    padding-left: .5rem;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 75%;
}

#site-navbar .sub-menu {
    display: none;
    position: absolute;
    flex-direction: column;
    margin: 0 -5rem;
    padding: 1.5rem 0;
    background: var(--navbar-color1);
    box-shadow: 0 1rem 1rem rgba(0, 0, 0, .15) !important;
    z-index: 1;
}

#site-navbar .menu-item:hover>.sub-menu {
    display: flex;
}

#site-navbar .sub-menu>.menu-item>a {
    padding: 1.2rem 3rem;
    min-width: 24rem;
}

#site-navbar #menu-languages-menu.sub-menu>.menu-item>a {
    min-width: 12rem;
}

#site-navbar .social-menu>.menu-item>a {
    padding: 0 1rem;
    font-size: 2.25rem;
}

#site-navbar .menu-item.action-item>a {
    padding: 0 1.5rem;
    font-size: 2.25rem;
}

#site-navbar .navbar-main .menu-item.esports>a {
    padding: 0rem;
    color: var(--color4);
}

@media (min-width: 992px) {
    #site-navbar .navbar-main .menu-item.esports>a {
        padding: 0 2rem;
    }
}

#site-navbar .navbar-main .menu-item.merch>a {
    margin: 0 1rem;
    white-space: nowrap;
}

#site-navbar .separator {
    margin: 0 1rem;
    align-self: center;
    width: 1px;
    min-width: 1px;
    height: 60%;
    background: var(--navbar-color2);
    opacity: .75;
}

#site-navbar .lang-menu .menu-item .sub-menu {
    display: flex;
    opacity: 0;
    transition: .2s opacity ease-out;
    pointer-events: none;
}

#site-navbar .lang-menu.show .menu-item .sub-menu {
    opacity: 1;
    pointer-events: all;
}

#site-navbar .lang-menu>.menu-item>a {
    padding: 0 1rem;
}

#site-navbar .lang-menu>.menu-item>a::before {
    content: "\f0ac";
    padding-right: .3em;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 2.2rem;
}

#site-navbar .switcher {
    margin: 0 1rem;
    width: 5.1rem;
    min-width: 5.1rem;
}

#site-navbar .switcher label {
    margin-top: .9rem;
    cursor: pointer;
}

#site-navbar .switcher label::before {
    width: 5.1rem;
    height: 2.7rem;
    border: .2rem solid var(--navbar-color2);
    border-radius: 1.5rem;
    background: transparent;
}

#site-navbar .switcher input:focus~label::before {
    box-shadow: none;
}

body:not(.animated-color-scheme) .switcher label::before {
    transition: none !important;
}

#site-navbar .switcher label::after {
    width: 2.1rem;
    height: 2.1rem;
    left: -1.9rem;
    top: .6rem;
    border-radius: 50%;
    background: var(--navbar-color2);
}

#site-navbar .switcher input:checked~label::after {
    transform: translateX(2.4rem);
}

body:not(.animated-color-scheme) .switcher label::after {
    transition: none !important;
}

#site-navbar .search-bar {
    position: absolute;
    left: 0;
    right: 0;
    top: 100%;
    z-index: 1;
    display: flex;
    justify-content: flex-end;
    opacity: 0;
    transition: .2s opacity ease-out;
    pointer-events: none;
}

#site-navbar .search-bar.show {
    opacity: 1;
}

#site-navbar .search-bar.show form {
    pointer-events: all;
}

#site-navbar .search-bar form {
    display: flex;
    flex: 1;
    padding: 1em;
    height: 4.25em;
    max-width: 25em;
    background-color: var(--navbar-color1);
    transition: .2s background-color ease-out, .2s box-shadow ease-out;
}

body:not(.animated-color-scheme) .search-bar form {
    transition: none !important;
}

#site-navbar .search-bar form input {
    outline: none;
    -webkit-appearance: none;
}

#site-navbar .search-bar form input[type=text] {
    padding: 0 .8em;
    width: 100%;
    border: none;
    border-bottom: 1px solid var(--navbar-color2);
    border-radius: 0;
    color: var(--navbar-color2);
    background: transparent;
}

#site-navbar .search-bar form input[type=submit] {
    padding: 0 1em;
    font-weight: 700;
    text-transform: uppercase;
    color: var(--navbar-color1);
    background-color: var(--navbar-color3);
    border: 1px solid var(--navbar-color3);
    border-radius: 0;
    cursor: pointer;
}

#site-navbar .search-bar form input[type=submit]:hover {
    opacity: .8;
}

#site-navbar .search-bar.show form {
    box-shadow: 0 1rem 1rem rgba(0, 0, 0, .15);
}

#site-navbar .rollover-bar {
    position: absolute;
    left: 0;
    right: 0;
    top: 100%;
    z-index: 1;
    display: flex;
    justify-content: flex-end;
    opacity: 0;
    transition: .2s opacity ease-out;
    pointer-events: none;
}

#site-navbar .rollover-bar.show {
    opacity: 1;
}

#site-navbar .rollover-bar.show .rollover-wrap {
    pointer-events: all;
}

#site-navbar .rollover-bar .rollover-wrap {
    padding: 4rem 5rem;
    width: 40rem;
    display: flex;
    flex-direction: column;
    color: var(--navbar-color2);
    background-color: var(--navbar-color1);
    transition: .2s background-color ease-out, .2s box-shadow ease-out;
}

#site-navbar .rollover-bar.show .rollover-wrap {
    box-shadow: 0 1rem 1rem rgba(0, 0, 0, .15);
}

#site-navbar .rollover-bar .social-links {
    margin-top: 4rem;
}

#site-navbar .rollover-bar .social-links li {
    margin-right: 3rem;
}

#site-navbar .rollover-bar .social-links a {
    font-size: 150%;
}

#site-navbar .rollover-bar .footer-links {
    margin-top: 4rem;
}

#site-navbar .rollover-bar .footer-links a {
    font: var(--font-condensed);
    font-size: 1.2rem;
    text-transform: uppercase;
    color: #fff;
}

#site-navbar .rollover-bar .footer-links a:hover {
    text-decoration: none;
    opacity: .8;
}

#site-navbar .rollover-bar .footer-links a:not(:first-child) {
    margin-left: 1rem;
    padding-left: 1rem;
    border-left: 1px solid #999;
}

#site-navbar .fantasy .fantasy {
    font: var(--font-condensed);
    font-size: 1.4rem;
    font-weight: 700;
    padding-left: 0.3rem;
}

#site-navbar .fantasy .highlight-fantasy {
    color: #ffc600;
    font: var(--font-condensed);
    font-size: 1.4rem;
    font-weight: 700;
    font-style: italic;
}

#site-navbar .login {
    content: "\f078";
    padding-left: .5rem;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 17px;
}

@media (min-width: 1200px) {
    #site-navbar .primary-menu>.menu-item>a {
        padding-left: 2rem;
        padding-right: 2rem;
    }


}

@media (min-width: 1350px) {
    #site-navbar .navbar-container {
        max-width: 135rem;
    }
}

/* Mobile navbar */
/* Desktop-to-mobile breakpoint transition */

@media (max-width: 575px) {
    #site-navbar .search-toggle {
        display: none;
    }

    #site-navbar .switcher {
        display: none;
    }
}

@media (max-width: 991px) {
    #site-navbar .brand-logo {
        padding-left: 0;
        min-width: 6rem;
    }

    #site-navbar .primary-menu,
    #site-navbar .separator,
    #site-navbar .lang-menu>.menu-item.menu-item-has-children>a::after,
    #site-navbar .menu-item.rollover-toggle,
    #site-navbar .rollover-bar {
        display: none;
    }

    #site-navbar .menu-item.mobile-open>a {
        padding-right: 0;
    }
}

@media (min-width: 992px) {
    #site-navbar .menu-item.mobile-open {
        display: none;
    }
}

/* Mobile popup */

html.mobile-popup-open,
html.mobile-popup-open body {
    position: fixed;
    width: 100%;
}

html.mobile-popup-open #site-navbar .mobile-popup {
    opacity: 1;
    pointer-events: all;
}

#site-navbar .mobile-popup {
    position: fixed;
    z-index: 2020;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    flex-direction: column;
    color: var(--navbar-color2);
    background: var(--navbar-color1);
    opacity: 0;
    pointer-events: none;
    transition: .2s opacity ease-out;
}

#site-navbar .mobile-popup .popup-header {
    position: relative;
    display: flex;
    height: 6rem;
    background: var(--navbar-color1);
}

#site-navbar .mobile-popup .popup-header .menu-item.mobile-close>a {
    padding: .6rem 1rem;
    height: auto;
    border: 1px solid var(--navbar-color3);
}

#site-navbar .mobile-popup .popup-body {
    position: relative;
    flex: 1;
    overflow: hidden;
}

#site-navbar .mobile-popup .popup-body>.screen {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 100%;
    padding: 1.5rem;
    transition: .2s left ease-out;
}

#site-navbar .mobile-popup .popup-body>.screen.right {
    left: 100%;
}

#site-navbar .mobile-popup .popup-body.show-right-screen>.screen.middle {
    left: -100%;
}

#site-navbar .mobile-popup .popup-body.show-right-screen>.screen.right {
    left: 0;
}

#site-navbar .mobile-popup .popup-search-bar form {
    position: relative;
    display: flex;
    align-items: center;
    height: 1.75em;
    width: 100%;
    background-color: var(--navbar-color1);
    box-shadow: 0 1.5rem 2rem var(--navbar-color1);
}

#site-navbar .mobile-popup .popup-search-bar form input {
    outline: none;
    -webkit-appearance: none;
}

#site-navbar .mobile-popup .popup-search-bar form input[type=text] {
    width: 100%;
    border: none;
    color: var(--navbar-color2);
    background: transparent;
}

#site-navbar .mobile-popup .popup-search-bar .underline {
    height: 1px;
    background: var(--navbar-color2);
    opacity: .5;
}

#site-navbar .mobile-popup .popup-primary-menu-wrap {
    flex: 1;
    padding: 1.5rem 0;
    overflow: hidden auto;
}

#site-navbar .mobile-popup .popup-primary-menu {
    flex-direction: column;
}

#site-navbar .mobile-popup .popup-primary-menu .menu-item>a {
    padding: 1.25rem 0;
    font-size: 2rem;
}

#site-navbar .mobile-popup .popup-primary-menu .menu-item.menu-item-has-children>a::after {
    padding-left: 1rem;
}

#site-navbar .mobile-popup .popup-primary-menu .menu-item>.sub-menu {
    position: static;
    display: flex;
    margin: 0;
    padding: 0;
    padding-left: 2rem;
    box-shadow: none !important;
}

#site-navbar .mobile-popup .popup-primary-menu-wrap-suffix {
    position: relative;
    pointer-events: none;
}

#site-navbar .mobile-popup .popup-primary-menu-wrap-suffix .arrow {
    position: absolute;
    right: -.1rem;
    top: -4rem;
}

#site-navbar .mobile-popup .popup-signup-bar {
    position: relative;
    font-size: 1.4rem;
    font-weight: bold;
    text-transform: uppercase;
    box-shadow: 0 -1.5rem 2rem var(--navbar-color1);
}

#site-navbar .mobile-popup .popup-signup-bar .text {
    padding: 1rem 0;
}

#site-navbar .mobile-popup .popup-signup-bar .link {
    display: block;
    padding-right: 2rem;
    font-size: 2rem;
    line-height: 2rem;
    color: var(--navbar-color3);
}

#site-navbar .mobile-popup .popup-signup-bar .link:hover {
    text-decoration: none;
    opacity: .8;
}

#site-navbar .mobile-popup .popup-signup-bar .link::after {
    content: "\f054";
    position: absolute;
    margin-left: 1rem;
    font-family: "Font Awesome 5 Free";
    font-size: 70%;
    line-height: inherit;
}

#site-navbar .mobile-popup .popup-footer {
    padding: 1.5rem;
}

#site-navbar .mobile-popup .popup-social-menu,
#site-navbar .mobile-popup .popup-social-menu>.menu-item {
    flex: 1;
}

#site-navbar .mobile-popup .popup-social-menu>.menu-item>a,
#site-navbar .mobile-popup .popup-footer .menu-item.action-item>a {
    padding: 0;
    font-size: 2.8rem;
}

#site-navbar .mobile-popup .footer-links {
    display: flex;
    padding-top: 3rem;
}

#site-navbar .mobile-popup .footer-links a {
    font-size: 1.2rem;
    text-transform: uppercase;
    color: var(--navbar-color2);
}

#site-navbar .mobile-popup .footer-links a:hover,
#site-navbar .mobile-popup .footer-links a:focus {
    text-decoration: none;
    opacity: .8;
}

#site-navbar .mobile-popup .footer-links a:not(:last-child) {
    padding-right: 1rem;
}

#site-navbar .mobile-popup .footer-links a:not(:first-child)::before {
    content: "|";
    padding-right: 1rem;
    opacity: .6;
}

#site-navbar .mobile-popup .signup-close {
    display: block;
    padding-left: 2rem;
    font-size: 2rem;
    font-weight: bold;
    line-height: 3rem;
    text-transform: uppercase;
    color: var(--navbar-color2);
}

#site-navbar .mobile-popup .signup-close:hover,
#site-navbar .mobile-popup .signup-close:focus {
    text-decoration: none;
    opacity: .8;
}

#site-navbar .mobile-popup .signup-close::before {
    content: "\f053";
    position: absolute;
    margin-left: -2rem;
    font-family: "Font Awesome 5 Free";
    font-size: 70%;
    line-height: inherit;
}

#site-navbar .mobile-popup .join-our-mailing-list {
    padding: 3rem 0;
}

@media (orientation: landscape) {
    #site-navbar .mobile-popup .popup-signup-bar {
        display: flex;
        align-items: center;
        justify-content: space-between;
    }

    #site-navbar .mobile-popup .popup-footer {
        padding-top: 0;
        display: flex;
        align-items: center;
        justify-content: space-between;
    }

    #site-navbar .mobile-popup .popup-footer>* {
        flex: 1;
    }

    #site-navbar .mobile-popup .footer-links {
        padding: 0;
        justify-content: flex-end;
    }

    #site-navbar .mobile-popup .join-our-mailing-list {
        padding: 1.5rem 0;
    }

    #site-navbar .mobile-popup .join-our-mailing-list .text {
        margin-top: 0;
    }

    #site-navbar .mobile-popup .join-our-mailing-list form input {
        margin-top: 2rem;
    }
}
