.montserrat-title {
    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-weight: 800;
    font-style: normal;
}

.open-sans-text {
    font-family: "Open Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 100;
    font-style: normal;
    font-variation-settings: "wdth" 100;
}

.open-sans-bold {
    font-family: "Open Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 600;
    font-style: normal;
    font-variation-settings: "wdth" 100;
}

.open-sans-black {
    font-family: "Open Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 800;
    font-style: normal;
    font-variation-settings: "wdth" 100;
}

.container {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}


h1 {
    font-size: 4em;
}

h2 {
    font-size: 2.5em;
}

h3 {
    font-size: 2em;
}

h4 {
    font-size: 1.5em;
}

strong {
    font-weight:800;
}

body {
    font-family: "Open Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 100;
    font-style: normal;
    font-variation-settings: "wdth" 100;
    backgound-color: #62a9dd;
}


.title {
    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-weight: 800;
    font-style: normal;
    font-size: 1.8em;
}

.blue-bg {
    background-color: #62a9dd;
}

.yellow-bg {
    background-color: #f5ce45;
}

.green-bg {
    background-color: #5ab150;
}

.purple-bg {
    background-color: #a4286e;
}

.white-bg {
    background-color: #fff;
}

.white-txt {
    color: #fff;
}

.deeppurple-txt {
    color: #402b86;
}

.cream-txt {
    color: #f5e6d1;
}

.asphalt-txt {
    color: #05000D;
}

.audired-txt {
    color: #A61B26;
}

.header {
    display: grid;
    grid-template-columns: 1fr;
    gap: 3em;
}

    .header div.buttons {
        display: grid;
        grid-template-columns: 1fr;
        align-items: center;
        gap: 1em;
    }

@media (min-width: 900px) {
    .header {
        display: grid;
        grid-template-columns: 1fr;
        gap: 3em;
    }

        .header div.buttons {
            display: grid;
            grid-template-columns: 1fr;
            align-items: center;
            align-content: center;
            gap: 1em;
        }

            .header div.buttons .linkbutton:first-child {
                align-self: end;
            }

            .header div.buttons .linkbutton:last-child {
                align-self: start;
            }
}


.intro {
    width: 100%;
    display: grid;
    padding-top: 3em;
    padding-bottom: 3em;
}

    .intro .introtext {
        padding-top: 3em;
        width: 80%;
    }


@media (min-width: 900px) {
    .intro {
        width: 900px;
        margin: auto;
        display: grid;
        padding-top: 3em;
        padding-bottom: 3em;
    }

        .intro .introtext {
            padding-top: 3em;
            width: 80%;
        }
}

article {
    display: grid;
    grid-template-areas: "image"
        "title"
        "content"
        "linkbutton";
    grid-template-columns: 1fr;
    row-gap: 2em;
    column-gap: 2em;
    padding-top: 3em;
    padding-bottom: 3em;
}

@media (min-width: 900px) {
    article {
        display: grid;
        grid-template-areas: "title image"
            "content image"
            "linkbutton image";
        grid-template-columns: 1fr 290px;
        row-gap: 2em;
        column-gap: 2em;
        padding-top: 3em;
        padding-bottom: 3em;
    }

        article.leftimage {
            grid-template-areas: "image title"
                "image content"
                "image linkbutton";
            grid-template-columns: 290px 1fr;
        }
}


section.noimage article {
    display: grid;
    grid-template-areas: "title"
        "content"
        "linkbutton";
    grid-template-columns: 1fr;
    row-gap: 2em;
    column-gap: 2em;
    padding-top: 3em;
    padding-bottom: 3em;
}

.title {
    grid-area: title;
    margin: auto;
}

.content {
    grid-area: content;
}

.linkbutton a {
    grid-area: linkbutton;
    padding: 0.5em 1.5em 0.5em 1.5em;
    border-radius: 1.5em;
    text-decoration: none;
    display: block;
    text-align: center;
}

.image {
    grid-area: image;
    display: flex;
    align-items: center;
    justify-content: center;
}

.partners {
    width: 100%;
    margin: auto;
    display: grid;
    padding-top: 1.5em;
    padding-bottom: 3em;
}

@media (min-width: 900px) {
    .partners {
        width: 900px;
        margin: auto;
        display: grid;
        padding-top: 1.5em;
        padding-bottom: 3em;
    }
}

.partners h2 {
    margin: auto;
}

.partners .partnerlinks {
    display: flex;
    gap: 2em;
    margin: auto;
    padding-top: 2em
}

    .partners .partnerlinks img {
        height: 50px;
    }

@media (min-width: 900px) {
    .photos {
        width: 900px;
        margin: auto;
        display: grid;
        padding-top: 1.5em;
        padding-bottom: 3em;
    }
}

.photos h2 {
    margin: auto;
}

.photos .photostrip {
    display: flex;
    gap: 2em;
    margin: auto;
    padding-top: 2em
}

    .photos .photostrip a {
        height: 125px;
    }



