.wpcf7 br,
.wpcf7-spinner{
    display: none;
}

.wpcf7 form{
    display: flex;
    flex-direction: column;
    gap: 22px;
    max-width: 540px;
}

.wpcf7 form p{
    width: 100%;
}

.wpcf7 form p label{
    display: flex;
    flex-direction: column;
    gap: 6px;
    font-size: 16px;
    line-height: 24px;
    color: #181C24;
}

.wpcf7 form p label,
.wpcf7 form p label *{
    width: 100%;
}

.wpcf7 form p label input,
.wpcf7 form p label textarea,
.wpcf7 form p label select{
    display: block;
    outline: none;
    border: solid 1px #B5B7BC;
    border-radius: 8px;
    height: 44px;
    resize: none;
    padding: 12px;
}

.wpcf7 form p label input,
.wpcf7 form p label textarea,
.wpcf7 form p label select,
.wpcf7 form p label select option,
.wpcf7 form p label input::placeholder,
.wpcf7 form p label textarea::placeholder,
.wpcf7 form p label select::placeholder,
.wpcf7 form p label select option::placeholder{
    color: var(--black);
    font-size: 16px;
    line-height: 19px;
}

.wpcf7 form p label input:focus,
.wpcf7 form p label textarea:focus,
.wpcf7 form p label select:focus{
    border: solid 2px var(--primary);
}

.wpcf7 form p label .wpcf7-form-control-wrap{
    position: relative;
}

.wpcf7 form p label .wpcf7-form-control-wrap::after{
    content: "Optionnel";
    height: fit-content;
    width: fit-content;
    display: block;
    position: absolute;
    font-size: 14px;
    line-height: 16px;
    right: 0px;
    top: -25px;
    color: #545D63;
}

.wpcf7 form p label .wpcf7-form-control-wrap:has(input[aria-required="true"])::after,
.wpcf7 form p label .wpcf7-form-control-wrap:has(textarea[aria-required="true"])::after,
.wpcf7 form p label .wpcf7-form-control-wrap:has(select[aria-required="true"])::after{
    display: none;
}

.wpcf7 form p label textarea{
    height: 170px;
}

.wpcf7-not-valid-tip{
    font-size: 14px;
    margin-top: 2px;
    color: #dc3232;
}

.wpcf7 form .wpcf7-submit{
    display: block;
    width: 100%;
    background-color: var(--secondary);
    color: #fff;
    transition: 300ms ease;
    font-size: 16px;
    line-height: 22px;
    font-weight: 600;
    border-radius: 8px;
    border: none;
    padding: 13px;
    text-align: center;
    cursor: pointer;
}


.pageOffresEmplois .wpcf7 form .wpcf7-submit{
    background-color: transparent;
    color: var(--primary);
    border: solid 1px var(--primary);
}

.wpcf7 form.invalid .wpcf7-response-output, 
.wpcf7 form.unaccepted .wpcf7-response-output, 
.wpcf7 form.payment-required .wpcf7-response-output{
    border: solid 1px #dc3232 !important;
    font-size: 16px;
    line-height: 22px;
    padding: 12px 25px;
    margin: 0px;
}

.wpcf7 input[type="file"]{
    height: auto;
}

@media (min-width: 993px) {
    .wpcf7 form .wpcf7-submit:hover{
        background-color: var(--primary);
        transition: 300ms ease;
    }
    .pageOffresEmplois .wpcf7 form .wpcf7-submit:hover{
        background-color: var(--primary);
        color: #fff;
    }
}

@media (max-width: 992px) {
    .wpcf7 form{
        max-width: none;
    }
}