@media (min-width: 520px) {
    .info-row {
        margin: 0 -4px -20px;
        display: flex;
        flex-wrap: wrap;
    }

    .info-row.alt-view {
        display: block;
        margin: 0 -15px -20px;
    }

    .info-row.alt-view .col {
        width: 100%;
        padding: 0;
    }

    .info-row .col {
        width: 50%;
        padding: 0 4px;
        display: flex;
        flex-direction: column;
    }

    .legend-list {
        display: flex;
        align-items: center;
        flex-wrap: wrap;
    }

    .legend-list li {
        margin: 5px 10px 5px 0;
    }

}

@media (max-width: 630px) {
    #button-homepage {
        margin-top: 15px;
        float: unset !important;
    }
    #button-homepage:hover {
        background-color: #e56b59 !important;
    }
}

@media (min-width: 768px) {
    .custom-radio-holder {
        display: flex;
        align-items: center;
    }

    .custom-radio-holder .custom-radio {
        margin: 0 40px 0 0;
    }

    .base-section {
        padding: 15px 0;
    }

    .base-section:last-child {
        padding: 15px 0 30px;
    }

    .anchor-block + .base-section {
        padding: 30px 0 15px;
    }

    .footer .logo-row {
        justify-content: space-between !important;
        align-items: center !important;
    }

    .footer .logo-col {
        width: auto !important;
        max-width: 25% !important;
    }

    .tweet-section .row {
        display: flex;
        flex-wrap: wrap;
        margin: 0 -22px;
    }

    .tweet-section .row .col {
        width: 50%;
        padding: 0 22px;
    }

    .tweet-section .tweet-block {
        border: 0;
    }

    .info-row {
        margin: 0 -8px -30px;
    }

    .info-row.alt-view {
        display: flex;
        flex-wrap: wrap;
        margin: 0 -4px -20px;
    }

    .info-row.alt-view .col {
        width: 33.333%;
        padding: 0 4px;
    }

    .info-row .col {
        padding: 0 8px;
        width: 33.333%;
    }

    .info-block.alt-view {
        min-height: 360px;
        margin: 0 0 30px;
    }

    .info-block.top-transparent .image-holder {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        z-index: -1;
    }

    .info-block.top-transparent .image-holder img {
        max-height: none;
    }

    .info-block .block-top.alt-view .h2,
    .info-block .block-top.alt-view h2 {
        font-size: 26px;
    }

    .info-block .h2,
    .info-block h2 {
        line-height: 1.23;
    }

    .info-block .subtitle {
        font-size: 22px;
        line-height: 1.18;
    }

    .info-block .image-holder img {
        max-height: none;
    }

    .tutorial-holder {
        margin: 0 0 20px;
        padding: 24px 30px 95px;
        position: relative;
    }

    .tutorial-holder .h2,
    .tutorial-holder h2 {
        margin: 0 0 15px;
    }

    .tutorial-holder > .btn-holder {
        margin: 0;
        position: absolute;
        bottom: 40px;
        left: 30px;
    }

    .tutorial-row {
        display: flex;
        flex-wrap: wrap;
        padding: 67px 0 15px;
        margin: 0 -15px;
    }

    .tutorial-row .col {
        padding: 0 15px;
        width: 50%;
        display: flex;
    }

    .tutorial-block a {
        flex-direction: column;
        align-items: stretch;
    }

    .tutorial-block .img-holder {
        width: 100%;
    }

    .tutorial-block .content-holder {
        padding: 7px 20px 30px 21px;
    }

    .news-holder .block-heading .h2,
    .news-holder .block-heading h2 {
        margin: 0;
    }

    .news-block {
        margin: 0 0 25px;
    }

    .news-block .h3,
    .news-block .h4,
    .news-block h3,
    .news-block h4 {
        margin: 0 0 20px;
    }

    .news-block .image-holder {
        width: 196px;
    }

    .news-block .content-holder {
        padding: 0 0 0 30px;
    }

    .breadcrumbs-holder {
        padding: 30px 0;
    }

    .breadcrumbs-holder + .base-section {
        padding: 5px 0 15px;
    }

    .breadcrumbs-holder .title {
        flex: 0 0 auto;
    }

    .breadcrumbs-holder .inner-holder {
        display: flex;
    }

    .breadcrumbs-list {
        flex: 1 auto;
    }

    .heading-top .link-holder {
        margin: 0 0 0 24px;
        font-size: 40px;
    }

    .heading-bottom {
        display: flex;
    }

    .heading-bottom .text-holder {
        width: 60%;
        margin: 0;
    }

    .heading-bottom .side-content {
        width: 46%;
    }

    .article-img .image-footnote {
        padding: 8px 20px;
        font-size: 14px;
    }

    .tags-holder.alt-view {
        -moz-column-count: 2;
        column-count: 2;
    }

    .tags-holder.alt-view dl {
        display: flex;
        flex-wrap: wrap;
        page-break-inside: avoid;
        -moz-column-break-inside: avoid;
        break-inside: avoid;
        margin: 0 0 18px;
    }

    .tags-holder.alt-view dl dt {
        min-width: 138px;
        width: auto;
    }

    .tags-list {
        margin: 0 20px 10px 0;
    }

    .tags-list a {
        margin: 8px 0 0;
    }

    .tags-list dd {
        font-size: 16px;
    }

    .tags-list dt {
        margin: 0 20px 0 0;
        font-size: 18px;
        display: inline-block;
        min-width: 68px;
    }

    .comments-section {
        padding: 30px 0 5px;
    }

    .comments-section .h3,
    .comments-section h3 {
        margin: 0 0 30px;
    }

    .comments-section textarea {
        min-height: 150px;
    }

    .comment-block {
        font-size: 16px;
        display: flex;
    }

    .pagination-holder {
        padding: 10px 0 30px;
    }

    .nav-links .next:after,
    .nav-links .prev:after {
        content: none !important;
    }

    .nav-links .next.first-page,
    .nav-links .prev.first-page {
        margin: 0 30px 0 0;
    }

    .nav-links .next.last-page,
    .nav-links .prev.last-page {
        margin: 0 0 0 30px;
    }

    .nav-links .prev:not(.first-page) {
        margin: 0 auto 0 0;
    }

    .nav-links .next:not(.last-page) {
        margin: 0 0 0 auto;
    }

    .link-block-row {
        display: flex;
        flex-wrap: wrap;
        margin: 0 -5px;
    }

    .link-block-row .col {
        padding: 0 5px;
        display: flex;
        width: 50%;
    }

    .link-block {
        margin: 0 0 10px;
        min-height: 300px;
    }

    .event-block a {
        padding: 30px 0;
        font-size: 16px;
        align-items: flex-start;
    }

    /*#responsive-alignment {
        margin-left: 192px;
        margin-top: -45px;
    }*/
    .event-block .inner-holder {
        padding: 0;
        width: auto;
        /* flex: 1 auto;*/
        flex: 1;
    }

    .event-block .option-block {
        width: 11%;
        padding: 0 10px;
    }

    .event-block .option-list {
        font-size: 25px;
        margin: 0 -9px;
    }

    .filter-section .heading-title {
        margin-bottom: 8px;
    }

    .filter-stripe {
        margin: 0 0 30px;
    }

    .filter-stripe .btn-row {
        display: flex;
        flex-wrap: wrap;
    }

    .filter-stripe .btn-row .col {
        width: 33.3333%;
    }

    .filter-holder .row {
        display: flex;
        margin: 0 -20px 15px;
    }

    .filter-holder .col {
        max-width: 750px;
        padding: 0 20px;
    }

    .filter-form .input-holder {
        display: flex;
        align-items: center;
    }

    .filter-form .input-holder > label {
        min-width: 200px;
        margin: 0 20px 0 0;
    }

    .filter-form .separator {
        margin: 0 20px;
    }

    .legend-list li {
        margin: 10px 34px 10px 0;
    }

    .legend-list [class^="icon-"] {
        font-size: 35px;
    }

    .post-block.lg {
        width: 100%;
    }

    .post-block.lg .inner-holder {
        width: 100%;
        position: relative;
        display: flex;
        align-items: flex-end;
        justify-content: flex-end;
        z-index: 2;
    }

    .post-block.lg .inner-holder:after {
        content: "";
        width: 0;
        display: block;
        min-height: 353px;
    }

    .post-block.lg .img-holder {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        padding: 0;
    }

    .post-block.md {
        width: 100%;
        display: flex;
    }

    .post-block.md:after {
        content: "";
        display: block;
        width: 0;
        min-height: 263px;
    }

    .post-block.md .img-holder {
        padding: 0;
        width: 40%;
        flex: 0 0 auto;
    }

    .post-block.md .content-holder {
        padding: 15px 21px;
        flex: 1 auto;
    }

    .post-block.sm {
        width: 50%;
        display: flex;
    }

    .post-block.sm:after {
        content: "";
        display: block;
        width: 0;
        min-height: 263px;
    }

    .post-block.sm .img-holder {
        padding: 0;
        background-position: top;
        min-height: 124px;
        flex: 0 0 auto;
    }

    .post-block.sm .inner-holder {
        display: flex;
        flex-direction: column;
        align-items: stretch;
    }

    .post-block.sm .content-holder {
        padding: 14px 15px;
        flex: 1 auto;
    }

    .post-block.sm .category {
        margin: 0 0 2px;
    }

    .post-block.sm .title {
        font-size: 22px;
        margin: 0 0 2px;
    }

    .post-block .content-holder {
        display: flex;
        flex-direction: column;
        align-items: stretch;
    }

    .post-block .title {
        font-size: 22px;
        margin: 0 0 20px;
    }

}

@media (min-width: 1024px) {
    /* J EDIT */
    .footer-list a, .privacy-list a, .footer-block .text-blue .text-right-desktop a {
        font-size: 16px !important;
    }

    a.button.btn-red.btn-lg {
        width: 116px !important;
        padding: 10px 14px !important;
    }

    /***********/
    .search-block .inner-wrapper {
        display: flex;
        align-items: center;
    }

    .lg .search-block .inner-wrapper {
        max-width: 907px;
    }

    .search-block .inner-wrapper > .button {
        width: auto !important;
    }

    .search-block .input-wrapper {
        flex: 1 auto;
        margin: 0;
    }

    .lg .search-block .input-wrapper {
        margin: 0 30px 0 0;
    }

    .search-block input[type="text"] {
        font-size: 20px;
    }

    .lg .search-block input[type="text"] {
        font-size: 28px;
        height: 42px;
    }

    .search-block button[type="submit"] {
        font-size: 29px;
    }

    .lg .search-block button[type="submit"] {
        font-size: 35px;
    }

    .header.search-show {
        padding: 0 0 51px;
    }

    .header-wrapper {
        padding: 26px 0;
    }

    .logo {
        width: 350px;
    }

    .nav-opener {
        display: none !important;
        padding: 7px 18px;
    }

    .menu-drop {
        display: flex;
        align-items: center;
    }

    .menu-drop .search-block {
        padding: 5px 0 10px;
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        opacity: 0;
        visibility: hidden;
    }

    .search-show .menu-drop .search-block {
        opacity: 1;
        visibility: visible;
    }

    .menu-drop .search-block .inner-wrapper {
        margin: 0 auto;
    }

    .menu-drop .search-block .input-wrapper {
        margin: 0 22px 0 0;
    }

    .menu-drop > .button {
        margin-left: 37px !important;
        min-width: 116px !important;
    }

    .main-nav {
        display: flex;
        align-items: center;
        flex-wrap: wrap;
        font-size: 16px;
        margin: 0 -8px;
        padding: 0;
    }

    .main-nav li {
        margin: 0;
        padding: 0 8px;
    }

    .display-3 {
        font-size: 26px;
    }

    .display-desktop {
        display: block !important;
    }

    .display-mobile {
        display: none !important;
    }

    .text-right-desktop {
        text-align: right;
    }

    .base-section {
        padding: 30px 0;
    }

    .base-section:last-child {
        padding: 30px 0 60px;
    }

    .anchor-block + .base-section {
        padding: 60px 0 30px;
    }

    .section-footer {
        padding: 24px 0 26px !important;
    }

    ul:not([class]) li {
        padding: 0 0 0 40px;
        margin: 0 0 10px;
    }

    ul:not([class]) li:before {
        left: 16px;
    }

    .footer .social-title {
        text-align: left !important;
    }

    .footer-top {
        padding: 30px 0 56px !important;
    }

    .footer-main {
        display: flex !important;
        flex-wrap: wrap !important;
        justify-content: space-between !important;
        padding: 35px 0 30px !important;
    }

    .footer-bottom {
        text-align: left !important;
    }

    .footer-block {
        margin: 0 !important;
    }

    .footer-block > .button {
        margin: 19px 0 0 !important;
    }

    .footer-title {
        font-size: 26px !important;
        margin: 0 0 30px !important;
    }

    .footer-logo {
        width: 166px !important;
        margin: 0 0 20px !important;
    }

    .footer-list {
        font-size: 16px !important;
        text-align: left !important;
    }

    .footer-list li {
        margin: 0 0 26px !important;
    }

    .privacy-list {
        font-size: 14px !important;
        text-align: left !important;
    }

    .privacy-list li {
        margin: 0 0 19px !important;
    }

    .copyright {
        font-size: 12px !important;
    }

    .button.btn-sm {
        padding: 6px 10px !important;
        line-height: 1 !important;
    }

    .social-list {
        font-size: 35px !important;
        justify-content: flex-start !important;
    }

    .social-title {
        font-size: 16px !important;
    }

    .intro-section {
        font-size: 22px;
        line-height: 1.18;
    }

    .fixed-position .intro-section {
        z-index: 999;
        box-shadow: 0 8px 13px 0 rgba(84, 88, 96, 0.4);
    }

    .intro-section.lg {
        padding: 71px 0;
    }

    .intro-section .title {
        margin: 0 0 28px;
    }

    .tweet-section .section-heading {
        margin: 0 0 30px;
    }

    .tweet-section .row .col {
        width: 25%;
    }

    .tweet-section .author {
        margin: 0 33px 0 12px;
        font-size: 28px;
    }

    .info-row {
        padding: 30px 0 0;
        margin: 0 -15px -30px;
    }

    .info-row.alt-view {
        margin: 0 -15px -20px;
    }

    .info-row.alt-view .col {
        padding: 0 15px;
        width: 33%;
    }

    .info-row.alt-view .col:nth-child(3n-1) {
        width: 42%;
    }

    .info-row.alt-view .col:nth-child(3n) {
        width: 25%;
    }

    .info-row .col {
        padding: 0 15px;
    }

    .info-block.alt-view .block-top {
        padding: 20px;
    }

    .info-block .block-top {
        padding: 24px 25px 21px;
    }

    .info-block .block-top.alt-view .h2,
    .info-block .block-top.alt-view h2 {
        margin: 0 0 20px;
    }

    .info-block .h2,
    .info-block h2 {
        margin: 0 0 10px;
    }

    .two-col-row {
        display: flex;
        margin: 0 -19px;
    }

    .two-col-row > .col {
        padding: 0 19px;
        display: flex;
    }

    .two-col-row > .col:first-child {
        width: 47%;
    }

    .two-col-row > .col:last-child {
        width: 53%;
    }

    .tutorial-holder {
        width: 100%;
        padding: 34px 30px 95px;
        margin: 0;
    }

    .news-holder .block-heading {
        display: flex;
    }

    .news-holder .block-heading .text-holder {
        margin: 0 20px 0 0;
        flex: 1 auto;
    }

    .news-holder .block-heading .btn-holder {
        flex: 0 0 auto;
    }

    .news-holder .subtitle {
        font-size: 28px;
        margin: 0 0 8px;
    }

    .breadcrumbs-holder + .base-section {
        padding: 5px 0 30px;
    }

    .heading-title {
        margin: -10px 0 15px;
    }

    .heading-top .h2,
    .heading-top h2 {
        line-height: 1.5;
    }

    .heading-top .link-holder {
        margin: 0 0 0 48px;
        font-size: 50px;
    }

    .heading-bottom .text-holder {
        flex: 1 auto;
        width: auto;
    }

    .heading-bottom .side-content {
        width: 31.8%;
        flex: 0 0 auto;
    }

    .heading-bottom .btn-row {
        margin: 0;
    }

    .article-img.top {
        margin: 0 0 30px;
    }

    .heading-title + .tags-holder {
        margin: -10px 0 10px;
    }

    .tags-holder.alt-view {
        grid-column-gap: 30px;
        -moz-column-gap: 30px;
        column-gap: 30px;
    }

    .heading-title + .tags-holder.alt-view {
        margin: -10px 0 30px;
    }

    .tags-list {
        margin: 0 30px 15px 0;
    }

    .tags-list dt {
        margin: 0 27px 0 0;
        font-size: 20px;
    }

    .pagination-holder {
        padding: 10px 0 42px;
    }

    .nav-links .page-numbers:not(.prev):not(.next) {
        font-size: 26px;
    }

    .nav-links .next.page-numbers,
    .nav-links .prev.page-numbers {
        min-width: 180px;
    }

    .link-block-row {
        margin: 0 -15px -10px;
    }

    .link-block-row .col {
        width: 33.3333%;
        padding: 0 15px;
    }

    .link-block {
        margin: 0 0 30px;
        min-height: 356px;
    }

    .event-block .option-block {
        padding: 0 28px;
    }

    .filter-section .pagination-holder {
        padding: 40px 0 10px;
    }

    .filter-section .pagination-holder:last-child {
        padding: 40px 0 25px;
    }

    .filter-stripe .btn-row {
        margin: 0 -15px;
    }

    .filter-stripe .btn-row .col {
        padding: 0 15px;
    }

    .filter-holder .row {
        margin: 0 -49px 15px;
    }

    .filter-holder .col {
        padding: 0 49px;
    }

    .legend-block {
        display: flex;
        align-items: center;
    }

    .legend-block .list-title {
        margin: 0 20px 0 0;
    }

    .post-block.lg {
        width: 70%;
    }

    .post-block.lg .inner-holder:after {
        min-height: 556px;
    }

    .post-block.md {
        width: 50%; /* J Edit 3/3/22 used to be 40% if news tiles are 4 per row */
    }

    .post-block.sm {
        width: 30%;
    }
}

@media (min-width: 1024px) and (min-width: 1400px) {
    .main-nav {
        margin: 0 -17px;
    }
}

@media (min-width: 1400px) {
    .main-nav li {
        margin: 0;
        padding: 0 17px;
    }

    .nav-links .next.page-numbers,
    .nav-links .prev.page-numbers {
        min-width: 233px;
    }

    .event-block .option-list li {
        padding: 0 9px;
        margin: 0 0 4px;
    }

    .post-block.lg {
        width: 75%;
    }

    .post-block.md {
        width: 50%;
    }

    .post-block.md .img-holder {
        width: 53%;
    }

    .post-block.sm {
        width: 25%;
    }
}

@media (min-width: 1920px) {
    .news-holder .block-heading .text-holder {
        margin: 0 20px 0 0;
    }
}

@media (max-width: 1023px) {
    .menu-drop {
        position: absolute;
        z-index: 999;
        top: 100%;
        left: 0;
        right: 0;
        height: calc(100vh - 100%);
        height: calc(var(--vh, 1vh) * 100 - 100%);
        background: #fff;
        opacity: 0;
        visibility: hidden;
        display: flex;
        flex-direction: column;
        align-items: stretch;
    }

    .nav-active .menu-drop {
        opacity: 1;
        visibility: visible;
    }

    .h2,
    h2 {
        font-size: 30px;
    }

    .h4,
    h4 {
        font-size: 20px;
    }

    .footer-block > .button {
        padding: 16px 14px !important;
        width: 100% !important;
        font-size: 18px !important;
    }

    .intro-section.lg {
        background: linear-gradient(180deg, #5bc3f5 0, #3a5cb7 31%, #936dc1 50%, #ffb653 68%, #e56b59) !important;
    }

    .intro-section.lg .search-block .input-wrapper {
        margin: 0 0 20px;
    }
}

@media (max-width: 767px) {
    .news-block .h4,
    .news-block h4 {
        line-height: 1;
        margin: 0 0 6px;
    }

    .pagination-holder .show-tablet {
        display: none !important;
    }
}

a.skip-main {
    left: -999px;
    position: absolute;
    top: -137px;
    width: 1px;
    height: 1px;
    overflow: hidden;
    z-index: -999;
}

a.skip-main:focus, a.skip-main:active {
    color: #fff;
    background-color: #000;
    left: -400px;
    top: auto;
    width: 20%;
    height: auto;
    overflow: auto;
    margin: 10px 35%;
    padding: 5px;
    border-radius: 15px;
    border: 4px solid yellow;
    text-align: center;
    font-size: 1.2em;
    z-index: 999;
    float: left !important;
    margin-top: 150px;

}