/*This file contains CSS elements for the common footer for tufts.edu designed in 2021-2022.
The footer is divided into these sections:

-footer
-footer container/wrapper

-logo
-menu bar
-socials

-Brighter World Campaign

-Equal Opp Statement
-Utility
*/
@import url("https://use.typekit.net/lhd6fpw.css");
@import url("https://use.typekit.net/erh1ryf.css");
@import url('https://use.typekit.net/wjv5uii.css');

/*footer ****************************************************/

.footer {
  background: #222222;  
  background-color: #203749;
  font-family: "proxima-nova", sans-serif;
  font-weight: 300;
  padding: 0px;
}

.footer__wrap {
    width: 100%;
    background-color: #203749;
    margin: auto;
    padding: 0px;
    max-width: 96rem;
}

/*footer container/wrapper ****************************************************/

.region-footer {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    -ms-grid-rows: 1fr;
    grid-template-rows: 1fr;
    padding: 80px 28px 25px;
    margin-top: 0;
    margin-left: auto;
    margin-right: auto;
    width: 100%;
    max-width: 1280px;
}

/*logo*/

.footer__logo {
    display: flex;
    justify-content: center;
    padding: 60px 53px 0;
}

#block-sitebranding {
    grid-column: 1;
}

.region-footer #block-sitebranding .site-logo {
    background-image: url(https://multimedia.web.tufts.edu/haul-assets/images/logo.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    content: "";
    height: 269px;
    width: 269px;
    background-position: left top;
    display: block;
    height: 115px;
    margin: 0 auto;
}

.region-footer #block-sitebranding .site-logo img {
    display: none;
}


@media (min-width: 1180px) {
   
    .region-footer {
        -webkit-column-gap: 5%;
        -moz-column-gap: 5%;
        column-gap: 5%;
        padding: 80px 25px;
        padding-bottom: 32px;
        -ms-grid-columns: 1fr 325px;
        grid-template-columns: 1fr 325px;
    }

    .footer__campaign__block {
        max-width: 300px;
        margin-left: auto;
        margin-bottom: 0;
        margin-top: 0;
        position: relative;
        -ms-grid-column: 2;
        grid-column-start: 2;
        -ms-grid-row: 1;
        -ms-grid-row-span: 2;
        grid-row: 1 / span 2;
    }

    .region-footer #block-sitebranding .site-logo {
        margin: 0;
    }
}

@media (min-width: 1440px) {
    .region-footer {
        padding-left: 0;
        padding-right: 0;
    }
}


/* Menu Bar ****************************************************/

ul {
    list-style-type: none;
    margin: 0 0;
    padding: 0 0;
}

.menu--footer {
    -ms-grid-column: 1;
    grid-column: 1;
}

.footer ul.menu {
    margin: 0;
    list-style:none;
}

.footer__primary__navigation {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;
    -webkit-align-self: center;
    -ms-flex-item-align: center;
    align-self: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    padding-bottom: 24px;
}

.menu-item {
    margin: 0;
    padding-top: 0.2em;
}

.footer__primary__navigation--container {
    -webkit-align-self: center;
    -ms-flex-item-align: center;
    -ms-grid-row-align: center;
    align-self: center;
}

.footer__primary__navigation--container:not(:first-of-type) {
    margin-top: 24px;
}

.footer__primary__navigation .footer__primary__navigation--container.menu-item {
    padding-top: 0;
}

.footer__primary__navigation__link a {
    font-family: "ff-meta-serif-web-pro", sans-serif;
    font-weight: 300;
    letter-spacing: -0.25px;
    line-height: 28px;
    font-size: 22px;
    color: #FFFFFF;
    -webkit-text-decoration-color: #FFFFFF;
    -moz-text-decoration-color: #FFFFFF;
    text-decoration-color: #FFFFFF;
    text-decoration: none;
    background-position: left bottom;
    background-size: 100% 1px;
}

a.footer__primary__navigation__link {
    font-family: "ff-meta-serif-web-pro", sans-serif;
    font-weight: 300;
    letter-spacing: -0.25px;
    line-height: 28px;
    font-size: 22px;
    color: #FFFFFF;
    -webkit-text-decoration-color: #FFFFFF;
    -moz-text-decoration-color: #FFFFFF;
    text-decoration-color: #FFFFFF;
    text-decoration: none;
    background-position: left bottom;
    background-size: 100% 1px;
}

.footer__primary__navigation__link:hover, .link-underline:hover {
    -webkit-animation: redrawUnderline 1s;
    -moz-animation: redrawUnderline 1s;
    animation: redrawUnderline 1s;
    -webkit-animation-fill-mode: forwards;
    -moz-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
}

.footer__utility__links .menu a:hover {
    -webkit-animation: redrawUnderline 1s;
    -moz-animation: redrawUnderline 1s;
    animation: redrawUnderline 1s;
    -webkit-animation-fill-mode: forwards;
    -moz-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
}

@keyframes redrawUnderline {
  0% {
    background-position: left bottom;
    background-size: 100% 1px;
  }

  1% {
    background-position: left bottom;
    background-size: 0 1px;
  }

  100% {
    background-position: left bottom;
    background-size: 100% 1px;
  }
}

.link-underline, .hs-form-field .input, .form__interior .form-item--select-container .form-select, .privacy-notice__text a.privacy-notice__link, .mention--item__link, .text-formatted p a, ul.menu a.footer__primary__navigation__link:not(.toolbar-icon), .footer__utility__links .menu a, .header--menu--container .menu:not(.menu-level-0) a:not(toolbar-icon), header ul.menu.menu-level-1 .menu-item a, .mm-listitem.resources-for--item a, .landing--intro-container .landing--sidebar ul.menu a, .rfi-form .form-input, .gs-webResult.gs-result a.gs-title:link, .search-results .search-result__title, .layout-sidebar-first ul.menu:not(.menu-level-1) a, .utility-nav ul.menu .menu-item a:not(.toolbar-icon), .menu--resources-for .menu-item--expanded > button{
    text-decoration: none;
    background-image: -webkit-gradient(linear, left top, left bottom, from(transparent), to(transparent)), -webkit-gradient(linear, left top, left bottom, from(currentColor), to(currentColor));
    background-image: -moz- oldlinear-gradient(transparent, transparent), -moz- oldlinear-gradient(currentColor, currentColor);
    background-image: linear-gradient(transparent, transparent), linear-gradient(currentColor, currentColor);
    -webkit-transition: background-size .5s ease;
    -moz-transition: background-size .5s ease;
    transition: background-size .5s ease;
    background-size: 100% 0.0625rem, 0 0.0625rem;
    background-position: 100% 100%, 0 100%;
    background-repeat: no-repeat;
}

.link-underline, .hs-form-field .input, .form__interior .form-item--select-container .form-select, .privacy-notice__text a.privacy-notice__link, .mention--item__link, .text-formatted p a, ul.menu a.footer__primary__navigation__link:not(.toolbar-icon), .footer__utility__links .menu a, .header--menu--container .menu:not(.menu-level-0) a:not(toolbar-icon), header ul.menu.menu-level-1 .menu-item a, .mm-listitem.resources-for--item a, .landing--intro-container .landing--sidebar ul.menu a, .rfi-form .form-input, .gs-webResult.gs-result a.gs-title:link, .search-results .search-result__title, .layout-sidebar-first ul.menu:not(.menu-level-1) a, .utility-nav ul.menu .menu-item a:not(.toolbar-icon), .menu--resources-for .menu-item--expanded > button {

    background-size: 100% 1px;
    background-position: 100% 100%, 0 100%;
    background-repeat: no-repeat;
}

.link-underline:hover, .hs-form-field .input:hover, .form__interior .form-item--select-container .form-select:hover, .privacy-notice__text a.privacy-notice__link:hover, .mention--item__link:hover, .text-formatted p a:hover, ul.menu a.footer__primary__navigation__link:hover:not(.toolbar-icon), .footer__utility__links .menu a:hover, .header--menu--container .menu:not(.menu-level-0) a:hover:not(toolbar-icon), header ul.menu.menu-level-1 .menu-item a:hover, .mm-listitem.resources-for--item a:hover, .landing--intro-container .landing--sidebar ul.menu a:hover, .rfi-form .form-input:hover, .gs-webResult.gs-result a.gs-title:hover:link, .search-results .search-result__title:hover, .layout-sidebar-first ul.menu:not(.menu-level-1) a:hover, .utility-nav ul.menu .menu-item a:hover:not(.toolbar-icon), .menu--resources-for .menu-item--expanded > button:hover {
    background-size: 0 0.0625rem, 100% 0.0625rem;
}

@media (min-width: 1180px) {

    .footer__primary__navigation {
        -webkit-box-align: center;
        -webkit-align-items: center;
        -moz-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: start;
        -webkit-justify-content: flex-start;
        -moz-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -webkit-flex-direction: row;
        -moz-box-orient: horizontal;
        -moz-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        text-align: unset;
    }

    .footer__primary__navigation--container:not(:first-of-type) {
        padding-top: unset;
        padding-left: 24px;
        margin-top: 0;
    }
}

/*footer line ****************************************************/

.footer__line {
    margin: 32px 0;
    border-bottom: 1px solid #3E8EDE;
    width: 100%;
}

@media (min-width: 1180px) {
    .footer__line {
        margin: 25px 0;
        width: 690px;
        border-bottom-color: transparent;
    }
}




/* Socials ****************************************************/

.footer .block-views-blocktufts-social-media-block-1 {
    grid-column: 1;
  }

.footer__social__links {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    color: #1E407C;
}

.footer__social__links a g, .footer__social__links a svg {
    fill: #FFFFFF;
    -webkit-transition: all 0.2s;
    -moz-transition: all 0.2s;
    transition: all 0.2s;
    
}

.footer__social__links .views-row:not(:first-of-type) {
    margin-left: 30px;
}



.footer__social__links a g, .footer__social__links a svg {
    fill: #FFFFFF;
    -webkit-transition: all 0.2s;
    -moz-transition: all 0.2s;
    transition: all 0.2s;
}

.footer__social__links a g:hover, .footer__social__links a svg:hover {
    fill: #3E8EDE;
}

@media (min-width: 1180px) {

    .footer__social__links {
        -webkit-box-pack: start;
        -webkit-justify-content: flex-start;
        -moz-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
    }

    .footer__social__links .views-row:not(:first-of-type) {
        margin-left: 24px;
    }

}

  
/* Brighter World Campaign ***************************************************/

  .footer__campaign__block {
    border: 1px solid #3E8EDE;
    padding: 25px;
    margin: 48px 0;
    -ms-grid-row: 2;
    grid-row: 2;
}

  .footer__campaign__intro {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    color: #FFFFFF;
    font-family: "proxima-nova", sans-serif;
    font-weight: 300;
    font-size: calc(16px * 1.12); /* Adjusted for Proxima Nova */
    letter-spacing: -0.25px;
    line-height: 23px;
    text-align: center;
    margin-top: 15px;
    margin-left: auto;
    margin-right: auto;
    max-width: 350px;
}

.footer__campaign__block .field--name-field-campaign-cta a {
    -webkit-transition: background-color 0.4s ease;
    -moz-transition: background-color 0.4s ease;
    transition: background-color 0.4s ease;
    display: block;
    width: 100%;
    height: 35px;
    font-size: calc(1rem * 1.12); /* Adjusted for Proxima Nova */
    line-height: 1.75rem;
    text-align: center;
    color: #FFFFFF;
    background-color: #3E8EDE;
    font-weight: 700;
    border: none;
    cursor: pointer;
    -webkit-appearance: none;
    position: relative;
    text-decoration: none;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    max-width: 350px;
    height: 48px;
    margin: auto;
    margin-top: 24px;
    font-size: calc(16px * 1.12); /* Adjusted for Proxima Nova */
    font-weight: bold;
    letter-spacing: -0.25px;
    line-height: 19px;
}
    /* Affects the hover on the button */
.footer__campaign__block .field--name-field-campaign-cta a::after {
    -webkit-transition: height 0.1s ease;
    -moz-transition: height 0.1s ease;
    transition: height 0.1s ease;
    position: absolute;
    content: "";
    display: block;
    left: 0;
    bottom: 0;
    background-color: #3172AE;
    width: 100%;
    height: 5px;
}

.footer__campaign__block .field--name-field-campaign-cta a:active {
    background-color: #3172ae;
    transition-duration: 0s;
}

.footer__campaign__block .field--name-field-campaign-cta a:hover {
    z-index: 3;
}

.footer__campaign__block .field--name-field-campaign-cta a:hover::after {
    -webkit-transition: height 0.2s ease;
    -moz-transition: height 0.2s ease;
    transition: height 0.2s ease;
    height: 100%;
    z-index: -1;
}


.footer__campaign__logo .field--name-field-campaign-logo {
    text-align: center;
    width: 100%;
}

.footer__campaign__logo .field--name-field-campaign-logo img {
    max-width: 275px;
    width: 100%;
}


.footer__campaign__block .field--name-field-campaign-cta a {
    max-width: 250px;
}

.footer__utility__links .menu li:is(:first-child) {
    -webkit-flex-basis: 0%;
    -ms-flex-preferred-size: 0%;
    flex-basis: 0%;
    text-align: center;
}

.footer__copyright span {
    margin-top: 24px;
    margin-bottom: 28px;
}

@media (min-width: 320px) {
    
    @media (min-width: 320px) {
            .footer__utility__links .menu li:is(:first-child) {
            -webkit-flex-basis: 100%;
            -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
            text-align: center;
        }
    }
   

    .footer__utility__links .menu:not(.footer__primary__navigation):not(.menu-level-1) {
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        -moz-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .footer__utility__links .menu a {
        margin: 0 10px;
    }
}

@media (min-width: 768px){

    .footer__utility__links .menu li:is(:first-child) {
        -webkit-flex-basis: 0;
        -ms-flex-preferred-size: 0;
        flex-basis: 0;
        text-align: center;
    }
  
    .footer__utility__links .menu:not(.footer__primary__navigation):not(.menu-level-1) {
        -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    }
}

@media (min-width: 1180px) {

    .footer__utility__links .menu li:is(:first-child) {
        -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
        flex-basis: 0%;
        text-align: center;
    }

    .footer__copyright span {
        margin-top: 0px;
        margin-bottom: 0px;
    }
    
    .footer__campaign__block {
        max-width: 300px;
        margin-left: auto;
        margin-bottom: 0;
        margin-top: 0;
        position: relative;
        -ms-grid-column: 2;
        grid-column-start: 2;
        -ms-grid-row: 1;
        -ms-grid-row-span: 2;
        grid-row: 1 / span 2;
    }
    
    .footer__campaign__block .field--name-field-campaign-cta a {
        max-width: 250px;
    }

    .footer__copyright {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -webkit-flex-direction: row;
        -moz-box-orient: horizontal;
        -moz-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
    }

    .footer__utility__links .menu li:not(:last-child) {
        margin-right: 32px;
        margin-bottom: 0;
    }

}




/* Equal Opp Statement ****************************************************/

.region-footer .block--non-discrimitation-statement {
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    grid-column: 1 / span 2;
    padding-top: 32px;
}

.region-footer .block--non-discrimitation-statement p {
    font-family: "proxima-nova", sans-serif;
    color: #FFFFFF;
    font-weight: 300;
    font-size: calc(0.75rem * 1.12); /* Adjusted for Proxima Nova */
    line-height: 1.333;
}

.region-footer .block--non-discrimitation-statement b, .region-footer .block--non-discrimitation-statement strong, .region-footer .block--non-discrimitation-statement a {
    font-family: "proxima-nova", sans-serif;
}

.region-footer .block--non-discrimitation-statement a {
    color: #FFFFFF;
    text-decoration: none;
    background-size: 100% 1px;
}

@media (min-width: 1180px) {
    .region-footer .block--non-discrimitation-statement {
        margin-top: 70px;
        border-top: 1px solid #000;
    }
}
/* Utility Nav */

.footer__utility__section {
    background: #222222;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-top: 0;
}

.footer__utility__section__inner {
    margin-top: 0;
    width: 100%;
    padding: 12px 25px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.footer__copyright {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 100%;
    font-size: calc(16px * 1.12); /* Adjusted for Proxima Nova */
    color: #FFFFFF;
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
    -moz-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
    -moz-box-orient: vertical;
    -moz-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-top: none;
    padding: unset !important;
}

.footer__copyright {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 100%;
    font-size: calc(16px * 1.12); /* Adjusted for Proxima Nova */
    color: #FFFFFF;
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
    -moz-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
    -moz-box-orient: vertical;
    -moz-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

ul.menu:not(.footer__primary__navigation):not(.menu-level-1) {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.footer__utility__links .menu a {
    font-size: calc(1rem * 1.12); /* Adjusted for Proxima Nova */
    color: #FFFFFF;
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
    -moz-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
    -webkit-text-decoration-color: #FFFFFF;
    -moz-text-decoration-color: #FFFFFF;
    text-decoration-color: #FFFFFF;
    text-decoration: none;
    background-position: left bottom;
    background-size: 100% 1px;
    padding-bottom: 2px;
}

ul.menu:not(.footer__primary__navigation):not(.menu-level-1) {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

@media (min-width: 1440px) {
    .footer__utility__section__inner {
        padding: 12px 0;
    }
}

@media (min-width: 1180px) {
    .footer__utility__section {
        /* all: unset; */
        width: 100%;
        background: #222222;
        display: -webkit-box;
        display: -webkit-flex;
        display: -moz-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -webkit-flex-direction: row;
        -moz-box-orient: horizontal;
        -moz-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -moz-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }

    .footer__utility__section__inner {
        background: #222222;
        display: -webkit-box;
        display: -webkit-flex;
        display: -moz-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -webkit-flex-direction: row;
        -moz-box-orient: horizontal;
        -moz-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -moz-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        max-width: 1280px;
        margin-left: auto;
        margin-right: auto;
    }

    .footer__copyright {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -webkit-flex-direction: row;
        -moz-box-orient: horizontal;
        -moz-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
    }

    .footer__utility__links .menu a {
        font-size: calc(1rem * 1.12); /* Adjusted for Proxima Nova */
        color: #FFFFFF;
        -webkit-box-ordinal-group: 2;
        -webkit-order: 1;
        -moz-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1;
        -webkit-text-decoration-color: #FFFFFF;
        -moz-text-decoration-color: #FFFFFF;
        text-decoration-color: #FFFFFF;
        text-decoration: none;
        background-position: left bottom;
        background-size: 100% 1px;
        padding-bottom: 2px;
    }
}


@media (min-width: 768px) {
    .footer__utility__links .menu a {
        margin: 5px;
    }
}








/**
 * @file
 * Utility classes to hide elements in different ways.
 */

/**
 * Hide elements from all users.
 *
 * Used for elements which should not be immediately displayed to any user. An
 * example would be collapsible details that will be expanded with a click
 * from a user. The effect of this class can be toggled with the jQuery show()
 * and hide() functions.
 */
 .hidden {
    display: none;
  }
  
  /**
   * Hide elements visually, but keep them available for screen readers.
   *
   * Used for information required for screen reader users to understand and use
   * the site where visual display is undesirable. Information provided in this
   * manner should be kept concise, to avoid unnecessary burden on the user.
   * "!important" is used to prevent unintentional overrides.
   */
  .visually-hidden {
    position: absolute !important;
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px);
    width: 1px;
    height: 1px;
    word-wrap: normal;
  }
  
  /**
   * The .focusable class extends the .visually-hidden class to allow
   * the element to be focusable when navigated to via the keyboard.
   */
  .visually-hidden.focusable:active,
  .visually-hidden.focusable:focus {
    position: static !important;
    overflow: visible;
    clip: auto;
    width: auto;
    height: auto;
  }
  
  /**
   * Hide visually and from screen readers, but maintain layout.
   */
   .invisible {
    visibility: hidden;
  }