.footer a
{
    position: relative;
}

.footer a::after
{
    position: absolute;
    top: 100% !important;
    left: 0;

    width: 100%;
    height: 1px;

    content: '';
    transition: opacity .3s ease-in-out, transform .3s ease-in-out;
    transform: scale(.1, 1);
    transform-origin: 0 0;

    opacity: 0;
    background-color: currentColor;
}

.footer a:hover::after
{
    transform: scale(1, 1);

    opacity: 1;
}

.footer a:hover
{
    text-decoration: none;
}

.footer a.inspired-logo-link::after
{
    content: none;
}

.footer .social-media-links--platforms
{
    margin-left: -3rem;
}

@media (min-width: 992px)
{
    .footer .social-media-links--platforms
    {
        display: flex;
        flex-direction: column;

        margin-top: 8px;
        margin-left: 1.1rem;

        justify-content: center;
    }
    .footer .social-media-links--platforms.horizontal
    {
        flex-direction: row;
    }
}

.footer .social-media-links--platforms li
{
    margin: 0 0 20px 0;
}

.footer .social-media-links--platforms li a
{
    line-height: 36px;

    left: -23px;

    display: inline-block;

    width: 46px;

    text-align: center;
    vertical-align: text-top;
    white-space: nowrap;
}

.footer .social-media-links--platforms li a:hover::after
{
    transform: unset;

    opacity: 0;
}

@media (max-width: 991.98px)
{
    .footer .social-media-links--platforms
    {
        font-size: 1.25rem;

        margin-left: 0;
    }
    .footer .social-media-links--platforms.horizontal li a
    {
        left: 0;
    }
}

@media (max-width: 991.98px)
{
    .footer.footer-main-container
    {
        text-align: center;
    }
    .footer.footer-main-container nav.navigation.block-menu
    {
        width: 100%;
    }
    .footer.footer-main-container nav.navigation.block-menu .nav-item
    {
        justify-content: center;
    }
    .footer.footer-main-container nav.navigation.block-menu .nav-item .nav-link
    {
        width: auto;

        text-align: center;
    }
}

.footer.footer-main-container h6,
.footer.footer-main-container .footer-title
{
    font-weight: 400;
    line-height: 40px;
}

@media (max-width: 991.98px)
{
    .footer.footer-main-container h6,
    .footer.footer-main-container .footer-title
    {
        text-align: center;
    }
}

.footer.footer-main-container .footer-address-link
{
    font-weight: 400 !important;
}

@media (min-width: 992px)
{
    .footer.footer-main-container .block-webform-block .footer-title
    {
        padding-left: 5px;
    }
}

@media (max-width: 991.98px)
{
    .footer.footer-main-container .block-webform-block
    {
        width: 100%;
        max-width: 340px;
        margin: 0 auto;
    }
}

.footer .field--type-email label
{
    display: none;
}

.footer form.webform-submission-subscribe-to-newsletter-form
{
    position: relative;
}

.footer form.webform-submission-subscribe-to-newsletter-form .form-actions
{
    position: absolute;
    top: 0;
    right: 0;
}

.footer form.webform-submission-subscribe-to-newsletter-form .form-actions button
{
    min-width: 50px;

    text-indent: -9999px;

    border: 0 none;
    background: url('../../images/right-arrow.svg') no-repeat;
    background-color: transparent;
    background-position: 35px 16px;
}

.footer form.webform-submission-subscribe-to-newsletter-form .form-actions button:hover
{
    background-color: transparent;
}

.footer form.webform-submission-subscribe-to-newsletter-form .form-control
{
    padding-right: 40px;

    border-radius: 100px;
}

.footer .footer-bottom-sections .nav-item a,
.footer .footer-bottom-sections p
{
    font-size: .875rem !important;
    font-weight: 300;
}

@media (max-width: 991.98px)
{
    .footer .footer-bottom-sections .nav-item a,
    .footer .footer-bottom-sections p
    {
        font-size: 1rem;
    }
}

.footer .footer-bottom-sections .footer-sub-container section.region .block:first-child
{
    margin-right: 20px;
}

@media (max-width: 991.98px)
{
    .footer .footer-bottom-sections .footer-sub-container section.region .block:first-child
    {
        margin: 10px 0 0;

        order: 2;
    }
}

@media (max-width: 991.98px)
{
    .footer .footer-bottom-sections .footer-sub-container > .col-sm-3
    {
        display: none;
    }
}

.footer .footer-bottom-sections .footer-sub-container
{
    align-items: flex-end;
}

@media (max-width: 991.98px)
{
    .footer .footer-top-sections .footer-sub-container
    {
        padding-bottom: 0;
    }
    .footer .footer-bottom-sections .footer-sub-container
    {
        padding-top: 0;
        padding-bottom: 10px;
    }
}

.footer nav.block.block-menu.navigation.menu--footer ul.navbar-nav li.nav-item
{
    margin: 5px 20px 5px 0;
}

@media (max-width: 991.98px)
{
    .footer nav.block.block-menu.navigation.menu--footer ul.navbar-nav li.nav-item
    {
        display: block;

        width: 100%;
        margin: 10px 0 0 !important;

        text-align: center;
    }
}

.footer .footer-bottom-sections div.text-formatted.field p
{
    margin-bottom: 0 !important;
}

.block-inspired-address-block .inspired-address-section-container p a.footer-address-link:hover:after
{
    transform: translateX(0);
}

.block-inspired-address-block .inspired-address-section-container p a.footer-address-link:after
{
    font-family: inherit !important;

    width: 100% !important;
    height: 1px !important;
    margin-left: 0 !important;

    content: '' !important;
}
