// pns-contact-page.jsx — standalone /Contact page
const { useEffect } = React;
const T = window.PNST;
const { PNSNav, PNSContact, PNSFooter } = window;
const wpC = (window.pnsWP && window.pnsWP.settings) || {};
const CONTACT_CARDS = [
{ k:'Call Us', v:(wpC.phone||'+1 (747) 335-2335'), href:'tel:'+String(wpC.phone||'+17473352335').replace(/[^\d+]/g,''), sub:'Mon–Fri, 9am–6pm PT · 24/7 emergency support' },
{ k:'Email Us', v:(wpC.email||'info@premiernetworksolutions.com'), href:'mailto:'+(wpC.email||'info@premiernetworksolutions.com'), sub:'We reply within one business hour' },
{ k:'Service Area', v:'Southern California', href:null, sub:'Los Angeles · Orange County · Ventura' },
];
function ContactHero() {
return (
Contact Us
Let's Discuss Your Technology Needs
Tell us where your IT stands today and where you want it to be. A senior engineer — not a
call-center rep — reviews every request and responds within one business hour.
{CONTACT_CARDS.map(c => {
const inner = (
{c.k}
{c.v}
{c.sub}
);
const box = {
background:'rgba(255,255,255,0.05)', border:'1px solid rgba(255,255,255,0.12)',
borderRadius:16, padding:'26px 24px', textDecoration:'none', display:'block',
transition:'all 0.28s ease',
};
const hov = e => { e.currentTarget.style.background='rgba(255,255,255,0.09)'; e.currentTarget.style.borderColor='rgba(43,181,160,0.45)'; e.currentTarget.style.transform='translateY(-4px)'; };
const out = e => { e.currentTarget.style.background='rgba(255,255,255,0.05)'; e.currentTarget.style.borderColor='rgba(255,255,255,0.12)'; e.currentTarget.style.transform='translateY(0)'; };
return c.href
?
{inner}
:
{inner}
;
})}
);
}
function PNSContactPage() {
useEffect(() => {
const timer = setTimeout(() => {
const observer = new IntersectionObserver(
entries => entries.forEach(e => { if (e.isIntersecting) { e.target.classList.add('visible'); observer.unobserve(e.target); } }),
{ threshold: 0.12, rootMargin: '0px 0px -50px 0px' }
);
document.querySelectorAll('.pns-fade-up, .pns-slide-left, .pns-slide-right, .pns-zoom-in').forEach(el => observer.observe(el));
}, 250);
return () => clearTimeout(timer);
}, []);
return (
);
}
ReactDOM.createRoot(document.getElementById('app')).render();