#a
{
    grid-template-columns: repeat(3, 1fr);

    @media screen and (max-width: 1235px)
    {
        grid-template-columns: repeat(2, 1fr);
    }

    @media screen and (max-width: 818px)
    {
        grid-template-columns: 1fr;
    }
}

.contacts
{
    flex-wrap: wrap;
    padding: 5px 0 0 0;
    /* border-bottom: var(--border-1px); */

    .contact
    {
        display: flex;
        align-items: center;
        margin: 3px;
    }

    .icon
    {
        --size: 1lh;
        width: var(--size);
        height: var(--size);
        background-color: var(--c-black);
        mask-size: contain;
        mask-position: center;
        mask-repeat: no-repeat;
    }

    .icon.phone
    {
        mask-image: var(--icon-phone);
    }

    .icon.map
    {
        mask-image: var(--icon-map);
    }

    .icon.fax
    {
        mask-image: var(--icon-fax);
    }

    .icon.mail
    {
        mask-image: var(--icon-mail);
    }

    .icon + span
    {
        margin:0 20px 0 10px;
    }

    .contact.address
    {
        text-decoration: underline;
    }
}