* {
    box-sizing: border-box;
}

html {
    min-height: 100%;
    /* max-height: 100vh; */
    display: flex;
    flex-direction: column;
}
body {
    margin: 0;
    padding: 0;
    flex-grow: 1;

    display: flex;
    flex-direction: column;
    row-gap: 0px;

    /* background-color: #00538b; */
    background-image: url( '../../images/frontend/bytourdays_bgnd_1920_1080.jpg' );
    background-repeat: no-repeat;
    background-position: 50%;
    background-size: cover;

    cursor: url( '../../images/frontend/bytourdays_cursor_36_28_v2.png' ), auto;

    font-family: 'Roboto';

    /* max-height: 100vh; */
    /* overflow-y: auto; */
}

body header {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 8px;
}
body header img {
    display: block;    
    max-height: 92px;
}

body main {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    /* max-height: 100%; */
    /* overflow-y: auto; */
}
body main #frontend_content {
    width: 100%;
    max-width: 940px;
    margin-left: auto;
    margin-right: auto;

    position: relative;

    /* max-height: 100%; */
    /* overflow-y: auto; */

    display: flex;
    flex-direction: column;
}

body main #frontend_content #frontend_content_loader {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border-radius: 1rem;
    background-color: rgba( 255, 255, 255, 0.5 );
}
body main #frontend_content #frontend_content_loader .loader {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    margin: 0 auto;
    font-size: 8px;
}

body footer {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 8px;
}
body footer img {
    max-width: 100%;
    max-height: 32px;
}

@media only screen and (max-width: 600px) {
    body main #frontend_content { max-width: 95%; margin-left: auto; margin-right: auto; padding: 32px 12px; }
}
