Welcome to Hygelion
Use this secure demonstration form to manage your service preferences.
Operations platform access for Hygelion clients.
Client care desk
Let’s map the right service rhythm.
Tell us about the space, preferred timing, and priorities. A Hygelion coordinator will review the details and respond with practical next steps.
`;
const footerHTML=``;
document.getElementById('site-header').innerHTML=headerHTML;
document.getElementById('site-footer').innerHTML=footerHTML;
// header scripts
const header=document.getElementById('site-header');
const toggleBtn=header.querySelector('[data-menu-toggle]');
const mobileDrawer=header.querySelector('[data-mobile-drawer]');
const menuNav=header.querySelector('[data-menu]');
if(toggleBtn&&mobileDrawer){toggleBtn.addEventListener('click',()=>{mobileDrawer.classList.toggle('hidden');});mobileDrawer.addEventListener('click',e=>{if(e.target===mobileDrawer)mobileDrawer.classList.add('hidden');});}
const themeBtn=header.querySelector('[data-theme-toggle]');
if(themeBtn){let dark=localStorage.getItem('hygelion-theme')!=='light';const apply=()=>{if(dark){document.documentElement.classList.add('dark');document.documentElement.style.setProperty('--tw-bg-opacity','0.95');}else{document.documentElement.classList.remove('dark');document.documentElement.style.setProperty('--tw-bg-opacity','1');}};apply();themeBtn.addEventListener('click',()=>{dark=!dark;localStorage.setItem('hygelion-theme',dark?'dark':'light');apply();});}
const authModal=header.querySelector('[data-auth-modal]');
const loginBtn=header.querySelector('[data-login-open]');
const registerBtn=header.querySelector('[data-register-open]');
if(authModal){[loginBtn,registerBtn].forEach((b,i)=>{if(b)b.addEventListener('click',()=>{authModal.hidden=false;authModal.querySelector('[data-auth-title]').textContent=i===0?'Sign in to Hygelion':'Create account';});});authModal.querySelector('[data-modal-close]').addEventListener('click',()=>{authModal.hidden=true;});authModal.addEventListener('click',e=>{if(e.target===authModal)authModal.hidden=true;});}
// form validation
const form=document.getElementById('contact-form');
const modal=document.getElementById('form-modal');
const errP=document.getElementById('form-errors');
form.addEventListener('submit',function(e){
e.preventDefault();
const name=form.name.value.trim();
const email=form.email.value.trim();
const phone=form.phone.value.trim();
const msg=form.message.value.trim();
let errs=[];
if(!name)errs.push('Name is required.');
if(!email||!/^[^@\s]+@[^@\s]+\.[^@\s]+$/.test(email))errs.push('Valid email is required.');
if(!phone)errs.push('Phone number is required.');
if(!msg||msg.length<20)errs.push('Message must be at least 20 characters long.');
if(errs.length>0){errP.innerHTML=errs.map(x=>'• '+x+'
').join('');modal.hidden=false;}else{form.submit();}
});
modal.querySelector('[data-close-form-modal]').addEventListener('click',()=>{modal.hidden=true;});
modal.addEventListener('click',e=>{if(e.target===modal)modal.hidden=true;});
})();