Mystic Hearth Baking Studio

Open the oven door

We are happy to talk through your next bake.

Send a note about course fit, ingredients, accessibility, or the kind of baking you want to practice. A member of the studio will reply during business hours.

Phone: +1 (415) 555-0186

Email: [email protected]

Response time: Within two business days.

Read common questions
Send enquiry
`; const footerHTML=``; document.getElementById('site-header').innerHTML=headerHTML; document.getElementById('site-footer').innerHTML=footerHTML; setTimeout(function(){ const html=document.documentElement; const themeKey='mh-theme'; function applyTheme(t){if(t==='dark'){html.classList.add('dark');}else{html.classList.remove('dark');}} const saved=localStorage.getItem(themeKey); if(saved){applyTheme(saved);}else{applyTheme('light');} const toggle=document.getElementById('theme-toggle'); if(toggle){toggle.addEventListener('click',()=>{const cur=html.classList.contains('dark')?'dark':'light';const next=cur==='dark'?'light':'dark';localStorage.setItem(themeKey,next);applyTheme(next);});} const mobileBtn=document.getElementById('mobile-menu-toggle'); const mobileNav=document.getElementById('mobile-menu'); if(mobileBtn&&mobileNav){mobileBtn.addEventListener('click',()=>{mobileNav.classList.toggle('hidden');});} const authOpen=document.getElementById('auth-open'); const authModal=document.getElementById('auth-modal'); const authClose=document.getElementById('auth-close'); if(authOpen&&authModal){authOpen.addEventListener('click',()=>{authModal.classList.remove('hidden');authModal.classList.add('grid');});} if(authClose&&authModal){authClose.addEventListener('click',()=>{authModal.classList.remove('grid');authModal.classList.add('hidden');});} if(authModal){authModal.addEventListener('click',(e)=>{if(e.target===authModal){authModal.classList.remove('grid');authModal.classList.add('hidden');}});} const banner=document.getElementById('cookie-banner'); const acceptBtn=document.getElementById('cookie-accept'); const key='mh-cookie-consent'; if(localStorage.getItem(key)==='accepted'&&banner){banner.style.display='none';} if(acceptBtn&&banner){acceptBtn.addEventListener('click',()=>{localStorage.setItem(key,'accepted');banner.style.display='none';});} const form=document.getElementById('contact-form'); const submitLink=document.getElementById('contact-submit'); const errorModal=document.getElementById('error-modal'); const errorText=document.getElementById('error-text'); function showError(msg){errorText.textContent=msg;errorModal.classList.remove('hidden');errorModal.classList.add('grid');} function hideError(){errorModal.classList.remove('grid');errorModal.classList.add('hidden');} if(errorModal){errorModal.addEventListener('click',(e)=>{if(e.target===errorModal){hideError();}});} if(submitLink&&form){submitLink.addEventListener('click',function(e){e.preventDefault();const name=form.querySelector('#name').value.trim();const email=form.querySelector('#email').value.trim();const message=form.querySelector('#message').value.trim();if(!name||!email||!message){showError('Name, email and message are required.');return;}const emailRegex=/^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$/;if(!emailRegex.test(email)){showError('Please enter a valid email address.');return;}form.submit();});} },50); })();