.contact-form-block {
    background-repeat: round;
    background-position-x: left;
    background-position-y: top;
    background-size: contain;
    margin: 0;
    padding: 0;
    box-shadow: var(--box-shadow-gray);
    overflow: hidden;
}

.contact-form-block.contacts-page {
    background-image: url("../../images/contact-forms/contact_form_block.webp");
}

.contact-form-block.coop-page {
    background-image: url("../../images/contact-forms/coop_form_block.webp");
}

.contact-form-block .right-part {
    box-sizing: border-box;
    width: 50%;
    margin-left: auto;
    padding: 4.4vw 2.6vw;
    box-shadow: none;
}

.contact-form-block .items-block p.text-tmpl {
    font-weight: 600;
}

.contact-form-block h3 {
    padding-bottom: 2vw;
}

.contact-form-block .right-part .contact-form {
    padding-top: 2.6vw;
}

.items-block {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    gap: 1.2vw;
}

.items-block .col p.label-tmpl {
    padding-bottom: 0.3vw;
}

div.wpforms-container-full:not(:empty) {
    margin: 0;
}

.wpforms-container .wpforms-field {
    padding: 0 0 2vw;
}

.wpforms-container .wpforms-field.wpforms-field-layout {
    padding: 0;
}

.entry-content .wpforms-container ul li::before {
    content: '';
    margin-right: 0;
}

body .iti__flag-box, body .iti__country-name, body .iti__dial-code, div.wpforms-container .wpforms-form .iti__flag-box, div.wpforms-container .wpforms-form .iti__country-name, div.wpforms-container .wpforms-form .iti__dial-code, div.wpforms-container-full .wpforms-form .iti__flag-box, div.wpforms-container-full .wpforms-form .iti__country-name, div.wpforms-container-full .wpforms-form .iti__dial-code, #wpforms-conversational-form-page .iti__flag-box, #wpforms-conversational-form-page .iti__country-name, #wpforms-conversational-form-page .iti__dial-code,
div.wpforms-container-full .wpforms-field.wpforms-field-payment-checkbox ul li input+label {
    font-family: "Montserrat Alternates", sans-serif;
    font-size: 1vw;
    line-height: 1.6;
    font-weight: 400;
}

div.wpforms-container-full .wpforms-form .iti--allow-dropdown .iti__country-container .iti__dropdown-content .iti__country-list .iti__dial-code {
    font-size: 1vw;
}

div.wpforms-container .wpforms-form .wpforms-field-layout .wpforms-layout-row, div.wpforms-container .wpforms-form .wpforms-field-repeater .wpforms-layout-row {
    margin-right: -0.6vw;
    margin-left: -0.6vw;
    align-items: baseline;
}

.contact-form-block input,
.contact-form-block textarea {
    background: transparent!important;
    border: none!important;
    border-radius: unset!important;
    border-bottom: black 1px solid!important;
    padding: 0 0.6vw!important;
    font-family: "Montserrat Alternates", sans-serif!important;
    font-size: 1vw!important;
    line-height: 1.6!important;
    height: auto!important;
}

.wpforms-container .wpforms-recaptcha-container .g-recaptcha {
    padding: 0;
    width: fit-content;
}

div.wpforms-container-full .wpforms-form em.wpforms-error#wpforms-field_recaptcha-error {
    width: auto;
}

.wpforms-container .wpforms-recaptcha-container {
    padding: 0 0 1.8vw;
}

.wpforms-submit-container button {
    display: flex!important;
    align-items: center!important;
    justify-content: center!important;
    flex-direction: row!important;
    gap: 0.6vw!important;
    padding: 1.2vw 4.4vw!important;
    border: none!important;
    border-radius: unset!important;
    background: var(--black-btn-background-color)!important;
    position: relative!important; /* Для псевдоэлементов */
    overflow: hidden!important; /* Ограничиваем видимость внутри кнопки */
    box-shadow: 5px 5px 10px 0 #c9c1c1!important;
    height: 3.8vw!important;
    font-family: "Alegreya SC", sans-serif!important;
    font-weight: 400!important;
    font-size: 1.4vw!important;
    color: var(--black-btn-text-color)!important;
    text-transform: none!important;

    transition: color 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease!important;
}

.wpforms-submit-container button::before {
    content: ''!important;
    position: absolute!important;
    top: 0!important;
    left: -200%!important; /* Луч за пределами кнопки до наведения */
    width: 100%!important;
    height: 100%!important;
    background: rgba(255, 255, 255, 0.7)!important; /* Полупрозрачный белый луч */
    transform: skewX(-25deg)!important; /* Лёгкий наклон для интересного эффекта */
    clip-path: inset(0 0 0 0)!important; /* Ограничиваем отображение луча строго внутри кнопки */
    z-index: 1!important; /* Размещаем луч над фоном, но под содержимым */
    pointer-events: none!important; /* Луч не мешает взаимодействию с кнопкой */

    transition: left 0.4s ease!important; /* Движение луча */
}

.wpforms-submit-container button:hover::before {
    left: 100%!important; /* Луч проходит через кнопку при наведении */
}

.wpforms-submit-container button:hover {
    box-shadow: 0 0 20px 10px var(--current-item-color)!important;
    border-color: black!important;
    color: var(--current-item-color)!important;
    background: var(--black-btn-background-color)!important;
}

div.wpforms-container-full .wpforms-form label.wpforms-error, div.wpforms-container-full .wpforms-form em.wpforms-error {
    font-family: "Montserrat Alternates", sans-serif;
    font-size: 0.8vw;
    line-height: 0.8vw;
    font-weight: 500;
    background: var(--info-bars-background-color);
    color: var(--current-item-color);
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 0.6vw;
    margin-top: 0.1vw;
    padding: 0.3vw;
    position: absolute;
    width: 100%;
}

div.wpforms-container-full .wpforms-form .wpforms-error-container {
    font-family: "Montserrat Alternates", sans-serif;
    font-size: 0.8vw;
    line-height: 0.8vw;
    font-weight: 500;
    background: var(--info-bars-background-color);
    color: var(--current-item-color);
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 0.6vw;
    margin: 0 0 0.6vw;
    padding: 0.3vw;
    /* position: absolute; */
    width: 100%;
}

div.wpforms-container-full .wpforms-form .wpforms-error-container p {
    font-weight: 500;
}

div.wpforms-container-full .wpforms-form label.wpforms-error:before, div.wpforms-container-full .wpforms-form em.wpforms-error:before {
    display: none;
}

div.wpforms-container-full .wpforms-form .wpforms-submit-spinner {
    margin-top: -2.7vw;
    position: absolute;
    max-width: 1.4vw;
    margin-inline-start: 2vw;
}

div.wpforms-container-full input[type=checkbox]:checked:before, div.wpforms-container-full input[type=radio]:checked:before {
    border-color: var(--general-text-color);
    box-shadow: none;
    border-radius: 0;
    width: 1vw;
    height: 1vw;
    background: transparent;
}