/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
html {
    line-height: 1.15;
    -webkit-text-size-adjust: 100%
}

body {
    margin: 0
}

main {
    display: block
}

h1 {
    font-size: 2em;
    margin: 0.67em 0
}

hr {
    box-sizing: content-box;
    height: 0;
    overflow: visible
}

pre {
    font-family: monospace, monospace;
    font-size: 1em
}

a {
    background-color: transparent
}

abbr[title] {
    border-bottom: none;
    text-decoration: underline;
    text-decoration: underline dotted
}

b, strong {
    font-weight: bolder
}

code, kbd, samp {
    font-family: monospace, monospace;
    font-size: 1em
}

small {
    font-size: 80%
}

sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}

sub {
    bottom: -0.25em
}

sup {
    top: -0.5em
}

img {
    border-style: none
}

button, input, optgroup, select, textarea {
    font-family: inherit;
    font-size: 100%;
    line-height: 1.15;
    margin: 0
}

button, input {
    overflow: visible
}

button, select {
    text-transform: none
}

button, [type="button"], [type="reset"], [type="submit"] {
    -webkit-appearance: button
}

button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner {
    border-style: none;
    padding: 0
}

button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring {
    outline: 1px dotted ButtonText
}

fieldset {
    padding: 0.35em 0.75em 0.625em
}

legend {
    box-sizing: border-box;
    color: inherit;
    display: table;
    max-width: 100%;
    padding: 0;
    white-space: normal
}

progress {
    vertical-align: baseline
}

textarea {
    overflow: auto
}

[type="checkbox"], [type="radio"] {
    box-sizing: border-box;
    padding: 0
}

[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button {
    height: auto
}

[type="search"] {
    -webkit-appearance: textfield;
    outline-offset: -2px
}

[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none
}

::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit
}

details {
    display: block
}

summary {
    display: list-item
}

template {
    display: none
}

[hidden] {
    display: none
}

blockquote, dl, dd, h1, h2, h3, h4, h5, h6, hr, figure, p, pre {
    margin: 0
}

button {
    background-color: transparent;
    background-image: none
}

button:focus {
    outline: 1px dotted;
    outline: 5px auto -webkit-focus-ring-color
}

fieldset {
    margin: 0;
    padding: 0
}

ol, ul {
    list-style: none;
    margin: 0;
    padding: 0
}

blockquote, dl, dd, h1, h2, h3, h4, h5, h6, hr, figure, p, pre {
    margin: 0
}

button {
    background-color: transparent;
    background-image: none
}

button:focus {
    outline: 1px dotted;
    outline: 5px auto -webkit-focus-ring-color
}

fieldset {
    margin: 0;
    padding: 0
}

ol, ul {
    list-style: none;
    margin: 0;
    padding: 0
}

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

body {
    font-family: "acumin-pro", sans-serif
}

main {
    display: grid;
    grid-template-columns:1fr 1fr;
    align-items: start
}

section {
    display: grid;
    align-items: center;
    height: 100vh
}

section:nth-child(1) {
    grid-template-rows:1fr 1.3fr
}

section:nth-child(2) {
    grid-template-rows:1.3fr 1fr
}

img {
    width: 100%;
    height: auto
}

h1, h2, h3, h4 {
    font-family: "Prelo-SemiBold", sans-serif
}

@font-face {
    h1, h2, h3, h4 {
        font-family: "Prelo-SemiBold";
        src: url("/assets//Prelo-SemiBold.woff")
    }
}

h1 {
    font-size: clamp(2.5rem, 2.73vw, 8.75rem);
    text-transform: uppercase
}

h1 span {
    display: block
}

h3 {
    margin-bottom: 0.5em
}

h4 {
    font-size: clamp(1.5rem, 2.73vw, 2.5rem)
}

p, li {
    font-weight: 400;
    font-style: normal
}

p {
    width: 100%
}

.container {
    display: flex;
    flex-flow: column;
    justify-content: center;
    height: 100%;
    padding: 10px;
    margin-right: auto
}

.container.textured {
    background-image: url("./images/background-texture.jpg");
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat
}

.prose {
    margin-top: .5em;
    margin-bottom: .5em
}

ul.prose {
    margin-top: 5px
}

.map {
    text-align: center
}

.map img {
    height: 100%;
    max-height: 50vh;
    width: 100%
}

.calendar-links {
    display: grid;
    grid-template-columns:repeat(3, 1fr);
    gap: 10px
}

.calendar-links a {
    display: flex;
    align-items: center;
    background: #10270a;
    color: white;
    font-family: 'acumin-pro';
    text-decoration: none;
    text-align: center;
    padding: 7px 10px;
    border-radius: 10px;
    cursor: pointer
}

.calendar-links a:hover {
    opacity: 0.9
}

.calendar-links a img {
    width: 40px
}

.calendar-links a span {
    margin-left: 10px
}

.sheep-container {
    position: relative;
    height: 100%;
    overflow: hidden;
    display: grid;
    justify-content: center;
    align-items: center
}

.sheep-container .gradient-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(to bottom, rgba(0, 25, 4, 0.6), rgba(0, 33, 1, 0.8));
    z-index: 1
}

.sheep-container .full-img {
    width: 100%;
    height: 100vh;
    display: block;
    margin: 0 auto;
    object-fit: cover
}

.sheep-container .sheep-overlay {
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: 5;
    height: 70%;
    text-align: center
}

.sheep-container .sheep-overlay .sheep-img {
    height: 100%;
    width: 100%
}

.logo-grid {
    display: grid;
    grid-template-columns:repeat(2, 1fr);
    align-items: center;
    width: 100%;
    gap: 40px;
}

.logo-grid .grow-on-hover {
    transition: transform 0.3s ease-in-out
}

.logo-grid .grow-on-hover:hover {
    transform: scale(1.1)
}
.logo-item {
    border: solid 1px #000;
}
.logo-img {
    border-bottom: solid 1px #000;
}
.logo-img img {
    display: block;
}
.logo-links {
    display:grid;
    grid-template-columns: 1fr 1fr;
}
.logo-links > div:first-child {
    border-right: solid 1px #000;
}
.logo-links.links-white {
    background-color: white;
}
.logo-links.links-blue {
    background-color: #0E243C;
}
.logo-links.links-green {
    background-color: #183820;
}
.logo-links > div {
    text-align: center;
    padding: 10px;"
}
.logo-links a {
    text-transform: uppercase;
    display: block;
    text-decoration: none;
    color: #000;
    font-family: "Prelo-SemiBold", sans-serif;
    font-weight: 600;
}

.video-overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 50;
    justify-content: center;
    align-items: center;
}
.video-box {
    overflow: hidden;
    position: absolute;
    display: flex;
    flex-direction: column;
    justify-content: end;
    align-items: center;
    top: 2%;
    right: 0;
    left: 0;
    z-index: 100;
}
.video-box iframe {
    height: 90vh;
}
.video-link {
    text-transform: uppercase;
    cursor: pointer;
    font-family: "Prelo-SemiBold", sans-serif;
    font-weight: 600;
}
.video-close {
    position: absolute;
    left: 0;
    width: 100%;
    bottom: 4%;
    text-align: center;
    padding: 3px;
    cursor: pointer;
    color: #fff;
    font-size: .8em;
}

@media (max-width: 650px) {
    .video-box iframe {
        width: 90vw;
    }
}

@media (min-width: 1600px) {
    main {
        grid-template-columns:1fr 1.3fr
    }

    .map img {
        width: auto
    }
}

@media (min-width: 768px) {
    P {
        max-width: 550px
    }

    .container {
        padding-left: 4rem;
        padding-right: 4rem;
    }
}

@media (max-width: 767px) {
    h1, h2 {
        text-align: center
    }

    h1 span {
        display: inline
    }

    main {
        grid-template-columns:1fr
    }

    .container {
        padding: 40px 10px;
    }
    section {
        display: block;
        height: auto;
        grid-template-rows:1fr 1fr !important
    }

    .calendar-links {
        grid-template-columns:1fr 1fr
    }

    .logo-grid {
        width: 100%
    }

    .full-img {
        height: unset
    }
}
