body {
    font-size: 1.25em;
    font-weight: 400;
    color: #555;
    background: mintcream;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
    width: 80%;
    margin-left: auto;
    margin-right: auto;
}

h1, h2, h3, h4, h5, h6, strong {
    font-weight: 600;
    letter-spacing: 0.02em;
}

header {
    margin-top: 0px;
    position: sticky;
    position: -webkit-sticky;
    top: 0;
    height: 4em;
    background: mintcream;
    z-index: 2;
    box-shadow: 0px 5px 7px -8px rgba(124, 109, 124, 0.87);
    text-align: center;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}

header h1 {
    font-size: 100%;
    margin-bottom: 0.1em;
}

header h2 {
    font-size: 100%;
    margin-top: 0.1em;
}

nav {
    position: sticky;
    position: -webkit-sticky;
    bottom: 0;
    z-index: 2;
    background: mintcream;
    height: 4em;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}

nav li {
    display: inline;
    list-style-type: none;
    padding-right: 25px;
    margin-left: -15px;
    font-size: 60%; 
}

section {
    width: 95%;
}

section img {
    width: 100%;
}

footer {
    display: none;
}

a {
    text-decoration: none;
    color: steelblue;
}

p {
    hyphens: auto;
}

a:hover {
    color: blue;
}

a:active {
    color: darkred;
}

.motto {
	font-size: 125%;
    font-style: italic;
    text-align: center;
}

section p:has(img) {
    display: flex;
    justify-content: center;
    max-width: 100%;
}

/* Desktop */

@supports (display: grid) {
    @media (min-width: 1024px) {    
        body {
            width: 48em;
        }

        div.container {
            display: grid;
            grid-template-columns: 160px 1fr;
        }

        header {
            grid-row: 1;
            grid-column: 2;
            font-size: 100%;
            height: 80px;
            width: 100%;
            position: inherit;
            text-align: unset;
        }
        nav {
            grid-row: 2;
            position: inherit;
            min-width: unset;
            margin-left: unset;
            margin-right: 1em;
            height: unset;
        }
        nav ul {
            text-align: right;
        }
        nav li {
            display: block;
            padding-right: 0.5em;
            margin-right: 0.5em;
            margin-left: unset;
            font-size: 75%;
            line-height: 150%;
            text-align: left;
        }
        section {
            grid-row: 2;
            grid-column: 2;
            margin-top: unset;
            margin-bottom: unset;
            width: unset;
        }
        footer {
            grid-row: 3;
            grid-column: 2;
            display: block;
            font-size: 75%;
        }
        .motto {
            font-size: 150%;
            text-align: unset;
        }
    }
}