.footer_responsive_button {
	display: none;
}

.responsive_shown { display: block; }

body { min-width: 0; }

@media screen and (min-width : 1200px) {
    .spacer_lg {
        margin-top: 15px;
        margin-bottom: 15px;
    }

    .spacer_top_lg {
        margin-top: 15px;
    }

    .spacer_bottom_lg {
        margin-bottom: 15px;
    }

    .padder_lg {
        padding-left: 15px;
        padding-right: 15px;
    }

    .padder_right_lg {
        padding-right: 15px;
    }

    .padder_left_lg {
        padding-left: 15px;
    }

    .nopadding_lg {
       padding: 0 !important;
    }

    .nopadding_right_lg {
       padding-right: 0 !important;
    }

    .nopadding_left_lg {
       padding-left: 0 !important;
    }

    .push_right_lg {
        float: right;
    }

    .push_left_lg {
        float: left;
    }

    .btn_block_lg {
        display: block;
        float: none;
    }

    a.link_block_lg {
        display: block;
        padding: 8px 0;
        margin-top: 5px;
        border-top: 1px solid #d8d8d8;
        border-bottom: 1px solid #d8d8d8;
        text-decoration: none;
        padding-left: 15px;
        padding-right: 25px;
        position: relative;
    }

    a.link_block_lg:hover {
        background-color: rgba(0,0,0,0.1);
    }

    .grid_blocks > .col-lg-12 {
        float: none;
    }
}

@media screen and (min-width : 992px) {
    
    .nopadding_md {
       padding: 0 !important;
    }

    .nopadding_right_md {
       padding-right: 0 !important;
    }

    .nopadding_left_md{
       padding-left: 0 !important;
    }

    .push_right_md {
        float: right;
    }

    .push_left_md {
        float: left;
    }
}

@media screen and (min-width : 768px) {
    
    .nopadding_sm {
       padding: 0 !important;
    }

    .nopadding_right_sm {
       padding-right: 0 !important;
    }

    .nopadding_left_sm{
       padding-left: 0 !important;
    }
    
    .push_right_sm {
        float: right;
    }

    .push_left_sm {
        float: left;
    }

    /* HEADER */
    #header .row {
        align-items: center;
        display: flex;
    }

    .footer_lower .row {
        align-items: end;
        display: flex;
    }

}

@media screen and (max-width : 0) {

    .nopadding_xs {
       padding: 0 !important;
    }

    .nopadding_right_xs {
       padding-right: 0 !important;
    }

    .nopadding_left_xs{
       padding-left: 0 !important;
    }

    .push_right_xs {
        float: right;
    }

    .push_left_xs {
        float: left;
    }
}

@media screen and (max-width : 1199px) {

    #navigation.navbar #navigation-content > ul > li > a {
        font-size: 0.8em;
        padding-left: 20px;
        padding-right: 20px;
    }

    #navigation.logged_in #navigation-content > ul > li > a {
        padding-left: 14px;
        padding-right: 14px;
    }

    .navbar#navigation ul.dropdown-menu li.dropdown .sub-menu.hybrid_mega_dropdown {
        width: 400px;
    }

    .hybrid_mega_dropdown .hybrid_title {
        padding-right: 15px;
    }

    .hybrid_mega_dropdown .hybrid_links {
        padding-right: 0px;
    }

    .hybrid_mega_dropdown .hybrid_image,
    .hybrid_mega_dropdown .hybrid_youtube {
        display: none;
    }

    .spacer_md {
        margin-top: 15px;
        margin-bottom: 15px;
    }

    .spacer_top_md {
        margin-top: 15px;
    }

    .spacer_bottom_md {
        margin-bottom: 15px;
    }

    .padder_md {
        padding-left: 15px;
        padding-right: 15px;
    }

    .padder_right_md {
        padding-right: 15px;
    }

    .padder_left_md {
        padding-left: 15px;
    }

    .btn_block_md {
        display: block;
        float: none;
    }

    a.link_block_md {
        display: block;
        padding: 8px 0;
        margin-top: 5px;
        border-top: 1px solid #d8d8d8;
        border-bottom: 1px solid #d8d8d8;
        text-decoration: none;
        padding-left: 15px;
        padding-right: 25px;
        position: relative;
    }

    a.link_block_md:hover {
        background-color: rgba(0,0,0,0.1);
    }

    .quote {
        font-size: 1.05em;
    }

    .blue_custom_btn {
        font-size: 1.2em;
    }

    .benefits h3 {
        font-size: 1.1em;
    }

    .cycle_banner_container .banner_pager_previous {
        left: auto;
        right: 90px;
    }

    .banner_item_description_column {
        bottom: 20px;
    }

    h2 {
        font-size: 1.7em;
    }
}

@media screen and (max-width : 1199px) and (min-width : 992px) {
    .grid_blocks > .col-md-12 {
        float: none;
    }

    .homepage_lozenges .lozenge_inner p {
        font-size: 0.75em;
    }

    .page_home .cycle_banner_container {
        height: 450px !important;
        margin-bottom: 0;
    }
}

@media screen and (max-width: 1024px) {

    .quote:before {
        left: -15px;
    }

    .quote:after {
        right: -15px;
    }

    .quote {
        font-size: 1em;
        padding-right: 30px;
    }

    .banner_item_description .title h2 {
        font-size: 2.6em;
    }

    .banner_item_description .title img {
        display: block;
        margin: 0 auto;
        width: 65%;
    }

    .input-group {
        margin: 5px 0 5px auto;
        width: 60%;
    }

}

@media screen and (max-width : 991px) {
    .navbar#navigation #navigation-content > ul {
        position: relative;
    }

    .navbar#navigation #navigation-content ul.dropdown-menu li.dropdown .sub-menu.hybrid_mega_dropdown {
        width: 100px !important;
        padding-top: 0;
        min-height: 0;
        height: auto;
    }

    .navbar#navigation #navigation-content > ul > li.has_megamenu {
        position: static;
    }

    .navbar#navigation #navigation-content ul.dropdown-menu li.dropdown {
        position: relative !important;
    }

    .navbar#navigation ul.dropdown-menu li.dropdown .sub-menu.hybrid_mega_dropdown {
        width: 523px;
    }

    .navbar#navigation #navigation-content ul.dropdown-menu li.dropdown .sub-menu.hybrid_mega_dropdown .hybrid_title,
    .navbar#navigation #navigation-content ul.dropdown-menu li.dropdown .sub-menu.hybrid_mega_dropdown .hybrid_image {
        display: none;
    }

    .navbar#navigation #navigation-content ul.dropdown-menu li.dropdown .sub-menu.hybrid_mega_dropdown .hybrid_links ul {
        width: 100%;
        margin: 0;
    }

    .navbar#navigation #navigation-content ul.dropdown-menu li.dropdown .sub-menu.hybrid_mega_dropdown .hybrid_links ul li {
        margin: 0;
    }

    .navbar#navigation #navigation-content ul.dropdown-menu li.dropdown .sub-menu.hybrid_mega_dropdown .hybrid_links ul a {
        display: block;
        margin: 0;
        padding: 8px 0;
    }

    #navigation.navbar #navigation-content > ul > li > a {
        font-size: 0.75em;
        padding-left: 10px;
        padding-right: 10px;
    }

    #navigation.logged_in #navigation-content > ul > li > a {
        font-size: 0.65em;
        padding-left: 9px;
        padding-right: 9px;
    }

    .side_menu li a {
        font-size: 0.85em;
    }

    #header {
        padding: 10px 0;
    }

    .banner_item_description .title h2 {
        font-size: 2.3em;
    }

    .banner_item_description h3 {
        font-size: 1.15em;
        margin-top: 10px;
    }

    #header .header_contact p {
        font-size: 1.5em;
    }

    #header .header_contact a {
        font-size: 1em;
    }

    #header .logo img {
        height: 100px;
    }

    .banner_item_description li {
        font-size: 0.85em;
    }

    .banner_item_description ul {
        margin-bottom: 25px;
    }

    .lower_banner {
        height: 160px;
    }

    .lower_nav {
        margin-bottom: 0px;
    }

    .module_article_image.copy {
        display: block;
    }

    .module_article_image.sidebar {
        display: none;
    }

    .btn_block_sm {
        display: block;
        float: none;
    }

    a.link_block_sm {
        display: block;
        padding: 8px 0;
        margin-top: 5px;
        border-top: 1px solid #d8d8d8;
        border-bottom: 1px solid #d8d8d8;
        text-decoration: none;
        padding-left: 15px;
        padding-right: 25px;
        position: relative;
    }

    a.link_block_sm:hover {
        background-color: rgba(0,0,0,0.1);
    }

    .spacer_sm {
        margin-top: 15px;
        margin-bottom: 15px;
    }

    .spacer_top_sm {
        margin-top: 15px;
    }

    .spacer_bottom_sm {
        margin-bottom: 15px;
    }

    .padder_sm {
        padding-left: 15px;
        padding-right: 15px;
    }

    .padder_right_sm {
        padding-right: 15px;
    }

    .padder_left_sm {
        padding-left: 15px;
    }

    .page_home .cycle_banner_container {
        height: 390px !important;
    }

    .custom_btn {
        font-size: 0.9em;
    }

    .testimonial_heading {
        align-items: center;
        display: flex;
        margin-bottom: 50px;
    }

    .testimonial_heading img {
        margin-left: auto;
        width: 50%;
    }

    .blue_custom_btn {
        font-size: 0.91em;
    }

    .benefits h3 {
        font-size: 1em;
    }

    .prasis_tabs .nav-pills div a {
        font-size: 1em;
    }

    .prasis_tabs .tab-pane .col-xs-12 {
        margin-bottom: 50px;
    }

    .nme_modules a, 
    .homepage_lozenges .lozenge_inner a {
        float: none;
    }

    .right_members_home {
        border-left: none;
    }

    .members_links a span {
        font-size: 1em;
    }

    .members_links a span i {
        font-size: 1.6em;
        margin-right: 8px;
    }

    .members_links a {
        height: 75px;
    }

    #banner h1 {
        font-size: 2.8em;
        margin-top: 18%;
    }

    h1 {
        font-size: 2em;
        line-height: 1em;
        margin: 18px 0;
    }
    
    h3 {
        font-size: 1.2em;
        line-height: 1.15em;
        margin: 16px 0 10px;
    }

    em {
        font-size: 1.15em;
    }
}

@media screen and (max-width : 991px) and (min-width : 768px) {
    .grid_blocks > .col-sm-12 {
        float: none;
    }
}

@media screen and (max-width : 767px) {
    body {
        -webkit-text-size-adjust: 100%;
    }

    .btn_block_xs {
        display: block;
        float: none;
    }

    .spacer_xs {
        margin-top: 15px;
        margin-bottom: 15px;
    }

    .spacer_top_xs {
        margin-top: 15px;
    }

    .spacer_bottom_xs {
        margin-bottom: 15px;
    }

    .padder_xs {
        padding-left: 15px;
        padding-right: 15px;
    }

    .padder_right_xs {
        padding-right: 15px;
    }

    .padder_left_xs {
        padding-left: 15px;
    }

    a.link_block_xs {
        display: block;
        padding: 8px 0;
        margin-top: 5px;
        border-top: 1px solid #d8d8d8;
        border-bottom: 1px solid #d8d8d8;
        text-decoration: none;
        padding-left: 15px;
        padding-right: 25px;
        position: relative;
    }

    a.link_block_xs:hover {
        background-color: rgba(0,0,0,0.1);
    }

    img {
        max-width: 100%;
        height: auto !important;
    }

    iframe {
        max-width: 100%;
    }

    table {
        max-width: 100%;
    }

    img.alignright {
        max-width: 45%;
        height: auto !important;
    }

    img.alignleft {
        max-width: 45%;
        height: auto !important;
    }

    img.alignright {
        max-width: 100%;
        float: none;
        margin: 4px auto;
    }

    img.alignleft {
        max-width: 100%;
        float: none;
        margin: 4px auto;
    }

    img.fullwidth {
        max-width: 100%;
        margin: 5px 0;
        height: auto !important;
    }

    img.aligncenter {
        max-width: 100%;
        margin: 5px auto;
        height: auto !important;
    }

    .responsive_hidden {
        display: none;
    }

    .responsive_shown {
        display: block;
    }

    #header .logo img {
        height: auto;
        width: 300px;
        max-width: 100%;
    }

    #banner h1 {
        background-color: rgba(1, 62, 125, 0.7);
        display: inline-block;
        font-size: 2em;
        margin: 17px 0;
        padding: 15px 10px;
    }

    #banner .container {
        text-align: center;
    }

    #banner {
        height: 100px;
        margin-bottom: 25px;
    }

    .benefit_icon {
        padding-left: 15px !important;
        padding-right: 15px !important;
    }

    .benefit_icon img {
        margin: 0 auto 10px;
    }

    .page_membership_benefits .spacer {
        margin-bottom: 15px;
        text-align: center;
    }

    /*-----------------------------------------------------------------------------------------------*/
    /* HEADER */

    #header {
        padding-bottom: 0;
    }

    #header img {
        max-width: 100%;
    }

    #header .header_contact p {
        font-size: 1.6em;
        margin-top: 15px;
        text-align: center;
    }

    .input-group {
        margin: 25px auto 10px;
        width: 100%;
    }

    .page_home .cycle_banner_container {
        height: 230px !important;
    }

    /*-----------------------------------------------------------------------------------------------*/
    /* PRIMARY NAVIGATION */

    .navbar-collapse {
        border: none !important;
    }

    .navbar {
        min-height: unset;
    }

    .navbar#navigation {
        background: none;
        margin-bottom: 0;
    }

    .navbar#navigation .navbar-header {
        margin-top: 0;
        margin-left: 0px;
        margin-right: 0px;
        background: #013E7D;
    }

    .navbar#navigation .navbar-toggle {
        border: none;
        margin-left: 5px;
    }

    .navbar#navigation .navbar-collapse#navigation-content {
        padding-left: 15px;
        padding-right: 15px;
    }

    .navbar#navigation #navigation-content > ul > li {
        border-bottom: 1px solid rgba(0,0,0,0.2);
    }

    .navbar#navigation #navigation-content > ul > li:last-of-type {
        border: none;
    }

    .navbar#navigation #navigation-content > ul > li > a {
        text-align: left;
        border: none !important;
        font-weight: bold;
    }

    .navbar#navigation #navigation-content > ul > li .glyphicon {
        position: absolute;
        right: 10px;
        top: 50%;
        margin-top: -0.5em;
    }

    .navbar#navigation #navigation-content > ul > li:hover > a {
        background-color: rgba(0, 0, 0, 0.2);
    }

    .navbar#navigation #navigation-content > ul {
        margin: 0;
        background: #ffffff;
    }

    .navbar#navigation #navigation-content li.dropdown ul.dropdown-menu,
    .navbar#navigation #navigation-content ul.dropdown-menu li.dropdown .sub-menu.hybrid_mega_dropdown {
        box-shadow: none !important;
        position: static !important;
        float: none;
        min-width: 0px;
        width: 100%;
        height: auto;
        border: none;
        -moz-border-radius: 0px;
        -webkit-border-radius: 0px;
        border-radius: 0px;
        visibility: visible !important;
    }

    .navbar#navigation #navigation-content li.dropdown > a {
        position: relative;
        padding-left: 20px;
        padding-right: 20px;
    }

    .navbar#navigation #navigation-content ul.nav > li.dropdown > a {
        padding-left: 10px;
        padding-right: 10px;
    }

    .navbar#navigation #navigation-content li.dropdown > a .glyphicon-triangle-bottom,
    .navbar#navigation #navigation-content li.dropdown > a .glyphicon-menu-down {
        position: absolute;
        display: inline-block;
        top: 50%;
        right: 20px;
        margin: -6px 0px 0px 0px;
    }

    /*.navbar#navigation #navigation-content  li.dropdown > a {
        font-weight: bold;
    }*/

    .navbar#navigation #navigation-content li.dropdown > a .glyphicon-triangle-right,
    .navbar#navigation #navigation-content li.dropdown > a .glyphicon-chevron-right {
        position: static !important;
    }

    .navbar#navigation #navigation-content li.dropdown > a .glyphicon-chevron-right:before {
        content: "\e258";
    }
    
    .navbar#navigation #navigation-content ul.dropdown-menu {
        min-height: 0px;
        padding-left: 20px;
        padding-right: 15px;
        background: #fff !important;
    }

    .navbar#navigation #navigation-content > ul > li ul.dropdown-menu > li > a {
        background: #fff !important;
        border-bottom: 1px solid #ccc;
        padding-left: 0;
        font-size: 0.86em;
    }

    .navbar#navigation #navigation-content > ul > li ul.dropdown-menu > li:last-of-type > a {
        border: none !important;
    }

    .navbar#navigation #navigation-content > ul > li ul.dropdown-menu > li {
        border-top: 0 !important;
        padding-top: 5px;
    }

    .navbar#navigation #navigation-content ul.dropdown-menu > li.dropdown.mega_dropdown:hover > a,
    .navbar#navigation #navigation-content ul.dropdown-menu > li.dropdown.mega_dropdown.maintain_hover > a {
        background-color: #c8c8c8;
        background-image: linear-gradient(to bottom,#d5d5d5 0,#c8c8c8 100%);
    }

    .navbar#navigation #navigation-content ul.dropdown-menu li.dropdown .sub-menu.hybrid_mega_dropdown .hybrid_links ul a {
        position: relative;
        color: #666 !important;
        padding: 12px 0;
        padding-right: 20px;
        border-top: 1px solid #eee;
    }

    .navbar#navigation #navigation-content ul.dropdown-menu li.dropdown .sub-menu.hybrid_mega_dropdown .hybrid_links ul:first-child li:first-child a {
        border-top: 0;
    }

    .navbar#navigation #navigation-content .sub-menu.hybrid_mega_dropdown {
        position: static;
        visibility: visible !important;
        background: none !important;
        float: none;
        padding-left: 0px;
        min-width: 0px;
        width: auto !important;
        min-height: 0px;
        height: auto;
        border-right: none;
        -moz-border-radius: 0px;
        -webkit-border-radius: 0px;
        border-radius: 0px;
    }

    .navbar a .glyphicon-triangle-right, 
    .navbar a .glyphicon-chevron-right {
        position: static;
    }

    .navbar#navigation #navigation-content li.dropdown .mega_dropdown > a .glyphicon-triangle-bottom, 
    .navbar#navigation #navigation-content li.dropdown .mega_dropdown > a .glyphicon-menu-down {
        display: none;
    }

    .navbar#navigation #navigation-content ul.dropdown-menu li.dropdown .sub-menu.hybrid_mega_dropdown {
        width: 100% !important;
    }

    .navbar#navigation #navigation-content ul.dropdown-menu li.dropdown:hover .sub-menu,
    .navbar#navigation #navigation-content ul.dropdown-menu li.dropdown.maintain_hover .sub-menu {
        display: block;
    }

    .navbar#navigation #navigation-content ul.dropdown-menu li.dropdown.block_hover .sub-menu {
        display: none;
    }

    #navigation .container {
        padding: 0;
    }
    
    #navigation.navbar {
        border: none;
    }

    .testimonial_heading {
        display: block;
    }

    .grid_blocks > .col-xs-12 {
        float: none;
    }

    .lower_banner .container h1,
    .lower_banner .container p {
        font-size: 2em;
    }

    .module_listing_image {
        text-align: left;
    }

    .calendar_week_labels {
        display: none;
    }

    .calendar_day {
        width: auto;
        float: none;
    }

    .calendar_day_inner {
        height: auto !important;
        min-height: 40px;
    }

    .other_month {
        display: none;
    }

    .calendar_day_number {
        right: auto;
        left: 10px;
    }

    a.calendar_event {
        margin-right: 0;
        margin-left: 27px;
    }

    table.responsive,
    table.responsive thead,
    table.responsive tfoot,
    table.responsive tbody,
    table.responsive th,
    table.responsive td,
    table.responsive tr {
        display: block;
        width: auto !important;
    }

    table.responsive_transpose,
    table.responsive_transpose thead,
    table.responsive_transpose tfoot,
    table.responsive_transpose tbody,
    table.responsive_transpose th,
    table.responsive_transpose td,
    table.responsive_transpose tr {
        display: block;
        width: auto !important;
    }

    table.responsive_transpose thead tr {
        position: absolute;
	    top: -9999px;
	    left: -9999px;
    }

    table.responsive_transpose tbody td { 
	    position: relative;
	    white-space: normal;
	    text-align:left;
	    padding-left: 145px !important; 
    }

    table.responsive_transpose tfoot td {
        text-align:left;
    }

    table.responsive_transpose td.row_header {
        padding-left: 5px;
        background: #777;
        color: #fff;
    }

    table.responsive_transpose td.row_header:before {
        display: none;
    }
	
    table.responsive_transpose tbody td:before { 
	    position: absolute;
	    top: 0px;
	    left: 0px;
	    padding-top: 8px;
	    padding-left: 5px;
	    width: 140px;
	    height: 100%;
	    padding-right: 10px; 
	    white-space: nowrap;
	    text-align:left;
	    font-weight: bold; 
        -moz-box-sizing:border-box;
        -webkit-box-sizing:border-box;
        box-sizing:border-box;
        content: attr(data-title);
    }


    .cycle_banner_container .banner_item_description > .banner_item_description {
        display: none;
    }

    /*-----------------------------------------------------------------------------------------------*/
    /* FOOTER */

    #footer {
        padding: 0px;
        text-align: center;
    }
    
    #footer .footer_item {
        display: block;
        padding: 7px 0px;
        text-align: center;
        clear: both;
    }
    
    #footer .footer_separator {
        display: none;
    }

    .footer_responsive_button {
		display: inline;
	}

    .nme_item {
        margin-bottom: 50px;
    }

    .footer_lower img.footer_logo {
        margin-right: auto;
        margin-top: 25px;
    }

    #header .logo {
        float: none;
    }

    .logo img {
        display: block;
        margin: 0 auto;
    }

    .testimonial_heading img {
        margin-bottom: 15px;
        margin-left: auto;
        margin-right: auto;
        width: unset;
    }
    
    .quote {
        padding: 20px 0 0;
        text-align: center;
    }

    .quote:after {
        color: #013E7D;
        top: -22px;
        right: 0;
        left: 0;
        margin: 0 auto;
    }

    .quote:before {
        content: none;
    }

    .prasis_tabs h2 {
        margin-bottom: 55px;
    }

    .prasis_tabs .nav-pills div a {
        font-size: 0.9em;
        padding: 10px 0;
    }

    .prasis_tabs .tab-pane {
        font-size: 0.8em;
        padding: 30px 0 0;
        text-align: center;
    }

     .section {
        padding-bottom: 30px;
        padding-top: 30px;
    }

    .prasis_tabs .nav-pills .active a {
        padding: 15px 0;
    }

    .testimonial_heading h2 {
        text-align: center;
    }

    h2 {
        font-size: 1.4em;
    }

    p {
        font-size: 0.9em;
    }

    .members_links .spacer {
        margin-top: 0;
        margin-bottom: 0;
    }

    .members_links a {
        margin-bottom: 15px;
    }

    .members_links a span {
        font-size: 1.4em;
    }

    .resources_inline_container .resources_inline_title{
        font-size: 1.2em;
    }

    .members_sections .primary_link {
        float: none;
        display: block;
        font-size: 0.9em;
        margin-bottom: 30px;
    }
}

@media screen and (max-width: 500px) {
    #banner h1 {
        font-size: 1.8em;
        display: block;
    }
}