.contact-faq-section .container {
    max-width: 1715px;
    margin: 0 auto;
    padding: 120px 20px 100px;
}

.contact-faq-section .inner {
    display: flex;
    align-items: flex-start;
    gap: 36px;
}

.contact-faq-wrapper .section-header .section-title {
    padding-inline-start: 32px;
}

.contact-faq-wrapper .section-header .section-title {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 700;
    font-size: clamp(1.5rem, 0.875rem + 2.0833vw, 2.75rem);
    line-height: 1.3;
    margin: 0;
}

.contact-faq-section .inner.align-right {
    flex-direction: row-reverse;

}

.contact-faq-form-wrapper {
    width: 37%;
}

.contact-faq-section .contact-faq-form-wrapper .section-header {
    margin-bottom: 44px;
    padding-bottom: 42px;
    border-bottom: 1px solid #000;
}

.contact-faq-section .contact-faq-form-wrapper .section-title {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 700;
    font-size: clamp(1.5rem, 0.875rem + 2.0833vw, 2.75rem);
    line-height: 1.3;
    margin: 0;
    margin-bottom: 14px;
}

.contact-faq-section .contact-faq-form-wrapper .section-subtitle {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 600;
    font-size: 18px;
    line-height: 1.2;
    margin: 0;
}

.section-contact_form label {
    margin: 0;
}

.section-contact_form .wpcf7-submit {
    margin-top: 24px;
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 500;
    font-size: 15px;
    line-height: 1;
    text-align: center;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    padding: 20px 45px;
}

.section-contact_form .wpcf7-form textarea,
.section-contact_form textarea {
    height: 207px;
}

.section-contact_form input[type=email],
.section-contact_form input[type=tel],
.section-contact_form input[type=text] {
    margin: 0 0 7px;
    font-size: 18px;
}

.contact-faq-wrapper {
    width: calc(100% - 37%);
    margin: 0;
}

.contact-faq-wrapper .faq-list .faq-item .faq-question {
    font-size: 21px;
    line-height: 1.2;
    font-weight: 500;
    padding: 34px 12px 34px 32px;
    color: #04375F;
    margin: 0;
    border-bottom: 1px solid #d6d6d6;
    position: relative;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.faq-item:not(.active) .faq-toggle-icon {
    display: flex;
    width: 14px;
    height: 14px;
    background-image: url("data:image/svg+xml,%3Csvg width='15' height='3' viewBox='0 0 15 3' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='0.208008' y='0.674805' width='14' height='2' fill='black'/%3E%3C/svg%3E%0A");
    background-position: center;
    background-repeat: no-repeat;
    background-size: 100% 100%;
}

.faq-item.active .faq-toggle-icon {
    display: flex;
    width: 14px;
    height: 14px;
    background-image: url("data:image/svg+xml,%3Csvg width='15' height='15' viewBox='0 0 15 15' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.419556 6.8623H14.4196V8.8623H0.419556V6.8623Z' fill='black'/%3E%3Cpath d='M6.41956 14.8623V0.862305H8.41956V14.8623H6.41956Z' fill='black'/%3E%3C/svg%3E%0A");
    background-position: center;
    background-repeat: no-repeat;
    background-size: 100% 100%;
}


.contact-faq-wrapper .faq-list .faq-item .faq-answer {
    font-size: 18px;
    line-height: 1.4;
    font-weight: 500;
    padding: 27px 32px 30px 32px;
    color: #04375F;
    border-bottom: 1px solid #d6d6d6;
}

@media (min-width: 1444px) {
    .contact-faq-section .container {
        max-width: 1715px;
    }
}

@media (max-width: 1280px) {
    .contact-faq-section .inner {
        flex-direction: column;
    }

    .contact-faq-form-wrapper,
    .contact-faq-wrapper {
        width: 100%;
    }
}

@media (max-width: 768px) {
    .contact-faq-section .container {
        padding: 60px 20px;
    }

    .contact-faq-section .inner,
    .contact-faq-section .inner.align-right {
        flex-direction: column;
        gap: 32px;
    }

    .contact-faq-section .image-wrapper,
    .contact-faq-section .content-wrapper {
        width: 100%;
        max-width: 100%;
        max-height: none;
    }

    .contact-faq-wrapper {
        margin-top: 0;
    }

    .contact-faq-wrapper .faq-list .faq-item .faq-question {
        padding: 20px;
    }

    .contact-faq-wrapper .faq-list .faq-item .faq-question span:first-child {
        width: calc(100% - 25px);
    }

    .contact-faq-wrapper .faq-list .faq-item .faq-answer {
        padding: 20px;
    }

    .contact-faq-wrapper .faq-list .faq-item.active {
        background-color: #f6f6f6;
    }
}