:root {
    --header-image: url('bedroom_banner_test.png');
    --body-bg-image: url('images/pink_tile_01.jpg');
    --title-image: url('videomancer.png')
}

@font-face {
    font-family: Nunito;
    src: url('https://sadhost.neocities.org/fonts/Nunito-Regular.ttf');
}
@font-face {
    font-family: Nunito;
    src: url('https://sadhost.neocities.org/fonts/Nunito-Bold.ttf');
    font-weight: bold;
}
@font-face {
    font-family: Nunito;
    src: url('https://sadhost.neocities.org/fonts/Nunito-Italic.ttf');
    font-style: italic;
}
@font-face {
    font-family: Nunito;
    src: url('https://sadhost.neocities.org/fonts/Nunito-BoldItalic.ttf');
    font-style: italic;
    font-weight: bold;
}

/* ================================================
   BASE
   ================================================ */

* { box-sizing: border-box; }

div.spacer {
    font-size: 0;
    height: 30px;
    line-height: 0;
}

body {
    font-family: 'Nunito', sans-serif;
    margin: 0;
    background-color: #1f0610;
    background-image: var(--body-bg-image);
    background-size: 65px;
    color: #fce8ef;
}

/* ================================================
   LAYOUT CONTAINER
   ================================================ */

#container {
    max-width: 900px;
    margin: 0 auto;
}

#container a {
    color: #7AECEF;
    font-weight: bold;
}

/* ================================================
   HEADER
   ================================================ */

#header {
    width: 100%;
    height: 150px;
    background-color: #b02e52;
    background-image: var(--header-image);
    background-size: 100%;
}

#title {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

#title img {
    max-height: 80%;
    max-width: 80%;
}

/* ================================================
   NAVBAR
   ================================================ */

#navbar {
    height: 40px;
    background-color: #30081a;
    width: 100%;
}

#navbar ul {
    display: flex;
    padding: 0;
    margin: 0;
    list-style-type: none;
    justify-content: space-evenly;
}

#navbar li {
    padding-top: 10px;
}

#navbar li a {
    color: #7AECEF;
    font-weight: 800;
    text-decoration: none;
}

#navbar li a:hover {
    color: #4DBABC;
    text-decoration: underline;
}

/* ================================================
   CONTENT AREA
   ================================================ */

#flex { display: flex; }

aside {
    background-color: #4a1228;
    width: 200px;
    padding: 20px;
    font-size: smaller;
}

main {
    background-color: #7a2e3a;
    flex: 1;
    padding: 20px;
    order: 2;
}

#leftSidebar { order: 1; }
#rightSidebar { order: 3; }

/* ================================================
   FOOTER
   ================================================ */

footer {
    background-color: #30081a;
    width: 100%;
    height: 40px;
    padding: 10px;
    text-align: center;
}

/* ================================================
   TYPOGRAPHY
   ================================================ */

h1, h2, h3 {
    color: #7AECEF;
}

h1 { font-size: 25px; }

strong { color: #7AECEF; }

/* ================================================
   COMPONENTS
   ================================================ */

.box {
    background-color: #30081a;
    border: 1px solid #e080c0;
    padding: 10px;
}

#topBar {
    width: 100%;
    height: 30px;
    padding: 10px;
    font-size: smaller;
    background-color: #30081a;
}

.fade-to-black {
    background: linear-gradient(to bottom, transparent, #000000);
    width: 100%;
    height: 150px;
}

.dungeon {
    background: #000000;
    width: 100%;
    height: 500px;
}

/* ================================================
   RESPONSIVE
   ================================================ */

@media only screen and (max-width: 800px) {
    #flex { flex-wrap: wrap; }
    aside { width: 100%; }
    main { order: 1; }
    #leftSidebar { order: 2; }
    #rightSidebar { order: 3; }
    #navbar ul { flex-wrap: wrap; }
}