.site-footer {
    color: var(--color--blue);
}

.site-footer a {
    color: currentColor;
}

.display--grid.is-footer {
    column-gap: var(--col-gap--base);
    row-gap: var(--fluid--56);
}

.footer__node#footerLogo {
    grid-column: 1 / span 1;
}

.footer__node#footerContacts {
    grid-column: 2 / span 3;
}

.footer__node#footerMenu {
    grid-column: 5 / span 4;
}

.footer__node#footerConnects {
    grid-column: 10 / span 3;
}

.footer__logo {
    width: 2.5rem;
    height: auto;
}

/* Contacts */
.footer__address {
    font-family: var(--ff--sans);
    font-size: var(--fs--sans-xxs);
    letter-spacing: var(--ls--m);
    line-height: var(--lh--l);
    text-transform: uppercase;
}

.footer__address p {
    font-family: var(--ff--sans);
    font-size: var(--fs--sans-xxs);
    letter-spacing: var(--ls--m);
    line-height: var(--lh--l);
    text-transform: uppercase;
}

.footer-contacts__item {
    font-family: var(--ff--sans);
    font-size: var(--fs--sans-xxs);
    letter-spacing: var(--ls--m);
    line-height: var(--lh--b);
    text-transform: uppercase;
    padding-bottom: 1em;
}

.footer-contacts__item a:after {
    display: block;
    content: '';
    border-bottom: 1px solid currentColor;
    transform: scaleX(0);
    transition: transform var(--duration--medium) var(--timing--ease-in-out);
}

.footer-contacts__item a:hover:after {
    transform: scaleX(1);
}

/* Footer Menu */
ul.menu--footer{
    /* Reset global ul */
    list-style-type: none;
    margin-block-start: 0;
    margin-block-end: 0;
    padding-inline-start: 0;

    column-count: 2;
    column-gap: var(--col-gap--base);
    font-family: var(--ff--sans);
    font-size: var(--fs--sans-xxs);
    letter-spacing: var(--ls--m);
    text-transform: uppercase;
}

ul.menu--footer li {
    padding-bottom: 1.5em;
}

ul.menu--footer a {
    line-height: var(--lh--b);
}

ul.menu--footer a:after {
    display: block;
    content: '';
    border-bottom: 1px solid currentColor;
    transform: scaleX(0);
    transition: transform var(--duration--medium) var(--timing--ease-in-out);
}

ul.menu--footer a:hover:after {
    transform: scaleX(1);
}

/* Popup Form */
.footerPopup__link {
    display: inline-block;
    width: auto !important;
    font-family: var(--ff--sans);
    font-size: var(--fs--sans-s);
    font-weight: 500;
    letter-spacing: var(--ls--m);
    text-transform: uppercase;
    cursor: pointer;
}

.footerPopup__link:after {
    display: block;
    content: '';
    border-bottom: 1px solid currentColor;
    transform: scaleX(1);
    transition: transform var(--duration--medium) var(--timing--ease-in-out);
}

.footerPopup__link:hover:after {
    transform: scaleX(0);
}

.footer__popup .popupForm__modal {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 99999;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100vh;
    overflow: hidden;
    background: var(--color--overlay);
    backdrop-filter: var(--blur--global);
    text-align: left;
    pointer-events: none;
    opacity: 0;
    transition: opacity var(--duration--medium) var(--timing--ease-in-out);
}

.footer__popup .popupForm__modal.active {
    opacity: 1;
    pointer-events: auto;
}

.footer__popup .popupForm-modal__close-body {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    width: 100%;
    height: 100%;
    cursor: pointer;
}

.footer__popup .popupForm-modal__contents {
    position: relative;
    z-index: 10;
    width: 130vh;
    max-width: 650px;
    max-height: 90vh;
    overflow: auto;
    margin: var(--padding--page);
    padding: var(--fluid--24) var(--fluid--32) var(--fluid--48) var(--fluid--32);
    background: var(--color--white);
}

.footer__popup .popupForm-modal__close-icon {
    display: flex;
    justify-content: flex-end;
}

.footer__popup .popupForm-modal__close-icon svg {
    display: block;
    width: 1.5rem;
    height: 1.5rem;
    cursor: pointer;
    opacity: 1;
    transition: opacity var(--duration--medium) var(--timing--ease-in-out);
}

.footer__popup .popupForm-modal__close-icon svg:hover {
    opacity: 0.5;
}

.footer__popup .popupForm-modal__form {
    position: relative;
    width: 100%;
    height: 100%;
}

.footer__popup .popupForm-modal__form-inner {
    overflow: auto;
}

.abGeneralInquiry__form_wrapper h2.gform_title {
    color: var(--color--grey);
    font-family: var(--ff--serif-capt);
    font-size: var(--fs--disp-2);
    font-weight: 500;
    letter-spacing: var(--ls--l);
    line-height: var(--lh--s);
    text-transform: uppercase;
    transform: translateX(0.125em);
    margin-bottom: var(--fluid--56);
    text-align: center;
}

.abGeneralInquiry__form .gform-body.gform_body {
    margin-bottom: var(--fluid--48);
}

.footerPopup__disclaimer {
    font-style: italic;
    font-size: var(--fs--serif-xs);
    text-align: center;
    max-width: 90%;
    color: var(--color--grey);
}

.footerPopup__disclaimer a {
    display: inline-block;
}

.footerPopup__disclaimer a:after {
    display: block;
    content: '';
    border-bottom: 1px solid currentColor;
    transform: scaleX(0);
    transition: transform var(--duration--medium) var(--timing--ease-in-out);
}

.footerPopup__disclaimer a:hover:after {
    transform: scaleX(1);
}

/* Social Channels */
.footer__socials-wrap {
    display: flex;
    justify-content: flex-start;
    column-gap: var(--fluid--24);
}

a.footer-socials__item:after {
    display: none;
}

a.footer-socials__item:hover .footer-socialsItem__icon {
    opacity: 0.5;
}

.footer-socialsItem__icon {
    object-fit: contain;
    object-position: center;
    width: 100%;
    height: 100%;
    max-width: 1.25rem;
    max-height: 1.25rem;
    opacity: 1;
    transition: opacity var(--duration--medium) var(--timing--ease-in);
}

.footer-socialsItem__icon path {
    fill: currentColor;
}

/* Copyright */
.copyright__wrap {
    display: flex;
}

.copyright__text{
    font-family: var(--ff--sans);
    font-size: var(--fs--sans-xxs);
    letter-spacing: var(--ls--m);
    text-transform: uppercase;
    margin-right: var(--col-gap--base);
}

ul.menu--legal{
    /* Reset global ul */
    list-style-type: none;
    margin-block-start: 0;
    margin-block-end: 0;
    padding-inline-start: 0;

    font-family: var(--ff--sans);
    font-size: var(--fs--sans-xxs);
    display: flex;
}

ul.menu--legal li:after {
    content: '|';
    display: inline-block;
    margin-left: 0.5em;
    margin-right: 0.5em;
}

ul.menu--legal li:last-child:after {
    display: none;
}

ul.menu--legal a {
    line-height: var(--lh--b);
}

ul.menu--legal a:after {
    display: block;
    content: '';
    border-bottom: 1px solid currentColor;
    transform: scaleX(0);
    transition: transform var(--duration--medium) var(--timing--ease-in-out);
}

ul.menu--legal a:hover:after {
    transform: scaleX(1);
}

/* Footer Form */
.footer__form {
    width: 100%;
    max-width: 600px;
}

.footer__form .gform_required_legend {
    display: none;
}

.footer__form h2.gform_title {
    color: currentColor;
    font-size: var(--fs--disp-1);
    font-family: var(--ff--serif-disp);
    font-style: italic;
    font-weight: 400;
    line-height: var(--lh--s);
    letter-spacing: var(--ls--m);
    margin-bottom: var(--fluid--24);
}

/*.footer__form .gform_wrapper ::placeholder,
.footer__form .gform_wrapper ::-webkit-input-placeholder {
  color: rgba(0, 59, 113, 0.4);
}*/

@media (max-width: 1024px) {
    .footer__node#footerLogo {
        grid-column: 1 / span 6;
    }
    
    .footer__node#footerContacts {
        grid-column: 1 / span 2;
        grid-row: 2;
    }
    
    .footer__node#footerMenu {
        grid-column: 3 / span 4;
        grid-row: 2;
    }
    
    .footer__node#footerConnects {
        grid-column: 1 / span 4;
        grid-row: 3;
    }
}

@media (max-width: 767px) {    
    .footer__node#footerContacts {
        grid-column: 1 / span 6;
        grid-row: 2;
    }
    
    .footer__node#footerMenu {
        grid-column: 1 / span 6;
        grid-row: 3;
    }
    
    .footer__node#footerConnects {
        grid-column: 1 / span 6;
        grid-row: 4;

        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
    }

    .footer__form {
        max-width: none;
    }

    .copyright__wrap {
        flex-direction: column-reverse;
        align-items: center;
    }
}

@media (max-width: 599px) {
    .footer__node#footerLogo {
        grid-column: 1 / span 2;
    }
    
    .footer__node#footerContacts {
        grid-column: 1 / span 2;
    }
    
    .footer__node#footerMenu {
        grid-column: 1 / span 2;
    }
    
    .footer__node#footerConnects {
        grid-column: 1 / span 2;
    }
}