@media screen and ( max-width: 1015px) {
    .award_category_listing h2 {
        width: 320px;
    }
}

@media screen and ( max-width: 991px) {
    /* Generics */
    #logo, #navigation_logo {
        top: 16px;
        left: 8px;
        width: 110px;
        height: 68px;
    }
    #nav_toggle {
        top: 18px;
        right: 14px;
    }
    #navigation ul {
        padding: 0;
        font-size: 17px;
        border-top: 1px solid rgba(255, 255, 255, .1);
    }
    #navigation li {
        border-bottom: 1px solid rgba(255, 255, 255, .1);
    }
    #navigation li a {
        display: block;
        padding: 8px 12px 7px;
    }
    main {
        padding: 0 20px;
    }
    .page-template-page-home main, .page-template-page-festival-weekend main {
        padding: 0;
    }
    .sponsors_and_supporters {
        background-size: 900px 276px;
        padding: 100px 40px 0 40px;
    }
    footer {
        padding: 0 20px 20px;
    }
    .column {
        float: none;
        width: auto;
    }
    .footer_nav {
        list-style: none;
        margin: 0;
        padding: 0;
    }
    .footer_nav li {
        text-align: center;
    }
    .footer_nav a {
        display: block;
        padding: 4px;
    }
    .subscribe {
        text-align: center;
        padding: 0 20px;
    }
    .subscribe input[type="email"] {
        display: block;
        margin: 0 auto 8px auto;
    }

    .home_banner {
        height: auto;
        overflow: visible;
        margin-bottom: 20px;
    }
    .home_banner_content {
        position: relative;
        right: auto;
        bottom: auto;
    }
    .home_banner h3 {
        position: relative;
        top: auto;
        left: auto;
        margin: 0 auto 10px auto;
    }
    .home_banner_swan {
        display: none;
    }

    .home_festival_reminder {
        position: relative;
        right: auto;
        width: auto;
        top: auto;
        margin-bottom: 30px;
        font-size: 12px;
        margin-left: -12px;
    }
    /* Home */
    .home_ctas_primary {
        float: none;
        width: auto;
        overflow: hidden;
    }
    .home_cta_gallery {
        top: auto;
        bottom: auto;
        right: auto;
        width: auto;
        padding: 0 10px;
    }
    .home_cta_gallery a {
        top: auto;
        bottom: auto;
        left: auto;
        right: auto;
        height: 300px;
    }
    /* Festival Weekend */
    .weekend_wrap {
        padding: 20px;
    }
    .weekend_banner {
        height: auto;
        overflow: visible;
        margin-bottom: 20px;
    }
    .weekend_banner_content {
        position: relative;
        right: auto;
        width: auto;
        bottom: auto;
    }
    .weekend_banner h3 {
        position: relative;
        top: auto;
        left: auto;
        margin-bottom: 40px;
    }
    .weekend_banner_swan {
        display: none;
    }
    .weekend_festival_reminder {}
    /* Pages */
    header {
        padding: 130px 20px 110px;
    }
    header h1 {
        font-size: 36px;
    }
    header h2 {
        font-size: 24px;
    }
    .content {
        margin: 0;
        padding: 0;
        box-sizing: border-box;
    }
    /* Categories */
    .award_categories {
        margin: 0 -20px;
    }
    .award_category_listing {
        padding: 0;
    }
    .award_category_listing .category_wrap:after {
        left: 33px;
    }
    .award_category_listing h2 {
        float: none;
        width: auto;
        padding: 30px 20px 0;
        font-size: 32px;
        margin-bottom: 6px;
    }
    .award_category_sponsor {
        float: none;
        width: auto;
        padding: 0 20px;
    }
    .award_category_sponsor p {
        line-height: 35px;
        padding-left: 2px;
    }
    .award_sponsor_logo {
        height: 35px;
        width: 70px;
        margin-left: 4px;
    }
    .award_category_listing_action {
        float: none;
        width: auto;
        padding: 0 20px;
        text-align: left;
        margin-bottom: 12px;
    }
    .award_category_info {
        background: #010242;
        padding: 0 20px;
        max-height: 0px;
        -webkit-transition: .2s;
        -moz-transition: .2s;
        transition: .2s;
    }
    .award_category_description {
        width: auto;
        margin: 0 auto;
        padding: 30px 0;
        min-height: 0;
        box-sizing: border-box;
    }
    .award_category_description h3 {
        font-family: 'LeituraDisplay-Roman', 'Times New Roman', 'Times', serif;
        font-size: 32px;
        font-weight: normal;
        color: #FFF;
        line-height: 105%;
        margin-bottom: 0;
    }
    .last_award_winner_photo {
        position: relative;
        bottom: auto;
        right: auto;
        margin: 0 auto;
        width: auto;
        max-width: 260px;
    }
    .last_award_winner_photo img {
        display: block;
        width: 100%;
        max-width: 100%;
        height: auto;
    }
    .award_cat_active .award_category_info {
        max-height: 800px;
    }
    .award_cat_active .award_category_listing .category_wrap:after {
        display: block;
    }
    /* Hall Of Fame */
    .hall_of_fame_listing {
        margin: 0 -20px 60px;
    }
    .hall_of_fame_sublisting {
        padding: 0 20px;
    }
    .hall_of_fame_listing h3 {
        padding: 30px 10px 20px 20px;
        font-size: 24px;
    }
    .hall_of_fame_sublisting li h4, .hall_of_fame_sublisting li p {
        font-size: 18px;
    }
    .sublisting_top {
        padding: 20px 0;
    }
    .sublisting_top p {
        font-size: 14px;
        padding: 0;
    }
    .sublisting_bottom {
        padding: 20px 0;
    }
    .sublisting_bottom p {
        font-size: 14px;
        padding: 0;
    }
    .hof_section_header {
        padding: 0 20px 30px;
        font-size: 18px;
    }
    .hof_section_header em {
        font-size: 32px;
        line-height: 34px;
    }
    /* Forms */
    .gform_field_group .gfield, .form_saved_message span {
        max-width: none;
        padding: 0;
    }
    .gfield_group_header h2 {
        position: relative;
        left: auto;
        top: auto;
        width: auto;
        padding: 0;
        font-size: 24px;
    }
    .gfield_group_header p, .gfield_group_header h3, .gfield_group_header ul {
        padding: 0;
        margin-left: 0;
    }
    .gform_footer {
        max-width: none;
        padding: 0;
        box-sizing: border-box;
    }
    /* Gallery */
    .gallery_square, .gallery_tall, .gallery_sizer {
        width: 50%;
    }
    .gallery_wide {
        width: 100%;
    }
    .gallery_item a {
        opacity: 1;
        background: transparent;
    }
    .gallery_item div {
        top: auto;
        bottom: 0;
        padding: 20px;
        -webkit-transform: none;
        -moz-transform: none;
        -ms-transform: none;
        -o-transform: none;
        transform: none;
        background-color: rgba(255, 0, 157, .75);
    }
    .gallery_person, .people_gallery .gallery_sizer {
        width: 50%;
    }
    .festival_gallery_intro {
        padding: 0 10px;
    }
    .festival_gallery_content .festival_logo, .festival_gallery_content .festival_content {
        float: none;
        width: auto;
    }
}

@media screen and ( max-width: 600px) {
    .home_cta {
        float: none;
        width: auto;
        padding: 0 0;
    }
    /* Annual reports */
    .annual_reports {
        margin: 0 auto;
        max-width: 1000px;
        padding: 40px 0 30px 0;
    }
    .annual_reports li {
        width: 100%;
        margin-bottom: 30px;
    }
    /* Gallery */
    .gallery_item div {
        padding: 16px;
    }
    .gallery_item h2 {
        font-size: 18px;
    }
    .gallery_square, .gallery_tall, .gallery_sizer {
        width: 100%;
    }
    .gallery_person, .people_gallery .gallery_sizer {
        width: 100%;
    }
}
