*,
::before,
::after {
    box-sizing: border-box;
}

html {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, Roboto, "Helvetica Neue", Arial, sans-serif, Apple Color Emoji, "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}

body {
    min-height: 100vh;
    max-width: 1200px;
    margin: 0 auto;
    padding: 10px;
    display: grid;
    grid-template-rows: min-content 1fr min-content;
    grid-template-columns: 15% 85%;
}

a {
    color: currentColor;
}

footer {
    border-top: 2em solid;
    text-align: center;
    grid-column:1/3;
    grid-row:3;
}

header {
    border-bottom: 2em solid;
    grid-column:1/3;
    grid-row:1;
    display: grid;
    grid-template-columns: 15% 85%;
    padding: 10px;
    gap:3vw;
}

header div {
    grid-column:1;
    grid-row:1;
    display: flex;
}

header h1 {
    grid-column:2;
    grid-row:1;
}

header div img {
    margin: 0 auto;
}

aside {
    grid-column:1;
    grid-row:2;
    background-color: steelblue;
    font-weight: bold;
    text-align: center;
    border-right: 2em solid;

}


aside nav p a {
    display: block;
    padding: 1em;
    text-decoration:none;
}

aside nav p a:hover {
    background-color: #232627;
    color: white;
}

code {
    white-space: pre-wrap;
}

main {
    grid-column:2;
    grid-row:2;
    padding: 3vw;
}

main p {
    text-align: justify;
}

.template-homepage main {
    text-align: center;
}

.skip-link {
    position: absolute;
    top: -30px;
}

.skip-link:focus-visible {
    top: 5px;
}

.page-form label {
    display: block;
    margin-top: 10px;
    margin-bottom: 5px;
}

.page-form :is(textarea, input, select) {
    width: 100%;
    max-width: 500px;
    min-height: 40px;
    margin-top: 5px;
    margin-bottom: 10px;
}

.page-form .helptext {
    font-style: italic;
}

.blogcard {
    margin-bottom: 3em;
}

.card {
    display:flex;
    margin-bottom: 3em;
}

.card > a > img {
    margin-right: 3em;
    margin-top: 2em;
}

.template-homepage main {
    width: 80%;
    margin: 0 auto;
    text-align: left;
}


.template-homepage p[data-block-key="30roq"] {
    text-align: center;
    margin-top: 1.5em;
}

.template-homepage p[data-block-key="30roq"] a {
    display: inline-block;
    padding: 0.6em 1.2em;
    margin: 0.3em;
    background-color: steelblue;
    text-decoration: none;
    font-weight: bold;
}

.template-homepage p[data-block-key="30roq"] a:hover {
    background-color: #232627;
    color: white;
}

.template-homepage img.richtext-image {
    display: block;
    margin: 1.5em auto;
    float: none;
    width:80%;
    height: auto;
}




@media only screen and (max-width: 600px) {

    body {
        width: 90%
    }

    header {
        text-align: center;
        border-bottom: 0px;
    }

    header h1 {
        text-shadow: 0 0 10px white, 0 0 10px white, 0 0 10px white;
        grid-column:1/3;

    }

    header div {
        grid-column:1/3;
    }

    aside {
        grid-column:1/3;
        grid-row:2;
        border-right: 0px;
    }

    aside nav p a {
        float: left;
        padding: 0;
    }

    aside nav  {
        width: 100%;
    }

    aside nav p {
        display: flex;
        justify-content: space-evenly;
        width: 100%;
    }


    main {
        grid-column:1/3;
        grid-row:3;
    }

    footer {
        grid-row:4;
    }


    .template-homepage main {
        width: 100%;
    }
    
}
