You can reach out to us using the form below, we will get back to you as soon as possible. .contact-form input { padding: 4px 10px; width: 100%; color: var(--primary); border: 2px solid var(--tertiary); border-radius: var(--radius); } .contact-form textarea { padding: 4px 10px; width: 100%; color: var(--primary); border: 2px solid var(--tertiary); border-radius: var(--radius); } .contact-form input:focus { border-color: var(--secondary); } .contact-form textarea:focus { border-color: var(--secondary); } .button:hover { background-color: var(--secondary); } Email Address: Subject: Message: Send function buf2hex(buffer) { return [...new Uint8Array(buffer)] .map(x = x.toString(16).padStart(2, '0')) .join(''); } async function findNonce(e) { e.preventDefault() const button = document.getElementById("send") button.children[0].textContent = "Sending, please wait, it can take a few seconds"; button.setAttribute("disabled", true); const form = document.getElementById('contact-form'); const email = form.elements['email'].value.trim(); const subject = form.elements['subject'].value.trim(); const content = form.elements['content'].value.replace(/(\r\n|\n|\r)/gm, "").trim(); const difficulty = 4; let nonce = 0; while (true) { let data = new TextEncoder().encode(`${email}${subject}${content}${nonce}`); let digest = await crypto.subtle.digest({name: 'SHA-256'}, data); let hash = buf2hex(digest); if (hash.startsWith("0".repeat(difficulty))) { form.elements['nonce'].value = nonce; form.submit(); return } else { nonce++; } } } document.getElementById('contact-form').addEventListener("submit", findNonce);