/* - - - - - R E S P O N S I V E - - - - - - - - - - - - - - - - - - - start */
.TopContainerM { display: none; }
.TopContainerM { width: 18px; height: 20px; border-width: 0; background: transparent; margin-left: 5px; padding: 3px 5px 0; cursor: pointer; }
.TopContainerM > div { margin: 0 auto; }
.TopContainerM > div > span { display: block; margin-bottom: 3px; background: black; height: 4px; border-radius: 2px; width: 100%; }

@media screen and (max-width: 975px) { /*template content now flexible*/
    .bodyContainer { margin: 0 auto; width: 99%; }
    table.BannerContainer td.logo { height: 131px; width: 104px }
}

@media screen and (max-width: 900px) { /*collapse left*/
    .layout-row > div { border-width: 0px; }
    table.BannerContainer td.logo { height: 108px; width: 85px }
    .LinkContainer { min-width: 130px; }
}

@media screen and (max-width: 800px) {
    /* general */
    .Text { font-size: 11px; }
    table.BannerContainer td.logo { height: 85px; width: 67px }
    .layout-row { display: -webkit-flex; display: flex; -webkit-flex-flow: row wrap; flex-flow: row wrap; }
    .layout-row div.HomeLeftCol,
    .layout-row div.HomeCenterCol,
    .layout-row div.HomeRightCol { width: 100% !important; }
    .layout-row div.HomeLeftCol { order: 3;}
    .layout-row div.HomeCenterCol { order: 1; min-height: auto; }
    .layout-row div.HomeRightCol { order: 2; }

    .LinkContainer { min-width: 200px; max-width: 250px; float: left; }
    .LinkContainer:after { content: ""; display:table; }
    .LinkContainer .LinkImage { height: auto; margin: 0 0 3px 0; }
    .LinkContainer .LinkImage .ImageAnchor { background-size: cover; height: 22px; width: 22px; }
    .LinkContainer .LinkImage .ImageAnchor:hover { background-position: -22px 0; }

    /* menu */
    .TopMenuContainer .TopMenu { position: relative; top: 8px; left: -3000px; width: 250px;border: solid 3px #777; border-radius: 8px; background: #eee; z-index: 100; }

    .TopMenuContainer .TopContainerM { display: block; }
    .TopMenuContainer .menuGroup  { border-bottom: solid 1px #FFAA19; float: none; }
    .TopMenuContainer .menuGroup:last-child { border-bottom: 0px; }
    .TopMenuContainer.fixed { position: fixed; top: 0; width: 100%; z-index: 10001; }

    .TopMenuContainer .menuGroup span { display: block; padding: 6px 5px; position: relative; }
    .TopMenuContainer .menuGroup a { display: block; padding: 6px 5px; }
    .TopMenuContainer .menuGroup .Node a i { position: absolute; right: 2px; top:2px; height: 21px; width: 20px; }
    .TopMenuContainer .menuGroup .Node a i:before { content: '\00a0'; border-left: solid 1px #ffaa19; position: relative; display: inline-block; top: 1px; height: 18px; left: -3px; }
    .TopMenuContainer .menuGroup .Node a i:after { content: '\00a0'; background: transparent url("../images/icons.png") no-repeat -35px -17px; position: relative; top: 3px; width: 12px; display: inline-block; }
    .TopMenuContainer .menuGroup .Node a i:hover { background-color: #aaa; }
    .TopMenuContainer .menuGroup:last-child .Text span,
    .TopMenuContainer .menuGroup:last-child .Text a { border-radius: 0 0 5px 5px; }
    .TopMenuContainer .menuGroup:first-child .Text span,
    .TopMenuContainer .menuGroup:first-child .Text a { border-radius: 5px 5px 0 0; }

    .TopMenuContainer .menuContainer { width: 100%; position: relative; border-width: 0; }
    .TopMenuContainer .menuContainer .Node { background: #ccc; display: none; }
    .TopMenuContainer .menuContainer .Node span,
    .TopMenuContainer .menuContainer .Node a { display: block; color: #222; }
    .TopMenuContainer .menuContainer .Node:hover > span { color: #eee; background: #888; }
    .TopMenuContainer .menuParent .Node:hover { background: #888; }
    .TopMenuContainer .menuContainer .Node div.menuContainer { margin-top: auto; position: relative; left: 0; }
    .TopMenuContainer .menuContainer .Node.Level3 span,
    .TopMenuContainer .menuContainer .Node.Level3 a { padding-left: 18%; }
    .TopMenuContainer .menuContainer .Node.Level4 span,
    .TopMenuContainer .menuContainer .Node.Level4 a { padding-left: 25%; }

    .TopMenuContainer .menuContainer .Node .moreMenus { display: none; }
    span.OpenSub i { height: 15px; width: 15px; background: transparent url("../images/icons.png") no-repeat -32px -17px; display: block; position: absolute; top: 5px; right: 5px; }
    span.OpenSub.Open i { background: transparent url("../images/icons.png") no-repeat -45px -15px; }
    .TopMenuContainer .menuGroup .Node a.OpenSub.Open i:after { background: transparent url("../images/icons.png") no-repeat -48px -17px; }
    .Node.NodeOpen,
    .Node.NodeOpen .dropdown,
    .Node.NodeOpen > .menuContainer > .Node { display: block; }

    .footer { font-size: 11px; }
    .footerMenuContainer { display: none; }
    .footer .MobileFriendlyLink { display: inline-block; }

    .ContactGroupListTwoColumn { width: 100%; }
}

@media screen and (max-width: 760px) {
    .LeftMenuContainer { display: none; }
    .MainContentContainer { padding: 10px 10px 0 10px; }

    .layout-row > div { clear: both; float: none; width: 99% !important; }
    .bannerTitleContainer .bannerTitle { font-size: 16px; }
}

@media screen and (max-width: 480px) {
    .bodyContainer { margin: 0 auto; }
    .bannerTitleContainer .bannerTitle { font-size: 15px; }
    .footer { font-size: 9px; }

    .AffiliatedContactContainer { width: 100%; }
}

@media screen and (max-width: 340px) {
    body { margin: 0; }
    .bodyContainer { margin: 1px; width: 320px; overflow: hidden; }
    .bannerTitleContainer .bannerTitle { font-size: 14px; }
    .TopMenuContainer.fixed { width: 318px; }
    .LeftMenuContainer { padding: 3px; }
}
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - end */