.footer-main {
    align-items: start;
    display: grid;
    gap: clamp(36px, 4vw, 64px);
    grid-template-columns: minmax(270px, .68fr) minmax(0, 1.32fr);
}

.footer-topline {
    align-items: start;
    border-inline-start: 1px solid #ffffff17;
    display: grid;
    gap: 24px;
    grid-template-columns: 1fr;
    padding-inline-start: clamp(30px, 3.5vw, 56px);
}

.footer-topline > p {
    color: #ffffff7a;
    font-size: .8rem;
    margin: 0;
}

.footer-topline nav {
    display: flex;
    flex-wrap: wrap;
    gap: 18px 26px;
    justify-self: start;
}

.footer-topline nav a {
    color: #ffffff9e;
    font-size: .78rem;
    font-weight: 650;
    transition: color .18s;
}

.footer-topline nav a:hover {
    color: var(--lime);
}

.footer-company {
    display: grid;
    font-style: normal;
    gap: 24px 30px;
    grid-template-columns: 1fr;
    margin: 0;
    padding-block: 4px;
}

.footer-company-item {
    align-items: flex-start;
    color: #ffffffa3;
    display: grid;
    gap: 13px;
    grid-template-columns: 34px minmax(0, 1fr);
    line-height: 1.5;
}

.footer-company-item > i {
    align-items: center;
    background: #b7e54817;
    border: 1px solid #b7e5482b;
    border-radius: 11px;
    color: var(--lime);
    display: flex;
    height: 34px;
    justify-content: center;
    width: 34px;
}

.footer-company-item span,
.footer-company-item strong {
    display: block;
}

.footer-company-item span {
    color: #ffffff61;
    font-size: .68rem;
    letter-spacing: .08em;
    margin-block-end: 3px;
    text-transform: uppercase;
}

.footer-company-item strong {
    color: #ffffffe0;
    font-size: .82rem;
    font-weight: 650;
}

a.footer-company-item {
    transition: transform .18s;
}

a.footer-company-item:hover {
    transform: translateY(-2px);
}

a.footer-company-item:hover strong {
    color: var(--lime);
}

@media (width <= 1023px) {
    .footer-topline > p {
        display: block;
    }

    .footer-company-item:last-child {
        grid-column: auto;
    }
}

@media (width <= 760px) {
    .footer-main {
        grid-template-columns: 1fr;
    }

    .footer-topline {
        border-block-start: 1px solid #ffffff17;
        border-inline-start: 0;
        padding-block-start: 28px;
        padding-inline-start: 0;
    }
}
