<style>
.visually-hidden {
display: none;
}
</style>
<article class="modal visually-hidden">
<form>
<input value="test" />
</form>
<button type="button" class="modal_close">Close</button>
</article>
<button type="button" class="write-us">Open</button>
<script>
var open = document.querySelector('.write-us'),
modal = document.querySelector('.modal'),
close = modal.querySelector('.modal_close');
open.addEventListener("click", function () {
modal.classList.remove("visually-hidden");
});
close.addEventListener("click", function () {
modal.classList.add("visually-hidden");
});
</script>
Что-то не все сказано/показано. Работает ведь без проблем? Единственно, что убраны никчемные evt.preventDefault();, для кнопки закрытия этого гарантированно не требуется, а если и кнопка открытия тоже button или иное не имеющее действия по умолчанию, то и для нее тоже не требуется.