.site-footer {
    position: relative;
    padding: 4rem 0 0;
    color: rgba(255, 255, 255, .82);
    border-top: 3px solid #dc5a17;
    background-color: #17110e;
    background-image: linear-gradient(rgba(15, 8, 5, .68), rgba(15, 8, 5, .76)), url("../../img/footer.jpg");
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover
}

.site-footer .footer-grid {
    display: grid;
    grid-template-columns: minmax(260px, 1.4fr) repeat(2, minmax(150px, .75fr)) minmax(250px, 1.1fr);
    gap: clamp(2rem, 4vw, 4.5rem)
}

.site-footer .footer-logo {
    display: inline-block;
    margin-bottom: 1rem
}

.site-footer .footer-logo img {
    display: block;
    width: 205px;
    height: auto;
    max-height: 76px;
    object-fit: contain;
    object-position: left center;
    filter: sepia(1) saturate(4) hue-rotate(335deg) brightness(1.5)
}

.site-footer .footer-welcome-title {
    max-width: 360px;
    margin: 0 0 .8rem;
    color: #ffad70;
    font-family: var(--font-heading) !important;
    font-size: clamp(1.55rem, 2.2vw, 2rem);
    font-weight: 800;
    line-height: 1.2;
}

.site-footer .footer-brand p {
    max-width: 340px;
    margin: 0 0 1.35rem;
    color: rgba(255, 255, 255, .78);
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: .9375rem;
    line-height: 1.7
}

.site-footer .footer-column h3 {
    position: relative;
    margin: .35rem 0 1.35rem;
    padding-bottom: .7rem;
    color: #ffad70;
    font-family: var(--font-heading) !important;
    font-size: 1.0625rem;
    font-weight: 800 !important;
    line-height: 1.3
}

.site-footer .footer-column h3::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 42px;
    height: 2px;
    background: #df611c
}

.site-footer .footer-column ul {
    margin: 0;
    padding: 0;
    list-style: none
}

.site-footer .footer-column li {
    margin: 0 0 .65rem;
    font-family: Arial, Helvetica, sans-serif;
    font-size: .9375rem;
    line-height: 1.45
}

.site-footer .footer-column a,
.site-footer .footer-column span {
    color: rgba(255, 255, 255, .8);
    font-family: Arial, Helvetica, sans-serif;
    font-size: inherit;
    transition: color .2s ease, transform .2s ease
}

.site-footer .footer-column:not(.footer-contact-wrap) a {
    display: inline-block
}

.site-footer .footer-column a:hover,
.site-footer .footer-column a:focus-visible {
    color: #ff9b58;
    transform: translateX(4px)
}

.site-footer .footer-contact li {
    display: grid;
    grid-template-columns: 36px minmax(0, 1fr);
    align-items: center;
    gap: .75rem;
    margin-bottom: .85rem
}

.site-footer .footer-contact i {
    display: grid;
    place-items: center;
    width: 36px;
    height: 36px;
    color: #ff9a55;
    border: 1px solid rgba(255, 154, 85, .45);
    border-radius: 50%;
    background: rgba(255, 255, 255, .06);
    font-size: .95rem
}

.site-footer .socials {
    display: flex;
    gap: .65rem
}

.site-footer .socials a {
    display: grid;
    place-items: center;
    width: 36px;
    height: 36px;
    color: #fff;
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 50%;
    background: rgba(255, 255, 255, .08);
    font-size: .9rem;
    transition: transform .25s ease, background-color .25s ease, border-color .25s ease
}

.site-footer .socials a:hover,
.site-footer .socials a:focus-visible {
    color: #fff;
    border-color: #df611c;
    background: #df611c;
    transform: translateY(-4px)
}

.site-footer .copyright {
    margin-top: 3rem;
    padding: 1.25rem 0;
    color: rgba(255, 255, 255, .72);
    border-top: 1px solid rgba(255, 255, 255, .14);
    font-family: Arial, Helvetica, sans-serif;
    font-size: .875rem;
    line-height: 1.6;
    text-align: center
}

.site-footer .copyright a {
    color: #ff9b58;
    font-family: Arial, Helvetica, sans-serif;
    font-size: inherit;
    font-weight: 700
}

.site-footer .copyright a:hover,
.site-footer .copyright a:focus-visible {
    color: #fff;
    text-decoration: underline
}

.scroll-motion-ready.site-footer .footer-grid>* {
    opacity: 0;
    transform: translateY(28px);
    transition: opacity .65s ease, transform .65s cubic-bezier(.2, .75, .25, 1)
}

.scroll-motion-ready.is-visible.site-footer .footer-grid>* {
    opacity: 1;
    transform: translateY(0)
}

.scroll-motion-ready.is-visible.site-footer .footer-grid>*:nth-child(2) {
    transition-delay: .12s
}

.scroll-motion-ready.is-visible.site-footer .footer-grid>*:nth-child(3) {
    transition-delay: .24s
}

.scroll-motion-ready.is-visible.site-footer .footer-grid>*:nth-child(4) {
    transition-delay: .36s
}

.scroll-motion-ready.motion-complete.site-footer .footer-grid>* {
    transition-delay: 0s
}

@media(max-width:991.98px) {
    .site-footer .footer-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 2.5rem
    }
}

@media(max-width:575.98px) {
    .site-footer {
        padding-top: 3rem
    }

    .site-footer .footer-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        column-gap: 1rem;
        row-gap: 2rem
    }

    .site-footer .footer-brand,
    .site-footer .footer-contact-wrap {
        grid-column: 1 / -1
    }

    .site-footer .footer-brand p {
        max-width: none
    }

    .site-footer .footer-column li,
    .site-footer .footer-brand p {
        font-size: .9rem
    }

    .site-footer .footer-column:not(.footer-contact-wrap) h3 {
        font-size: .95rem
    }

    .site-footer .footer-column:not(.footer-contact-wrap) li {
        overflow-wrap: anywhere
    }

    .site-footer .copyright {
        margin-top: 2.25rem;
        font-size: .8rem
    }
}

@media(prefers-reduced-motion:reduce) {
    .scroll-motion-ready.site-footer .footer-grid>* {
        opacity: 1;
        transform: none;
        transition: none
    }
}
