1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[7177],{1290:()=>{},1863:(e,t,a)=>{"use strict";a.d(t,{default:()=>x});var s=a(5155),r=a(2619),l=a.n(r),i=a(457),n=a(1873),o=a(9141),d=a(3664),c=a(6907),m=a(3509),u=a(5895);let f=[{label:"Home",href:"/"},{label:"About",href:"/about"},{label:"Services",href:"/services"},{label:"Pricing",href:"/services/pricing"},{label:"Projects",href:"/projects"},{label:"Blog",href:"/blog"},{label:"Contact",href:"/contact"}],h=[{label:"Privacy Policy",href:"/privacy"},{label:"Terms of Service",href:"/terms"}];function x(){return(0,s.jsx)("footer",{className:"bg-pmds-gray py-section-md px-4 lg:px-global","data-testid":"footer",children:(0,s.jsx)("div",{className:"container mx-auto max-w-[1280px]",children:(0,s.jsxs)("div",{className:"flex flex-col items-center gap-12",children:[(0,s.jsx)("div",{className:"w-full max-w-[640px] rounded-large bg-white/5 border border-white/10 p-6 lg:p-8","data-testid":"section-footer-newsletter",children:(0,s.jsx)(u.default,{location:"footer",tone:"dark",headingTag:"p"})}),(0,s.jsx)("div",{className:"w-full h-px bg-white/30","aria-hidden":"true"}),(0,s.jsxs)("div",{className:"flex flex-col items-center gap-8 max-w-[480px] w-full",children:[(0,s.jsx)(l(),{href:"/",className:"flex items-center","data-testid":"link-footer-logo",children:(0,s.jsx)("img",{src:"/logo-80.webp",alt:"PMDS",width:"40",height:"40",className:"h-10 w-auto invert",loading:"lazy"})}),(0,s.jsxs)("div",{className:"flex flex-col items-center gap-3 text-center",children:[(0,s.jsx)("p",{className:"font-body text-small text-white font-semibold",children:"Paul Mulligan Development Solutions"}),(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)(n.A,{className:"w-4 h-4 text-white/70"}),(0,s.jsx)("p",{className:"font-body text-small text-white/70",children:"Baltimore, MD"})]}),(0,s.jsxs)("div",{className:"flex items-center gap-4",children:[(0,s.jsxs)("a",{href:"tel:+14438667356",className:"flex items-center gap-2 text-white/70 hover:text-white transition-colors","data-testid":"link-footer-phone",onClick:e=>(0,m.KA)(e,"footer"),children:[(0,s.jsx)(o.A,{className:"w-4 h-4"}),(0,s.jsx)("span",{className:"font-body text-small",children:"(443) 866-7356"})]}),(0,s.jsxs)("a",{href:"mailto:[email protected]",className:"flex items-center gap-2 text-white/70 hover:text-white transition-colors","data-testid":"link-footer-email",onClick:e=>(0,m.cl)(e,"footer"),children:[(0,s.jsx)(d.A,{className:"w-4 h-4"}),(0,s.jsx)("span",{className:"font-body text-small",children:"[email protected]"})]})]}),(0,s.jsxs)("div",{className:"flex items-center gap-2 text-white/70","data-testid":"text-footer-duns",children:[(0,s.jsx)(c.A,{className:"w-4 h-4"}),(0,s.jsx)("span",{className:"font-body text-xs",children:"D&B Verified | DUNS\xae #144976746"})]})]}),(0,s.jsxs)("div",{className:"flex items-center gap-4",children:[(0,s.jsx)("a",{href:"https://www.linkedin.com/in/paul-mulligan/",target:"_blank",rel:"noopener noreferrer",className:"text-white hover:opacity-80 transition-opacity","aria-label":"Visit Paul's LinkedIn profile","data-testid":"link-social-linkedin",onClick:()=>(0,m.Tr)("linkedin","footer"),children:(0,s.jsx)(i.d58,{className:"w-6 h-6"})}),(0,s.jsx)("a",{href:"https://github.com/PAMulligan",target:"_blank",rel:"noopener noreferrer",className:"text-white hover:opacity-80 transition-opacity","aria-label":"Visit Paul's GitHub profile","data-testid":"link-social-github",onClick:()=>(0,m.Tr)("github","footer"),children:(0,s.jsx)(i.SrF,{className:"w-6 h-6"})}),(0,s.jsx)("a",{href:"https://www.patreon.com/cw/PaulMakesThings",target:"_blank",rel:"noopener noreferrer",className:"text-white hover:opacity-80 transition-opacity","aria-label":"Support Paul on Patreon","data-testid":"link-social-patreon",children:(0,s.jsx)(i.wQn,{className:"w-6 h-6"})})]}),(0,s.jsx)("nav",{className:"flex flex-wrap justify-center gap-6","data-testid":"nav-footer-links",children:f.map(e=>(0,s.jsx)(l(),{href:e.href,className:"font-body text-small font-semibold text-white hover:opacity-80 transition-opacity","data-testid":"link-footer-".concat(e.label.toLowerCase().replace(/\s/g,"-")),children:e.label},e.label))})]}),(0,s.jsxs)("div",{className:"flex flex-col items-center gap-8 w-full",children:[(0,s.jsx)("div",{className:"w-full h-px bg-white/30","aria-hidden":"true"}),(0,s.jsxs)("div",{className:"flex flex-col md:flex-row items-center justify-between gap-4 w-full",children:[(0,s.jsxs)("p",{className:"font-body text-small text-white","data-testid":"text-copyright",children:["\xa9 ",new Date().getFullYear()," PMDS - Paul Mulligan Development Solutions. All rights reserved."]}),(0,s.jsxs)("nav",{className:"flex flex-wrap justify-center gap-6","data-testid":"nav-legal-links",children:[h.map(e=>(0,s.jsx)(l(),{href:e.href,className:"font-body text-small text-white underline hover:opacity-80 transition-opacity","data-testid":"link-legal-".concat(e.label.toLowerCase().replace(/\s/g,"-")),children:e.label},e.label)),(0,s.jsx)("button",{type:"button",onClick:()=>window.dispatchEvent(new CustomEvent("pmds:open-cookie-preferences")),className:"font-body text-small text-white underline hover:opacity-80 transition-opacity bg-transparent border-0 p-0 cursor-pointer","data-testid":"button-cookie-preferences",children:"Cookie preferences"})]})]})]})]})})})}},2327:(e,t,a)=>{Promise.resolve().then(a.bind(a,3222)),Promise.resolve().then(a.bind(a,7060)),Promise.resolve().then(a.bind(a,6325)),Promise.resolve().then(a.bind(a,5058)),Promise.resolve().then(a.bind(a,1863)),Promise.resolve().then(a.bind(a,6520)),Promise.resolve().then(a.bind(a,9699)),Promise.resolve().then(a.t.bind(a,1290,23))},3222:(e,t,a)=>{"use strict";a.d(t,{default:()=>i});var s=a(2115),r=a(63),l=a(3509);function i(){let e=(0,r.usePathname)(),t=(0,s.useRef)(e);return(0,s.useEffect)(()=>{(0,l.vP)()&&e&&e!==t.current&&((0,l.oe)(e),t.current=e)},[e]),null}},5058:(e,t,a)=>{"use strict";a.d(t,{default:()=>h});var s=a(5155),r=a(2115),l=a(2619),i=a.n(l),n=a(2171),o=a(6185),d=a(6341),c=a(5870),m=a(5229),u=a(3509);let f="pmds-cookie-consent";function h(){let[e,t]=(0,r.useState)(!1),[a,l]=(0,r.useState)(!1),[h,x]=(0,r.useState)({essential:!0,analytics:!1,marketing:!1});(0,r.useEffect)(()=>{let e,a=localStorage.getItem(f);if(a)try{var s,r;let e=JSON.parse(a);("accepted"===e.status||"customized"===e.status&&((null==(s=e.preferences)?void 0:s.analytics)||(null==(r=e.preferences)?void 0:r.marketing)))&&(0,u.h1)()}catch(e){}else e=setTimeout(()=>t(!0),1e3);let i=()=>{try{let e=localStorage.getItem(f);if(e){let t=JSON.parse(e);(null==t?void 0:t.preferences)?x({essential:!0,analytics:!0===t.preferences.analytics,marketing:!0===t.preferences.marketing}):(null==t?void 0:t.status)==="accepted"&&x({essential:!0,analytics:!0,marketing:!0})}}catch(e){}l(!1),t(!0)};return window.addEventListener("pmds:open-cookie-preferences",i),()=>{e&&clearTimeout(e),window.removeEventListener("pmds:open-cookie-preferences",i)}},[]);let p=(e,a)=>{let s={status:e,preferences:a,timestamp:new Date().toISOString()};localStorage.setItem(f,JSON.stringify(s)),t(!1),a.analytics||a.marketing?(0,u.RM)({analytics:a.analytics,marketing:a.marketing}):(0,u.jg)()};return e?(0,s.jsx)("div",{className:"fixed bottom-0 left-0 right-0 z-50 p-4 md:p-6",role:"dialog","aria-label":"Cookie consent","data-testid":"dialog-cookie-consent",children:(0,s.jsx)(o.Zp,{className:"max-w-4xl mx-auto p-6 shadow-lg",children:a?(0,s.jsxs)("div",{className:"space-y-4",children:[(0,s.jsxs)("div",{className:"flex items-center justify-between",children:[(0,s.jsx)("h2",{className:"font-heading text-h5 text-foreground",children:"Cookie Preferences"}),(0,s.jsx)(n.Button,{variant:"ghost",size:"icon",onClick:()=>l(!1),"aria-label":"Close customization","data-testid":"button-cookie-close-customize",children:(0,s.jsx)(m.A,{className:"w-4 h-4"})})]}),(0,s.jsxs)("div",{className:"space-y-4",children:[(0,s.jsxs)("div",{className:"flex items-center justify-between py-3 border-b",children:[(0,s.jsxs)("div",{children:[(0,s.jsx)("p",{className:"font-body text-regular text-foreground",children:"Essential Cookies"}),(0,s.jsx)("p",{className:"font-body text-small text-muted-foreground",children:"Required for the website to function"})]}),(0,s.jsx)("div",{className:"text-small text-muted-foreground",children:"Always on"})]}),(0,s.jsxs)("label",{className:"flex items-center justify-between py-3 border-b cursor-pointer",children:[(0,s.jsxs)("div",{children:[(0,s.jsx)("p",{className:"font-body text-regular text-foreground",children:"Analytics Co
1okies"}),(0,s.jsx)("p",{className:"font-body text-small text-muted-foreground",children:"Help me understand site usage"})]}),(0,s.jsxs)("span",{className:"relative inline-flex items-center",children:[(0,s.jsx)("input",{type:"checkbox",checked:h.analytics,onChange:e=>x(t=>({...t,analytics:e.target.checked})),className:"sr-only peer","data-testid":"checkbox-cookie-analytics"}),(0,s.jsx)("span",{className:"w-11 h-6 bg-muted rounded-full peer peer-checked:bg-primary peer-focus:ring-2 peer-focus:ring-primary/20 after:content-[''] after:absolute after:top-0.5 after:left-[2px] after:bg-white after:rounded-full after:h-5 after:w-5 after:transition-all peer-checked:after:translate-x-full"})]})]}),(0,s.jsxs)("label",{className:"flex items-center justify-between py-3 cursor-pointer",children:[(0,s.jsxs)("div",{children:[(0,s.jsx)("p",{className:"font-body text-regular text-foreground",children:"Marketing Cookies"}),(0,s.jsx)("p",{className:"font-body text-small text-muted-foreground",children:"Used to show relevant ads"})]}),(0,s.jsxs)("span",{className:"relative inline-flex items-center",children:[(0,s.jsx)("input",{type:"checkbox",checked:h.marketing,onChange:e=>x(t=>({...t,marketing:e.target.checked})),className:"sr-only peer","data-testid":"checkbox-cookie-marketing"}),(0,s.jsx)("span",{className:"w-11 h-6 bg-muted rounded-full peer peer-checked:bg-primary peer-focus:ring-2 peer-focus:ring-primary/20 after:content-[''] after:absolute after:top-0.5 after:left-[2px] after:bg-white after:rounded-full after:h-5 after:w-5 after:transition-all peer-checked:after:translate-x-full"})]})]})]}),(0,s.jsxs)("div",{className:"flex flex-col sm:flex-row gap-3 sm:justify-end pt-2",children:[(0,s.jsx)(n.Button,{variant:"outline",size:"sm",onClick:()=>l(!1),"data-testid":"button-cookie-back",children:"Back"}),(0,s.jsx)(n.Button,{onClick:()=>{p("customized",h)},size:"sm","data-testid":"button-cookie-save",children:"Save Preferences"})]})]}):(0,s.jsxs)("div",{className:"space-y-4",children:[(0,s.jsxs)("div",{className:"flex items-start gap-4",children:[(0,s.jsx)("div",{className:"flex-shrink-0 w-10 h-10 rounded-full bg-pmds-light-blue flex items-center justify-center",children:(0,s.jsx)(d.A,{className:"w-5 h-5 text-primary"})}),(0,s.jsxs)("div",{className:"flex-1",children:[(0,s.jsx)("h2",{className:"font-heading text-h5 text-foreground mb-2",children:"I value your privacy"}),(0,s.jsxs)("p",{className:"font-body text-small text-muted-foreground",children:["This site uses cookies to enhance your browsing experience, analyze site traffic, and personalize content. You can choose to accept all cookies, reject non-essential ones, or customize your preferences."," ",(0,s.jsx)(i(),{href:"/cookies",className:"text-primary underline","data-testid":"link-cookie-policy",children:"Learn more"})]})]})]}),(0,s.jsxs)("div",{className:"flex flex-col sm:flex-row gap-3 sm:justify-end",children:[(0,s.jsxs)(n.Button,{variant:"ghost",size:"sm",onClick:()=>l(!0),"data-testid":"button-cookie-customize",children:[(0,s.jsx)(c.A,{className:"w-4 h-4 mr-2"}),"Customize"]}),(0,s.jsx)(n.Button,{variant:"outline",size:"sm",onClick:()=>{p("rejected",{essential:!0,analytics:!1,marketing:!1})},"data-testid":"button-cookie-reject",children:"Reject Non-Essential"}),(0,s.jsx)(n.Button,{onClick:()=>{p("accepted",{essential:!0,analytics:!0,marketing:!0})},size:"sm","data-testid":"button-cookie-accept",children:"Accept All"})]})]})})}):null}},5895:(e,t,a)=>{"use strict";a.d(t,{default:()=>m});var s=a(5155),r=a(2115),l=a(2171),i=a(1517),n=a(3664),o=a(1362),d=a(5299),c=a(8456);function m(e){let{location:t,tone:a="light",heading:m="Your digital website sherpa: practical web tips for small businesses, straight to your inbox",description:u="Join the Digital Website Sherpa newsletter. No spam, just practical, actionable advice to help you grow your business online. Unsubscribe anytime.",headingTag:f="h2",className:h}=e,[x,p]=(0,r.useState)(""),[b,g]=(0,r.useState)(""),[v,j]=(0,r.useState)("idle"),[w,y]=(0,r.useState)(""),N="dark"===a;async function k(e){let a,s,r;if(e.preventDefault(),"loading"===v)return;let l=x.trim();if(!/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(l)){j("error"),y("Please enter a valid email address.");return}j("loading"),y("");{let e=new URLSearchParams(window.location.search);a=e.get("utm_source")||void 0,s=e.get("utm_medium")||void 0,r=document.referrer||void 0}try{let e=await fetch("/api/subscribe",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({email:l,website:b,utmSource:a,utmMedium:s,referrer:r,source:t})}),i=await e.json().catch(()=>({}));e.ok?(j("success"),y("You're in. Check your inbox to confirm."),p("")):429===e.status?(j("error"),y("Too many attempts. Please wait a few minutes and try again.")):(j("error"),y("string"==typeof i.error&&i.error||"Something went wrong. Please try again in a moment."))}catch(e){j("error"),y("Network error. Please check your connection and try again.")}}
1return(0,s.jsxs)("div",{className:(0,c.cn)("w-full",h),"data-testid":"newsletter-signup-".concat(t),children:[(0,s.jsxs)("div",{className:"flex items-center gap-2 mb-3",children:[(0,s.jsx)("span",{className:(0,c.cn)("inline-flex items-center justify-center w-9 h-9 rounded-full",N?"bg-white/10":"bg-pmds-light-blue"),children:(0,s.jsx)(n.A,{className:(0,c.cn)("w-4 h-4",N?"text-white":"text-primary")})}),(0,s.jsx)("span",{className:(0,c.cn)("font-body text-small font-semibold uppercase tracking-wide",N?"text-white/80":"text-primary"),children:"Digital Website Sherpa"})]}),(0,s.jsx)(f,{className:(0,c.cn)("font-heading text-h5 md:text-h4 mb-3",N?"text-white":"text-foreground"),"data-testid":"newsletter-heading",children:m}),(0,s.jsx)("p",{className:(0,c.cn)("font-body text-regular mb-6",N?"text-white/70":"text-muted-foreground"),children:u}),"success"===v?(0,s.jsxs)("div",{className:(0,c.cn)("flex items-center gap-3 rounded-medium p-4",N?"bg-white/10":"bg-pmds-light-green"),role:"status","data-testid":"newsletter-success",children:[(0,s.jsx)(o.A,{className:(0,c.cn)("w-5 h-5 flex-shrink-0",N?"text-white":"text-primary")}),(0,s.jsx)("p",{className:(0,c.cn)("font-body text-regular font-semibold",N?"text-white":"text-foreground"),children:w})]}):(0,s.jsxs)("form",{onSubmit:k,className:"space-y-3",noValidate:!0,children:[(0,s.jsxs)("div",{style:{position:"absolute",left:"-9999px"},"aria-hidden":"true",children:[(0,s.jsx)("label",{htmlFor:"nl-website-".concat(t),children:"Leave this field empty"}),(0,s.jsx)("input",{type:"text",id:"nl-website-".concat(t),name:"website",tabIndex:-1,autoComplete:"off",suppressHydrationWarning:!0,"data-1p-ignore":!0,"data-lpignore":"true","data-bwignore":"true","data-form-type":"other",value:b,onChange:e=>g(e.target.value),"data-testid":"newsletter-honeypot"})]}),(0,s.jsxs)("div",{className:"flex flex-col sm:flex-row gap-3",children:[(0,s.jsx)(i.p,{type:"email",inputMode:"email",autoComplete:"email",required:!0,maxLength:254,placeholder:"[email protected]","aria-label":"Email address",value:x,onChange:e=>{p(e.target.value),"error"===v&&(j("idle"),y(""))},className:"rounded-medium flex-1 bg-background","data-testid":"newsletter-email"}),(0,s.jsx)(l.Button,{type:"submit",size:"lg",className:"rounded-medium w-full sm:w-auto",disabled:"loading"===v,"data-testid":"newsletter-submit",children:"loading"===v?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(d.A,{className:"mr-2 w-4 h-4 animate-spin"})," Subscribing..."]}):"Subscribe"})]}),"error"===v&&(0,s.jsx)("p",{className:(0,c.cn)("font-body text-small",N?"text-red-300":"text-destructive"),role:"alert","data-testid":"newsletter-error",children:w}),(0,s.jsx)("p",{className:(0,c.cn)("font-body text-xs",N?"text-white/50":"text-muted-foreground"),children:"We respect your privacy. Unsubscribe anytime."})]})]})}},6325:(e,t,a)=>{"use strict";a.d(t,{default:()=>r});var s=a(2115);function r(){return(0,s.useEffect)(()=>{if(document.querySelector('script[src="/claudius.iife.js"]'))return;let e=document.createElement("script");e.src="/claudius.iife.js",e.async=!0,document.body.appendChild(e)},[]),null}},6520:(e,t,a)=>{"use strict";a.d(t,{default:()=>j});var s=a(5155),r=a(2115),l=a(2619),i=a.n(l),n=a(63),o=a(2171),d=a(9293),c=a(9068),m=a(4172),u=a(6651),f=a(1761),h=a(5740),x=a(6721),p=a(4033),b=a(5229),g=a(9540);let v=[{label:"Home",href:"/"},{label:"About",href:"/about"},{label:"Portfolio",href:"/projects"},{label:"Services",href:"/services",dropdown:[{label:"Website Development",href:"/services/websites",icon:c.A,description:"Custom-built websites for small businesses"},{label:"Hosting & Maintenance",href:"/services/hosting",icon:m.A,description:"Reliable hosting with ongoing support"},{label:"SEO",href:"/services/seo",icon:u.A,description:"Improve your online visibility"},{label:"Pricing",href:"/services/pricing",icon:f.A,description:"Transparent pricing, no hidden fees"},{label:"AI SEO Copilot",href:"/products/ai-seo-copilot",icon:h.A,description:"AI SEO tool for Webflow & Chrome"},{label:"Optia",href:"/products/optia",icon:x.A,description:"Free SEO analyzer for Chrome"}]},{label:"Blog",href:"/blog"},{label:"FAQ",href:"/faq"}];function j(){var e;let[t,a]=(0,r.useState)(!1),[l,c]=(0,r.useState)(null),m=null!=(e=(0,n.usePathname)())?e:"/",u=e=>{c(l===e?null:e)};return(0,s.jsx)("nav",{className:"bg-background border-b border-border sticky top-0 z-50","data-testid":"navbar",children:(0,s.jsxs)("div",{className:"container mx-auto px-4 lg:px-global",children:[(0,s.jsxs)("div",{className:"flex items-center justify-between h-20 lg:h-24",children:[(0,s.jsx)(i(),{href:"/",className:"flex items-center gap-2","data-testid":"link-logo",children:(0,s.jsx)("img",{src:"/logo-200.webp",alt:"PMDS",width:"96",height:"96",className:"h-20 lg:h-24 w-auto",loading:"eager"})}),(0,s.jsx)("div",{className:"hidden lg:flex items-center gap-1",children:v.map(e=>(0,s.jsxs)("div",{className:"relative",onMouseEnter:()=>e.dropdown&&c(e.label),onMouseLeave:()=>e.dropdown&&c(null),children:[e.dropdown?(0,s.jsxs)("button",{onClick:()=>u(e.label),className:"flex items-center gap-1 px-4 py-2 font-body text-regular rounded-md hover-elevate ".concat(m.startsWith(e.href)?"text-primary":"text-foreground"),"data-testid":"button-nav-".concat(e.label.toLowerCase().replace(/\s/g,"-")),children:[e.label,(0,s.jsx)(p.A,{className:"w-4 h-4 transition-transform ".concat(l===e.label?"rotate-180":"")})]}):(0,s.jsx)(i(),{href:e.href,className:"px-4 py-2 font-body text-regular rounded-md hover-elevate block ".concat(m===e.href?"text-primary":"text-foreground"),"data-testid":"link-nav-".concat(e.label.toLowerCase().replace(/\s/g,"-")),children:e.label}),e.dropdown&&l===e.label&&(0,s.jsxs)("div",{className:"absolute top-full left-0 mt-2 w-80 bg-card border border-border rounded-medium shadow-lg p-4","data-testid":"dropdown-services",children:[(0,s.jsx)("div",{className:"space-y-1",children:e.dropdown.map(e=>(0,s.jsxs)(i(),{href:e.href,className:"flex items-start gap-3 p-3 rounded-md hover-elevate",onClick:()=>c(null),"data-testid":"link-dropdown-".concat(e.label.toLowerCase().replace(/\s/g,"-")),children:[(0,s.jsx)(e.icon,{className:"w-5 h-5 text-primary mt-0.5 flex-shrink-0"}),(0,s.jsxs)("div",{children:[(0,s.jsx)("div",{className:"font-body font-semibold text-foreground",children:e.label}),(0,s.jsx)("div",{className:"font-body text-small text-muted-foreground",children:e.description})]})]},e.label))}),(0,s.jsx)("div",{className:"mt-4 pt-4 border-t border-border",children:(0,s.jsxs)(i(),{href:"/contact",className:"block p-3 bg-pmds-light-blue rounded-md hover-elevate",onClick:()=>c(null),"data-testid":"link-dropdown-contact",children:[(0,s.jsx)("div",{className:"font-body text-small text-muted-foreground",children:"Looking for help with your business?"}),(0,s.jsx)("div",{className:"font-body font-semibold text-primary",children:"Get in touch"})]})})]})]},e.label))}),(0,s.jsxs)("div",{className:"hidden lg:flex items-center gap-3",children:[(0,s.jsx)(d.default,{href:"/contact",location:"nav_contact",variant:"outline",className:"rounded-medium",testId:"button-contact",children:"Contact"}),(0,s.jsx)(d.default,{href:"/get-started",location:"nav_get_started",className:"rounded-medium",testId:"button-get-started",children:"Get Started"})]}),(0,s.jsx)(o.Button,{variant:"ghost",size:"icon",className:"lg:hidden",onClick:()=>a(!t),"data-testid":"button-mobile-menu",children:t?(0,s.jsx)(b.A,{className:"w-6 h-6"}):(0,s.jsx)(g.A,{className:"w-6 h-6"})})]}),t&&(0,s.jsxs)("div",{className:"lg:hidden border-t border-border","data-testid":"mobile-menu",children:[(0,s.jsx)("div",{className:"py-4 space-y-2",children:v.map(e=>(0,s.jsx)("div",{children:e.dropdown?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)("button",{onClick:()=>u(e.label),className:"flex items-center justify-between w-full px-4 py-3 font-body text-medium text-foreground hover-elevate rounded-md","data-testid":"button-mobile-".concat(e.label.toLowerCase().replace(/\s/g,"-")),children:[e.label,(0,s.jsx)(p.A,{className:"w-5 h-5 transition-transform ".concat(l===e.label?"rotate-180":"")})]}),l===e.label&&(0,s.jsx)("div",{className:"ml-4 mt-1 space-y-1 pb-2",children:e.dropdown.map(e=>(0,s.jsxs)(i(),{href:e.href,className:"flex items-center gap-3 px-4 py-2 font-body text-regular text-foreground hover-elevate rounded-md",onClick:()=>{a(!1),c(null)},"data-testid":"link-mobile-".concat(e.label.toLowerCase().replace(/\s/g,"-")),children:[(0,s.jsx)(e.icon,{className:"w-5 h-5 text-primary"}),e.label]},e.label))})]}):(0,s.jsx)(i(),{href:e.href,className:"block px-4 py-3 font-body text-medium rounded-md hover-elevate ".concat(m===e.href?"text-primary":"text-foreground"),onClick:()=>a(!1),"data-testid":"link-mobile-".concat(e.label.toLowerCase().replace(/\s/g,"-")),children:e.label})},e.label))}),(0,s.jsxs)("div",{className:"border-t border-border py-4 px-4 space-y-3",children:[(0,s.jsx)(d.default,{href:"/contact",location:"nav_mobile_contact",variant:"outline",className:"w-full rounded-medium",testId:"button-mobile-contact",children:"Contact"}),(0,s.jsx)(d.default,{href:"/get-started",location:"nav_mobile_get_started",className:"w-full rounded-medium",testId:"button-mobile-get-started",children:"Get Started"})]})]})]})})}},7060:(e,t,a)=>{"use strict";a.d(t,{default:()=>l});var s=a(2115),r=a(3509);function l(){return(0,s.useEffect)(()=>{let e=e=>{var t;let a=e.target;(null==(t=a.closest)?void 0:t.call(a,"#claudius-chat-widget"))&&a.closest("button[aria-label='Open chat']")&&(0,r.Q6)()};return document.addEventListener("click",e),()=>document.removeEventListener("click",e)},[]),null}},9293:(e,t,a)=>{"use strict";a.d(t,{default:()=>o});var s=a(5155),r=a(2619),l=a.n(r),i=a(2171),n=a(3509);function o(e){let{href:t,location:a,children:r,testId:o,...d}=e;return(0,s.jsx)(i.Button,{asChild:!0,...d,"data-testid":o,onClick:()=>(0,n.Vp)(a),children:(0,s.jsx)(l(),{href:t,children:r})})}},9699:(e,t,a)=>{"use strict";a.d(t,{default:()=>y});var s=a(5155),r=a(9776),l=a(5774),i=a(2115),n=a(317),o=a(8456);let d=n.Kq;n.bL,n.l9,i.forwardRef((e,t)=>
1{let{className:a,sideOffset:r=4,...l}=e;return(0,s.jsx)(n.UC,{ref:t,sideOffset:r,className:(0,o.cn)("z-50 overflow-hidden rounded-md border bg-popover px-3 py-1.5 text-sm text-popover-foreground shadow-md animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 origin-[--radix-tooltip-content-transform-origin]",a),...l})}).displayName=n.UC.displayName;var c=a(4539),m=a(5476),u=a(3101),f=a(5229);let h=m.Kq,x=i.forwardRef((e,t)=>{let{className:a,...r}=e;return(0,s.jsx)(m.LM,{ref:t,className:(0,o.cn)("fixed top-0 z-[100] flex max-h-screen w-full flex-col-reverse p-4 sm:bottom-0 sm:right-0 sm:top-auto sm:flex-col md:max-w-[420px]",a),...r})});x.displayName=m.LM.displayName;let p=(0,u.F)("group pointer-events-auto relative flex w-full items-center justify-between space-x-4 overflow-hidden rounded-md border p-6 pr-8 shadow-lg transition-all data-[swipe=cancel]:translate-x-0 data-[swipe=end]:translate-x-[var(--radix-toast-swipe-end-x)] data-[swipe=move]:translate-x-[var(--radix-toast-swipe-move-x)] data-[swipe=move]:transition-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[swipe=end]:animate-out data-[state=closed]:fade-out-80 data-[state=closed]:slide-out-to-right-full data-[state=open]:slide-in-from-top-full data-[state=open]:sm:slide-in-from-bottom-full",{variants:{variant:{default:"border bg-background text-foreground",destructive:"destructive group border-destructive bg-destructive text-destructive-foreground"}},defaultVariants:{variant:"default"}}),b=i.forwardRef((e,t)=>{let{className:a,variant:r,...l}=e;return(0,s.jsx)(m.bL,{ref:t,className:(0,o.cn)(p({variant:r}),a),...l})});b.displayName=m.bL.displayName,i.forwardRef((e,t)=>{let{className:a,...r}=e;return(0,s.jsx)(m.rc,{ref:t,className:(0,o.cn)("inline-flex h-8 shrink-0 items-center justify-center rounded-md border bg-transparent px-3 text-sm font-medium ring-offset-background transition-colors hover:bg-secondary focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 group-[.destructive]:border-muted/40 group-[.destructive]:hover:border-destructive/30 group-[.destructive]:hover:bg-destructive group-[.destructive]:hover:text-destructive-foreground group-[.destructive]:focus:ring-destructive",a),...r})}).displayName=m.rc.displayName;let g=i.forwardRef((e,t)=>{let{className:a,...r}=e;return(0,s.jsx)(m.bm,{ref:t,className:(0,o.cn)("absolute right-2 top-2 rounded-md p-1 text-foreground/50 opacity-0 transition-opacity hover:text-foreground focus:opacity-100 focus:outline-none focus:ring-2 group-hover:opacity-100 group-[.destructive]:text-red-300 group-[.destructive]:hover:text-red-50 group-[.destructive]:focus:ring-red-400 group-[.destructive]:focus:ring-offset-red-600",a),"toast-close":"",...r,children:(0,s.jsx)(f.A,{className:"h-4 w-4"})})});g.displayName=m.bm.displayName;let v=i.forwardRef((e,t)=>{let{className:a,...r}=e;return(0,s.jsx)(m.hE,{ref:t,className:(0,o.cn)("text-sm font-semibold",a),...r})});v.displayName=m.hE.displayName;let j=i.forwardRef((e,t)=>{let{className:a,...r}=e;return(0,s.jsx)(m.VY,{ref:t,className:(0,o.cn)("text-sm opacity-90",a),...r})});function w(){let{toasts:e}=(0,c.dj)();return(0,s.jsxs)(h,{children:[e.map(function(e){let{id:t,title:a,description:r,action:l,...i}=e;return(0,s.jsxs)(b,{...i,children:[(0,s.jsxs)("div",{className:"grid gap-1",children:[a&&(0,s.jsx)(v,{children:a}),r&&(0,s.jsx)(j,{children:r})]}),l,(0,s.jsx)(g,{})]},t)}),(0,s.jsx)(x,{})]})}function y(e){let{children:t}=e;return(0,s.jsx)(r.Ht,{client:l.qQ,children:(0,s.jsxs)(d,{children:[t,(0,s.jsx)(w,{})]})})}j.displayName=m.VY.displayName}},e=>{e.O(0,[1741,2362,2619,5707,74,4892,9962,6642,8441,1255,7358],()=>e(e.s=2327)),_N_E=e.O()}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.