@charset "UTF-8";

html {
    box-sizing: border-box;
}
* {
    box-sizing: inherit;
}

#container {
    display: grid;
    grid-template-rows: auto auto auto;
    grid-template-columns: 4fr 2fr;
    grid-template-areas:
        'banner banner'
        'main   side'
        'section section'
        'footer footer';
    column-gap: 1vw;
}

blockquote {
    margin: 0; /* Removes all margins */
    padding: 0; /* Removes padding */
}

#column1 {
    padding: 1vw;
    grid-row-start: 2;
}

#column2 {
    padding: 1vw;
    grid-row-start: 2;
    grid-column-start: 2;
}

section {
    grid-area: section;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
}

header {
    grid-area: banner;
}
main {
    grid-area: main;
}
#side {
    grid-area: side;
    padding-right: 1vw;
}
footer {
    grid-area: footer;
}

body {
    max-width: 1140px;
    font-family: sans-serif;
    font-size: 1.3vw;
    background-color: #f6f3ed;
    margin: auto;
    text-align: left;
}

a:link,
a:visited {
    color: #dc6903;
}

a:focus,
a:hover,
a:active {
    color: #f9ab33;
}

a {
    text-decoration: none;
}

header {
    height: auto;
    background-image: url('images/header.jpg');
    background-repeat: no-repeat;
    background-size: contain;
    background-position: top;
    align-items: center;
    color: #fff;
    background-color: #f6f3ed;
}

header p {
    font-size: 2vw;
}
header h1 {
    color: white;
    text-align: center;
    margin-top: 10.6%;
    font-size: 2vw;
    text-transform: uppercase;
    letter-spacing: 0.6vw;
}

header h2 {
    font-size: 3vw;
    color: #783f27;
    margin: 0;
    text-align: center;
}

nav,
footer {
    font-family: sans-serif;
    background-color: #783f27;
}

nav ul li a {
    display: block;
    padding: 0.5vw 2vw;
    margin: 0;
}

nav ul li a:link,
nav ul li a:visited {
    color: #783f27;
    pointer-events: none;
}
nav ul li a:focus,
nav ul li a:hover,
nav ul li a:active {
    color: #783f27;
}
nav ul li {
    font-size: 1vw;
    text-transform: uppercase;
    letter-spacing: 0.6vw;
}
nav ul {
    margin: 0;
    padding: 0;
    list-style-type: none;
    display: flex;
    justify-content: right;
    background-color: #783f27;
}

main {
    font-family: sans-serif;
    color: black;
    padding: 1vw;
    margin-top: 0;
}

main p {
    color: black;
    font-size: 1.3vw;
}

.center-container {
    text-align: center;
}

.center-container p {
    margin: 0;
    display: inline-block;
    text-align: left;
}

h3 {
    text-transform: uppercase;
    letter-spacing: 0.2em;
    color: #7a0002;
    border-top: 1px solid;
    border-left: 3px solid;
    padding-left: 1em;
    margin-top: 2.5em;
}
p.more {
    font-family: verdana, sans-serif;
    text-transform: uppercase;
    font-size: 1.2vw;
    clear: left;
    color: #dc6903;
}
p.graphtitle {
    margin: 0;
    text-align: center;
}
#side {
    background-color: #f6f3ed;
    margin-left: 0;
    margin-top: 2vw;
}

#side img {
    width: 100%;
    height: auto;
}

footer {
    background-color: #f6f3ed;
    color: black;
    text-align: center;
    font-size: 1.1vw;
}

footer p {
    color: black;
    margin-top: 0;
    padding-bottom: 2vw;
}

h2 {
    font-family: sans-serif;
}

p.mailto {
    font-size: 1.6vw;
    text-align: center;
}

a[href^='mailto:'] {
    color: #dc6903;
    text-decoration: underline;
}

a[href^='mailto:']:hover {
    color: #dc6903;
}
th,
td {
    padding-right: 15px;
}
/* Media query for small screens */
@media (max-width: 600px) {
    #container {
        grid-template-columns: 1fr;
        grid-template-areas:
            'banner banner'
            'main   main'
            'side   side'
            'section section'
            'footer footer';
    }
    header h2 {
        font-size: 4vw;
    }
    #side img {
        width: 66%;
        height: auto;
        display: block;
        margin-left: auto;
        margin-right: auto;
    }
    section {
        grid-template-columns: 1fr;
        display: block;
    }
    body {
        font-size: 3.7vw;
    }
    main p {
        font-size: 3.7vw;
    }
    p.more {
        font-size: 3vw;
    }
    footer {
        font-size: 2.5vw;
    }
    th,
    td {
        padding-right: 10px;
    }
    p.mailto {
        font-size: 3.7vw;
    }
    .center-container p {
        font-size: 2.4vw;
    }
    blockquote {
        font-size: 2.4vw;
    }
}
