*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html{
    background-color: rgb(54, 54, 54);
    width: 100%;
    min-height: 100%;
    margin: 0;
    padding: 0;
    scroll-behavior: smooth;
}

body{
    background-image: url('/Images/Background.png');
    background-repeat: repeat;
    background-size: auto;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 90px 0 0 0;
    background-color: rgb(78, 78, 78);
    font-family:'Trebuchet MS', 'Lucida Sans Unicode', 'Lucida Grande', 'Lucida Sans', Arial, sans-serif;
}

.main{
    display: flex;
    width: 100%;
    min-height: 80vh;
    flex-direction: column;
}

.page{
    display: flex;
    flex-direction: column;
    background-color: rgb(219, 219, 219);
    border-radius: 4px;
    box-shadow: 2px 2px 5px rgb(31, 31, 31);
    max-width: 1200px;
    width: 95%;
    font-size: larger;
    font: 'Trebuchet MS';
    overflow-x: auto;
    margin: 5px auto 5px auto;
}

.page-header{
    display: flex;
    padding: 1%;
    font-size: 80px;
    gap: 10px;
    border-bottom: 1px solid darkgray;
    margin: 0 0 20px 0;
}

.intro-header{
    font-size: 80px;
}

.page-body{
    font-size: larger;
    margin: 0px 20px 20px 20px;
}

@media only screen and (max-width: 800px) {
    html, body {
        margin: 0;
        padding: 0;
        width: 100%;
    }

    body {
        min-height: 100dvh;
        background-image: url('/Images/Background.png');
        background-repeat: repeat;
        background-size: auto;
        background-color: rgb(78, 78, 78);
        padding: 90px 0 0 0;
        font-family: 'Trebuchet MS', sans-serif;
    }
  
    .page {
        width: 90%; 
        max-width: 100%;
        margin: 5px auto 5px auto;
    }

    .page-header{
        display: flex;
        justify-content: center;
        padding: 1%;
        font-size: 40px;
        gap: 10px;
        border-bottom: 1px solid darkgray;
        margin: 0 0 20px 0;
    }

    .page-body {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        text-align: center;
        margin: 0 10px 20px 10px;
        font-size: 16px;
    }

  .intro-header{
        display: flex;
        text-align: center;
        font-size: 40px;
    }
}

@supports (-webkit-touch-callout: none) {
    html {
        height: -webkit-fill-available;
    }
    body {
        min-height: -webkit-fill-available;
    }
}