/* This makes the body fill the whole screen and centers everything */
body {
    margin: 0;
    display: flex;
    flex-direction: column; /* Stack main and bottom vertically */
    justify-content: center; /* Center them vertically */
    align-items: center;     /* Center them horizontally */
    min-height: 100vh;      /* Use 100% of the viewport height */
    background-color: #f0f0f0; /* Optional: adds a light background */
}

#main {
    font-family: Impact, Haettenschweiler, 'Arial Narrow Bold', sans-serif;
    color: magenta;
    font-size: 100px;
    text-align: center;
    flex-grow: 1;           /* Pushes the #main to take up available space */
    display: flex;
    align-items: center;    /* Centers the text inside #main vertically */
}

#bottom {
    color: grey;
    font-size: small;
    padding: 20px;          /* No space between 20 and px! */
    text-align: center;
}