.footer_responsive_button {
    display: none;
}

.responsive_shown {
    display: block;
}

body {
    min-width: 0;
}

@media screen and (min-width : 1200px) {

    .content-offset {
        height: 100px;
        position: relative;
    }

    .container {
        width: auto;
        margin: 0 15vw;
    }

    .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) {

    .content-offset {
        height: 70px;
        position: relative;
    }


    .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;
    }
}

@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) {
    #header {
        flex-wrap: wrap;
        justify-content: space-between;
    }

        #header nav {
            flex-basis: 100%;
            order: 3;
            margin-top: 0.5em;
        }

    .lower_banner {
        height: 330px;
        background-position: center 420px;
    }

    .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);
        }
}

@media screen and (max-width : 1199px) and (min-width : 992px) {
    .grid_blocks > .col-md-12 {
        float: none;
    }
}

@media screen and (max-width : 991px) {

    .wave_block_widget {
        flex-flow: column;
    }

    .wave_block_widget_content {
        width: 100%;
    }

    .wave_block_widget .wave_block_text, .wave_block_wide_widget .wave_block_wide_text {
        margin: 0;
        padding: 3em 1em 2em;
    }

    .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;
        }

    .navbar#navigation #navigation-content > ul > li > a {
        font-size: 0.9em;
    }

    .lower_banner {
        background-attachment: scroll;
        background-size: cover;
        background-position: center;
    }

    .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;
    }

    img.alignleft,
    img.alignright {
        display: block;
        float: none;
    }
}

@media screen and (max-width : 991px) and (min-width : 766px) {
    .grid_blocks > .col-sm-12 {
        float: none;
    }

    thead, tfoot, tbody, th, tr, td {
        display: block;
        width: auto !important;
    }
}

@media screen and (max-width : 767px) {

    .module_image_grid .module_block_content a {
        padding: 0 0.5em;
    }

    .module_listing_metadata {
        margin: 0;
    }

    .padded_text_widget.thoughts {
        margin: 0 1em;
    }

    .content-offset {
        height: 70px;
        position: relative;
    }

    .podcast-block {
        flex-wrap: wrap;
    }

    .podcast-block .wave_block_widget_content {
        text-align: center;
    }

    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%;
    }

        /*table p {
            padding: 1em 0;
        }*/

    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 */

    #header {
        padding: 1em 2em;
        position: relative;
    }

        #header .logo {
            max-width: 100%;
            flex-basis: 100%;
            text-align: center;
        }

        #header nav {
            order: 2;
            margin-top: 0;
        }

        #header .header_text {
            position: absolute;
            top: 59px;
            transition: all .5s ease;
        }

        #header.scrolled .header_text {
            top: 52px;
        }

    /*-----------------------------------------------------------------------------------------------*/
    /* PRIMARY NAVIGATION */

    .navbar#navigation {
        background: none;
        min-height: auto;
        position: static;
    }

        .navbar#navigation .navbar-header {
            /*margin-top: 10px;*/
            /*background: #aaa;*/
        }

        .navbar#navigation .navbar-toggle {
            margin: 0;
            padding: 0.5em 1em 0;
        }

        .navbar#navigation .navbar-collapse#navigation-content {
            /*position: absolute;
            left: 0;
            right: 0;
            margin-top: 0.9em;*/
        }

        .navbar#navigation #navigation-content > ul > li > a {
            text-align: left;
        }

        .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: 1em 0 0;
            flex-flow: column;
            background: #fff;
        }

        .navbar#navigation #navigation-content li.dropdown ul.dropdown-menu,
        .navbar#navigation #navigation-content ul.dropdown-menu li.dropdown .sub-menu.hybrid_mega_dropdown {
            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;
        }

        .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: 15px;
            padding-right: 15px;
        }

        .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: 15px;
            padding-right: 15px;
            background: #fff !important;
        }

        .navbar#navigation #navigation-content > ul > li ul.dropdown-menu > li > a {
            color: #444 !important;
            background: #fff !important;
            border-bottom: 1px solid #ccc;
            padding-left: 0;
        }

        .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 .sub-menu {
        visibility: visible;
    }

    .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;
    }

    .grid_blocks > .col-xs-12 {
        float: none;
    }

    /* -- modules -- */

    .module_image_grid {
        grid-template-columns: 1fr;
    }

        .module_image_grid .module_image_grid_block {
            margin: 0 0 4em 0;
        }

    /* -- widgets -- */
    /* -- wave */
    .wave_block_widget,
    .wave_block_wide_widget {
        flex-flow: column;
    }


    .wave_block_widget_content, .wave_block_wide_widget_content {
        width: 100%;
    }



    .wave_block_widget .wave_block_image, .wave_block_wide_widget .wave_block_wide_image{
        width: 100%;
/*        max-height: 40vh;*/
        overflow: hidden;
    }

    .wave_block_widget .wave_block_branches img,
    .wave_block_wide_widget .wave_block_branches img {
        width: auto;
        height: 3em;
    }

    .wave_block_wide_widget .wave_block_wide_image {
        width: 100%;
        margin: 0;
    }

    .image_grid_widget {
        flex-flow: column;
        margin: 0;
    }

        .image_grid_widget img {
            max-height: 20em;
        }

    .lower_banner {
        height: 15em;
    }

        .lower_banner .container h1,
        .lower_banner .container p {
            font-size: 2em;
        }

    #bottomContent {
        padding-top: 4em;
        background-size: 200vw auto;
        background-position: center 380px;
    }

    .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);
        }

    /*-----------------------------------------------------------------------------------------------*/
    /* FOOTER */

    .footer_img img{
        height: 10vh;
        object-fit: cover;
    }

    #footer {
        padding: 0px;
    }



        #footer .footer_content {
            flex-flow: column;
        }

            #footer .footer_content .footer_text{
                margin-top: 2em;
            }

            #footer .socials {
                text-align: center;
                margin: 1em 0 3em;
            }

        #footer .footer_item {
            display: block;
            padding: 7px 0px;
            text-align: center;
            clear: both;
        }

        #footer .footer_separator {
            display: none;
        }

    .footer_responsive_button {
        display: inline;
    }

    .module_image_grid .module_image_grid_block {
        min-height: 400px;
        margin: 2em 0 !important;
    }

    td {
        margin: 20px 0;
    }

    img {
        width: 100% !important;
        height: 100% !important;
    }

    a:link, a:active, a:visited {
        text-decoration: none;
        text-wrap-mode: wrap;
        word-break: break-word;
    }

    h1 {
        margin: 1.5rem 0rem;
        color: #221c20;
        font-weight: normal;
        font-size: 2.1em;
        line-height: 1.05em;
        font-family: Petrona;
    }
}

@media screen and (max-width: 550px) {
    .module_image_grid .module_image_grid_block {
        margin: 0 0 8em 0;
    }

    #header {
        justify-content: center;
    }

    .header_text p {
        font-size: 16px;
    }

    .sidebar_text {
         padding-right: 0; 
    }

    .poetry-links {
        font-size: 18px;
        place-self: center;
        justify-self: center;
        align-self: center;
    }

    .lower_banner {
        height: 20em;
    }

    .module_image_grid.writing .module_block_content {
        padding: 0.5em 1em;
    }

}

@media screen and (max-width: 500px) {
    .module_image_grid .module_image_grid_block {
        min-height: 750px;
        margin: 2em 0 !important;
    }

    .page_poetry .module_image_grid .module_image_grid_block {
        min-height: 50px;
    }
    }

/*-----------------------------------------------------------------------------------------------*/
