/* nunito-regular - latin_latin-ext */
@font-face {
    font-display: swap;
    font-family: 'Nunito';
    font-style: normal;
    font-weight: 400;
    src: url('/fonts/nunito-v32-latin_latin-ext-regular.woff2') format('woff2');
}

/* nunito-italic - latin_latin-ext */
@font-face {
    font-display: swap;
    font-family: 'Nunito';
    font-style: italic;
    font-weight: 400;
    src: url('/fonts/nunito-v32-latin_latin-ext-italic.woff2') format('woff2');
}

/* nunito-700 - latin_latin-ext */
@font-face {
    font-display: swap;
    font-family: 'Nunito';
    font-style: normal;
    font-weight: 700;
    src: url('/fonts/nunito-v32-latin_latin-ext-700.woff2') format('woff2');
}

/* open-sans-300 - latin_latin-ext */
@font-face {
    font-display: swap;
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 300;
    src: url('/fonts/open-sans-v44-latin_latin-ext-300.woff2') format('woff2');
}

/* open-sans-regular - latin_latin-ext */
@font-face {
    font-display: swap;
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 400;
    src: url('/fonts/open-sans-v44-latin_latin-ext-regular.woff2') format('woff2');
}

/* open-sans-600 - latin_latin-ext */
@font-face {
    font-display: swap;
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 600;
    src: url('/fonts/open-sans-v44-latin_latin-ext-600.woff2') format('woff2');
}

body {
    color: #777;
    font-family: 'Open Sans', sans-serif;
    font-size: 20px;
    font-weight: 400;
    letter-spacing: 0px;
    font-display: swap;

}

.notice-heavy {
    color: #333;
    font-family: 'Open Sans', sans-serif;
    font-size: 24px;
    font-weight: 900;
    letter-spacing: 0px;
    font-display: swap;

}

.notice {
    color: #777;
    font-family: 'Open Sans', sans-serif;
    font-size: 24px;
    font-weight: 600;
    letter-spacing: 0px;
    font-display: swap;

}

.pure-img-responsive {
    max-width: 100%;
    height: auto;
}

/*
Add transition to containers so they can push in and out.
*/
#layout,
#menu,
.menu-link {
    -webkit-transition: all 0.2s ease-out;
    -moz-transition: all 0.2s ease-out;
    -ms-transition: all 0.2s ease-out;
    -o-transition: all 0.2s ease-out;
    transition: all 0.3s ease-out;
}

/*
This is the parent `<div>` that contains the menu and the content area.
*/
#layout {
    position: relative;
    float: left;
    left: 0;
    padding-left: 0;
}

#layout.active #menu {
    left: 320px;
    width: 320px;
}

#layout.active .menu-link {
    left: 320px;
}

/*
The content `<div>` is where all your content goes.
*/


.header {
    margin: 0;
    color: #333;
    text-align: center;
    padding: 2.5em 2em 0;
    border-bottom: 1px solid #eee;
}

.header h1 {
    margin: 0.2em 0;
    font-size: 3em;
    font-weight: 300;
}

.header h2 {
    font-weight: 300;
    color: #ccc;
    padding: 0;
    margin-top: 0;
}

.content-subhead {
    margin: 50px 0 20px 0;
    font-weight: 300;
    color: #888;
}

#to-the-world {
    margin: 0;
    padding: 0 0 0 0;
    width: 100%;
}

#banner {
    margin: 0;
    padding: 0 0 0 0;
    min-height: 100%;
}

/*
The `#menu` `<div>` is the parent `<div>` that contains the `.pure-menu` that
appears on the left side of the page.
*/

#menu {
    margin-left: -320px;
    /* "#menu" width */
    width: 320px;
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    z-index: 1000;
    /* so the menu or its navicon stays above all content */
    background: #08243E;
    overflow-y: auto;
    text-transform: uppercase;
    font-family: 'Nunito', sans-serif;
    font-weight: 900;
    font-size: 20px;
}

/*
    All anchors inside the menu should be styled like this.
    */
#menu a {
    color: #ffffff;
    border: none;
    padding: 0.6em 0 0.6em 0.6em;
}

/*
    This styles the menu heading.
    */
#menu .pure-menu-heading {
    background: #ffffff;
}

/*
    Remove all background/borders, since we are applying them to #menu.
    */
#menu .pure-menu,
#menu .pure-menu ul {
    border: none;
    background: transparent;
}

/*
    Add that light border to separate items into groups.
    */
#menu .pure-menu ul,
#menu .pure-menu .menu-item-divided {
    border-top: 1px solid #333;
}

/*
        Change color of the anchor links on hover/focus.
        */
#menu .pure-menu li a:hover,
#menu .pure-menu li a:focus {
    color: #D32928;
    background: transparent;
}

#menu .pure-menu-selected {
    background: #08243E;
}

/*
  This styles a link within a selected menu item `<li>` or an `<a>` with `pure-menu-selected`.
 */
#menu .pure-menu-selected > a,
#menu .pure-menu-selected > a:visited,
#menu .pure-menu-selected > a:hover,
#menu .pure-menu-selected > a:focus,
#menu a.pure-menu-selected,
#menu a.pure-menu-selected:visited,
#menu a.pure-menu-selected:hover,
#menu a.pure-menu-selected:focus,
#menu li.pure-menu-selected > a,
#menu li.pure-menu-selected > a.pure-menu-link {
    color: #FFFFFF !important;
    background: #D32928 !important;
}

#menu .pure-menu-not-selected a {
    color: #FFFFFF;
}
        
#menu .pure-sub-menu {
    left: 30px;
    font-size: 16px;
}


/* -- Dynamic Button For Responsive Menu -------------------------------------*/

/*
The button to open/close the Menu is custom-made and not part of Pure. Here's
how it works:
*/

/*
`.menu-link` represents the responsive menu toggle that shows/hides on
small screens.
*/
.menu-link {
    position: fixed;
    display: block;
    /* show this only on small screens */
    top: 0;
    left: 0;
    /* "#menu width" */
    background: rgb(255, 255, 255);
    color: #000;
    font-size: 11px;
    /* change this value to increase/decrease button size */
    z-index: 10;
    width: 100%;
    height: auto;
    padding: 2.1em 1.6em;
}

.menu-link:hover,
.menu-link:focus {
    color: #000;
}

.menu-link span {
    position: relative;
    display: block;

}

.menu-link span,
.menu-link span:before,
.menu-link span:after {
    background-color: #0E467C;
    pointer-events: none;
    width: 2.5em;
    height: 0.25em;
}

.menu-link span:before,
.menu-link span:after {
    position: absolute;
    margin-top: -0.6em;
    content: " ";
}

.menu-link span:after {
    margin-top: 0.6em;
}

#bar-thick {
    background: #D32928;
    height: 10px;
    width: 100%;
    z-index: 2000;
}

#bar-thin {
    background: #D32928;
    height: 5px;
    width: 100%;
    z-index: 2000;
}

#bar-thickie {
    background: #0E467C;
    width: 100%;
    z-index: 10000;
    color: white;
}

#bar-thickie .heavy {
    padding: 50px 50px 0px 50px;
    font-weight: 600;
    text-transform: uppercase;
}

#bar-thickie .normal {
    padding: 0px 50px 50px 50px;
}

.logo-banner {
    position: fixed;
    top: 0px;
    height: 48px;
    left: 52px;
    z-index: 10000;
    background: #ffffff;
}

.logo-small {
    position: fixed;
    top: 0px;
    z-index: 10001;
    left: 62px;
    height: 48px;
    background: #ffffff;
    margin-left: auto;
    margin-right: auto;
}

.footer {
    width: 100%;
    background-color: #eff4f9;
    color: #08243E;
}

.f-box {
    max-width: 100%;
    padding-top: 5%;
    padding-right: 10%;
    padding-bottom: 0%;
    padding-left: 10%;
}

.l-box {
    letter-spacing: 0px;
    padding: 1em;
}

.r-box {
    letter-spacing: 0px;
    background-color: #eff4f9;
    padding-left: 1em;
    z-index: -1;
    height: 100%;
}

.r-panel {
    position: inherit;
    float: right;
    background-color: #eff4f9;
    z-index: 10000;
    height: 100%;
    width: 33%;
}

.normal-spacing {
    letter-spacing: 0px;
}

#main {
    position: relative;
    top: 0px;
    opacity: 1;
    transition: opacity 0.2s ease-in-out;
}

#main.htmx-swapping {
    opacity: 0;
}

#main.htmx-settling {
    opacity: 0;
}

#main.htmx-added {
    opacity: 0;
}

.main-text {
    color: #0E467C;
}

.main-text-em {
    color: #0E467C;
    font-weight: 600;
}

#main-heading {
    font-family: 'Nunito', sans-serif;
    text-transform: uppercase;
}

#heading {
    padding-top: 32px;
    padding-left: 32px;
    font-size: 40px;
    font-weight: 600;
    color: #0E467C;
}

#subheading {
    padding-left: 32px;
    font-size: 30px;
    font-weight: 600;
    color: #D32928;
}

#heading-seal {
    position: relative;
}

#main-content {
}

.right {
    float: right;
    padding-top: 50px;
    padding-left: 50px;
    padding-right: 50px;
}

.left {
    float: left;
    padding-top: 50px;
}

#form label {
    font-family: 'Nunito', sans-serif;
    font-weight: 600;
    text-transform: uppercase;
    color: #D32928;
}

#form input{
    font-family: 'Open Sans', sans-serif;
    border-style:inset;
    color: black;
    resize: both;
}

#form button {
    font-family: 'Nunito', sans-serif;
    font-weight: 600;
    text-transform: uppercase;
    color: white;
    background-color: #D32928;

}


/* -- Responsive Styles (Media Queries) ------------------------------------- */

/*
Hides the menu at `48em`, but modify this based on your app's needs.
*/
@media (min-width: 48em) {

    #main {
        top: 0px;
    }
    
    .header,
    .content {
        padding-left: 2em;
        padding-right: 2em;
    }

    #layout {
        padding-left: 320px;
        /* left col width "#menu" */
        left: 0;
    }

    #layout.active #menu {
        left: 150px;
        width: 150px;
    }

    #menu {
        left: 320px;
    }

    .menu-link {
        position: fixed;
        left: 320px;
        display: none;
    }

    #layout.active .menu-link {
        left: 320px;
    }
}

@media (max-width: 48em) {

    #main {
        top: 48px;
    }
    
   /* Only apply this when the window is small. Otherwise, the following
    case results in extra padding on the left:
        * Make the window small.
        * Tap the menu to trigger the active state.
        * Make the window large again.
    */
    #layout.active {
        position: relative;
        left: 320px;
    }
}