/* Template I */

html {
	box-sizing: border-box;
}

*,
*:before,
*:after {
	box-sizing: inherit;
}

/* Body */
.page_body,
.fbd_content,
.fbcms_htmleditor
{
    color: #2c2c2c;
    font: 400 1rem/1.5 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: #222;
}

input,
textarea,
select {
	font: 100% Arial, Helvetica, sans-serif;
	color: #757575;
	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_wrapper,
.fbcms_ppz_widget_liner
{
    width: 100%;
    position: relative;
}
.fbcms_component
{
    max-width: 100%;
    display: block;
    width: 100%;
}
.component_liner
{
    width: 100%;
}
@media only screen and (min-width: 768px)
{
    .component_liner,
    #navigation,
    .fbcms_ppz_widget_liner
    {
        width: 95%;
        height: 100%;
        position: relative;
        max-width: 1200px;
        margin: 0 auto;
    }
}

/*
===========================================================
 HEADER
===========================================================
*/
.fbcms_header
{
    background: #fff;
    z-index: 2;
}
.fbcms_header:after {
	content: " ";
	display: table;
	clear: both;
}
@media only screen and (min-width: 768px) 
{
    .fbcms_header
    {
        position: relative;
        box-shadow: 0 2px 24px 0 rgba(0,0,0,0.3);
    }
    .fbcms_header .header_main
    {
        position: relative;
        height: 122px;
    }
}
@media only screen and (max-width: 767px)
{
    .fbcms_header {
        box-shadow: 0 5px 10px rgba(0,0,0,.2);
    }
}

/* Logo */
.logo {
    padding: 46px 12px 12px;
    text-decoration: none;
}
.site_logo,
.site_logo_text
{
    display: inline-block;
    vertical-align: middle;
}
.site_logo img,
.site_logo_text img {
    max-width: 100%;
    height: auto;
}
@media only screen and (min-width: 768px)
{
    .logo {
        height: 0;
        padding: 0;
    }
    .site_logo {
        margin: 0 0 0 0;
    }

    .site_logo_text {
        margin: 0 0 0 0;
    }
}

/* Search */
.search-form
{
    position: absolute;
    top: 6px;
    right: 44px;
    width: auto;
    z-index:100;
    font-size: .8rem; 
}

.search-form .search-input,
.search-form .submit
{
    display: inline-block;
    height: 1.8rem;
    vertical-align: middle;
    border: none;
}

.search-form .search-input
{
    width: 152px;
    padding: 5px 12px;
    background-color: #fff;
    border: solid 1px #dedede;
    color: #2e2e2e;
}
.search-form .submit
{
    color: #ffffff;
    float: right;
    text-indent: -9999px;
    width: 1.8rem;
    position: relative;
    background: #656565 url(../img/bg-search-ico.png) no-repeat center;
}
.search-form .submit:hover,
.search-form .submit:focus
{
    opacity: 0.6;
}

.search-form legend, 
.search-form label {
    width: 1px;
    height: 1px;
    position: absolute;
}
@media only screen and (min-width: 768px)
{
    .search-form
    {
        right: 0;
        top: 8px;
    }
}
@media only screen and (max-width: 767px)
{
    /* search input collapse */
    .search-form .search-input
    {
        padding: 0;
        width: 0;
        border: none;
        -webkit-transition: all .2s linear;
        transition: all .2s linear;
    }
    .search-form.opened .search-input 
    {
        padding-left: 4px;
        width: 160px;
        border: solid 1px #dedede;
    }
}
@media print {
    .search-form
    {
        display: none;
    }
}
/* END Search */

/* Site Scripts */
.vpadm_editable_section.site_script_head
{
    height: 0;
}
.fbcms_content.site_script_head
{
    display: block;
    position: absolute;
    top: 9px;
    right: 84px;
}
.fbcms_content.site_script_foot
{
    display: block;
    position: relative;
    margin-bottom: 10px;
}
@media only screen and (min-width: 768px)
{
    .fbcms_content.site_script_head {
        top: 50px;
        right: 140px;
        z-index: 4;
    }
}

/* Social Media Script */
.fbcms_content ul.social_media_list {
    margin: 0;
}
.social_media_list::after
{
    content: "";
    display: table;
    clear: both;
}
.fbcms_content ul.social_media_list > li {
    display: inline-block;
    margin: 0 6px;
    list-style: none;
}
.fbcms_content ul.social_media_list > li:first-child {
    margin-left: 0;
}
.fbcms_content ul.social_media_list > li:last-child {
    margin-right: 0;
}

.fbcms_content .social_media_list a {
    color: #222;
    text-align: center;
}
.social_media_list .social-media-circle {
    display: block;
    border-radius: 50%;
    padding: 3px 6px;
    color: #fff;
    background-color: #222;
    color: #fff;
    width: 24px;
    height: 24px;
}
.social_media_list a:hover,
.social_media_list a:focus
{
    opacity: .8;
    text-decoration: none;
}
@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: 196px;
        top: -113px;
        /*z-index: 101;*/
    }
    
    .menu_head li
    {
        padding: 0 8px;
        position: relative;
    }
    
    .menu_head a
    {
        font-size: .825rem;
        line-height: 1.2;
        color: #222;
    }
}

/* Focus Menu */
@media only screen and (min-width: 768px)
{   
    .menu_focus
    {
        position: absolute;
        right: 0px;
        top: -34px;
        /*z-index: 101;*/
    }
    
    .menu_focus li
    {
        padding: 0 10px;
        position: relative;
    }
    .menu_focus li:last-child
    {
        padding-right: 0;
    }
    
    .menu_focus a
    {
        font-size: .825rem;
        line-height: 1.2;
        display: block;
        color: #222;
        font-weight: bold;
    }
}

/* Foot Menu */
.menu_foot
{
    margin-bottom: 10px;
}
.menu_foot li
{
    margin-bottom: 5px;
}
@media only screen and (min-width: 768px)
{   
    .menu_foot li
    {
        padding: 0 10px;
        border-right: 1px #c2bebb solid;
    }
    .menu_foot li:first-child
    {
        padding-left: 0;
    }
    .menu_foot li:last-child
    {
        padding-right: 0;
        border-right: none;
    }
}

/* Quicklinks Menu */
@media only screen and (max-width: 767px)
{
    .drop-nav.menu_quicklinks .menu_title
    {
        display: none;
    }
    .drop-nav.menu_quicklinks .simplemenu_container {
        display: block;
    }
}
@media only screen and (min-width: 768px)
{
    .drop-nav.menu_quicklinks {
        position: absolute;
        right: 0;
        top: -76px;
    }
    .drop-nav.menu_quicklinks .menu_title
    {
        display: block;
        position: relative;
        height: 1.8rem;
        width: 120px;
        font-size: .825rem;
        padding: 4px 30px 5px 12px;
        color: #222;
        background-color: #ddd;
        text-decoration: none;
    }
    .drop-nav.menu_quicklinks .menu_title:after
    {
        content: "";
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 6px 5px 0 5px;
        border-color: #222 transparent transparent transparent;
        position: absolute;
        top: 12px;
        right: 12px;
    }
    .drop-nav.menu_quicklinks .menu_title:hover:after,
    .drop-nav.menu_quicklinks .menu_title:focus:after
    {
        border-color: transparent transparent #222 transparent;
        border-width: 0 5px 6px 5px;
    }

    .drop-nav.menu_quicklinks .simplemenu_container
    {
        background-color: #fff;
        width: 182px;
        right: 0;
        -webkit-box-shadow: 0px 1px 2px -1px rgba(0,0,0,1);
        -moz-box-shadow: 0px 1px 2px -1px rgba(0,0,0,1);
        box-shadow: 0px 1px 2px -1px rgba(0,0,0,1);
        /*z-index: 200;*/
    }
    .drop-nav.menu_quicklinks .simplemenu_container a
    {
        display: block;
        padding: 6px 12px;
        font-size: .825rem;
        text-decoration: none;
        color: #222;
    }
    .drop-nav.menu_quicklinks .simplemenu_container a:hover,
    .drop-nav.menu_quicklinks .simplemenu_container a:focus
    {
        background-color: #222;
        color: #fff;
    }
}

/* Subpages Menu */
@media print, screen and (min-width: 768px)
{
    .menu_subpages.drop-nav
    {
        display: none;
    }
}

/* Breadcrumb Nav */
.breadcrumb-nav
{
    padding: 12px 12px 0;
}
.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 
    {
        position: relative;
        z-index: 101;
    }
    .main-nav .top_level_item
    {
        display: inline-block;
        vertical-align: top;
        position: relative;
        margin: 0 12px;
    }
    .main-nav .top_level_item:last-child
    {
        margin-right: 0;
    }
    .main-nav .top_level_item .top_level_link
    {
        color: #222;
        text-decoration: none;
        font-size: 1rem;
        padding: 10px 0 2px;
        font-weight: bold;
        border-bottom: solid 2px transparent;
        margin-bottom: 10px;
    }
    .main-nav .top_level_item.active .top_level_link,
	.main-nav .top_level_item:hover .top_level_link,
    .main-nav .top_level_item.hoverfocus .top_level_link
    {
        color: #000;
        border-bottom-color: #222;
    }
    
    /* drop-down */
    .main-nav .top_level_item > .drop
    {
        top: 100%;
        background-color: #ffffff;
        width: 200px;
        -webkit-box-shadow: 0px 1px 2px -1px rgba(0,0,0,0.8);
        -moz-box-shadow: 0px 1px 2px -1px rgba(0,0,0,0.8);
        box-shadow: 0px 1px 2px -1px rgba(0,0,0,0.8);
        z-index: 200;
    }
    .main-nav .top_level_item > .drop a 
    {
        color: #222;
        font-size: .825rem;
        padding: 6px 12px;
        text-decoration: none;
    }
    .main-nav .top_level_item > .drop li a:hover,
    .main-nav .top_level_item > .drop li a:focus
    {
        background-color: #222;
        color: #fff;
    }
}
@media print {
    .navigation_wrapper
    {
        display: none !important;
    }
}

/* nav slider */
@media only screen and (max-width: 767px) {
    .slider-opener.secondary-opener
    {
        top: 4px;
        right: 8px;
        position: absolute;
        display: block;
    }

    .header_liner > .slider-opener.changerbutton:before, 
    .header_liner > .slider-opener.changerbutton:after, 
    .header_liner > .slider-opener.changerbutton span {
        background-color: #222;
    }
    
    .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 5px #ddd;
    }
}

/* Side Navigation Menu */
.side-nav
{
    display: none;
}
@media only screen and (min-width: 768px)
{
    .side-nav
    {
        position: relative;
        display: block;
        background-color: #222;
        color: #fff;
        padding: 20px 20px 35px;
        margin-bottom: 20px;
    }
    .side-nav .sidelist_0
    {
        position: relative;
        z-index: 2;
    }
    .side-nav .sidelist_0 > li > a
    {
        color: #fff;
        font: bold 2rem/1.4 'Roboto',Arial,Helvetica, sans-serif;
        margin: 0 0 .5rem;
    }
    .side-nav .sidelist_1,
    .side-nav .sidelist_1 .side_sublist
    {
        padding-left: 16px;
        position: relative;
    }
    .side-nav .sidelist_1 a
    {
        color: #fff;
        font-weight: bold;
        position: relative;
    }
    .side-nav .sidelist_1 a:hover,
    .side-nav .sidelist_1 a:focus,
    .side-nav .sidelist_1 .current_item > a
    {
        text-decoration: none;
    }
    .side-nav .sidelist_1 a:hover::before,
    .side-nav .sidelist_1 a:focus::before,
    .side-nav .sidelist_1 .current_item > a::before
    {
        content: "\f105";
        font-weight: 900;
        font-family: 'Font Awesome 5 Free';
        position: absolute;
        left: -14px;
        top: 2px;
        color: #fff;
    }
}
@media only screen and (min-width: 994px)
{
    .side-nav
    {
        min-height: 442px;
        padding: 40px 30px 30px;
    }
    .side-nav .sidelist_0 > li > a
    {
        padding: 0 0 0 1rem;
    }
}
/* END Side Navigation Menu */
/*
===========================================================
 END MENUS
===========================================================
*/

/*
===========================================================
 MAIN CONTENT FRAMEWORK
===========================================================
*/

/* Main Structure */
.fbcms_main
{
    flex: 1;
}
@media only screen and (min-width: 768px)
{
    .fbcms_main
    {
        overflow: hidden;
        position: relative;
        z-index: 1;
    }
    .main_content
    {
        position: relative;
    }
    .page_interior .main_content::before {
        content: "";
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        height: 442px;
        background: #ECECEC;
    }
    .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
    {
        order: 1;
    }
    .center_col
    {
        order: 2;
    }    
    .right_col
    {
        order: 3;
    }
}
@media print {
}

/* Focus Areas */
.main_focus
{
    overflow: hidden;
}
.home_focus,
.inside_focus,
.landing_focus
{
    width: 100%;
}

.inside_focus_wrapper .fbcms_image
{
    line-height: 0;
}

.fbcms_imagerotator .cycle-slide
{
    width: 100%;
}
.fbcms_photogallery .fbcms_imagerotator .slide img {
    margin: 0 auto;
}

.fbcms_content.home_welcome
{
    width: 100%;
    max-width: 768px;
    padding: 18px 12px;
    text-align: center;
}
.focus_split .home_welcome
{
    text-align: left;
    background-color: #222;
    color: #ffffff;
}
@media only screen and (min-width: 768px)
{   
    .main_focus
    {
        background: #aaa;
    }
    .focus_split .main_focus_liner 
    {
        display: -webkit-flex;
        display: flex;
        -webkit-align-items:stretch;
        align-items:stretch;
        -webkit-justify-content: space-between;
        justify-content: space-between;
    }

    .home_focus
    {
        position: relative;
        z-index: 1;
    }
    .fbcms_content.home_welcome
    {
        padding: 20px;
    }

    .focus_split .home_focus
    {
        width: 66.667%;
    }
    .focus_split .home_welcome
    {
        width: 33.334%;
    }

    .focus_split .home_focus.vpadm_editable,
    .focus_split .home_welcome.vpadm_editable
    {
        width: 100%;
        padding: 0;
    }

    .page_interior .inside_focus_wrapper
    {
        width: 100%;
        position: relative;
    }
    .page_interior .inside_focus_wrapper img
    {
        width: 100%;
        height: auto;
    }
}
@media only screen and (min-width: 994px)
{
    .fbcms_content.home_welcome
    {
        padding: 30px 30px 20px;
    }
}

/* Rotator Overlay */
.fbpgro_overlay
{
    background-color: #222;
    color: #fff;
    padding: 12px;
    font-weight: 400;
}
.fbpgro_title
{
    font-weight: bold;
}
.fbpgro_link
{
    color: #fff;
}
@media only screen and (min-width: 600px)
{
    .fbpgro_overlay
    {
        height: auto;
        background-color: rgba(0,0,0,.55);
    }
}
@media only screen and (min-width: 768px)
{
    .full_focus .fbpgro_overlay
    {
        position: relative;
        margin: 0 auto;
        padding: 0;
        overflow: visible;
        width: 95%;
        max-width: 1200px;
    }
    .full_focus .fbpgro_textwrapper
    {
        background-color: rgba(0,0,0,.55);
        position: absolute;
        bottom: 20px;
        width: auto;
        max-width: 60%;
        padding: 20px;
    }
    .full_focus .fbpgro_title
    {
        font-size: 25px;
    }
}
@media only screen and (min-width: 994px)
{   
    .full_focus .fbpgro_textwrapper
    {
        bottom: 40px;
        width: auto;
        max-width: 40%;
    }
}

/*~~ Flexible Content Areas ~~*/
.flexi,
.flexi .fbcms_section
{
    width: 100%;
    position: relative;
}
@media only screen and (min-width: 500px)
{
    .flexi,
    .flexi .fbcms_section
    {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -webkit-flex-direction: row;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: space-between;
    }
    .flexi.centered
    {
        text-align: center;
        justify-content: space-around;
    }
    .fbcms_editmode .flexi .fbcms_section
    {
        margin: 30px 0;
    }

    /* http://lea.verou.me/2011/01/styling-children-based-on-their-number-with-css3/ 
    -- editmode selectors added to accomodate add block button as an additional item */

    /* When 2 or more blocks */
    .flexi .fbcms_content,
    .fbcms_editmode .flexi .fbcms_content:first-child:nth-last-child(3), 
    .fbcms_editmode .flexi .fbcms_content:first-child:nth-last-child(3) ~ .fbcms_content
    {
        width: calc(50% - 1.5rem);
    }

    .flexi .fbcms_content:only-child,
    .fbcms_editmode .flexi .fbcms_content:first-child:nth-last-child(2), 
    .fbcms_editmode .flexi .fbcms_content:first-child:nth-last-child(2) ~ .fbcms_content
    {
        width: 100%;
    }

    .flexi .fbcms_section > .addblock_buttonbar_wrapper
    {
        min-width: 100%;
    }
}
@media only screen and (min-width: 768px)
{
    /* When 3 flexi content blocks*/
    .flexi .fbcms_content:first-child:nth-last-child(3), 
    .flexi .fbcms_content:first-child:nth-last-child(3) ~ .fbcms_content,
    .fbcms_editmode .flexi .fbcms_content:first-child:nth-last-child(4), 
    .fbcms_editmode .flexi .fbcms_content:first-child:nth-last-child(4) ~ .fbcms_content
    {

        width: calc(33.333% - 1.5rem);
    }

    /* When 4 flexi content blocks */
    .flexi .fbcms_content:first-child:nth-last-child(4), 
    .flexi .fbcms_content:first-child:nth-last-child(4) ~ .fbcms_content,
    .fbcms_editmode .flexi .fbcms_content:first-child:nth-last-child(5), 
    .fbcms_editmode .flexi .fbcms_content:first-child:nth-last-child(5) ~ .fbcms_content
    {
        width: calc(25% - 1.5rem);
    }

    /* When 5 flexi content blocks */
    .flexi .fbcms_content:first-child:nth-last-child(5), 
    .flexi .fbcms_content:first-child:nth-last-child(5) ~ .fbcms_content,
    .fbcms_editmode .flexi .fbcms_content:first-child:nth-last-child(6), 
    .fbcms_editmode .flexi .fbcms_content:first-child:nth-last-child(6) ~ .fbcms_content
    {
        width: calc(20% - 1.5rem);
    }

    /* When 6 flexi content blocks - back down to thirds */
    .flexi .fbcms_content:first-child:nth-last-child(6), 
    .flexi .fbcms_content:first-child:nth-last-child(6) ~ .fbcms_content,
    .fbcms_editmode .flexi .fbcms_content:first-child:nth-last-child(7), 
    .fbcms_editmode .flexi .fbcms_content:first-child:nth-last-child(7) ~ .fbcms_content
    {
        width:  calc(33.333% - 1.5rem);
    }
    /* Any more than 6 defaults to halves */
}

/* Section Padding */
.fbcms_content.firstone,
.flexi .fbcms_content
{
    padding-top: 15px;
}
.fbcms_content.lastone
{
    padding-bottom: 15px;
}

.section_title1,
.section_title2,
.section_title3,
.section_title4,
.section_title5
{
    text-align: center;
    padding: 20px 12px 0;
}
@media only screen and (min-width: 500px)
{
    .flexi .fbcms_content
    {
        padding: 10px 0 20px;
    }
}
@media only screen and (min-width: 768px)
{
    .section_title1,
    .section_title2,
    .section_title3,
    .section_title4,
    .section_title5
    {
        padding: 20px 0 0;
    }    
}
@media only screen and (min-width: 994px)
{
    .page_home .fbcms_content.firstone
    {
        padding-top: 40px;
    }
    .page_home .fbcms_content.lastone
    {
        padding-bottom: 30px;
    }

    .page_home .section_title1,
    .page_home .section_title2,
    .page_home .section_title3,
    .page_home .section_title4,
    .page_home .section_title5
    {
        padding: 40px 0 0;
    }   
}
/*~~ END Flexible Content Areas ~~*/

/* Interior Specific */
.page_interior .main_content .center_content {
    padding: 12px;
}
.page_interior .side_col
{
    background-color: #eee;
}
.page_interior .side_col .side_content
{
    padding: 0 12px;
}
@media only screen and (min-width: 768px)
{
    .page_interior .column.center_col
    {
        width: 66.667%;
        background: #fff;
    }
    .page_interior .main_content .center_content
    {
        padding: 0 20px 0;
    }

    .page_interior .main_content .side_col
    {
        width: 33.334%;
        position: relative;
        /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#f4f4f4+0,ffffff+70 */
        background: #f4f4f4; /* Old browsers */
        background: -moz-linear-gradient(left,  #f4f4f4 0%, #ffffff 70%); /* FF3.6-15 */
        background: -webkit-linear-gradient(left,  #f4f4f4 0%,#ffffff 70%); /* Chrome10-25,Safari5.1-6 */
        background: linear-gradient(to right,  #f4f4f4 0%,#ffffff 70%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f4f4f4', endColorstr='#ffffff',GradientType=1 ); /* IE6-9 */
    }
    .page_interior .side_col .side_content
    {
        padding: 0 20px;
    }
}
@media only screen and (min-width: 994px)
{
    .page_interior .side_col .side_content
    {
        padding: 0 20px 0 30px;
    }
    .page_interior .main_content .center_content
    {
        padding: 0 40px;
    }
}

/* Landing Specific */
@media only screen and (min-width: 768px)
{
    .page_landing .center_content .column {
        width: calc(50% - 1.5rem);
    }
}

/* Home Specific */
.page_home .main_content .component_liner
{
    padding: 0 12px;
}
.page_home .main_content .fbcms_component:nth-child(1)
{
    background-color: #eee;
}
.page_home .main_content .fbcms_component:nth-child(2)
{
    background-color: #fff;
}
.page_home .main_content .fbcms_component:nth-child(3)
{
    background-color: #eee;
}
.page_home .main_content .fbcms_component:nth-child(4)
{
    background-color: #ddd;
}
.page_home .main_content .columns h2
{
    display: block !important;
    background-color: #222;
    color: #fff;
    padding: 15px 20px;
}
@media only screen and (min-width: 768px)
{
    .page_home .main_content .column
    {
        width: calc(33.333% - 1.5rem);
        position: relative;
    }
    .page_home .main_content .component_liner
    {
        padding: 0;
        position: relative;
    }
}

/* Home Quicklink Blocks */
.home_quicklinks.fbcms_content
{
    text-align: center;
}
.home_quicklinks.fbcms_richtext a
{
    text-decoration: none;
    color: #666;
}
.home_quicklinks.fbcms_richtext a:hover,
.home_quicklinks.fbcms_richtext a:focus
{
    color: #111;
}
.home_quicklinks.fbcms_richtext .fa,
.home_quicklinks.fbcms_richtext .cke_widget_wrapper_fa {
    display: block;
    margin: 0 auto 10px;
}

/* OneCol Specific */
.page_interior.page_onecol .column.center_col
{
    width: 100%;
}
/*
===========================================================
 END MAIN FRAMEWORK
===========================================================
*/

/*
===========================================================
 FOOTER
===========================================================
*/
.fbcms_footer
{
    position: relative;
    background-color: #222;
    color: #bbb;
    font-size: .825rem;
}
.fbcms_footer .footer_liner
{
    padding: 16px 12px;
}
.fbcms_footer a {
    color: #bbb;
}
.goog-te-gadget,
.goog-logo-link
{
    color: #bbb !important;
}
.goog-te-gadget .goog-te-combo
{
    margin: 4px 0 0 0 !important;
}

.fbcms_content.building_info {
    margin: 0 0 6px;
}
.fbcms_content.building_info > span
{
    display: block;
}

.fbcms_content.building_info,
.credits,
.fbcms_translate,
.link_pdfviewer
{
    display: block;
    margin-bottom: 10px;
}
.fbcms_building_info .divider
{
    display: none;
}
.copyright
{
    padding-right: 12px;
    border-right: solid 1px #bbb;
    margin-right: 6px;
}
@media only screen and (min-width: 768px)
{
    .fbcms_footer .footer_liner
    {
        padding: 20px 0;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: space-between;
        justify-content: space-between;
    }

    .fbcms_footer .footer_left
    {
        width: 66%;
        text-align: left;
    }
    .fbcms_footer .footer_right
    {
        width: 33%;
        text-align: right;
    }

    .fbcms_content.building_info > span
    {
        display: inline-block;
    	padding: 0 10px;
        border-right: 1px #c2bebb solid;
    	position: relative;
    	z-index: 1;
    }

    .fbcms_content.building_info > span:first-child
    {
        padding-left: 0;
    }
    .fbcms_content.building_info > span:last-child
    {
        padding-right: 0;
        border-right: none;
    }
}
@media print, screen and (max-width: 767px)
{
    .fbcms_content.building_info .divider
    {
        display: none;
    }
}
@media print {
    .fbcms_translate,
    .link_pdfviewer
    {
        display: none;
    }
}
/*
===========================================================
 END FOOTER
===========================================================
*/

/*
-------------------------------------
 Rich Text Formatting
-------------------------------------
*/
h1
{
    color: #222;
    font: bold 2rem/1.4 'Roboto',Arial,Helvetica,sans-serif;
    padding: 20px 0 10px;
}
.focus_split .home_welcome h1,
.focus_split .home_welcome .content_intro
{
    color: #ffffff;
}
h1 span
{
    font-size: .5em;
    line-height: 1;
    font-weight: normal;
    text-transform: uppercase;
    display: block;
}

h2
{
    color: #222;
    font: bold 1.5rem/1.4 'Roboto',Arial,Helvetica,sans-serif;
    margin-bottom: 15px;
}

h3
{
    color: #222;
    font: bold 1.25rem/1.4 'Roboto',Arial,Helvetica,sans-serif;
    margin-bottom: 5px;
}

h4,
.fbcms_spotlight .desc_short,
.fbcms_cards .fbcms_card_name,
.fbcms_news_headlines .fbcms_article_title,
.fbcms_newscontent .newsarticle_title,
.fbcms_upcoming_events .event_title, 
.fbcms_upcoming_events .event_title a
{
    color:#222;
    font: bold 1.125rem/1.4 'Roboto',Arial,Helvetica,sans-serif;
	margin-bottom: 0;
}

h5
{
    color: #222;
    font: bold 1rem/1.4 'Roboto',Arial,Helvetica,sans-serif;
}
h6
{
    color: #222;
    font: bold .9rem/1.4 'Roboto',Arial,Helvetica,sans-serif;
    text-transform: uppercase;
}

.content_intro
{    
    color: #666;
    font: 300 1.4rem/1.5 'Roboto',Arial,Helvetica,sans-serif;
    margin: 0 0 19px;
}
/*
-------------------------------------
 END Rich Text Formatting
-------------------------------------
*/

/*
===========================================================
 Calendar Styling
===========================================================
*/
/* Upcoming Events */
li.fbcms_upcoming_event_item a.event_title:hover,
li.fbcms_upcoming_event_item a.event_title:focus {
    text-decoration: underline;
}

/* Calendar List */
.month_table .month_header
{
    background-color: #333;
}
/* END Calendar List */

/* Calendar Grid */
.calendargrid .caltab .monthname
{
    color: #999999;
}
.calendargrid .caltab .dayofweek
{
    background-color: #333;
    border-color:#ffffff;
    border-right-color: #ffffff;
}
.calendargrid .caltab .currentmonth .daynumber
{
    background-color: #333;
    color: #ffffff;
}
/* END Calendar Grid */

/* Small Calendar Grid */
.fbcms_calendar_minigrid th {
    color: #333;
}
.fbcms_calendar_mini .fbcms_calendar_mini_event 
{
    color: #333;
}
.fbcms_calendar_mini .fbcms_calendar_mini_monthName,
.fbcms_calendar_mini .fbcms_calendar_mini_yearNumber
{
    color: #333;
	font-weight: bold;
}
.fbcms_calendar_mini .fbcms_calendar_mini_prevMonth,
.fbcms_calendar_mini .fbcms_calendar_mini_nextMonth
{
	background-color: #333;
}

.fbcms_calendar_mini .today, 
.fbcms_calendar_mini .isDay:hover, 
.fbcms_calendar_mini .isDay:focus
{
    color: #ffffff;
    background-color: #222;
}
/* END Small Calendar Grid */

/*
===========================================================
 END Calendar Styling
===========================================================
*/

/*
===========================================================
 News Styling
===========================================================
*/
.fbcms_newscontent .newsarticle_date,
.fbcms_news_headlines .fbcms_article_date {
    font-weight: normal;
    font-size: .95em;
}
/*
===========================================================
 END News Styling
===========================================================
*/

/*
===========================================================
 Staff Styling
===========================================================
*/
.fbcms_staff_listing .email_icon,
.fbcms_staff_search .email_icon,
.fbcms_contact_email .email_icon,
.fbcms_staff_cards .fbcms_contentbody .email_icon   {
    background-color: #333;
}
.fbcms_staff_listing_header,
.fbcms_staff_search_results .header {
	color: #333;
    font-weight: bold;
}
/*
===========================================================
 END Staff Styling
===========================================================
*/

/*
===========================================================
 Pager Styling
===========================================================
*/
.pager
{
    text-align: center;
    width: 100%;
}
.pager a .btnResultNavigation
{
    background-color: #333;
}
.changeperpageform select
{
    border-color: #999999;
}
/*
===========================================================
 END Pager Styling
===========================================================
*/

/*
===========================================================
 Spotlight Styling
===========================================================
*/
/*
===========================================================
 END Spotlight Styling
===========================================================
*/

/*
===========================================================
 Expandable Content Styling
===========================================================
*/
.fbcms_ec_title
{
    background-color: #222;
}
.fbcms_ec_title:hover,
.fbcms_ec_title:focus
{
    background-color: #333;
}
.fbcms_ec_title h2
{
    line-height: initial;
}
/* fixes issues on home page */
.page_home .main_content .columns h2.fbcms_ec_titletext {
    padding: 0;
    display: inline-block !important;
    color: inherit;
    background: inherit;
}
/*
===========================================================
 END Expandable Content Styling
===========================================================
*/

/*
===========================================================
  Fly-Up Tab Customization
===========================================================
*/
.flyup_drawer {
    z-index: 300;
}
.flyup_tab 
{
    font-size: 1rem;
    line-height: 1.4;
    color: #ffffff;
    background-color: #7d7d7d;
    display: inline-block;
    width: auto; 
    padding: 9px 40px 7px 16px;
}
.flyup_slide
{
    background-color: #7d7d7d;
    color: #ffffff;
}
.flyup_slide a,
.flyup_slide h2,
.flyup_slide h3,
.flyup_slide h4,
.flyup_slide h5,
.flyup_slide h6,
.flyup_slide .content_intro
{
    color: #ffffff;
}
/*
===========================================================
  END Fly-Up Tab Customization
===========================================================
*/
.page_body #FB_budgetLinkDiv {
    top: 20px;
}