:root {
    --color-blue1: #003594;
    --color-yellow: #ffc72c;
    --color-blue2: #001a70;
    --color-tan: #f5e6bd;
    --color-gray: #707372;
    --color-white: #ffffff;
    --color-black: #000000;
}
@font-face {
    font-family: open sans;
    src: url(../fonts/OpenSans-VariableFont_wdth,wght.ttf);
}
@font-face {
    font-family: oswald;
    src: url(../fonts/Oswald-VariableFont_wght.ttf);
}
code {
    color: var(--color-blue2);
}
#skip a {
    position: absolute;
    left: -1e4px;
    top: auto;
    width: 1px;
    height: 1px;
    overflow: hidden;
}
#skip a:focus {
    position: static;
    width: auto;
    height: auto;
}
.sr-hide {
    position: absolute;
    left: -1e4px;
}
.smaller {
    font-size: 0.66em;
}
html {
    background: url(../images/bg.webp) no-repeat 50% fixed;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
	background-color: var(--color-black); // Adding this to avoid WAVE's bug
}
body {
    margin: 0;
    font-family:
        open sans,
        Arial,
        Helvetica,
        sans-serif;
    color: var(--color-white);
    font-size: 12pt;
}
a {
    color: var(--color-blue2);
}
h1,
h2,
h3,
h4,
h5,
h6 {
    font-family:
        open sans,
        Arial,
        Helvetica,
        sans-serif;
    font-weight: 600;
}
nav {
    top: 0;
    position: -webkit-sticky;
    position: sticky;
    margin: 0;
    overflow: visible;
    background: var(--color-blue1);
    background-repeat: no-repeat;
    background-position: 50%;
    background-clip: padding-box;
    background-size: 100%;
    background-image: url(../images/bg-blue.jpg);
    padding-bottom: 0.5em;
}
nav h1 {
    font-size: 3em;
    margin: 0;
}
nav a:hover {
    text-decoration: underline;
}
nav ul {
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
}
nav ul li {
    font-size: 1em;
    display: inline-block;
    list-style-type: none;
}
nav ul li {
    position: relative;
}
nav ul li.dropdown ul {
    margin: 1em 0 0 2em;
    justify-content: left;
    align-items: normal;
    flex-direction: column;
    min-width: auto;
    background-image: url(../images/bg-blue-2.webp);
    padding: 1em;
    border-radius: 5%;
    box-shadow: 0 0 10px #000;
}
nav ul li.dropdown ul li a {
    padding-left: 0;
    padding-right: 1em;
    letter-spacing: normal;
    text-transform: none;
    margin-bottom: 5px;
}
nav ul li logo {
    font-size: 3em;
    font-weight: 650;
    display: inline;
    list-style-type: none;
    text-transform: uppercase;
    padding: 0 2vw;
    font-family: oswald, Arial, Helvetica, sans-serif;
}
nav ul li a {
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: 2px;
    display: block;
    padding-left: 2em;
    text-decoration: none;
    color: var(--color-white);
}
nav ul li button {
    font-family: open sans;
}
header {
    padding-top: 3em;
    padding-bottom: 3em;
    text-align: center;
}
main {
    color: var(--color-black);
    background-color: var(--color-white);
    white-space: normal;
    padding-bottom: 1em;
}
main a {
    color: var(--color-blue1);
}
main .content {
    padding-top: 2vw;
    margin: 0;
    padding: 0;
}
main p,
main h3,
main nav,
main form {
    padding: 0 3vw 1em;
}
main p {
    margin: 0;
    text-align: left;
}
main .content h2 {
    letter-spacing: 2px;
    background-image: url(../images/bg-2.jpg);
    background-clip: padding-box;
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: 100%;
    display: block;
    float: none;
    text-align: center;
    font-size: 2em;
    list-style-type: none;
    padding: 1vw 1vw 1vw 3.5vw;
    text-transform: uppercase;
    margin: 1vw 0;
}
main h3 {
    letter-spacing: 1px;
    margin: 0;
    padding-bottom: 1em;
    font-size: 1.33em;
    text-transform: uppercase;
}
main .outline hr {
    border: none;
    background-color: var(--color-gray);
    color: var(--color-gray);
    height: 1px;
}
main .outline h3 {
    padding-left: 0;
}
main img.float {
    float: right;
    padding: 0 3vw;
    width: 20vw;
}
main img.float.left {
    float: left;
}
main .outline {
    float: left;
    text-align: left;
    padding: 0 3vw;
    min-width: 10vw;
}
main .outline.right {
    float: right;
}
main ul.photos {
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: center;
}
main ul.photos li {
    padding: 1em;
    margin: 1em;
    flex: 0 1 192px;
    list-style-type: none;
}
main ul.photos li img {
    border-radius: 0 0 30% 30%;
    width: 192px;
}
main ul.list,
main ol.list {
    margin: 0 3vw 1em;
}
main ul.photos li p {
    font-size: 0.8em;
    text-align: center;
    padding: 0;
}
main ul.list li {
    margin-bottom: 1em;
}
main caption {
    font-weight: 700;
}
main table {
    border-collapse: collapse;
    margin-left: auto;
    margin-right: auto;
}
main th,
main td {
    border: 1px solid;
    padding: 3px;
}
main table td {
    text-align: center;
}
main nav {
    display: inherit;
    position: inherit;
    background-image: none;
    background-color: inherit;
}
main nav ul li {
    margin: 0;
    font-weight: 700;
}
main nav ul li.middle {
    flex: 1;
}
main nav ul li a {
    color: var(--color-blue1);
    text-transform: inherit;
    font-weight: inherit;
    display: inline;
    letter-spacing: inherit;
    padding-left: inherit;
    text-decoration: underline;
}
footer {
    margin-top: 3vw;
    padding: 0 3vw;
}
footer a {
    color: var(--color-white);
}
footer h2 {
    text-transform: uppercase;
}
footer .box {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
}
footer .box > * {
    flex-basis: fit-content;
    padding-right: 3vw;
    margin-left: auto;
    margin-right: auto;
}
.dropdown {
    position: relative;
}
.dropdown:hover .dropdown_menu,
.dropdown:focus-within .dropdown_menu {
    transform: rotateX(0);
    visibility: visible;
}
.dropdown_menu {
    position: absolute;
    top: calc(100% - 0.25rem);
    visibility: hidden;
    transform: rotateX(-90deg);
    transform-origin: top left;
    transition: 280ms all 120ms ease-out;
    grid-auto-flow: column;
    padding-left: 0;
    z-index: 10;
    list-style: none;
    width: 100%;
}
.dropdown_menu > li {
    list-style-type: none;
    position: relative;
}
.dropdown_menu > li > a {
    font-size: 1em;
}
.dropdown_title {
    text-transform: uppercase;
    text-decoration: none;
    color: var(--color-white);
    background: 0 0 !important;
    border: none;
    font-size: 1em;
    cursor: pointer;
    font-weight: 600;
    letter-spacing: 2px;
    display: block;
    padding-left: 2em;
}
@media only screen and (max-width: 900px) {
    nav {
        position: relative;
    }
    nav ul {
        display: block;
    }
    nav ul li {
        font-size: 1em;
        display: block;
        text-align: center;
    }
    nav ul li button {
        width: 100%;
    }
    nav ul li a,
    nav ul li button {
        padding: 0 0 1em !important;
    }
    .dropdown_menu {
        margin-left: auto !important;
        margin-right: auto !important;
        left: 0 !important;
        right: 0 !important;
        text-align: center !important;
        width: fit-content !important;
    }
    .dropdown_menu li a {
        padding-bottom: 0 !important;
    }
    footer {
        text-align: center;
    }
    footer .box {
        display: block;
        flex-wrap: nowrap;
    }
}
ul.photos li p button {
    background: 0 0;
    border: none;
    outline: none;
    cursor: pointer;
}
