PageSourceSearch

https://sunnit.ai/_next/static/chunks/app/%5Blang%5D/page-aba2277338b6774e.js

js sunnit.ai collected 2026-10-05 15:16:05 UTC 21,693 bytes, 1 lines download raw bytes

1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[911],{2208:(e,t,r)=>{"use strict";r.d(t,{default:()=>i});var n=r(95155),s=r(12115),l=r(47605),a=r(16285);function i(e){let{dict:t}=e,[r,i]=(0,s.useState)(0),o=t.home,c=o.hero.slides,d=c[r],u=(0,s.useRef)(null);return(0,s.useEffect)(()=>{let e=window.setInterval(()=>{i(e=>(e+1)%c.length)},2600);return()=>window.clearInterval(e)},[c.length]),(0,s.useEffect)(()=>{let e=u.current;if(!e)return;let t=e.querySelector(".hero-kicker"),r=e.querySelector("h1"),n=e.querySelector(".hero-subcopy");if(!t||!r||!n)return;let s=l.os.context(()=>{l.os.timeline({defaults:{ease:"power3.out"}}).from(t,{opacity:0,y:15,duration:.6}).from(r,{opacity:0,y:30,duration:.8},"-=0.4").from(n,{opacity:0,y:15,duration:.6},"-=0.6")},e);return()=>s.revert()},[]),(0,n.jsxs)("div",{className:"hero-dynamic-copy",ref:u,children:[(0,n.jsx)("div",{className:"hero-bg-words","aria-hidden":"true",children:(0,n.jsx)("span",{children:d.word},"ghost-".concat(d.word))}),(0,n.jsx)("p",{className:"hero-kicker",children:d.kicker},"kicker-".concat(d.word)),(0,n.jsxs)("h1",{children:[o.hero.titleStart,(0,n.jsx)("span",{className:"animated-word","aria-live":"polite",children:(0,n.jsx)("span",{children:d.word},"word-".concat(d.word))})," ",o.hero.titleEnd]}),(0,n.jsx)(a.A,{text:d.text||o.hero.subtitle,className:"hero-subcopy"})]})}},13140:(e,t,r)=>{"use strict";r.d(t,{default:()=>l});var n=r(95155),s=r(12115);function l(e){let{lang:t,context:r,recipientEmail:l,labels:a,className:i}=e,[o,c]=(0,s.useState)("");return(0,n.jsxs)("form",{className:i,onSubmit:e=>{e.preventDefault();let n=new FormData(e.currentTarget),s=String(n.get("name")||"").trim(),a=String(n.get("email")||"").trim(),i=String(n.get("company")||"").trim(),o=String(n.get("service")||"").trim(),d=String(n.get("message")||"").trim(),u="it"===t?{subject:"home"===r?"Richiesta contatto dal sito SUNNIT":"Richiesta consulenza dal form contatti SUNNIT",missing:"Compila almeno nome, email e messaggio."}:"es"===t?{subject:"home"===r?"Solicitud de contacto desde el sitio SUNNIT":"Solicitud de consultoria desde el formulario de contacto de SUNNIT",missing:"Completa al menos nombre, email y mensaje."}:{subject:"home"===r?"Contact request from SUNNIT website":"Consulting request from SUNNIT contact form",missing:"Please fill in at least name, email and message."};if(!s||!a||!d)return void c(u.missing);c("");let m=["Name: ".concat(s),"Email: ".concat(a),i?"Company: ".concat(i):"",o?"Service: ".concat(o):"","","Message:",d].filter(Boolean).join("\n");window.location.href="mailto:".concat(l,"?subject=").concat(encodeURIComponent(u.subject),"&body=").concat(encodeURIComponent(m))},children:[(0,n.jsx)("input",{name:"name",placeholder:a.name,"aria-label":a.name,required:!0}),(0,n.jsx)("input",{name:"email",type:"email",placeholder:a.email,"aria-label":a.email,required:!0}),a.company?(0,n.jsx)("input",{name:"company",placeholder:a.company,"aria-label":a.company}):null,a.service?(0,n.jsxs)("select",{name:"service",defaultValue:"","aria-label":a.service,children:[(0,n.jsx)("option",{value:"",disabled:!0,children:a.service}),(a.services||[]).map(e=>(0,n.jsx)("option",{value:e,children:e},e))]}):null,(0,n.jsx)("textarea",{name:"message",placeholder:a.message,"aria-label":a.message,required:!0}),(0,n.jsx)("button",{type:"submit",className:"dark-btn",children:a.submit}),o?(0,n.jsx)("p",{className:"form-feedback form-feedback-error",children:o}):null]})}},16285:(e,t,r)=>{"use strict";r.d(t,{A:()=>l});var n=r(95155),s=r(12115);function l(e){let{text:t,as:r="p",className:l}=e;if(!t)return null;let a=t.split(RegExp("(?<=[.!?])\\s+")).map(e=>e.trim()).filter(Boolean);return(0,n.jsx)(r,{className:l,children:a.map((e,t)=>(0,n.jsxs)(s.Fragment,{children:[t>0?(0,n.jsx)("br",{}):null,e]},"".concat(t,"-").concat(e)))})}},20693:(e,t,r)=>{"use strict";r.d(t,{Q:()=>s});var n=r(30926);let s=(0,n.createServerReference)("7fd1a132d5e8f82e13a4df40bde758a957d2b1c4d6",n.callServer,void 0,n.findSourceMapURL,"revalidateSyncTags")},41774:(e,t,r)=>{"use strict";r.d(t,{default:()=>a});var n=r(95155),s=r(12115),l=r(16285);function a(e){let{cards:t}=e,r=(0,s.useRef)(null),a=(0,s.useRef)(null),i=(0,s.useRef)([]),[o,c]=(0,s.use
1State)(0);return(0,s.useEffect)(()=>{let e=r.current,n=a.current;if(!e||!n||0===t.length)return;if(window.innerWidth<=720){e.style.transform="";let t=i.current.filter(Boolean);if(0===t.length)return;let r=new IntersectionObserver(e=>{let t=e.filter(e=>e.isIntersecting).sort((e,t)=>t.intersectionRatio-e.intersectionRatio)[0];if(!t)return;let r=Number(t.target.getAttribute("data-rotary-index"));Number.isNaN(r)||c(r)},{threshold:[.35,.6,.8],rootMargin:"-10% 0px -30% 0px"});return t.forEach(e=>r.observe(e)),()=>r.disconnect()}let s=e.querySelector(".rotary-card");if(!s)return;let l=()=>{let r=s.offsetWidth+20,l=n.offsetWidth,a=Math.max(0,t.length*r-l),i=n.getBoundingClientRect(),o=Math.min(Math.round(Math.max(0,Math.min(1,(window.innerHeight/2-i.top)/i.height))*(t.length-1)),t.length-1);c(o);let d=o*r;e.style.transform="translateX(".concat(-Math.min(d,a),"px)")},o=()=>l();return window.addEventListener("resize",o),window.addEventListener("scroll",l,{passive:!0}),l(),()=>{window.removeEventListener("scroll",l),window.removeEventListener("resize",o)}},[t]),(0,n.jsx)("section",{className:"rotary-section",ref:a,children:(0,n.jsx)("div",{className:"rotary-track",ref:r,children:t.map((e,t)=>{var r;return(0,n.jsxs)("article",{ref:e=>{i.current[t]=e},"data-rotary-index":t,className:"rotary-card".concat(t===o?" rotary-card--active":""),children:[(0,n.jsx)("h3",{children:e.title}),(0,n.jsx)(l.A,{text:e.text}),(0,n.jsx)("ul",{children:null==(r=e.bullets)?void 0:r.map(e=>(0,n.jsx)("li",{children:e},e))})]},t)})})})}},46255:(e,t,r)=>{"use strict";r.d(t,{default:()=>i});var n=r(95155),s=r(12115),l=r(52619),a=r.n(l);function i(e){let{posts:t,lang:r,autoplay:l=!0,autoplayInterval:i=4e3,scrollDuration:o=900}=e,c=t.length,[d,u]=(0,s.useState)(3),[m,h]=(0,s.useState)(!1),[f,v]=(0,s.useState)(0),[p,g]=(0,s.useState)(0),[x,w]=(0,s.useState)(0),[b,j]=(0,s.useState)(!0),N=(0,s.useRef)(null),y=(0,s.useRef)(!1),E=(0,s.useRef)(null),S=(0,s.useRef)(null);(0,s.useEffect)(()=>{function e(){let e=window.innerWidth;e<720?u(1):e<1024?u(2):u(3)}return e(),window.addEventListener("resize",e),()=>window.removeEventListener("resize",e)},[]);let _=Math.max(1,Math.min(d,c||1)),k=(0,s.useMemo)(()=>0===c?[]:Array.from({length:c},(e,r)=>t[(x+r)%c]),[t,c,x]),M=(0,s.useMemo)(()=>0===c?[]:[...k,...k,...k],[k,c]);return((0,s.useEffect)(()=>{w(0),g(c),j(!1)},[c]),(0,s.useEffect)(()=>{let e=()=>{let e=E.current,t=S.current;if(!e||!t)return;let r=parseFloat(getComputedStyle(t).gap||"16")||16;v((e.clientWidth-r*Math.max(_-1,0)-12)/_)};return e(),window.addEventListener("resize",e),()=>window.removeEventListener("resize",e)},[_]),(0,s.useEffect)(()=>{if(l&&!m&&!(c<=1))return N.current=window.setInterval(()=>{j(!0),g(e=>e+1)},i),()=>{N.current&&window.clearInterval(N.current)}},[l,m,i,c]),(0,s.useEffect)(()=>{if(b)return;let e=requestAnimationFrame(()=>{requestAnimationFrame(()=>{y.current=!1,j(!0)})});return()=>cancelAnimationFrame(e)},[b]),0===c)?null:(0,n.jsxs)("div",{className:"news-slider",onMouseEnter:()=>h(!0),onMouseLeave:()=>h(!1),onFocus:()=>h(!0),onBlur:()=>h(!1),children:[(0,n.jsx)("button",{"aria-label":"Previous",className:"news-nav news-nav-left",onClick:()=>{c<=1||y.current||(y.current=!0,j(!0),g(c-1))},children:"‹"}),(0,n.jsx)("div",{className:"news-viewport",ref:E,children:(0,n.jsx)("div",{className:"news-track",ref:S,role:"list",onTransitionEnd:()=>
1{if(c<=1)return;if(p===c){y.current=!1;return}let e=p>c?1:-1;j(!1),w(t=>(t+e+c)%c),g(c)},style:{width:f?"".concat(M.length*f+16*Math.max(M.length-1,0),"px"):void 0,transform:"translate3d(-".concat(p*(f+16),"px, 0, 0)"),transition:b?"transform ".concat(o,"ms cubic-bezier(0.22, 1, 0.36, 1)"):"none"},children:M.map((e,t)=>(0,n.jsxs)(a(),{href:"/".concat(r,"/blog/").concat(e.slug),className:"news-item blog-card",role:"listitem",style:{width:f?"".concat(f,"px"):"".concat(100/_,"%")},children:[(0,n.jsx)("div",{className:"news-image-shell",children:e.image?(0,n.jsx)("div",{className:"news-image",children:(0,n.jsx)("img",{src:e.image,alt:e.title,loading:"lazy"})}):(0,n.jsx)("div",{className:"news-image","aria-hidden":"true"})}),(0,n.jsx)("h3",{className:"news-title",children:e.title})]},"".concat(e.slug,"-").concat(t)))})}),(0,n.jsx)("button",{"aria-label":"Next",className:"news-nav news-nav-right",onClick:()=>{c<=1||y.current||(y.current=!0,j(!0),g(c+1))},children:"›"})]})}},67059:(e,t,r)=>{"use strict";r.d(t,{default:()=>a});var n=r(95155),s=r(12115),l=r(47605);function a(e){let{children:t,className:r="",delay:a=0,direction:i="up",distance:o=34,duration:c=.8,scrub:d=!1}=e,u=(0,s.useRef)(null);return(0,s.useEffect)(()=>{let e=u.current;if(!e)return;if(window.matchMedia("(prefers-reduced-motion: reduce)").matches)return void l.os.set(e,{opacity:1,x:0,y:0});let t=0,r=0;"up"===i?r=o:"left"===i?t=-o:"right"===i&&(t=o);let n=l.os.context(()=>{l.os.set(e,{opacity:0,x:t,y:r,scale:.985}),l.os.to(e,{scrollTrigger:{trigger:e,start:d?"top bottom+=100":"top 90%",end:d?"center center":"bottom top",scrub:d,toggleActions:"play reverse play reverse"},opacity:1,x:0,y:0,scale:1,duration:d?void 0:c,delay:d?0:a/1e3,ease:"power2.out"})},e);return()=>n.revert()},[i,o,c,a,d]),(0,n.jsx)("div",{ref:u,className:r,children:t})}},84185:(e,t,r)=>{"use strict";r.d(t,{default:()=>d});var n=r(95155),s=r(12115),l=r(52619),a=r.n(l),i=r(47605),o=r(55580),c=r(16285);function d(e){let{marquee:t,panels:r}=e,l=(0,s.useRef)(null),o=(0,s.useRef)(null),d=(0,s.useRef)(null),u=(0,s.useRef)([]),[m,h]=(0,s.useState)(!1),[f,v]=(0,s.useState)(0);return(0,s.useEffect)(()=>{let e=window.matchMedia("(max-width: 720px)"),t=()=>h(e.matches);return t(),e.addEventListener("change",t),()=>e.removeEventListener("change",t)},[]),(0,s.useEffect)(()=>{let e=l.current,t=o.current,n=d.current;if(!e||!t||!n||r.length<3||window.matchMedia("(prefers-reduced-motion: reduce)").matches||m||window.innerWidth<1024)return;let s=i.os.context(()=>{var t;let r=i.os.utils.toArray(".service-scroll-panel"),s=i.os.utils.toArray(".service-scroll-panel__content"),l=document.querySelector(".site-header .nav-wrap"),a=(null!=(t=null==l?void 0:l.offsetHeight)?t:72)+60;i.os.set(r[0],{width:"70%",zIndex:3}),i.os.set(r[1],{width:"15%",zIndex:2}),i.os.set(r[2],{width:"15%",zIndex:1}),i.os.set(s[0],{autoAlpha:1,y:0}),i.os.set([s[1],s[2]],{autoAlpha:0,y:18}),i.os.timeline({scrollTrigger:{trigger:n,start:()=>"top top+=".concat(a),end:()=>"+=".concat(Math.max(1.35*window.innerHeight,1.85*n.offsetHeight)),scrub:.8,pin:e,pinSpacing:!0,anticipatePin:1,invalidateOnRefresh:!0}}).to(r[0],{width:"15%",duration:1},0).to(r[1],{width:"70%",duration:1},0).to(s[0],{autoAlpha:0,y:-18,duration:.4},.32).to(s[1],{autoAlpha:1,y:0,duration:.5},.62).to(r[1],{width:"15%",duration:1},1).to(r[2],{width:"70%",duration:1,zIndex:4},1).to(s[1],{autoAlpha:0,y:-18,duration:.4},1.32).to(s[2],{autoAlpha:1,y:0,duration:.5},1.62)},e);return()=>s.revert()},[m,r]),(0,s.useEffect)(()=>{f>r.length-1&&v(0)},[f,r.length]),(0,s.useEffect)(()=>{if(!m||0===r.length)return;let e=u.current.filter(Boolean);if(0===e.length)return;let t=new IntersectionObserver(e=>{let t=e.filter(e=>e.isIntersecting).sort((e,t)=>t.intersectionRatio-e.intersectionRatio);if(0===t.length)return;let r=Number(t[0].target.getAttribute("data-mobile-index"));Number.isNaN(r)||v(r)},{threshold:[.4,.6,.8],rootMargin:"-10% 0px -35% 0px"});return e.forEach(e=>t.observe(e)),()=>t.disconnect()},[m,r]),(0,n.jsx)("section",{className:"service-scroll-stage",ref:l,children:(0,n.jsxs)("div",{className:"container service-scroll-sh
1owcase",ref:o,children:[t?(0,n.jsx)("div",{className:"service-scroll-marquee-wrap",children:(0,n.jsx)("div",{className:"ghost-marquee service-scroll-marquee",children:t})}):null,m?(0,n.jsxs)("div",{className:"service-mobile-shell",children:[(0,n.jsx)("div",{className:"service-mobile-tabs","aria-label":"Service categories",children:r.map((e,t)=>(0,n.jsx)("button",{type:"button",className:"service-mobile-tab ".concat(t===f?"is-active":""),onClick:()=>(e=>{let t=u.current[e];t&&(v(e),t.scrollIntoView({behavior:"smooth",block:"start"}))})(t),children:e.label},e.label))}),(0,n.jsx)("div",{className:"service-mobile-stack",children:r.map((e,t)=>(0,n.jsx)("article",{ref:e=>{u.current[t]=e},"data-mobile-index":t,className:"service-mobile-card service-scroll-panel--".concat(e.tone," ").concat(t===f?"is-active":""),children:(0,n.jsxs)("div",{className:"service-mobile-card__inner",children:[(0,n.jsx)("p",{className:"card-eyebrow",children:e.label}),(0,n.jsx)("h3",{children:e.title}),(0,n.jsx)(c.A,{text:e.desc}),(0,n.jsx)(a(),{href:e.href,className:"outline-btn",children:e.cta})]})},e.label))})]}):(0,n.jsx)("div",{className:"service-scroll-track",ref:d,children:r.map(e=>(0,n.jsx)("article",{className:"service-scroll-panel service-scroll-panel--".concat(e.tone),"data-label":e.label,children:(0,n.jsxs)("div",{className:"service-scroll-panel__content",children:[(0,n.jsx)("p",{className:"card-eyebrow",children:e.label}),(0,n.jsx)("h3",{children:e.title}),(0,n.jsx)(c.A,{text:e.desc}),(0,n.jsx)(a(),{href:e.href,className:"outline-btn",children:e.cta})]})},e.label))})]})})}i.os.registerPlugin(o.u)},85763:(e,t,r)=>{"use strict";r.d(t,{default:()=>i});var n=r(95155),s=r(12115),l=r(47605),a=r(55580);function i(e){let{src:t}=e,r=(0,s.useRef)(null),i=(0,s.useRef)(null);return(0,s.useEffect)(()=>{let e,t,n,s=r.current,o=i.current;if(!s||!o)return;l.os.registerPlugin(a.u);let c=l.os.context(()=>{let r=window.matchMedia("(prefers-reduced-motion: reduce)").matches;r&&l.os.set(o,{opacity:1,scale:1}),(e=l.os.timeline({paused:!0,defaults:{duration:.8,ease:"power3.out"}})).fromTo(o,{scale:.8,opacity:0,transformOrigin:"center center"},{scale:1,opacity:1}),r?l.os.set(o,{opacity:1,scale:1}):t=a.u.create({trigger:o,start:"top bottom",end:"center bottom",animation:e,scrub:!0}),(n=new IntersectionObserver(e=>{e.forEach(e=>{e.isIntersecting&&e.intersectionRatio>=.5?s.play().catch(console.error):s.pause()})},{threshold:[0,.5,1]})).observe(o)},o);return()=>{null==n||n.disconnect(),null==t||t.kill(),null==e||e.kill(),s.pause(),c.revert()}},[]),(0,n.jsxs)("section",{ref:i,className:"scroll-video-section","aria-label":"Video Showcase",children:[(0,n.jsxs)("video",{ref:r,className:"scroll-video",muted:!0,playsInline:!0,loop:!0,preload:"auto",disablePictureInPicture:!0,controlsList:"nodownload noplaybackrate",onContextMenu:e=>e.preventDefault(),children:[(0,n.jsx)("source",{src:t,type:"video/mp4"}),"Il tuo browser non supporta il tag video."]}),(0,n.jsx)("div",{className:"scroll-video-overlay"})]})}},87204:(e,t,r)=>{"use strict";r.d(t,{default:()=>l});var n=r(95155),s=r(12115);function l(e){let{clients:t}=e,[r,l]=(0,s.useState)(null),a=[...t,...t];return(0,n.jsx)("div",{className:"logo-marquee","aria-label":"Client logos",onMouseLeave:()=>l(null),children:(0,n.jsx)("div",{className:"logo-marquee__track",children:a.map((e,s)=>{let a=null===r?"is-idle":s===r?"is-active":s===r-1?"is-neighbor-left":s===r+1?"is-neighbor-right":"is-dimmed",i=s>=t.length;return(0,n.jsx)("a",{className:"logo-pill ".concat(a),href:e.url,target:"_blank",rel:"noreferrer","aria-label":e.name,"aria-hidden":i,tabIndex:i?-1:void 0,onMouseEnter:()=>l(s),onFocus:()=>l(s),children:(0,n.jsxs)("span",{className:"logo-pill__media",children:[(0,n.jsx)("img",{className:"logo-pill__img logo-pill__img--base",src:e.logo,alt:e.name}),(0,n.jsx)("img",{className:"logo-pill__img logo-pill__img--color",src:e.logo,alt:"","aria-hidden":"true"})]})},"".concat(e.name,"-").concat(s))})})})}},88321:(e,t,r)=>{"use strict";r.d(t,{default:()=>u});var n=r(95155),s=r.t(n,2),l=r(58764),a=r(12115),i=r(67059);function o(e){let{closeLabel:t,detailsLabel:r,onClose:s,children:l}=e;return(0,a.useEffect)(()=>{let e=document.body.style.overflow;document.body.style.overflow="hidden";let t=e=>{"Escape"===e.key&&s()};return window.addEventListener("keydown",t),()=>{document.body.style.overflow=e,window.removeEventListener("keydown",t)}},[s]),(0,n.jsxs)("div",{className:"portfolio-modal",role:"dialog","aria-modal":"true","aria-label":r,children:[(0,n.jsx)("button",{type:"button",className:"portfolio-modal__backdrop","aria-label":t,onClick:s}),l]})}function c(e){let{projects:t,openLabel:r,onOpenProject:s,autoplay:l
1=!0,autoplayInterval:i=4200,scrollDuration:o=900}=e,c=t.length,[d,u]=(0,a.useState)(3),[m,h]=(0,a.useState)(!1),[f,v]=(0,a.useState)(0),[p,g]=(0,a.useState)(0),[x,w]=(0,a.useState)(0),[b,j]=(0,a.useState)(!0),N=(0,a.useRef)(null),y=(0,a.useRef)(!1),E=(0,a.useRef)(null),S=(0,a.useRef)(null);(0,a.useEffect)(()=>{function e(){let e=window.innerWidth;e<720?u(1):e<1024?u(2):u(3)}return e(),window.addEventListener("resize",e),()=>window.removeEventListener("resize",e)},[]);let _=Math.max(1,Math.min(d,c||1)),k=(0,a.useMemo)(()=>0===c?[]:Array.from({length:c},(e,r)=>t[(x+r)%c]),[t,c,x]),M=(0,a.useMemo)(()=>0===c?[]:[...k,...k,...k],[k,c]);return((0,a.useEffect)(()=>{w(0),g(c),j(!1)},[c]),(0,a.useEffect)(()=>{let e=()=>{let e=E.current,t=S.current;if(!e||!t)return;let r=parseFloat(getComputedStyle(t).gap||"16")||16;v((e.clientWidth-r*Math.max(_-1,0)-12)/_)};return e(),window.addEventListener("resize",e),()=>window.removeEventListener("resize",e)},[_]),(0,a.useEffect)(()=>{if(l&&!m&&!(c<=1))return N.current=window.setInterval(()=>{j(!0),g(e=>e+1)},i),()=>{N.current&&window.clearInterval(N.current)}},[l,m,i,c]),(0,a.useEffect)(()=>{if(b)return;let e=requestAnimationFrame(()=>{requestAnimationFrame(()=>{y.current=!1,j(!0)})});return()=>cancelAnimationFrame(e)},[b]),0===c)?null:(0,n.jsxs)("div",{className:"news-slider portfolio-slider",onMouseEnter:()=>h(!0),onMouseLeave:()=>h(!1),onFocus:()=>h(!0),onBlur:()=>h(!1),children:[(0,n.jsx)("button",{"aria-label":"Previous",className:"news-nav news-nav-left",onClick:()=>{c<=1||y.current||(y.current=!0,j(!0),g(c-1))},children:"‹"}),(0,n.jsx)("div",{className:"news-viewport",ref:E,children:(0,n.jsx)("div",{className:"news-track",ref:S,role:"list",onTransitionEnd:()=>
1{if(c<=1)return;if(p===c){y.current=!1;return}let e=p>c?1:-1;j(!1),w(t=>(t+e+c)%c),g(c)},style:{width:f?"".concat(M.length*f+16*Math.max(M.length-1,0),"px"):void 0,transform:"translate3d(-".concat(p*(f+16),"px, 0, 0)"),transition:b?"transform ".concat(o,"ms cubic-bezier(0.22, 1, 0.36, 1)"):"none"},children:M.map((e,t)=>(0,n.jsx)("button",{type:"button",className:"news-item portfolio-card-link",role:"listitem","aria-label":"".concat(r,": ").concat(e.title),style:{width:f?"".concat(f,"px"):"".concat(100/_,"%")},onClick:()=>s(e.slug),children:(0,n.jsxs)("article",{className:"case-card portfolio-card ".concat(e.tone),children:[e.image?(0,n.jsx)("div",{className:"portfolio-card__media",children:(0,n.jsx)("img",{src:e.image,alt:e.title,className:"portfolio-card__image",loading:"lazy"})}):null,(0,n.jsxs)("div",{className:"portfolio-card__body",children:[(0,n.jsx)("small",{children:e.tag}),(0,n.jsx)("h3",{children:e.title}),(0,n.jsx)("p",{children:e.excerpt})]})]})},"".concat(e.slug,"-").concat(t)))})}),(0,n.jsx)("button",{"aria-label":"Next",className:"news-nav news-nav-right",onClick:()=>{c<=1||y.current||(y.current=!0,j(!0),g(c+1))},children:"›"})]})}async function d(e){return(await (0,l._)(e,{...s,useMDXComponents:()=>({})})).default}function u(e){let{projects:t,openLabel:r,closeLabel:s,detailsLabel:l}=e,[u,m]=(0,a.useState)(null),[h,f]=(0,a.useState)(null),v=(0,a.useMemo)(()=>{var e;return null!=(e=t.find(e=>e.slug===h))?e:null},[t,h]),p=e=>{f(e)};return(0,a.useEffect)(()=>{let e=e=>{let t=e.detail;"string"==typeof t&&t&&f(t)},t=window.sessionStorage.getItem("pending-portfolio-slug");return t&&(window.sessionStorage.removeItem("pending-portfolio-slug"),f(t)),window.addEventListener("open-portfolio-modal",e),()=>{window.removeEventListener("open-portfolio-modal",e)}},[]),(0,a.useEffect)(()=>{let e=!1;return v?(d(v.body).then(t=>{e||m(()=>t)}),()=>{e=!0}):void m(null)},[v]),(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(i.default,{className:"portfolio-grid",distance:24,children:(0,n.jsx)(c,{projects:t,openLabel:r,onOpenProject:p,autoplay:!h})}),v?(0,n.jsx)(o,{closeLabel:s,detailsLabel:l,onClose:()=>p(null),children:(0,n.jsxs)("div",{className:"portfolio-modal__panel",children:[(0,n.jsxs)("div",{className:"portfolio-modal__hero portfolio-modal__hero--".concat(v.tone),children:[(0,n.jsxs)("div",{className:"portfolio-modal__hero-copy",children:[(0,n.jsx)("small",{children:v.tag}),(0,n.jsx)("h3",{children:v.title}),(0,n.jsx)("p",{children:v.excerpt})]}),v.image?(0,n.jsx)("div",{className:"portfolio-modal__hero-media",children:(0,n.jsx)("img",{src:v.image,alt:v.title,className:"portfolio-modal__hero-image"})}):null]}),(0,n.jsx)("div",{className:"portfolio-modal__content",children:u?(0,n.jsx)(u,{}):null}),(0,n.jsx)("div",{className:"portfolio-modal__actions",children:(0,n.jsx)("button",{type:"button",className:"outline-btn",onClick:()=>p(null),children:s})})]})}):null]})}},92024:(e,t,r)=>{Promise.resolve().then(r.bind(r,13140)),Promise.resolve().then(r.bind(r,67059)),Promise.resolve().then(r.bind(r,2208)),Promise.resolve().then(r.bind(r,87204)),Promise.resolve().then(r.bind(r,46255)),Promise.resolve().then(r.bind(r,88321)),Promise.resolve().then(r.bind(r,41774)),Promise.resolve().then(r.bind(r,85763)),Promise.resolve().then(r.bind(r,84185)),Promise.resolve().then(r.bind(r,45082)),Promise.resolve().then(r.bind(r,72647)),Promise.resolve().then(r.bind(r,98061)),Promise.resolve().then(r.t.bind(r,52619,23))}},e=>{e.O(0,[5592,9323,8897,6328,7605,2619,3276,5580,3144,8764,8441,1255,7358],()=>e(e.s=92024)),_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.