@import url('https://fonts.googleapis.com/css?family=Open+Sans:300,400,700|Oswald:400,700');

html {
	box-sizing: border-box;
}

*,
*:before,
*:after {
	box-sizing: inherit;
}

:focus{
    outline-color: #000;
    outline-width: 2px;
}
.skip_link:focus
{
    outline: #219CB2 solid 2px;
}

/* Body */
.page_body,
.fbd_content,
.fbcms_htmleditor
{
    color: #635A4E;
    font: 14px/1.5 'Open Sans', Arial,Helvetica,sans-serif;
}
.page_body
{
	background: #ffffff;
	margin: 0;
	min-width: 320px;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: none;
    height: 100vh;
}
.fbd_content,
.fbcms_htmleditor
{
    background-color: #ffffff;
}
/* END Body */

/* General Styling */
article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
nav,
section,
summary {
	display: block;
}

img {
	border-style: none;
	max-width: 100%;
	height: auto;
}

a,
.fbcms_spotlight_text .more_link,
.fbcms_cards .fbcms_card_link {
	color: #277A88;
}

input,
textarea,
select {
	font: 100% 'Open Sans', Arial, Helvetica, sans-serif;
	color: #6D6D6D;
	vertical-align: middle;
}

form,
fieldset {
	margin: 0;
	padding: 0;
	border-style: none;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
	border: 0;
	padding: 0;
}

button,
input[type="button"],
input[type="reset"],
input[type="file"],
input[type="submit"] {
	cursor: pointer;
}

input[type="text"],
input[type="tel"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
textarea {
	margin: 0;
	padding: 4px 7px;
}

textarea {
	overflow: auto;
	resize: vertical;
	vertical-align: top;
}

input[type="checkbox"],
input[type="radio"] {
	padding: 0;
}
/* END General Styling */

/* wrapper & overall structure */
.fbcms_component
{
    max-width: 100%;
    display: block;
    width: 100%;
}
.component_liner
{
    width: 100%;
}
@media only screen and (min-width: 768px)
{
    .component_liner,
    #navigation
    {
        width: 95%;
        height: 100%;
        position: relative;
        max-width: 1112px;
        margin: 0 auto;
    }
}

/*
===========================================================
 HEADER
===========================================================
*/
.fbcms_header
{
    background: #fff;
}
.fbcms_header::after {
	content: " ";
	display: table;
	clear: both;
}
@media only screen and (min-width: 768px) 
{
    .fbcms_header .header_main
    {
        height: 136px;
        position: relative;
    }
}

/* Logo */
.logo {
    padding: 44px 10px 10px;
    margin: 2px; 
    text-decoration: none;
    display: inline-block;
}
.site_logo
{
    display: inline-block;
    vertical-align: middle;
}
.site_logo img {
    max-width: 100%;
    height: auto;
}
@media only screen and (min-width: 768px)
{
    .logo {
        height: 0;
        padding: 0;
        margin: 0; 
    }
    .site_logo {
        margin: 14px 0 0 0;
    }
}
@media only screen and (min-width: 994px)
{
    .site_logo {
        margin: 36px 0 0 0;
    }
}

/* Search */
.search-form
{
    position: absolute;
    top: 0;
    right: 50px;
    width: auto;
    z-index:100; 
}

.search-form .search-input,
.search-form .submit
{
    display: inline-block;
    height: 38px;
    vertical-align: middle;
    border: none;
}

.search-form .search-input
{
    width: 112px;
    padding: 0 0 0 12px;
    background-color: #257887;
    color: #fff;
    font: 16px/1.3 'Oswald',Arial,Helvetica,sans-serif;
}

.search-form .search-input::-webkit-input-placeholder {
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 1px;
}
.search-form .search-input::-moz-placeholder {
    opacity: 1;
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 1px;
}
.search-form .search-input:-moz-placeholder {
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 1px;
}
.search-form .search-input:-ms-input-placeholder {
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 1px;
}
.search-form .search-input.placeholder {
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.search-form .submit
{
    color: #ffffff;
    float: right;
    text-indent: -9999px;
    width: 38px;
    position: relative;
    background: #257887 url(../img/bg-search-ico.png) no-repeat center;
}
.search-form .submit:hover,
.search-form .submit:focus
{
    background-color: #6e6e6e;
}

    .search-form legend,
    .search-form label
    {
        border: 0;
        clip: rect(0 0 0 0);
        height: 1px;
        margin: -1px;
        overflow: hidden;
        padding: 0;
        position: absolute;
        width: 1px;
    }
@media only screen and (min-width: 768px)
{
    .search-form
    {
        right: 0;
        top: 0;
    }
}
@media only screen and (max-width: 767px)
{
    /* search input collapse */
    .search-form .search-input
    {
        padding: 0;
        width: 0;
        height: 40px;
        -webkit-transition: all .2s linear;
        transition: all .2s linear;
    }    
    .search-form .submit
    {
        height: 40px;
        width: 40px;
    }
    .search-form.opened .search-input 
    {
        padding-left: 10px;
        width: 160px;
    }
}
@media print {
    .search-form
    {
        display: none;
    }
}
/* END Search */

/* Site Scripts */
.fbcms_content.site_script_head
{
    display: block;
    position: absolute;
    top: 5px;
    right: 108px;
}
@media only screen and (min-width: 768px)
{
    .fbcms_content.site_script_head {
        top: 48px;
        right: 0;
        z-index: 4;
    }
}

/* Social Media Script */
.fa-lg
{
    font-size: 1.8em;
}
.fbcms_content ul.social_media_list {
    margin: 0;
}
.social_media_list:after
{
    content: "";
    display: table;
    clear: both;
}
.fbcms_content ul.social_media_list > li {
    margin: 0 6px;
    list-style: none;
    float: left;
    font-size: 14px;
    line-height: 18px;
}
.fbcms_content ul.social_media_list > li:last-child
{
    margin-right: 0;
}
.fbcms_content .social_media_list a {
    color: #6E6E6E;
    text-align: center;
}
.fbcms_footer .social_media_list a {
    color: #fff;
}

.fbcms_sharedcontent ul.social_media_list li a.facebook:hover,
.fbcms_sharedcontent ul.social_media_list li a.facebook:focus  {
    color: #3B5998;
}
.fbcms_sharedcontent ul.social_media_list li a.twitter:hover,
.fbcms_sharedcontent ul.social_media_list li a.twitter:focus {
    color: #000;
}
.fbcms_sharedcontent ul.social_media_list li a.instagram:hover,
.fbcms_sharedcontent ul.social_media_list li a.instagram:focus
{
    color: #e1306c;
}
.fbcms_sharedcontent ul.social_media_list li a.vimeo:hover,
.fbcms_sharedcontent ul.social_media_list li a.vimeo:focus  {
    color: #1ab7ea;
}
.fbcms_sharedcontent ul.social_media_list li a.youtube:hover,
.fbcms_sharedcontent ul.social_media_list li a.youtube:focus  {
    color: #cd201f;
}
@media print
{
    .fbcms_content ul.social_media_list {
        display: none;
    }
}
/*
===========================================================
 END HEADER
===========================================================
*/

/*
===========================================================
 MENUS
===========================================================
*/

/* Head Menu */
@media only screen and (min-width: 768px)
{   
    .menu_head
    {
        position: absolute;
        right: 160px;
        top: -136px;
        z-index: 101;
    }
    
    .menu_head li
    {
        padding: 0 3px;
        position: relative;
    }
    .menu_head li:first-child
    {
        padding-left: 0;
    }
    .menu_head li:last-child
    {
        padding-right: 0;
    }
    
    .menu_head a
    {
        text-decoration: none;
        display: block;
        background-color: #257887;
        color: #fff;
        text-transform: uppercase;
        padding: 10px 15px;
        font: 16px/1.1 'Oswald',Arial,Helvetica,sans-serif;
        letter-spacing: 1px;
    }
    .list-nav.menu_head a:hover,
    .list-nav.menu_head a:focus
    {
        text-decoration: none;
        background-color: #6e6e6e;
    }
}

/* Foot Menu */
.menu_foot
{
    margin-bottom: 10px;
    font: 400 16px/1.5 'Oswald', Arial,Helvetica,sans-serif;
}
.list-nav.menu_foot ul li
{
    display: block;
    margin-bottom: 5px;
}


/* Subpages Menu */
.menu_subpages.fbcms_rdropmenu .menu_title {
	background: #257887;
    font: 17px/1.3 'Oswald', Arial,Helvetica,sans-serif;
}
.fbcms_rdropmenu .menu_opener {
    background: #257887;
    line-height: 34px;
}
.menu_subpages.fbcms_rdropmenu .simplemenu_container {
    background: #257887;
}
.menu_subpages.fbcms_rdropmenu li a {
    font: 16px/1.3 'Oswald', Arial,Helvetica,sans-serif;
    border-top: 1px solid #359DB0;
}
@media print, screen and (min-width: 768px)
{
    .menu_subpages.drop-nav
    {
        display: none;
    }
}

/* Breadcrumb Nav */
.breadcrumb-nav
{
    padding: 8px 12px;
    margin-bottom: 15px;
}
.breadcrumb-nav li
{
    font-size: 13px;
    line-height: 1.3;
}
.breadcrumb-nav li:after {
    color: #D1D1D1;
    content: "/ ";
    padding: 0 6px;
}
.breadcrumb-nav li:last-child:after {
    display: none;
}
@media only screen and (min-width: 768px)
{
    .breadcrumb-nav
    {
        display: none;
    }
}

/* main-nav */
@media only screen and (min-width: 768px)
{
    .menu_title.menusection_title
    {
        display: none;
    }
    .main-nav 
    {
        z-index: 101;
    }
    .main-nav .top_level_item
    {
        display: inline-block;
        vertical-align: top;
        position: inherit;
        padding: 0 0 14px;
        margin: 0 30px;
    }
    .main-nav .top_level_item:last-child
    {
        margin-right: 0;
    }
    .main-nav .top_level_link
    {
        color: #635A4E;
        text-decoration: none;
        font: 400 16px/1.65 'Oswald',Arial,Helvetica,sans-serif;
        padding: 0;
    }

    .main-nav .top_level_item > .link_pair > a
    {
        background-position: 0 0;
        background-repeat: no-repeat;
        background-size: contain;
    }
    .main-nav .top_level_item:first-child > .link_pair > a
    {
        background-image: url(/downloads/main_menu_icons/first-main-menu-icon.png);
        padding-left: 34px;
    }
    .main-nav .top_level_item:nth-child(2) > .link_pair > a
    {
        background-image: url(/downloads/main_menu_icons/second-main-menu-icon.png);
        padding-left: 39px;
    }
    .main-nav .top_level_item:nth-child(3) > .link_pair > a
    {
        background-image: url(/downloads/main_menu_icons/third-main-menu-icon.png);
        padding-left: 41px;
    }
    .main-nav .top_level_item:nth-child(4) > .link_pair > a
    {
        background-image: url(/downloads/main_menu_icons/fourth-main-menu-icon.png);
        padding-left: 40px;
    }

    .main-nav .top_level_item.active,
    .main-nav .top_level_item:hover,
    .main-nav .top_level_item.hoverfocus
    {
        padding-bottom: 10px;
        border-bottom: solid 4px #000;
    }
    .main-nav .top_level_item.active:nth-child(1),
    .main-nav .top_level_item:nth-child(1):hover,
    .main-nav .top_level_item.hoverfocus:nth-child(1)
    {
        border-bottom-color: #E63C5E;
    }
    .main-nav .top_level_item.active:nth-child(2),
    .main-nav .top_level_item:nth-child(2):hover,
    .main-nav .top_level_item.hoverfocus:nth-child(2)
    {
        border-bottom-color: #45acbe;
    }
    .main-nav .top_level_item.active:nth-child(3),
    .main-nav .top_level_item:nth-child(3):hover,
    .main-nav .top_level_item.hoverfocus:nth-child(3)
    {
        border-bottom-color: #75830d;
    }
    .main-nav .top_level_item.active:nth-child(4),
    .main-nav .top_level_item:nth-child(4):hover,
    .main-nav .top_level_item.hoverfocus:nth-child(4)
    {
        border-bottom-color: #e89e2e;
    }
    
    /* drop-down */
    .main-nav .top_level_item > .drop
    {
        top: 100%;
        left: 0;
        background-color: rgba(255,255,255,.95);
        width: 100%;
        -webkit-box-shadow: 0px 1px 2px -1px rgba(0,0,0,0.5);
        -moz-box-shadow: 0px 1px 2px -1px rgba(0,0,0,0.5);
        box-shadow: 0px 1px 2px -1px rgba(0,0,0,0.5);
    }
    .main-nav .top_level_item > .drop .drop
    {
        display: block;
    }
    .main-nav .top_level_item > .drop .item_link {
        display: inline-block;
    }
    .main-nav .drop .sublist_0
    {
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;    
        -webkit-flex-direction: row;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: space-between;
        padding: 14px 20px;
    }
    .main-nav .drop .sublist_0 > .sublist_item
    {
        width: calc(25% - 1.5rem);
    }
    .main-nav .drop .sublist_0 > .sublist_item > .link_pair a
    {
        font-weight: bold;
        color: #257887;
        margin-bottom: 10px;
    }
    .main-nav .top_level_item > .drop a 
    {
        color: #71695E;
        font-size: 15px;
        line-height: 1.4;
        text-decoration: none;
        padding: 7px 0 5px;
        border-bottom: solid 2px transparent;
    }
    .main-nav .top_level_item > .drop li a:hover,
    .main-nav .top_level_item > .drop li a:focus
    {
        border-bottom-color: #000;
    }
    .main-nav .top_level_item:first-child > .drop li a:hover,
    .main-nav .top_level_item:first-child > .drop li a:focus
    {
        border-bottom-color: #E63C5E;
    }
    .main-nav .top_level_item:nth-child(2) > .drop li a:hover,
    .main-nav .top_level_item:nth-child(2) > .drop li a:focus
    {
        border-bottom-color: #45acbe;
    }
    .main-nav .top_level_item:nth-child(3) > .drop li a:hover,
    .main-nav .top_level_item:nth-child(3) > .drop li a:focus
    {
        border-bottom-color: #75830d;
    }
    .main-nav .top_level_item:nth-child(4) > .drop li a:hover,
    .main-nav .top_level_item:nth-child(4) > .drop li a:focus
    {
        border-bottom-color: #E79A25;
    }


    /*.main-nav .top_level_item:first-child,*/
    .main-nav .top_level_item:last-child
    {
        position: relative;
    }

   /* .main-nav .top_level_item:first-child > .drop
    {
        width: 650px;
        top: calc(100% + 4px);
        left: 0;
    }
    .main-nav .top_level_item:first-child .drop .sublist_0 > .sublist_item {
        width: calc(33.333% - 1.5rem);
    }*/

    .main-nav .top_level_item:last-child > .drop
    {
        width: 650px;
        top: calc(100% + 4px);
        left: auto;
        right: 0;
    }
    .main-nav .top_level_item:last-child .drop .sublist_0 > .sublist_item {
        width: calc(33.333% - 1.5rem);
    }
}
@media only screen and (min-width: 994px)
{    
    .main-nav .top_level_item
    {
        padding: 0 0 20px;
    }
    .main-nav .top_level_item.active,
    .main-nav .top_level_item:hover,
    .main-nav .top_level_item.hoverfocus
    {
        padding-bottom: 16px;
    }
    .main-nav .drop .sublist_0
    {
        padding: 20px 40px 30px;
    }    

    /*.main-nav .top_level_item:first-child > .drop
    {
        width: 750px;
        left: 50%;
        transform: translateX(-50%);
    }*/
    .main-nav .top_level_item:last-child > .drop
    {
        width: 750px;
    }
}
@media print {
    .navigation_wrapper
    {
        display: none !important;
    }
}

/* nav slider */
@media only screen and (max-width: 767px) {
    .slider-opener.secondary-opener
    {
        top: 3px;
        right: 10px;
        position: absolute;
        display: block;
    }

    .header_liner > .slider-opener.changerbutton:before, 
    .header_liner > .slider-opener.changerbutton:after, 
    .header_liner > .slider-opener.changerbutton span {
        background-color: #257887;
    }
    
    .header_liner > .slider-opener.changerbutton:hover:before, 
    .header_liner > .slider-opener.changerbutton:hover:after, 
    .header_liner > .slider-opener.changerbutton:hover span {
        box-shadow: 0 0 3px rgba(0,0,0,.5);
    }
}

/*
===========================================================
 END MENUS
===========================================================
*/

/*
===========================================================
 MAIN CONTENT FRAMEWORK
===========================================================
*/

/* Main Structure */
.fbcms_main
{
    flex: 1;
}
@media only screen and (min-width: 768px)
{
    .fbcms_main
    {
        position: relative;
        z-index: 1;
    }
    .main_content
    {
        position: relative;
    }
    .columns
    {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -webkit-flex-direction: row;
        flex-direction: row;
        flex-wrap: nowrap;
        justify-content: space-between;
    }
    .left_col
    {
        -ms-flex-order: 1;
        -webkit-order: 1;
        order: 1;
    }
    .center_col
    {
        -ms-flex-order: 2;
        -webkit-order: 2;
        order: 2;
    }    
    .right_col
    {
        -ms-flex-order: 3;
        -webkit-order: 3;
        order: 3;
    }
}

/* Focus Areas */
.main_focus
{
    background: #12434B;
    position: relative;
}
.home_focus
{
    width: 100%;
}

.fbcms_imagerotator .cycle-slide
{
    width: 100%;
}
.fbcms_photogallery .fbcms_imagerotator .slide img {
    margin: 0 auto;
}

.page_interior .main_focus
{
    background: #12434B url(../img/bg-inside-focus.png) no-repeat 0 center;
    background-size: cover;
}
.page_interior .inside_focus
{
    width: 100%;
    line-height: 0;
    text-align: center;
}

.home_welcome
{
    width: 100%;
    padding: 18px 12px 50px;
    background-color: #7d7d7d;
    color: #ffffff;
}
@media only screen and (min-width: 768px)
{   
    .main_focus
    {
        position: relative;
        z-index: 2;
    }

    .home_focus
    {
        position: relative;
        z-index: 1;
    }    
    .home_focus.vpadm_editable,
    .home_welcome.vpadm_editable
    {
        width: 100%;
    }
    .home_welcome.vpadm_editable_section
    {
        padding: 0;
        background:transparent;
    }
    
	.page_interior .fbcms_content.fbcms_plaintext.inside_title,
	.page_interior .fbcms_content.fbcms_plaintext.inside_intro	{
		position: relative;
		z-index: 4;
	}
    .fbcms_content.inside_focus::after {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        bottom: 0;
        width: 100%;
        background: rgba(0,0,0,.5);
    }
    .page_interior .main_focus_liner
    {
        padding: 20px 0;
    }
}
@media only screen and (min-width: 994px)
{
    .welcome_wrapper
    {
        position: absolute;
        top: 0;
        left: 0;
        bottom: 0;
    }
    .home_welcome
    {
        width: 33%;
        padding: 20px;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        z-index: 2;
        background-color: rgba(0,0,0,.45);
        padding: 30px 22px 10px;
    }    
    .page_interior .inside_focus {
        position: relative;
        z-index: 1;
    }

    .page_interior .main_focus_liner
    {
        padding: 40px 0;
    }
    .page_interior .inside_focus ~ .main_focus_liner
    {
        padding: 0;
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
        height: auto;
        z-index: 2;
        min-height: auto;
    }
}
@media only screen and (min-width: 768px) and (max-width: 993px)
{
    .welcome_wrapper
    {
        background-color: #7d7d7d;
    }
    .home_welcome
    {
        padding: 20px 0;
    }

    .page_interior .inside_focus {
        position: absolute;
        top: 0;
        bottom: 0;
        overflow: hidden;
        z-index: 1;
    }
    .page_interior .inside_focus img
    {
        position: absolute;
        height: 100%;
        width: auto;
        max-width: none;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
    }
}

/* Main Content Stuff */

/* Interior Specific */
.page_interior .center_content,
.page_interior .main_focus .center_col {
    padding: 12px;
}
.page_interior .main_content .side_col
{
    background-color: #F4F4F4;
}
@media only screen and (max-width: 767px)
{
    .page_interior .main_content .side_col
    {
        padding: 12px;
    }
}
@media only screen and (min-width: 768px)
{
    .page_interior .main_content
    {
        /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#f4f4f4+50,ffffff+50 */
        background: rgb(244,244,244); /* Old browsers */
        background: -moz-linear-gradient(left,  rgba(244,244,244,1) 50%, rgba(255,255,255,1) 50%); /* FF3.6-15 */
        background: -webkit-linear-gradient(left,  rgba(244,244,244,1) 50%,rgba(255,255,255,1) 50%); /* Chrome10-25,Safari5.1-6 */
        background: linear-gradient(to right,  rgba(244,244,244,1) 50%,rgba(255,255,255,1) 50%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f4f4f4', endColorstr='#ffffff',GradientType=1 ); /* IE6-9 */
    }

    .page_interior .center_col
    {
        width: 70%;
    }
    .page_interior .main_content .center_col
    {
        background: #fff;
    }
    .page_interior .main_focus .center_col
    {
        padding: 20px 0 10px 30px;
    }
    .page_interior .center_content
    {
        padding: 30px 0 20px 30px;
    }
    .page_interior .fbcms_content.inside_center.lastone
    {
        margin-bottom: 25px;
    }

    .page_interior .main_focus .side_col
    {
        padding: 20px 0 10px;
    }
    .page_interior .side_col
    {
        width: 30%;
        position: relative;
        padding: 30px 20px 20px 0;
    }
}
@media only screen and (min-width: 994px)
{
    .page_interior .main_focus .center_col
    {
        padding: 0 0 0 70px;
    }

    .page_interior .center_content
    {
        padding: 70px 0 50px 70px;
    }

    .page_interior .main_focus .side_col
    {
        padding: 0;
    }
    .page_interior .side_col
    {
        padding: 70px 70px 70px 0;
    }
}

/* Landing Specific */
@media only screen and (min-width: 768px)
{
    .page_landing .center_content .column
    {
        width: calc(50% - 1.5rem);
    }
}

/* Home Specific */
.page_home .scroll-icon
{
    position: absolute;
    bottom: 10px;
    left: 50%;
    z-index: 2;
    font: 13px/1.3 'Oswald', Arial,Helvetica,sans-serif;
    text-transform: uppercase;
    color: #fff;
}
.page_home .scroll-icon p
{
    transform: translateX(-50%);
}
.page_home .scroll-icon img
{
    vertical-align: middle;
}

.page_home .main_content .column
{
    padding: 12px;
}
.page_home .main_content_bottom 
{   
    position: relative;
    background-color: #ebebeb;
}
.page_home .main_content_bottom .component_liner
{
    padding: 0 12px;
}
.fbcms_content.home_bottom_title
{
    padding-top: 20px;
    text-align: center;
}
.home_bottom.firstone
{
    padding-top: 10px;
}
.home_bottom.lastone
{
    padding-bottom: 20px;
}
@media only screen and (min-width: 768px)
{
    .page_home .main_content .column
    {
        width: calc(33.3333% - 1.5rem);
        padding: 34px 0 20px;
        position: relative;
    }
    .page_home .main_content_bottom .component_liner
    {
        padding: 0;
        position: relative;
    }
}
@media only screen and (min-width: 994px)
{
    .page_home .main_content .column
    {
        width: calc(33.3333% - 3rem);
    }
}

/* OneCol Specific */
.page_interior.page_onecol .center_col
{
    width: 100%;
}

/* Side Navigation Menu */
@media only screen and (min-width: 768px)
{   
    .side-nav-drop {
        width: 100%;
        position: absolute;
		z-index: 4;
    }
    .side-nav-drop .top_level
    {
        background: #257887;
    }
    .side-nav-drop a
    {
        color: #fff;
    }
    .side-nav-drop .top_level_link
    {
        color: #fff;
        font: bold 17px/1.3 'Oswald', Arial,Helvetica,sans-serif;
        text-transform: uppercase;
        padding: 20px 45px 14px 20px;
    }
    .side-nav-drop .drop .item_link
    {
        padding: 5px 45px 5px 20px;
        font: 16px/1.3 'Oswald', Arial,Helvetica,sans-serif;
    }
    .side-nav-drop .sublist_0 > .sublist_item > .link_pair > .item_link
    { 
        padding: 7px 45px 7px 20px;
        /*text-transform: uppercase;*/
        border-top: 1px solid #359DB0;
    }
    .side-nav-drop .drop a:hover,
    .side-nav-drop .drop a:focus,
    .side-nav-drop .drop .current_item > .link_pair > .item_link
    {
        color: #e7f6f8;
        text-decoration: underline;
    }
    .side-nav-drop .side-drop-opener {
        display: block;
        line-height: 56px;
    }
    .side-nav-drop .drop .side-drop-opener {
        line-height: 35px;
    }
    .side-nav-drop .drop .side-drop-opener:focus
    {
        box-shadow: 0 0 1px rgba(255,255,255,.9);
    }
    .side-nav-drop .drop .sublist_1 .side-drop-opener {
        line-height: 30px;
    }
}
/* END Side Navigation Menu */

.bottom_content
{
    background-color: #ACC8CD;
    padding: 12px 12px 1px;
}
@media only screen and (min-width: 768px)
{
    .bottom_content
    {
        padding: 20px 0 1px;
    }
}
/*
===========================================================
 END MAIN FRAMEWORK
===========================================================
*/

/*
===========================================================
 FOOTER
===========================================================
*/
/* footer */
.fbcms_footer
{
    position: relative;
    color: #fff;
    font-size: 16px;
    line-height: 1.4;
}
.fbcms_footer a {
    color: #fff;
}
.goog-te-gadget,
.goog-te-gadget a
{
	color: #fff !important;
}
.goog-te-gadget .goog-te-combo
{
	margin: 0 !important;
}
.fbcms_footer .footer_top
{
    background-color: #257887; 
}
.fbcms_footer .footer_bottom
{
    background-color: #393939;
    text-align: center;
}
.fbcms_footer .footer_liner
{
    padding: 16px 12px;
}

.fbcms_content.building_info,
.site_script_foot
{
    display: block;
    margin-bottom: 20px;
}
.credits,
.fbcms_translate,
.link_pdfviewer
{
    display: block;
    margin-bottom: 10px;
}

.fbcms_content.building_info > span
{
    display: block;
}
.fbcms_content.building_info .building_name
{
    font-weight: bold;
    text-transform: uppercase;
}
.fbcms_building_info .divider
{
    display: none;
}

.fbcms_footer .copyright
{
    padding-right: 12px;
    border-right: solid 1px #fff;
    margin-right: 10px; 
}
@media only screen and (min-width: 768px)
{
    .fbcms_footer .footer_liner
    {
        padding: 20px 0;
    }

    .fbcms_footer .footer_top .column
    {
        width: 33%;
    }
    .fbcms_footer .center_col
    {
        text-align: center;
    }
    .fbcms_footer .right_col
    {
        text-align: right;
    }
}
@media print {
    .fbcms_translate,
    .link_pdfviewer
    {
        display: none;
    }
}
/*
===========================================================
 END FOOTER
===========================================================
*/

/*
-------------------------------------
 Rich Text Formatting
-------------------------------------
*/
h1
{
    color: #12434b;
    font: 26px/1.5 'Oswald', Arial,Helvetica,sans-serif;
    letter-spacing: 1px;
    text-transform: uppercase;
    position: relative;
    margin-bottom: 15px;
}
.main_focus h1,
.home_welcome .content_intro
{
    color: #ffffff;
}
h1 span
{
    font-size: 17px;
    line-height: 1.3;
    display: block;
    margin-bottom: 10px;
}
h1.inside_title
{
    padding: 0 0 8px; 
}
h1.inside_title::after
{
    content: "";
    position: absolute;
    top: 100%;
    left: 0; 
    height: 3px;
    width: 20px;
    background-color: #E79A25;
}

h2,
.story_search_results .story .story_title
{
    color: #635A4E;
    font: 20px/1.4 'Oswald', Arial,Helvetica,sans-serif;
    padding-bottom: 10px;
    border-bottom: solid 2px #E79A25;
    margin-bottom: 15px;
    text-transform: uppercase;
    letter-spacing: 1px;
    position: relative;
}

h3,
.fbcms_story_block .story .content_intro,
.fbcms_storylist .story .story_title
{
    color: #635A4E;
    font: 18px/1.4 'Oswald', Arial,Helvetica,sans-serif;
    margin-bottom: 6px;
}

h4,
.fbcms_spotlight .desc_short,
.fbcms_cards .fbcms_card_name,
.fbcms_news_headlines .fbcms_article_title,
.fbcms_newscontent .newsarticle_title
{
    color:#257887;
    font: bold 15px/1.3 'Open Sans', Arial,Helvetica,sans-serif;
	margin-bottom: 6px;
}

h5
{
    color: #635A4E;
    font: bold 12px/18px 'Open Sans', Arial,Helvetica,sans-serif;
    text-transform: uppercase;
}

h6
{
    color: #635A4E;
    font: bold 12px/18px 'Open Sans', Arial,Helvetica,sans-serif;
    text-transform: uppercase;
}

.content_intro
{    
    color: #767676;
    font: 300 16px/1.5 'Open Sans', Arial,Helvetica,sans-serif;
    margin: 0 0 19px;
}

.fbcms_content.inside_intro
{
    font: 16px/1.6 'Open Sans', Arial,Helvetica,sans-serif;
    color: #fff;
    max-width: 500px;
}

.content_buttonblock a,
a.building_button
{
    display: inline-block;
    padding: 14px 30px;
    font: 16px/1.4  'Oswald', Arial,Helvetica,sans-serif;
    text-transform: uppercase;
    background: #257887;
    color: #fff;
    text-decoration: none;
}
.home_welcome .content_buttonblock a
{
    background: #fff;
    color: #257887;
}
.content_buttonblock a:hover,
.content_buttonblock a:focus,
a.building_button:hover,
a.building_button:focus
{
    background: #635A4E;
    color: #fff;
}

/* Button Grid */
p.content_button-grid:where(:has(.content_buttonblock a))
{
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    grid-gap: 1rem;
    position: relative;
}
p.content_button-grid .content_buttonblock a
{
    display: block;
    margin: 0;
    height: 100%;
    display: flex;
    gap: .25em;
    justify-content: center;
    align-items: center;
    text-align: center;
    padding: .5rem;
    min-height: 4rem;
}

caption {
	text-align: left;
}
.fbcms_richtext_content table caption {
    text-align: left;
}
/*
-------------------------------------
 END Rich Text Formatting
-------------------------------------
*/

/*
===========================================================
 Calendar Styling
===========================================================
*/
.fbcms_upcoming_events .event_date 
{
    font: bold 15px/1.4 'Oswald', Arial,Helvetica,sans-serif;
    text-transform: none;
}
.fbcms_upcoming_events .event_title,
.fbcms_upcoming_events .event_title a
{
    font: 14px/18px 'Open Sans', Arial,Helvetica,sans-serif;
    display: block;
}
li.fbcms_upcoming_event_item .event_title a:hover,
li.fbcms_upcoming_event_item .event_title a:focus {
	text-decoration: underline;
}

/* Calendar List */
.month_table .month_header
{
    background-color: #277A88;
}
/* END Calendar List */

/* Calendar Grid */
.calendargrid .caltab .monthname
{
    color: #999999;
}
.calendargrid .caltab .dayofweek
{
    background-color: #12434b;
    border-color:#ffffff;
    border-right-color: #ffffff;
}
.calendargrid .caltab .currentmonth .daynumber
{
    background-color: #277A88;
    color: #ffffff;
}
/* END Calendar Grid */

/* Small Calendar Grid */
.fbcms_calendar_minigrid th {
    color: #635A4E;
}
.fbcms_calendar_mini .fbcms_calendar_mini_event 
{
    color: #277A88;
}
.fbcms_calendar_mini .fbcms_calendar_mini_monthName,
.fbcms_calendar_mini .fbcms_calendar_mini_yearNumber
{
    color: #635A4E;
	font-weight: bold;
}
.fbcms_calendar_mini .fbcms_calendar_mini_prevMonth,
.fbcms_calendar_mini .fbcms_calendar_mini_nextMonth
{
	background-color: #277A88;
}
.fbcms_calendar_mini .today, 
.fbcms_calendar_mini .isDay:hover, 
.fbcms_calendar_mini .isDay:focus
{
    color: #ffffff;
    background-color: #277A88;
}
/* END Small Calendar Grid */
/*
===========================================================
 END Calendar Styling
===========================================================
*/

/*
===========================================================
 News Styling
===========================================================
*/
.fbcms_headline_list_content
{
    padding-bottom: 20px;
    border-bottom: solid 2px #F4F4F4;
}
.fbcms_news_headlines .fbcms_article_date,
.newsarticle_date
{
    font: 400 13px/1.4 'Oswald', Arial,Helvetica,sans-serif;
}
.fbcms_news_headlines .fbcms_headline_date,
.fbcms_newscontent .fbcms_newscontent_month 
{
    font: bold 15px/1.4 'Oswald', Arial,Helvetica,sans-serif;
}
/*
===========================================================
 END News Styling
===========================================================
*/

/*
===========================================================
 Stories Styling
===========================================================
*/
.story_search_form .category_filter .category
{
    border-top-color: #e79a25;
    border-bottom-color: #e79a25; 
}
.story_search_form .category_filter .category_topper
{
    position: relative;
    font-weight: bold;
    color: #257887;
    font-size: 1.1em;
    padding-right: 26px;
}
.story_search_form .category_filter .category_topper a {
    float: none;
    position: absolute;
    right: 0;
    top: 0;
}
.story_search_form .search_filter .item label
{
    font-weight: normal;
}
.story_search_form .search_filter .item label > * 
{
    vertical-align: middle;
}

.story_list .story
{
    border-bottom: solid 2px #e79a25;
    padding: 10px 5px 15px;
}
.story_list .story:hover, 
.story_list .story:focus {
    background-color: #e7e7e8;
}
.story_list .story .story_title
{
    border-bottom: none;
    display: block;
    margin-bottom: 0;
    padding-bottom: 6px;
}
.story_list .story .story_storydate
{
    font-weight: bold;
    padding: 5px 0;
}
@media only screen and (max-width: 499px)
{
    .story_list .story.Wrap .story_thumbnail
    {
        float: none;
    }
}
@media only screen and (min-width: 500px)
{
    .story_list_result.story.Wrap  .story_thumbnail
    {
        float: left;
        margin: 0 1rem 6px 0;
        max-width: 40%;
    }
}
@media only screen and (min-width: 768px)
{
    .story_search_form #SearchText {
        width: calc(100% - (3.75em + 39px));
    }
    .story_search_form .search_filter.date_range_filter input {
        width: calc(100% - (4em + 1px));
    }
}
@media only screen and (min-width: 994px)
{
    .story_list .story.Wrap
    {
        display: grid;
        grid-template-columns: 40% calc(60% - 1rem);
        grid-column-gap: 1rem;
    }
    .story_list_result.story.Wrap .story_thumbnail
    {
        max-width: 100%;
        margin: 0;
        grid-row-start: 1;
        grid-row-end: 5;
    }
}

/* Perma Page */
.fbcms_story_block .story .storymedia
{
    padding-bottom: 10px;
}
.fbcms_story_block .story_metadata_text {
    display: flex;
    flex-flow: column;
}
.fbcms_story_block .story .story_summary
{
    order: 2;
    margin-bottom: 15px;
}
/*
===========================================================
 END Stories Styling
===========================================================
*/

/*
===========================================================
 Staff Styling
===========================================================
*/
.fbcms_staff_listing .email_icon,
.fbcms_staff_search .email_icon,
.fbcms_contact_email .email_icon  {
    background-color: #277A88;
}
.fbcms_staff_listing_header,
.fbcms_staff_search_results .header {
	color: #277A88;
    font-weight: bold;
}

@media only screen and (min-width: 768px)
{
    .page_interior:not(.page_onecol) .fbcms_staff_cards > .fbcms_contentbody > .fbcms_staffentry {
        width: calc(33.333% - 3px);
        padding: 0 0.438em 0.875em;
    }
}
/*
===========================================================
 END Staff Styling
===========================================================
*/

/* === Building Styling ==============================================================*/
.building_list.fbcms_grid
{
    grid-gap: 1.8em 1em;
    margin-bottom: 2rem;
}
.building_list .building_liner
{
    background: #fff;
    padding: 15px;
    filter: drop-shadow(0 1px 2px rgb(0 0 0 / 20%));
    transform: scale(.98);
    transition: all .3s ease-out;
    overflow: visible;
    font-size: 1.1rem;
    border-radius: 5px;
}
.building_list .building .building_image
{
    max-width: calc(100% + 30px);
    margin: -15px -15px 10px -15px;
}
.building_list .building .building_title
{
    font-size: 1.2rem;
}
.building .category_container
{
    margin-bottom: 5px;
    line-height: 1.3;
}
.building_liner .building_link
{
    text-align: center;
}
.building_list .building .building_button
{
    margin: 0 auto -2rem;
    padding: 8px 12px;
}

/*
===========================================================
 Pager Styling
===========================================================
*/
.pager
{
    text-align: center;
    width: 100%;
}
.pager a .btnResultNavigation
{
    background-color: #277A88;
}
.changeperpageform select
{
    border-color: #999999;
}
/*
===========================================================
 END Pager Styling
===========================================================
*/

/*
===========================================================
 Spotlight Styling
===========================================================
*/
.bottom_spots .fbcms_spotlight
{
    overflow: visible;
    margin-bottom: .8rem;
}
.bottom_spots .fbcms_spotlight .fbcms_spotlight_liner
{
    background-color: #fff;
    text-align: center;
    padding: 28px 5px;
}
.bottom_spots .fbcms_spotlight .fbcms_spotlight_liner:hover,
.bottom_spots .fbcms_spotlight .fbcms_spotlight_liner:focus
{
    box-shadow: 0 2px 10px -2px rgba(0,0,0,.7);
}

.bottom_spots .fbcms_spotlight .fbcms_spotlight_image 
{
    min-height: 45px;
}
.bottom_spots .fbcms_spotlight .desc_short
{
    color: #635A4E;
    font: 16px/1.5 'Oswald',Arial,Helvetica,sans-serif;
}
.bottom_spots .fbcms_spotlight .desc_long,
.bottom_spots .fbcms_spotlight .more_link
{
    display: none;
}
@media only screen and (min-width: 768px)
{
    .bottom_spots .fbcms_spotlight .fbcms_spotlight_liner
    {
        height: 100%;
    }
    .bottom_spots .spotlights_horizontal .fbcms_spotlight
    {
        /*width: calc(25% - .8rem) */
        flex-basis: 24%;
        margin: 0 .5% 5px;
    }
}
@media only screen and (min-width: 994px)
{
    .bottom_spots .spotlights_horizontal .fbcms_spotlight
    {
        /*width: calc(14.285% - .8rem) */
        flex-basis: 13.2%;
    }
}
/*
===========================================================
 END Spotlight Styling
===========================================================
*/

/*
===========================================================
 Expandable Content Styling
===========================================================
*/
.fbcms_ec_title
{
    background-color: #277A88;
}
.fbcms_ec_title:hover,
.fbcms_ec_title:focus
{
    background-color: #12434b;
}
.fbcms_ec_title h2
{
    line-height: initial;
    border-bottom: none;
}
/*
===========================================================
 END Expandable Content Styling
===========================================================
*/

/*
===========================================================
  Fly-Up Tab Customization
===========================================================
*/
.flyup_tab 
{
    font-size: 14px;
    line-height: 16px;
    color: #ffffff;
    background-color: #0c6448;
}
.flyup_slide
{
    background-color: #0c6448;
    color: #ffffff;
    margin: 0 auto;
    width: 100%;
}
.flyup_slide a
{
    color: #ffffff;
}
/*
===========================================================
  END Fly-Up Tab Customization
===========================================================
*/

.page_body #FB_budgetLinkDiv {
    top: 20px;
}
#FB_budgetLinkDiv h2
{
    border-bottom: none;
}
