/* ---CONTACT STYLES--- */

.main_section {
    padding: 5vw 3vw;
}

.main_section .main_box {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 5vw;
}

.main_section .info_box {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 1vw;
}

.main_section .info_box h1 {
    color: var(--purple);
}

.main_section .info_box .subtitle {
    color: var(--purple);
}

.main_section .form_box {
    display: flex;
    flex-direction: column;
    gap: 1vw;
}

.main_section .form_box input {
    font-size: 1vw;
    padding: .75vw 1vw;
    border: none;
    border-radius: 10vw;
    background: #7823792c;
    transition: .25s;
}

.main_section .form_box textarea {
    resize: none;
    height: 8vw;
    font-size: 1vw;
    padding: .75vw 1vw;
    border: none;
    border-radius: 1vw;
    background: #7823792c;
    transition: .25s;
}

.main_section .form_box input::placeholder,
.main_section .form_box textarea::placeholder {
    color: var(--purple)
}

.main_section .form_box .main_btn {
    background-color: var(--purple);
    border: .15vw solid var(--purple);
}

.main_section .form_box .main_btn:hover {
    color: var(--purple);
    background-color: transparent;
}

.main_section .form_box input:focus-visible,
.main_section .form_box textarea:focus-visible {
    outline: none;
    background: #78237944;
}

.main_section .message_box {
    position: relative;
    height: 2vw;
}

.main_section .message_box {
    position: relative;
    height: 1.5vw;
}

.main_section .message_box p {
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    font-size: .8vw;
}

.main_section .success {
    color: #0bb300;
}

.main_section .error {
    color: #f31212;
}

.contact_section .media_box {
    display: flex;
    justify-content: center;
    align-items: center;
}

@media (max-width: 996px) {
    .main_section {
        padding: 10vw 5vw;
    }
    .main_section .main_box {
        grid-template-columns: 1fr;
    }
    .main_section .info_box {
        order: 2;
        align-items: center;
        gap: 5vw;
    }
    .main_section .info_box h2,
    .main_section .info_box p {
        text-align: center;
    }
    .main_section .form_box {
        width: 100%;
        gap: 5vw;
    }
    .main_section .form_box input {
        font-size: 3.5vw;
        padding: 3vw 4vw;
    }
    .main_section .form_box textarea {
        height: 30vw;
        font-size: 3.5vw;
        padding: 3vw 4vw;
        border-radius: 4vw;
    }
    .main_section .message_box {
        height: 5vw;
    }
    .main_section .message_box p {
        width: 100%;
        left: 50%;
        transform: translate(-50%, -50%);
        font-size: 3vw;
        text-align: center;
    }
}