footer {
    display: flex;
    padding: 40px 16px;
    flex-direction: column;
    align-items: flex-start;
    gap: 24px;
    border-top: 1px solid var(--light-gray);

    & .footer-top {
        display: flex;
        flex-direction: column;
        gap: 56px;
        width: 100%;
    }

    & hr {
        border: none;
        width: 100%;
        border-top: 1px solid var(--light-gray);
    }
}

footer .logo {
    height: 55px;
    & img {
        height: 100%;
    }
}

.footer-top-hat {
    display: flex;
    flex-direction: column;
    gap: 40px;

    & .footer-nav-links {
        display: flex;
        
        & ul {
            display: flex;
            align-items: center;
            gap: 24px;
            list-style: none;
            color: var(--gray);
            margin: 0;
            padding: 0;
        }
        
        & .nav-item {
            margin: 0;
            font-size: 18px;
            font-style: normal;
            font-weight: 500;
            line-height: normal;
            font-family: 'Gilroy', sans-serif;
            position: relative;
        }
        
        & .nav-link {
            text-decoration: none;
            color: var(--black);
        }
        
        & .nav-link:hover {
            color: var(--lazure-green);
        }
    }
}

.footer-top-body {
    display: flex;
    flex-direction: column;
    gap: 24px;
    width: 100%;

    & a {
        margin-top: 8px;
        font-size: 18px;
    }
}

.footer-address {
    display: flex;
    flex-direction: column;
    gap: 8px;

    & b {
        color: var(--black);
        font-family: 'Gilroy', sans-serif;
        font-size: 20px;
        font-style: normal;
        font-weight: 600;
        line-height: normal;
    }

    & span {
        color: var(--gray);
        font-family: 'Gilroy', sans-serif;
        font-size: 18px;
        font-style: normal;
        font-weight: 500;
        line-height: normal;
    }
}

.footer-bottom {
    display: flex;
    flex-direction: column;
    gap: 16px;
    color: var(--gray);
    font-family: 'Gilroy', sans-serif;
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;

    & a {
        text-decoration: none;
        color: inherit;
    }

    & a:hover {
        color: var(--lazure-green);
    }
}

.linked-clutch-links {
    display: flex;
    justify-content: space-between;
    align-items: center;   
    height: 41px; 
}

.clutch-widget {
    cursor: pointer;
    display: flex;
    align-items: center;    
}

@media (min-width: 768px) {
    .footer-top-hat {
        flex-direction: row;
        justify-content: space-between;
    }

    .footer-top-body {
        flex-direction: row;
        align-items: flex-end;
        justify-content: space-between;

        & a {
            margin-top: 0;
        }
    }

    .clutch-widget a {
        display: flex;
        justify-content: flex-end;
    }

    .clutch-widget img {
        margin-bottom: -5px;
    }

    .linked-clutch-links {
        align-items: flex-end;
    }

    .footer-bottom {
        width: 100%;
        flex-direction: row-reverse;
        justify-content: space-between;
    }
}

@media (min-width: 1200px) {
    footer {
        padding: 40px 120px;
    }
}