html, body, div {
    margin: 0;
    padding: 0;
}

h1, h2, h3, p, a {
    font-family: 'Gill Sans', 'Gill Sans MT', Calibri, 'Trebuchet MS', sans-serif;
}

.flex-container {
    display: flex;
    flex-direction: row;
    justify-content: space-around;
    align-items: center;
}

.panel {
    height: 100vh;
}

.segment {
    width: 50%;
}

.primary {
    background-color: #1B8F8F;
}

.secondary {
    background-color: #d3e2e7;
}

.centred {
    text-align: center;
}

.full-height {
    height: 100%;
}

.min-full-height {
    min-height: 100vh;
}

.full-page-container {
    width: 600px;
    margin-left: auto;
    margin-right: auto;
    padding-bottom: 5em;
}

.half-width {
    height: 90vh;
}

h1.title {
    font-size: 5em;
    color: #ED580E;
    margin-bottom: 0;
}

p.subtitle {
    font-size: large;
    color: #B6D0D8 !important;
    margin-top: 0;
}

.text-contrast {
    color: #ED580E;
}

.text-primary {
    color: #1B8F8F !important;
    font-size: large;
    width: 80%;
    margin: 0 auto 0.5em auto;
}

.text-secondary {
    color: #B6D0D8 !important;
    font-size: large;
    width: 80%;
    margin: 0 auto 0.5em auto;
}

.text-secondary a {
    color: #B6D0D8;
    text-decoration: underline;
}

.text-secondary a:hover {
    color: #707070;
}

.text-secondary a:visited {
    color: #B6D0D8;
}

.full-page-container .text-secondary {
    width: 100%;
    margin: 0 0 0.5em 0;
}

.text-secondary-grey {
    color: #707070;
}

.text-primary-grey {
    color: silver;
}

.footer {
    height: auto;
    padding: 1em;
}

.footer a, .footer p {
    color: #1B8F8F;
}

h1 a {
    text-decoration: none;
}

h1 a:visited {
    color: #ED580E;
}

h1 a:hover {
    color: #B6D0D8;
}

@media only screen and (max-width: 600px) {
    .flex-container.primary {
        flex-direction: column;
    }

    .flex-container.secondary {
        flex-direction: column-reverse;
    }

    .text-primary {
        width: 100%;
    }

    .text-secondary {
        width: 100%;
    }

    .full-page-container {
        width: 80%;
    }

    .footer.flex-container  {
        flex-direction: column;
    }

    .footer {
        flex-direction: column;
        height: auto;
        padding: 1em;
    }

    .segment {
        width: 90%;
    }

    .half-width {
        height: 40vh;
    }

}