* {
    font-family: 'Open Sans', sans-serif;
    box-sizing: border-box;
}

html {
    height: 100%;
}

body {
    background: #ffffff;
    color:  #2e3b63;
    height: inherit;
    display: flex;
    padding: 0px;
    margin: 0px;
}

.page {
    display: flex;
    flex: auto;
    flex-direction: column;
    min-height: 100%;
    text-align: left;
}

.header {
    display: flex;
    flex-direction: row;
    background-color: #abbfe4;
    flex: none;
    padding: .5em 1em .5em 1em;
}

.header .left {
    order: 1;
    text-align: left;
    margin-top: auto;
}

.header .right {
    order: 2;
    flex-grow: 1;
    text-align: right;
}

.header .right img {
    max-height: 100%;
    height: 130px;
}

.header h1 {
    margin-bottom: 0em;
    font-size: 3em;
}

.header h2 {
    margin-top: 0em;
    margin-bottom: 0em;
    margin-left: 0.1em;
}

.navbar {
    order: 3;
    flex: none;
    text-align: left;
    background-color: #2e3b63;
    color: #abbfe4;
    padding: 0.5em 1.0em 0.5em 1.0em;
}

.navbar form {
    display: inline;
}

table.index {
    height: 100%;
    width: 100%;

    font: inherit;
    font-size: 1.5em;
}

/* Style the navigation bar links */
.navbar a.asLink, button.asLink, input[type=button].asLink, input[type=submit].asLink {
    border: none;
    outline: none;
    color: #abbfe4;
    background-color: #2e3b63!important;
    background: none!important;
    -webkit-appearance: none;
    cursor: pointer;
    display: inline;
    font: inherit;
    margin: 0!important;
    padding: .5em .5em;
    outline-offset: 0;
    text-decoration: underline;
    text-align: center;
    -webkit-border-top-left-radius: inherit;
    -webkit-border-top-right-radius: inherit;
    -webkit-border-bottom-left-radius: inherit;
    -webkit-border-bottom-right-radius: inherit;
}

/* Change color on hover */
.navbar a.asLink:hover, button.asLink:hover, input[type=button].asLink:hover, input[type=submit].asLink:hover {
    border: none;
    outline: none;
    color: #2e3b63;
    background-color: #abbfe4!important;
    -webkit-appearance: none;
    cursor: pointer;
    display: inline;
    font: inherit;
    margin: 0!important;
    padding: .5em .5em;
    outline-offset: 0;
    text-decoration: underline;
    text-align: center;
    -webkit-border-top-left-radius: inherit;
    -webkit-border-top-right-radius: inherit;
    -webkit-border-bottom-left-radius: inherit;
    -webkit-border-bottom-right-radius: inherit;
}

.main {
    order: 4;
    flex: auto;
    overflow-y: auto;
    padding: 0.5em 1.0em 0.5em 1.0em;
}

.main img {
    max-width: 100%;
    width: 300px;
}

.main a#email::after {
    content: "\40hartfuss.family";
}

.footer {
    order: 5;
    display: flex;
    flex-direction: row;
    flex: none;
    background-color: #abbfe4;
    text-align: right;
    padding: 0.4em 1.0em 0.4em 1.0em;
    margin: 0px;
    font-size: 0.8em;
}

.footer .left {
    order: 6;
    text-align: left;
    margin-top: auto;
}

.footer .left img {
    border: 0;
    height: 17px;
}

.footer .right {
    order: 7;
    flex-grow: 1;
    text-align: right;
    vertical-align: bottom;
    padding: 0;
}

/* iphone */
@media only screen
    and (min-device-width : 320px)
    and (max-device-width : 960px)
    and (orientation: portrait) {
        body {
            font-size: 0.9em;
        }
        .header .right img {
            height: 100px;
        }
        .header h1 {
            font-size: 2em;
        }
        .main img {
            width: 200px;
        }
}

/* iphone */
@media only screen
    and (min-device-width : 320px)
    and (max-device-width : 960px)
    and (orientation: landscape) {
        body {
            font-size: 0.5em;
        }
        .header .right img {
            height: 65px;
        }
        .header h1 {
            font-size: 3em;
        }
        .main img {
            width: 100px;
        }
}

/* ipad */
@media only screen 
    and (min-device-width : 768px) 
    and (max-device-width : 1024px) 
    and (orientation : portrait) {
        body {
            font-size: 1em;
        }
        .header .right img {
            height: 100px;
        }
        .header h1 {
            font-size: 3em;
        }
        .main img {
            width: 300px;
        }
}

/* ipad */
@media only screen 
    and (min-device-width : 768px) 
    and (max-device-width : 1024px) 
    and (orientation : landscape) {
        body {
            font-size: 0.9em;
        }
        .header .right img {
            height: 100px;
        }
        .header h1 {
            font-size: 3em;
        }
        .main img {
            width: 250px;
        }
}

