:root {
    --slategray: #253a5e;
    --lightgray: #818AA3;
    --darkgray: #313543;
    --darkergray: #1f222f;
    --abyss: #101116;
    --teagreen: #75a743;
    --teagreendark: #436a1d;
    --lemonchiffon: #de9e41;
    --lemonchiffondark: #b17b2a;
    --paledogwood: #d6dbe5;
    --darknessred: #a53030;
    --darknessredder: #841515;
  }

* {
    margin: 0;
    padding: 0;
}

  
body {
    display: flex;
    flex-direction: column;
    font-family: "Josefin Sans", sans-serif;
    background: var(--darkgray);
}

header {
    padding: 10px 0 0 0;
    z-index: 1000;
    position: sticky;
    top: 0;
    background: var(--darkgray);
}

nav {
    display: flex;
    justify-content: center;
    align-items: center;
}

.nav-company-name {
    display: flex;
    margin: 10px;
    align-items: center;
}

.nav-company-name h1 {
    -webkit-user-select: none;
    user-select: none;
    font-size: 22px;
    color: #ffd700;
}

.nav-company-name a {
    list-style: none;
    text-decoration: none;
    color: gold;
}

.nav-menu {
    margin: 10px 20px 10px 10px;
    display: flex;
}

.nav-center {
    display: flex;
    justify-content: center;
    align-items: center;
}

.nav-menu ul {
    display: flex;
    flex-direction: row;
    gap: 10px;
}

.nav-menu li {
    list-style: none;
}

.nav-menu a {
    text-decoration: none;
    font-size: 18px;
    color: var(--paledogwood);
}

.nav-menu a:hover {
    color: gold;
}

#alert {
    width: 100%;
    height: 30px;
    background: red;
    color: white;
    display: flex;
    justify-content: center;
    align-items: center;

    z-index: 1000;
    position: sticky;
    top: 0;

    opacity: 1;
    transition: opacity 0.2s ease-out;
}

#alert.hidden {
    opacity: 0;
}

#alert p {
    padding: 10px 0;
}

#demo {
    background: var(--abyss);
    display: flex;
    flex-direction: column;
    padding: 20px;
}

.demo-title {
    padding: 40px 0;
    text-align: center;

    color: white;
    font-size: 40px;
    -webkit-user-select: none;
    user-select: none;

    opacity: 0;
    animation: reveal 1s ease .5s forwards;
}

#info {
    width: 80%;
    padding: 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    opacity: 0;
    -webkit-user-select: none;
    user-select: none;
    animation: reveal 1s ease 1.5s forwards;
}

@keyframes reveal {
    0% {
      opacity: 0;
      /* transform: scale(.8); */
    }
    100% {
      opacity: 1;
      /* transform: scale(1); */
    }
}

#info h1 {
    padding: 10px;
    font-size: 30px;
    color: white;
}

#info p {
    max-width: 700px;
    padding: 10px;
    font-size: 20px;
    color: white;
}

.brand-color {
    color: gold;
}

.cat-ambience {
    color: var(--teagreen);
}

.cat-music {
    color: var(--slategray);
}

.cat-action {
    color: var(--lemonchiffon);
}

.cat-enemy {
    color: var(--darknessred);
}

#packs {
    padding: 20px 0 10px 0;
    background: var(--darkergray);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

#packs h1 {
    margin-top: 20px;
    margin-bottom: 20px;
    color: white;
}

#packs h2 {
    color: white;
    padding-bottom: 5px;
    border-bottom: 2px solid var(--paledogwood);
}

#packs ul {
    padding-top: 5px;
    color: white;
    text-align: left;
}

#packs li {
    padding: 3px 0;
    width: 150px;
    font-size: 18px;
    list-style: none;
    text-align: center;
}

#packs a {
    list-style: none;
    text-decoration: none;
    color: gold;
}

#packs p {
    padding: 5px;
    font-size: 18px;
    color: white;
}

.pack-type {
    padding: 10px;
    display: flex;
    flex-direction: row;
    gap: 1rem;
}

.pack-ambience,
.pack-music,
.pack-action,
.pack-enemy {
    flex: 1;
    padding: 20px 10px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    border-radius: 10px;
}

.pack-ambience {
    background: linear-gradient(to right bottom, var(--teagreen), var(--teagreendark));
}
.pack-music {
    background: linear-gradient(to right bottom, var(--slategray), var(--darkgray));
}
.pack-action {
    background: linear-gradient(to right bottom, var(--lemonchiffon), var(--lemonchiffondark));
}
.pack-enemy {
    background: linear-gradient(to right bottom, var(--darknessred), var(--darknessredder));
}


#about {
    background: var(--abyss);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    padding: 20px;
}

#about h1 {
    padding: 10px;
    font-size: 30px;
    color: white;
}

#about p {
    max-width: 700px;
    padding: 10px;
    font-size: 20px;
    color: white;
}

#contact {
    background: var(--darkergray);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    padding: 20px;
}

#contact h1 {
    padding: 10px;
    font-size: 30px;
    color: white;
}

#contact p {
    max-width: 700px;
    padding: 10px;
    font-size: 20px;
    color: white;
}

#contact a {
    list-style: none;
    text-decoration: none;
}

.discord {
    color: #5865F2;
}

.github {
    color: white;
    cursor: pointer;
}

.reddit {
    color: #FF4500;
}

.twitter {
    color: #1D9BF0;
}

.instagram {
    color: #b44cf5;
}

.patreon,a{
    cursor: pointer;
    list-style: none;
    text-decoration: none;
    color: gold;
}


@media (width <= 450px){

    #alert {
        width: 100%;
        height: 30px;
        background: red;
        color: white;
        display: flex;
        justify-content: center;
        align-items: center;
    
        z-index: 1000;
        position: sticky;
        top: 0;
    
        opacity: 1;
        transition: opacity 0.2s ease-out;
    }
    
    #alert.hidden {
        opacity: 0;
    }
    
    #alert p {
        padding: 10px 0;
        font-size: 16px;
    }

    #demo {
        background: var(--abyss);
        display: flex;
        flex-direction: column;
        padding: 0 2px 0 2px;
    }
    
    .demo-title {
        padding: 40px 0 20px 0;
        text-align: center;
    
        color: white;
        font-size: 40px;
        -webkit-user-select: none;
        user-select: none;
    
        opacity: 0;
        animation: reveal 1s ease .5s forwards;
    }
    
    #info {
        width: 80%;
        padding: 20px;
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
        opacity: 0;
        -webkit-user-select: none;
        user-select: none;
        animation: reveal 1s ease 1.5s forwards;
    }
    
    @keyframes reveal {
        0% {
          opacity: 0;
          /* transform: scale(.8); */
        }
        100% {
          opacity: 1;
          /* transform: scale(1); */
        }
    }
    
    #info h1 {
        padding: 10px;
        font-size: 30px;
        color: white;
    }
    
    #info p {
        max-width: 700px;
        padding: 10px;
        font-size: 20px;
        color: white;
    }
    
    .brand-color {
        color: gold;
    }
    
    .cat-ambience {
        color: var(--teagreen);
    }
    
    .cat-music {
        color: var(--slategray);
    }
    
    .cat-action {
        color: var(--lemonchiffon);
    }
    
    .cat-enemy {
        color: var(--darknessred);
    }

    #packs {
        padding: 20px 0 10px 0;
        background: var(--darkergray);
        display: flex;
        flex-direction: center;
    }
    
    #packs h1 {
        margin-top: 10px;
        margin-bottom: 10px;
        color: white;
        font-size: 22px;
        text-align: center;
    }
    
    #packs h2 {
        color: white;
        padding-bottom: 5px;
        border-bottom: 2px solid var(--paledogwood);
    }
    
    #packs ul {
        padding-top: 5px;
        color: white;
        text-align: left;
    }
    
    #packs li {
        padding: 3px 0;
        width: 150px;
        font-size: 18px;
        list-style: none;
        text-align: center;
    }
    
    #packs a {
        list-style: none;
        text-decoration: none;
        color: gold;
    }
    
    #packs p {
        padding: 5px;
        font-size: 18px;
        color: white;
    }
    
    .pack-type {
        padding: 10px;
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        gap: 1rem;
    }
}