.contact__blocks {
    display: grid;
    grid-template-columns: 1fr;
    gap: 20px;
}

.section.contact {
    padding: 0;
}

.contact__content {
    max-width: 1000px;
    margin: 40px auto;
}

.contact__block {
    list-style: none;
}

.contact__block a {
    max-width: 500px;
    height: 100%;
    padding: 20px 40px;
    display: flex;
    align-items: center;
    gap: 20px;
    background: var(--color-green-dark);
    color: #fff;
    text-decoration: none;
    border-radius: 5px;
}

.contact__block .typo {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.contact__block i {
    font-size: 48px;
    margin-bottom: 10px;
}

.contact__block .icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.contact__block h3 {
    text-transform: uppercase;
    font-size: 20px;
}

.contact__block p {
    font-size: 20px;
}

.contact__contacts {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    margin-bottom: 40px;
}

.contact .modal__form {
    width: 100%;
    padding: 0 !important;
    gap: 0;
}

.contact .field-wrapper {
    height: 60px;
    margin-bottom: 0;
}

.contact .icons {
    display: flex;
    align-items: center;
    gap: 20px;
}

.contact .icons i {
    font-size: 36px;
}

@media (max-width: 1000px) {
    .contact__content {
        margin: 0;
        padding: 40px;
    }

    .section__header {
        margin-bottom: 20px;
    }
}

@media (max-width: 868px) {
    .contact__contacts {
        grid-template-columns: 1fr;
    }

    .contact__block a {
        width: 100%;
        max-width: 100%;
    }
}

@media (max-width: 600px) {
    .contact__contacts {
        grid-template-columns: 1fr;
    }

    .contact__block .typo {
        gap: 6px;
    }

    .contact__block a {
        width: 100%;
        max-width: 100%;
    }

    .contact__content {
        padding: 20px 6px;
    }

    .contact__block h3 {
        font-size: 18px;
    }

    .contact__block p {
        font-size: 16px;
    }

    .contact__block a {
        padding: 20px;
    }

    .contact__block i {
        font-size: 36px;
    }
}

@media (max-width: 390px) {
    .contact__blocks {
        gap: 10px;
    }

    .contact__block h3 {
        font-size: 16px;
    }

    .contact__block p {
        font-size: 14px;
    }

    .contact__block a {
        padding: 10px;
    }

    .contact__block i {
        font-size: 32px;
    }

    .contact .icons {
        justify-content: center;
    }

    .contact__contacts {
        gap: 10px;
    }
}