.footer {
    --border: 1px solid var(--color-grey-90);
    margin-top: var(--footer-space);
    padding-bottom: 3rem
}

@media (min-width:48em) {
    .footer {
        padding-bottom: 4rem
    }
}

.footer--no-margin {
    margin-top: 0
}

.footer__pattern {
    width: 100%;
    height: 12.5625rem;
    background-size: 85.375rem 12.5625rem;
    background-repeat: repeat-x;
    background-position-x: center;
    opacity: .13;
    margin-bottom: 1rem
}

@media (min-width:48em) {
    .footer__pattern {
        margin-bottom: 1.5rem
    }
}

@media (min-width:90em) {
    .footer__pattern {
        margin-bottom: 2.5rem
    }
}

.footer__l1-list {
    list-style-type: none;
    margin-bottom: 1.5rem
}

@media (min-width:48em) {
    .footer__l1-list {
        margin-bottom: 2rem;
        display: grid;
        grid-template-columns: repeat(var(--standard-cols), minmax(0, 1fr));
        column-gap: var(--standard-gap)
    }
}

@media (min-width:75em) {
    .footer__l1-list {
        margin-bottom: 0
    }
}

.footer__item--logo {
    display: block;
    max-width: 15.8125rem
}

@media (min-width:48em) {
    .footer__item--logo {
        grid-column: 2/7;
        margin-right: 2.75rem
    }
}

@media (min-width:64em) {
    .footer__item--logo {
        grid-column: 1/span 4
    }
}

@media (min-width:75em) {
    .footer__item--logo {
        grid-column: 1/span 3
    }
}

.footer__l1-item--text-item {
    display: none;
    padding: 0 0 1.75rem 1.5rem;
    border-left: var(--border);
    margin-left: -1.5rem;
    grid-column: span 2
}

@media (min-width:75em) {
    .footer__l1-item--text-item {
        display: block
    }
}

.footer-text--primary {
    display: block;
    font-weight: 500
}

.footer-text--secondary {
    display: block;
    font-family: Tiempos, Georgia, serif;
    font-weight: 300
}

.footer__l1-link-text {
    font-size: 1.25rem;
    line-height: 1
}

.footer__l1-link-text--secondary {
    display: block;
    margin-top: .125rem
}

.footer__l1-link {
    -webkit-text-decoration-line: none;
    text-decoration-line: none;
    color: var(--color-white)
}

.footer__l1-link:hover {
    color: var(--color-mu-gold)
}

.footer__search-wrapper {
    background: var(--color-grey-95);
    border-top: var(--border);
    border-bottom: var(--border);
    padding-top: 1.5rem;
    padding-bottom: 1.5rem
}

.footer__search-form {
    grid-column: 1/-1
}

@media (min-width:48em) {
    .footer__search-form {
        grid-column: 2/-2
    }
}

@media (min-width:64em) {
    .footer__search-form {
        grid-column: 1/-1
    }
}

.footer__search-label {
    grid-column: 1/-1;
    margin-bottom: 1rem;
    line-height: 1.12
}

@media (min-width:48em) {
    .footer__search-label {
        grid-column: 2/span 2;
        margin-bottom: 0
    }
}

@media (min-width:64em) {
    .footer__search-label {
        grid-column: 1/span 2
    }
}

@media (min-width:90em) {
    .footer__search-label {
        grid-column: 1
    }
}

.footer__search-input-and-btn {
    display: flex;
    flex-direction: column;
    grid-column: 1/-1
}

@media (min-width:48em) {
    .footer__search-input-and-btn {
        flex-direction: row;
        align-items: center;
        grid-column: 4/-2
    }
}

@media (min-width:64em) {
    .footer__search-input-and-btn {
        grid-column: 3/-2
    }
}

@media (min-width:75em) {
    .footer__search-input-and-btn {
        display: grid;
        grid-template-columns: repeat(10, minmax(0, 1fr));
        column-gap: var(--standard-gap)
    }
}

@media (min-width:90em) {
    .footer__search-input-and-btn {
        grid-column: 2/-2
    }
}

.footer__search-input {
    margin-bottom: 1rem
}

@media (min-width:48em) {
    .footer__search-input {
        border-radius: 2px 0 0 2px;
        margin-bottom: 0
    }
}

@media (min-width:75em) {
    .footer__search-input {
        width: calc(100% + var(--page-gutter));
        margin-right: calc(var(--page-gutter)*-1);
        grid-column: 1/span 8
    }
}

@media (min-width:48em) {
    .footer__search-btn {
        border-radius: 0 2px 2px 0
    }
}

@media (min-width:75em) {
    .footer__search-btn {
        grid-column: 9/span 2
    }
}

.footer__content-wrapper {
    padding-top: 1.5rem
}

@media (min-width:48em) {
    .footer__content-wrapper {
        display: grid;
        grid-template-columns: repeat(var(--standard-cols), minmax(0, 1fr));
        column-gap: var(--standard-gap);
        padding-top: 2.5rem
    }
}

@media (min-width:75em) {
    .footer__content-wrapper {
        grid-template-rows: repeat(2, auto);
        padding-top: 4rem
    }
}

.footer__content--mobile {
    border-top: var(--border);
    border-bottom: var(--border);
    padding-top: 1.5rem;
    padding-bottom: 1.5rem
}

@media (min-width:48em) {
    .footer__content--mobile {
        display: none
    }
}

.footer__content--desktop {
    display: none
}

@media (min-width:48em) {
    .footer__content--desktop {
        display: block
    }
}

.footer__content--contact {
    margin-bottom: 2.5rem
}

@media (min-width:48em) {
    .footer__content--contact {
        margin-bottom: 3rem;
        grid-column: 2/span 5;
        grid-row: 1
    }
}

@media (min-width:64em) {
    .footer__content--contact {
        grid-column: 1/span 6
    }
}

@media (min-width:75em) {
    .footer__content--contact {
        margin-bottom: 0;
        grid-column: 1/span 3
    }
}

.footer__content--contact .rich-text {
    font-size: 1rem
}

.footer__content--collages {
    display: none
}

@media (min-width:48em) {
    .footer__content--collages {
        display: block;
        grid-column: 2/span 5;
        grid-row: 2
    }
}

@media (min-width:64em) {
    .footer__content--collages {
        grid-column: 1/span 6
    }
}

@media (min-width:75em) {
    .footer__content--collages {
        grid-row: 1;
        grid-column: 4/span 3
    }
}

.footer__content-heading {
    font-size: 1.375rem;
    margin-bottom: 2rem
}

.footer__content-heading--popular {
    display: none
}

@media (min-width:48em) {
    .footer__content-heading--popular {
        display: block
    }
}

.footer__content-heading-primary {
    display: block;
    line-height: 1.45;
    font-family: Untitled Sans, "system-ui", sans-serif
}

.footer__content-heading-secondary {
    display: block;
    line-height: 1.27
}

.footer__content-list {
    list-style-type: none
}

@media (min-width:75em) {
    .footer__content-list--popular {
        column-count: 2;
        column-gap: 1.5rem
    }
}

.footer__content-item {
    margin-bottom: 1.5rem
}

.footer__content-link {
    -webkit-text-decoration-line: none;
    text-decoration-line: none;
    display: inline-flex;
    flex-direction: column;
    align-items: flex-start;
    line-height: 1.12
}

.footer__content-link:hover {
    color: var(--color-mu-gold)
}

.footer__content-link-text {
    font-size: 1rem
}

.footer__content-link-text--secondary {
    display: block;
    margin-top: .25rem
}

.footer__content--popular {
    border-top: var(--border);
    border-bottom: var(--border)
}

@media (min-width:48em) {
    .footer__content--popular {
        border: none;
        grid-column: 7/-2;
        grid-row: 1/span 2
    }
}

@media (min-width:64em) {
    .footer__content--popular {
        grid-column: 8/-1
    }
}

@media (min-width:75em) {
    .footer__content--popular {
        grid-column: 7/-1;
        grid-row: 1
    }
}

@media (min-width:48em) {
    .footer__end-divider {
        grid-column: 2/-2;
        border-top: var(--border);
        padding-bottom: 1rem
    }
}

@media (min-width:64em) {
    .footer__end-divider {
        grid-column: 1/-1
    }
}

.footer__end {
    font-size: .875rem;
    margin-top: 2rem;
    grid-template-areas: "c c c c" "l l l s";
    align-items: center;
    row-gap: 1rem
}

@media (min-width:26.25em) {
    .footer__end {
        grid-template-areas: "c c c c c c" "l l l l s s"
    }
}

@media (min-width:48em) {
    .footer__end {
        margin-top: 3.5rem;
        grid-template-areas: ". c c c c c c c c c c ." ". l l l l l l l l s s ."
    }
}

@media (min-width:64em) {
    .footer__end {
        margin-top: 3.5rem;
        grid-template-areas: "c c c c c c c l l l s s"
    }
}

@media (min-width:75em) {
    .footer__end {
        margin-top: 4rem;
        grid-template-areas: "c c c c c c l l l l s s"
    }
}

.footer__copyright {
    grid-area: c;
    margin-bottom: 0
}

.footer__end-links-list {
    grid-area: l;
    display: flex;
    flex-wrap: wrap;
    list-style-type: none
}

.footer__end-links-item {
    margin-right: 4rem
}

.footer__end-links-item:last-child {
    margin-right: 0
}

.footer__shielded-site {
    grid-area: s;
    justify-self: end
}