/* Style sheet for every page */
@font-face {
    font-family: lions;
    src: url(../fonts/itcbenguiatstdboldcn-webfont.woff2) format("woff2"), 
    url(../fonts/itcbenguiatstdboldcn-webfont.woff) format("woff");
}

:root {
    /* COLORS */
    --lions_blue: #00529b;
    --lions_yellow: #EBB700;
    --lions_cool_gray: #D0CFCF;
    --lions_gray: #55565A;
    --mobile_nav_width: 17rem;
}

.mobile_only {
    display: inline
}

.large_screen_only {
    display: none
}

/* Fix duplicate Hugo Shortcode <p> tags */
p:empty {
    display: none !important;
    margin: 0 !important;
}

.prevent_select {
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
  }

body {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    line-height: 1.5;
    font-family: Arial, sans-serif;
    background-color: #e3e3e3;
    margin: 0 auto;
}
body.no_scroll {
    position: fixed;
    width: 100%;
    overflow-y: scroll;
    top: 0;
    left: 0;
}

#dimming_layer {
    pointer-events: none;
    background-color: #050c16;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 8999;
    opacity: 0;
    transition: 400ms;
}
#dimming_layer.active {
    pointer-events: all;
    opacity: 0.4;
}

#width_container {
    max-width: 73.22222rem;
    width: 100%;
    padding: 0 2.5%;
    margin: 0 auto;
}

.btn {
    appearance: button;
    text-decoration: none;
    text-align: center;
    font-weight: bold;
    margin-top: 1rem;
    background-color: var(--lions_blue);
    color: #ffffff;
    padding: 1rem 1.5rem;
    border-radius: 1rem;
    min-width: 8.33333rem;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
    transition: transform 100ms;
}
.btn:hover {
    background-color: #004582;
    color: #e6e6e6;
    transform: translateY(-0.075rem);
}
.btn:active {
    background-color: #005fb5;
    color: #ffffff;
    transform: translateY(0.075rem);
}

header {
    padding: 1.5rem 0;
}

p/*:not(:last-child)*/ {
    margin-bottom: 1rem;
}

#burger_menu {
    position: fixed;
    top: 0rem;
    right: 0rem;
    height: 4.5rem;
    width: 5rem;
    padding: 0.75rem;
    z-index: 9001;
    transition: 400ms;
}
#burger_menu #inner_btn {
    background-color: rgba(150, 150, 150, 0.75);
    cursor: pointer;
    display: flex;
    position: relative;
    flex-direction: column;
    justify-content: space-around;
    align-items: center;
    width: 100%;
    height: 100%;
    border-radius: 0.5rem;
    transition: 400ms;
}
#burger_menu span {
    position: absolute;
    width: 60%;
    height: 0.3rem;
    background-color: white;
    border-radius: 99rem;
}
#burger_menu span:first-child, #burger_menu span:last-child {
    transition: margin-bottom 200ms 200ms ease-in-out, transform 200ms 0ms ease-in-out, background-color 400ms;
}
#burger_menu span:first-child {
    margin-bottom: 1.4rem;
}
#burger_menu span:nth-child(2) {
    transition: opacity 1ms 200ms;
}
#burger_menu span:last-child {
    margin-bottom: -1.4rem;
}
#burger_menu .menu_opened {
    background-color: transparent !important;
}
/* After btn clicked */
#burger_menu .menu_opened span:first-child, #burger_menu .menu_opened span:last-child {
    margin-bottom: 0;
    background-color: var(--lions_yellow);
    transition: margin-bottom 200ms 0ms ease-in-out, transform 200ms 200ms ease-in-out;
}
#burger_menu .menu_opened span:first-child {
    transform: rotate(45deg);
}
#burger_menu .menu_opened span:nth-child(2) {
    opacity: 0;
    transition: opacity 1ms;
}
#burger_menu .menu_opened span:last-child {
    transform: rotate(-45deg);
}

/* Logic for burger menu */
#burger_menu_input {
    display: none;
}
#burger_menu_input:checked + #mobile_nav {
    transform: none;
}

#logo {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-decoration: none;
    font-family: "lions", serif;
    margin-bottom: 1rem;
}
#logo img {
    width: 90%;
    max-width: 25rem;
    min-width: 0;
    height: auto;
    margin-bottom: 1rem;
}
#logo #logo_text {
    max-width: 25rem;
}

#mobile_nav {
    background-color: var(--lions_blue);
    position: fixed;
    z-index: 9000;
    height: fit-content;
    top: 0;
    left: 0;
    transform: translateY(-100%);
    width: 100%;
    transition: cubic-bezier(0.39, 0.575, 0.565, 1) 300ms;
    overflow-y: auto;
}
#mobile_nav.opened {
    /* top: calc(100vw - var(--#mobile_nav_width)); */
    bottom: 50lvh;
}
#mobile_nav ul, #desktop_nav ul {
    list-style: none;
}
#mobile_nav li {
    width: 100%; height: 3.5rem;
}
#mobile_nav .menu_title {
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: "lions", serif;
    font-size: 1.5rem;
    height: 4.5rem;
    color: white;
    border-bottom: 0.125rem solid white;
}
#mobile_nav .menu_object {
    display: flex;
    align-items: center;
    padding-left: 1rem;
    width: 100%; height: 100%;
    text-decoration: none;
    background-color: #eaedf0;
    color: black !important;
    font-size: 1.25rem;
    border-bottom: 0.125rem solid var(--lions_blue);
    cursor: pointer;
}
#mobile_nav .menu_object * {
    pointer-events: none;
    margin-bottom: 0;
}
#mobile_nav .menu_object img {
    margin-right: 1rem;
}
#mobile_nav .submenu {
    height: 0;
    overflow: hidden;
    background-color: #0067c2;
    transition: 200ms ease-in-out;
}
.current_page {
    color: var(--lions_blue) !important;
}
#mobile_nav .menu_child {
    padding-left: 2rem;
}
#mobile_nav .submenu_child {
    background-color: #ffffff;
    padding-left: 3rem;
}
#mobile_nav .menu_indicator {
    transform: rotate(-90deg);
    margin-left: auto;
    margin-right: 1rem;
    transition: transform 300ms ease-in-out;
}
#mobile_nav .menu_indicator_opened {
    transform: rotate(0deg);
}
#mobile_nav input[type="checkbox"] {
    display: none;
}
#mobile_nav input[type="checkbox"]:checked + li {
    height: 100%;
}

.divider {
    background-image: linear-gradient(to right, rgb(0, 0, 0, 0), var(--lions_blue), var(--lions_blue), var(--lions_blue), rgb(0, 0, 0, 0));
    height: 0.125rem;
    width: 95%;
    margin: 0 auto;
}

main {
    margin: 0 auto;
}

.sect_title {
    font-size: 1.5rem;
    text-align: center;
    width: fit-content;
    margin: 0 auto;
}
.sect_title::after {
    display: block;
    content: "";
    height: 0.35rem;
    margin: 1rem auto;
    background-color: var(--lions_yellow);
}
article .sect_title {
    margin-bottom: 2rem;
}

footer {
    margin-top: auto;
    width: 100%;
    padding: 1.5rem 5%;
    background-color: var(--lions_blue);
}
footer #slogan_container {
    display: flex;
    flex-direction: column;
}
.donate_container {
    width: fit-content;
    margin: 1rem auto;
}
footer img {
    width: 40%;
    max-width: 10rem;
    height: auto;
    margin: 0 auto;
    margin-bottom: 1rem;
}
footer p {
    color: white;
    font-family: lions;
    text-align: center;
    font-size: 1.25rem;
}

@media only screen and (min-width: 48rem) {

    html {
        font-size: 18px;
    }

    header {
        margin-top: 1rem;
    }

    #width_container {
        padding: 0 1rem;
    }
    
    #logo {
        max-width: 71rem;
        flex-direction: row;
        justify-content: center;
    }
    #logo img:first-child {
        max-width: 22.22222rem;
        margin: 0;
        margin-right: 2rem;
    }
    #logo #logo_text p {
        font-size: 2rem;
    }
    #logo #logo_text p:first-child {
        font-size: 6rem;
    }
}

@media only screen and (min-width: 80rem) {
    
    .mobile_only {
        display: none;
    }

    .large_screen_only {
        display: inline;
    }

    body.no_scroll {
        position: unset;
        width: unset;
        overflow-y: unset;
        top: unset;
        left: unset;
    }

    header {
        margin-top: 0;
    }

    /* Animation for drop down menus */
    @keyframes dropdown {
        0% {
            visibility: visible;
            opacity: 0;
            transform: translateY(5%);
        }
        100% {
            visibility: visible;
            opacity: 1;
            transform: translateY(0%);
        }
    }

    #desktop_nav {
        margin: 0 auto;
        width: min(89vw, 100%);
        display: block;
    }
    #desktop_nav ul {
        display: flex;
        justify-content: space-around;
    }
    #desktop_nav ul > li {
        position: relative;
        display: inline-block;
        font-size: 1.25rem;
        font-weight: bold;
    }
    #desktop_nav .menu_object {
        display: flex;
        position: relative;
        align-items: center;
        text-decoration: none;
        color: black;
        cursor: pointer;
        margin: 0.5rem 0;
    }
    #desktop_nav .menu_object p {
        margin: 0;
    }
    #desktop_nav .menu_object:hover {
        color: var(--lions_blue);
    }
    #desktop_nav img {
        height: 3rem;
        margin-right: 1rem;
    }
    #desktop_nav .submenu {
        visibility: hidden;
        position: absolute;
        z-index: 2600;
        flex-direction: column;
        background-color: #ffffff;
        top: 3.75rem;
        width: max-content;
        border: 0.125rem solid var(--lions_blue);
        border-radius: 1rem;
        box-shadow: 0 0 40px #00000035;
        opacity: 0%; 
    }
    #desktop_nav .submenu::before {
        content: "";
        position: absolute;
        top: -1rem;
        left: 20%;
        width: 0;
        height: 0;
        border-left: 1rem solid transparent;
        border-right: 1rem solid transparent;
        border-bottom: 1rem solid var(--lions_blue);
    }
    #desktop_nav .submenu a {
        padding: 1rem 2rem;
    }
    #desktop_nav .has_submenu:hover > .submenu,
    #desktop_nav .submenu:hover,
    #desktop_nav .has_submenu:focus-within > .submenu {
        animation: dropdown 100ms ease-in forwards;
    }
}