@charset "UTF-8";

@import url("https://fonts.googleapis.com/css?family=Lato:400,400i,700");
/** 
 * Set any variables that will be used throughout our css styling.
 */ 
:root {
    --color-primary: #007a33;
    --color-gov-blue: #243746;
    --color-text: #3c3c3c;
    --color-text-light: #75787B;
    --color-border-light: #d6d6d6;
    --color-border-dark: #b8b8b8;
    --color-background-light: #f5f5f5;
    --color-background-dark: #727579;
    --color-alert: #ef0834;
    --color-info: #004B87;
    --site-max-width: 78rem;
    --site-veritical-spacing: 1rem;
    --site-border-radius: 0.375rem;
    --site-border-light: 2px solid var(--color-border-light);
    --site-border-dark: 2px solid var(--color-border-dark);
}

/**
 * Set the height of our site to fill the entire screen.
 * Wordpress admin-bar adds a top margin that needs to be
 * worked into our calcuations. 
 */
html, body {
    height: 100%;
}
html.admin-bar {
    height:calc(100% - 32px);
}
@media screen and (max-width: 782px) {
    html.admin-bar {
        height:calc(100% - 48px);
    }
}
/**
 * Force Admin Bar to stay at the top of the screen.
 */
#wpadminbar {
    position: absolute;
}
/** 
 * Set some base styles to get started.
 * This along wtih normalize.css should give you a good starting point.
 */
body {
    margin: 0;
    padding: 0;
    background: #fff;
    font-family: Lato, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-weight: normal;
    line-height: 1;
    color: var(--color-text);
}
input, button {
    font-family: Lato, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-weight: normal;
    line-height: 1;
    color: var(--color-text);
}
a {
    color: var(--color-info);
}

/**
 * Basic accessibility features
 */ 
.screen-reader-text,
a.skip-to-content {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}
a.skip-to-content:focus {
    position: static;
    width: auto;
    height: auto;
    overflow: visible;
    clip: auto;
    white-space: normal;
}
/**
 * Content container of the site below header and above footer
 * where the main content area resides.
 * Flex model being used to allow the content area to fill
 * the space horizontally. If additional sections are added
 * to the .content-container element, the content area will adjust to fill
 * the space without needing to set any widths.
 */
.content-container {
    display: flex;
    max-width: var(--site-max-width);
    margin: 2rem auto;
    padding: 0 var(--site-veritical-spacing);
    gap: var(--site-veritical-spacing);
    box-sizing: border-box;
}
.content-container .main-content {
    flex: 1;
}
/**
 * Stick the footer to the bottom of the screen if the page content
 * isn't long enough to fill the screen. If the content is long enough,
 * the footer will stay below the content and allow the page to scroll
 * and flow as expected without any overlaps.
 */
#footer {
    position: sticky;
    top: 100vh;
}