$(document).ready(function() { $('#subscribeForm').on('submit', function(e) { e.preventDefault(); const $form = $(this); const $btn = $form.find('button'); const originalBtnText = $btn.text(); $btn.prop('disabled', true).text('Processing...'); $.ajax({ url: 'subscribe.php', method: 'POST', data: $form.serialize(), dataType: 'json', success: function(response) { showNotification(response.message); if (response.success) { $form[0].reset(); } }, error: function() { showNotification('An unexpected error occurred.'); }, complete: function() { $btn.prop('disabled', false).text(originalBtnText); } }); }); function showNotification(message) { const $notif = $('#notification'); $notif.text(message).fadeIn(); setTimeout(function() { $notif.fadeOut(); }, 5000); } // Smooth scroll for anchor links $('a[href^="#"]').on('click', function(e) { e.preventDefault(); const target = this.hash; if (!target) return; $('html, body').animate({ scrollTop: $(target).offset().top - 80 }, 500); }); });