1 line
39 KiB
JavaScript
1 line
39 KiB
JavaScript
const{useState,useEffect,useRef,Fragment}=React,Icon=({size:a=16,sw:e=1.75,className:t="",children:o})=>React.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:a,height:a,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:e,strokeLinecap:"round",strokeLinejoin:"round",className:t},o),ChevronDown=a=>React.createElement(Icon,{size:16,...a},React.createElement("polyline",{points:"6 9 12 15 18 9"})),Menu=a=>React.createElement(Icon,{size:24,...a},React.createElement("line",{x1:"4",x2:"20",y1:"6",y2:"6"}),React.createElement("line",{x1:"4",x2:"20",y1:"12",y2:"12"}),React.createElement("line",{x1:"4",x2:"20",y1:"18",y2:"18"})),X=a=>React.createElement(Icon,{size:24,...a},React.createElement("path",{d:"M18 6 6 18"}),React.createElement("path",{d:"m6 6 12 12"})),ArrowRight=a=>React.createElement(Icon,{size:16,...a},React.createElement("path",{d:"M5 12h14"}),React.createElement("path",{d:"m12 5 7 7-7 7"})),ArrowLeft=a=>React.createElement(Icon,{size:16,...a},React.createElement("path",{d:"m12 19-7-7 7-7"}),React.createElement("path",{d:"M19 12H5"})),ArrowUpRight=a=>React.createElement(Icon,{size:14,...a},React.createElement("path",{d:"M7 17 17 7"}),React.createElement("path",{d:"M7 7h10v10"})),Mail=a=>React.createElement(Icon,{size:16,...a},React.createElement("rect",{width:"20",height:"16",x:"2",y:"4",rx:"2"}),React.createElement("path",{d:"m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7"})),MapPin=a=>React.createElement(Icon,{size:16,...a},React.createElement("path",{d:"M20 10c0 7-8 13-8 13s-8-6-8-13a8 8 0 0 1 16 0Z"}),React.createElement("circle",{cx:"12",cy:"10",r:"3"})),Linkedin=a=>React.createElement(Icon,{size:16,...a},React.createElement("path",{d:"M16 8a6 6 0 0 1 6 6v7h-4v-7a2 2 0 0 0-2-2 2 2 0 0 0-2 2v7h-4v-7a6 6 0 0 1 6-6z"}),React.createElement("rect",{width:"4",height:"12",x:"2",y:"9"}),React.createElement("circle",{cx:"4",cy:"4",r:"2"})),ExternalLink=a=>React.createElement(Icon,{size:13,...a},React.createElement("path",{d:"M15 3h6v6"}),React.createElement("path",{d:"M10 14 21 3"}),React.createElement("path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"})),Radio=a=>React.createElement(Icon,{...a},React.createElement("path",{d:"M4.9 19.1C1 15.2 1 8.8 4.9 4.9"}),React.createElement("path",{d:"M7.8 16.2c-2.3-2.3-2.3-6.1 0-8.5"}),React.createElement("circle",{cx:"12",cy:"12",r:"2"}),React.createElement("path",{d:"M16.2 7.8c2.3 2.3 2.3 6.1 0 8.5"}),React.createElement("path",{d:"M19.1 4.9C23 8.8 23 15.2 19.1 19.1"})),Tv=a=>React.createElement(Icon,{...a},React.createElement("rect",{width:"20",height:"15",x:"2",y:"7",rx:"2",ry:"2"}),React.createElement("polyline",{points:"17 2 12 7 7 2"})),Cloud=a=>React.createElement(Icon,{...a},React.createElement("path",{d:"M17.5 19a4.5 4.5 0 1 0-1.41-8.775A6.5 6.5 0 1 0 7 19h10.5z"})),Cable=a=>React.createElement(Icon,{...a},React.createElement("path",{d:"M4 9a2 2 0 0 1-2-2V5h6v2a2 2 0 0 1-2 2Z"}),React.createElement("path",{d:"M3 5V3"}),React.createElement("path",{d:"M7 5V3"}),React.createElement("path",{d:"M19 15V6.5a3.5 3.5 0 0 0-7 0v11a3.5 3.5 0 0 1-7 0V9"}),React.createElement("path",{d:"M17 21v-2"}),React.createElement("path",{d:"M21 21v-2"}),React.createElement("path",{d:"M22 19v-2a2 2 0 0 0-2-2h-2v4Z"})),Ruler=a=>React.createElement(Icon,{...a},React.createElement("path",{d:"M21.3 15.3a2.4 2.4 0 0 1 0 3.4l-2.6 2.6a2.4 2.4 0 0 1-3.4 0L2.7 8.7a2.41 2.41 0 0 1 0-3.4l2.6-2.6a2.41 2.41 0 0 1 3.4 0Z"}),React.createElement("path",{d:"m14.5 12.5 2-2"}),React.createElement("path",{d:"m11.5 9.5 2-2"}),React.createElement("path",{d:"m8.5 6.5 2-2"}),React.createElement("path",{d:"m17.5 15.5 2-2"})),Wrench=a=>React.createElement(Icon,{...a},React.createElement("path",{d:"M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.77-3.77a6 6 0 0 1-7.94 7.94l-6.91 6.91a2.12 2.12 0 0 1-3-3l6.91-6.91a6 6 0 0 1 7.94-7.94l-3.76 3.76z"})),MonitorCheck=a=>React.createElement(Icon,{...a},React.createElement("path",{d:"m9 10 2 2 4-4"}),React.createElement("rect",{width:"20",height:"14",x:"2",y:"3",rx:"2"}),React.createElement("path",{d:"M12 17v4"}),React.createElement("path",{d:"M8 21h8"})),Headset=a=>React.createElement(Icon,{...a},React.createElement("path",{d:"M3 11h3a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2H3v-7a9 9 0 0 1 18 0v7h-3a2 2 0 0 1-2-2v-3a2 2 0 0 1 2-2h3"})),Camera=a=>React.createElement(Icon,{...a},React.createElement("path",{d:"M14.5 4h-5L7 7H4a2 2 0 0 0-2 2v9a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2h-3l-2.5-3z"}),React.createElement("circle",{cx:"12",cy:"13",r:"3"})),Film=a=>React.createElement(Icon,{...a},React.createElement("rect",{width:"18",height:"18",x:"3",y:"3",rx:"2"}),React.createElement("path",{d:"M7 3v18"}),React.createElement("path",{d:"M3 7.5h4"}),React.createElement("path",{d:"M3 12h18"}),React.createElement("path",{d:"M3 16.5h4"}),React.createElement("path",{d:"M17 3v18"}),React.createElement("path",{d:"M17 7.5h4"}),React.createElement("path",{d:"M17 16.5h4"})),Package=a=>React.createElement(Icon,{...a},React.createElement("path",{d:"m7.5 4.27 9 5.15"}),React.createElement("path",{d:"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"}),React.createElement("path",{d:"m3.3 7 8.7 5 8.7-5"}),React.createElement("path",{d:"M12 22V12"})),Monitor=a=>React.createElement(Icon,{...a},React.createElement("rect",{width:"20",height:"14",x:"2",y:"3",rx:"2"}),React.createElement("line",{x1:"8",x2:"16",y1:"21",y2:"21"}),React.createElement("line",{x1:"12",x2:"12",y1:"17",y2:"21"}));function Reveal({children:a,delay:e=0,className:t=""}){const o=useRef(null),[s,i]=useState(!1);return useEffect(()=>{const r=new IntersectionObserver(([l])=>{l.isIntersecting&&(setTimeout(()=>i(!0),e),r.unobserve(l.target))},{threshold:.1,rootMargin:"0px 0px -60px 0px"});return o.current&&r.observe(o.current),()=>r.disconnect()},[e]),React.createElement("div",{ref:o,className:`reveal ${s?"visible":""} ${t}`},a)}function CursorDot(){const a=useRef(null);return useEffect(()=>{const e=t=>{a.current&&(a.current.style.transform=`translate(${t.clientX}px, ${t.clientY}px) translate(-50%, -50%)`),document.body.dataset.cursor="on"};return window.addEventListener("mousemove",e),()=>window.removeEventListener("mousemove",e)},[]),React.createElement("div",{ref:a,className:"cursor-dot"})}function Curtain(){const[a,e]=useState(!1);return useEffect(()=>{const t=setTimeout(()=>e(!0),1300);return()=>clearTimeout(t)},[]),a?null:React.createElement("div",{className:"curtain"})}function Navigation(){const[a,e]=useState(!1),[t,o]=useState(!1);useEffect(()=>{const i=()=>e(window.scrollY>50);return window.addEventListener("scroll",i),()=>window.removeEventListener("scroll",i)},[]);const s=[{href:"#about",label:"About"},{href:"#projects",label:"Projects"},{href:"#on-set",label:"On Set"},{href:"#contact",label:"Contact"}];return React.createElement("nav",{className:`nav ${a?"scrolled":""}`},React.createElement("div",{className:"nav-inner"},React.createElement("a",{href:"#",className:"nav-logo"},React.createElement("img",{src:__R("images/dragon-mark.png"),alt:"Wild Dragon"}),React.createElement("span",null,"Wild Dragon")),React.createElement("div",{className:"nav-links"},s.map(i=>React.createElement("a",{key:i.href,href:i.href},i.label))),React.createElement("button",{className:"nav-toggle",onClick:()=>o(!t),"aria-label":"Toggle menu"},React.createElement(t?X:Menu,null))),React.createElement("div",{className:`nav-mobile ${t?"open":""}`},s.map(i=>React.createElement("a",{key:i.href,href:i.href,onClick:()=>o(!1)},i.label))))}const HERO_ROLES=["Broadcast Systems Integration","Production Facility Design","IP & Cloud Production","Extended Reality Stages"];function Hero({ctaLabel:a}){const[e,t]=useState(!1),[o,s]=useState(0),[i,r]=useState(""),[l,p]=useState(!0);useEffect(()=>{const c=setTimeout(()=>t(!0),100);return()=>clearTimeout(c)},[]),useEffect(()=>{const c=HERO_ROLES[o];if(l)if(i.length<c.length){const d=setTimeout(()=>r(c.slice(0,i.length+1)),50);return()=>clearTimeout(d)}else{const d=setTimeout(()=>p(!1),2500);return()=>clearTimeout(d)}else if(i.length>0){const d=setTimeout(()=>r(i.slice(0,-1)),25);return()=>clearTimeout(d)}else s(d=>(d+1)%HERO_ROLES.length),p(!0)},[i,l,o]);const m=c=>({transition:`opacity .9s ${c}s, transform .9s ${c}s`,opacity:e?1:0,transform:e?"translateY(0)":"translateY(24px)"});return React.createElement("section",{className:"hero grain"},React.createElement("div",{className:"hero-bg"},React.createElement("img",{src:__R("images/photos/production-switcher.jpg"),alt:"Production switcher in a broadcast control room"})),React.createElement("div",{className:"hero-grid"}),React.createElement("div",{className:"hero-fade-v"}),React.createElement("div",{className:"hero-fade-h"}),React.createElement("div",{className:"hero-corner tl"},"// 38.9\xB0N \xB7 77.0\xB0W"),React.createElement("div",{className:"hero-corner tr"},"EST. 2024 \xB7 DC"),React.createElement("div",{className:"hero-corner bl"},"REC \xB7 LIVE"),React.createElement("div",{className:"hero-corner br"},"\u25CF 01 / 09"),React.createElement("div",{className:"hero-content"},React.createElement("div",{className:"hero-logo",style:m(0)},React.createElement("img",{src:__R("images/wild-dragon-logo.png"),alt:"Wild Dragon \u2014 Zachary Gaetano"})),React.createElement("div",{className:"hero-tag",style:m(.15)},i,React.createElement("span",{className:"caret"},"|")),React.createElement("h1",{style:m(.3)},"Zachary",React.createElement("br",null),React.createElement("span",{className:"last"},"Gaetano")),React.createElement("div",{className:"hero-rule",style:{transition:"opacity 1s .4s, width 1s .4s",opacity:e?1:0,width:e?"6rem":0}}),React.createElement("p",{className:"hero-desc",style:m(.5)},"Broadcast integration and commercial AV installation across the DMV \u2014 Washington, DC, Maryland, and Northern Virginia \u2014 designing, installing, and commissioning production facilities for sports, corporate, aerospace, and financial organizations."),React.createElement("div",{className:"hero-ctas",style:m(.65)},React.createElement("a",{href:"#projects",className:"btn btn-primary"},a||"View Projects"),React.createElement("a",{href:"mailto:zgaetano@wilddragon.net",className:"btn btn-ghost-dark"},"Get in Touch"))),React.createElement("a",{href:"#clients",className:"scroll-indicator",style:{transition:"opacity 1s .8s",opacity:e?1:0}},React.createElement("span",null,"Scroll"),React.createElement(ChevronDown,null)))}const CLIENTS=[{name:"Broadcast Management Group",logo:__R("images/clients/bmg.png")},{name:"AVI-SPL",logo:__R("images/clients/avispl.png")},{name:"NBC Sports",logo:__R("images/clients/nbc-sports.png")},{name:"Washington Commanders",logo:__R("images/clients/commanders.png")},{name:"CVS / Aetna",logo:__R("images/clients/cvs.png")},{name:"UBS",logo:__R("images/clients/ubs.png")},{name:"BetMGM",logo:__R("images/clients/betmgm.svg")},{name:"Intuit",logo:__R("images/clients/intuit.png")},{name:"Monumental Sports",logo:__R("images/clients/monumental.svg")},{name:"COSM",logo:__R("images/clients/cosm.svg")},{name:"Red Sands",logo:__R("images/clients/redsands.svg")}];function Clients({marquee:a}){return React.createElement("section",{id:"clients",className:"clients","aria-label":"Clients"},React.createElement("div",{className:"container"},React.createElement(Reveal,null,React.createElement("p",{className:"clients-label"},"\u2014 Trusted by \u2014"))),a?React.createElement("div",{className:"marquee"},React.createElement("div",{className:"marquee-track"},[...CLIENTS,...CLIENTS].map((e,t)=>React.createElement("div",{className:"marquee-item",key:t,title:e.name},React.createElement("img",{src:e.logo,alt:e.name}))))):React.createElement("div",{className:"container"},React.createElement(Reveal,null,React.createElement("div",{className:"clients-static"},CLIENTS.map(e=>React.createElement("div",{className:"marquee-item",key:e.name,title:e.name},React.createElement("img",{src:e.logo,alt:e.name})))))))}const PARTNERS=[{name:"THOR Broadcast",logo:__R("images/clients/thor-logo.png")},{name:"Ross Video",logo:__R("images/clients/ross-video.png")},{name:"Filmtools",logo:__R("images/clients/filmtools.png")},{name:"Forecast Consoles",logo:__R("images/clients/forecast.png")},{name:"vMix by Studio Coast",logo:__R("images/clients/vmix.png")},{name:"RED Digital Cinema",logo:__R("images/partners/red-digital.png")}];function Partners(){return React.createElement("section",{className:"partners"},React.createElement("div",{className:"container"},React.createElement(Reveal,null,React.createElement("p",null,"// Technology Partners"),React.createElement("div",{className:"partners-grid"},PARTNERS.map(a=>React.createElement("div",{className:"partner-logo",title:a.name,key:a.name},React.createElement("img",{src:a.logo,alt:a.name})))))))}const CAPS=[{icon:Radio,title:"Systems Design",desc:"End-to-end broadcast facility design including signal flow engineering, equipment specification, and architectural documentation."},{icon:Cable,title:"Integration",desc:"Full system integration from rack builds and wiring to commissioning, testing, and operator training."},{icon:Cloud,title:"Cloud & IP",desc:"Cloud-native production architectures, SMPTE ST 2110, NDI, SRT, and hybrid on-prem/cloud workflows."},{icon:Tv,title:"Broadcast Engineering",desc:"Live production engineering, RF systems, video routing, and real-time broadcast operations."}];function About(){return React.createElement("section",{id:"about",className:"about"},React.createElement("div",{className:"container"},React.createElement(Reveal,null,React.createElement("div",{className:"about-intro"},React.createElement("div",{className:"section-counter"},React.createElement("span",{className:"num"},"01"),React.createElement("span",{className:"bar"}),React.createElement("span",null,"About")),React.createElement("h2",{className:"section-title"},"From live production to",React.createElement("br",null),"systems architecture."),React.createElement("div",{className:"body",style:{marginTop:"2rem"}},React.createElement("p",null,"I'm a broadcast engineer and systems integrator based in the Washington DC area, with a career that spans both sides of the industry \u2014 production and infrastructure."),React.createElement("p",null,"My background in live production as a 1st AC, DIT, Camera Operator, and Trinity Operator gives me an operator's perspective that most systems designers don't have. I build facilities that work the way production teams actually need them to \u2014 not just the way engineers imagine they will."),React.createElement("p",null,"Today, my focus is broadcast systems integration. As a principal systems designer with ",React.createElement("a",{className:"inline",href:"https://broadcastmgmt.com",target:"_blank",rel:"noopener noreferrer"},"Broadcast Management Group"),", I design production facilities for organizations including the ",React.createElement("strong",null,"Washington Commanders"),", ",React.createElement("strong",null,"CVS/Aetna"),", ",React.createElement("strong",null,"UBS"),", ",React.createElement("strong",null,"BetMGM"),", ",React.createElement("strong",null,"Intuit"),", and ",React.createElement("strong",null,"Monumental Sports")," \u2014 engineering control rooms, studios, XR stages, and IP-based workflows across sports, corporate, financial services, aerospace, and defense.")))),React.createElement("div",{className:"cap-grid"},CAPS.map((a,e)=>React.createElement(Reveal,{key:a.title,delay:e*100},React.createElement("div",{className:"cap"},React.createElement("div",{className:"cap-icon"},React.createElement(a.icon,{size:20,sw:1.5})),React.createElement("h3",null,a.title),React.createElement("p",null,a.desc)))))))}const STATS=[{v:10,suf:"+",label:"Years in Broadcast",desc:"Production & engineering"},{v:8,suf:"+",label:"Major Facilities",desc:"Designed & integrated"},{v:5900,suf:"+",label:"End Users Served",desc:"Global content delivery"},{v:5,suf:"",label:"Industry Verticals",desc:"Sports, corporate, financial, aerospace, defense"}];function AnimatedNumber({value:a,suffix:e}){const[t,o]=useState(0),s=useRef(null),i=useRef(!1);useEffect(()=>{const l=new IntersectionObserver(([p])=>{if(p.isIntersecting&&!i.current){i.current=!0;const m=2e3,c=60,d=a/c;let g=0;const h=setInterval(()=>{g+=d,g>=a?(o(a),clearInterval(h)):o(Math.floor(g))},m/c)}},{threshold:.3});return s.current&&l.observe(s.current),()=>l.disconnect()},[a]);const r=t>=1e3&&a>=1e3?`${(t/1e3).toFixed(1).replace(/\.0$/,"")}k`:t;return React.createElement("span",{ref:s,className:"tabular-nums"},r,React.createElement("span",{className:"suf"},e))}function Stats(){return React.createElement("section",{className:"stats grain dark-section"},React.createElement("div",{className:"container"},React.createElement("div",{className:"stats-grid"},STATS.map((a,e)=>React.createElement(Reveal,{key:a.label,delay:e*80},React.createElement("div",null,React.createElement("div",{className:"stat-value"},React.createElement(AnimatedNumber,{value:a.v,suffix:a.suf})),React.createElement("p",{className:"stat-label"},a.label),React.createElement("p",{className:"stat-desc"},a.desc)))))))}const SERVICES=[{icon:Ruler,phase:"01",title:"Design",desc:"Signal flow engineering, system architecture, and equipment specification. Every facility starts with documentation that defines how signals move and how operators interact."},{icon:Wrench,phase:"02",title:"Integrate",desc:"Full system builds from rack fabrication and cable infrastructure through to final termination and labeling \u2014 clean builds technicians can troubleshoot and maintain for years."},{icon:MonitorCheck,phase:"03",title:"Commission",desc:"End-to-end system testing, calibration, and performance verification. Every signal path tested, every failover validated, every workflow documented before handoff."},{icon:Headset,phase:"04",title:"Support",desc:"Operator training, documentation packages, and ongoing technical support. Systems designed with the people who use them in mind \u2014 not just the engineers who build them."}];function Services(){return React.createElement("section",{id:"services",className:"services"},React.createElement("div",{className:"container"},React.createElement(Reveal,null,React.createElement("div",{style:{maxWidth:"48rem",marginBottom:"4rem"}},React.createElement("div",{className:"section-counter"},React.createElement("span",{className:"num"},"02"),React.createElement("span",{className:"bar"}),React.createElement("span",null,"Process")),React.createElement("h2",{className:"section-title",style:{marginBottom:"1.25rem"}},"From blueprint to broadcast."),React.createElement("p",{className:"section-lede"},"A complete lifecycle approach to broadcast facility design and systems integration. Every project follows a disciplined process so systems work flawlessly when the red light goes on."))),React.createElement("div",{className:"svc-timeline"},React.createElement("div",{className:"svc-line"}),React.createElement("div",{className:"svc-grid"},SERVICES.map((a,e)=>React.createElement(Reveal,{key:a.title,delay:e*100},React.createElement("div",{className:"svc"},React.createElement("div",{className:"svc-node"},a.phase),React.createElement("div",{className:"svc-icon"},React.createElement(a.icon,{size:20,sw:1.5})),React.createElement("h3",null,a.title),React.createElement("p",null,a.desc))))))))}function pickScopeChips(a){return(a||[]).slice(0,3)}function Projects({onOpen:a}){const e=window.PROJECTS||[],[t,...o]=e;return React.createElement("section",{id:"projects",className:"projects","aria-label":"Selected projects"},React.createElement("div",{className:"container"},React.createElement(Reveal,null,React.createElement("div",{className:"projects-head"},React.createElement("div",null,React.createElement("div",{className:"section-counter"},React.createElement("span",{className:"num"},"03"),React.createElement("span",{className:"bar"}),React.createElement("span",null,"Projects")),React.createElement("h2",{className:"section-title"},"Selected work.")),React.createElement("p",{className:"lede"},"Broadcast facility design and systems integration for enterprise, sports, aerospace, and financial services clients."))),t&&React.createElement(Reveal,null,React.createElement("a",{className:"proj-featured",href:`#/projects/${t.slug}`,onClick:s=>{s.preventDefault(),a(t.slug)}},React.createElement("img",{src:t.thumbnail,alt:`${t.client} \u2014 ${t.category}`}),React.createElement("div",{className:"proj-featured-body"},React.createElement("div",{className:"proj-featured-meta"},React.createElement("span",{className:"badge"},"Featured"),React.createElement("span",{className:"yr"},t.category," \xB7 ",t.year)),React.createElement("h3",null,t.client),React.createElement("p",null,t.summary),React.createElement("span",{className:"cta"},"View case study ",React.createElement(ArrowRight,null))))),React.createElement("div",{className:"proj-grid"},o.map((s,i)=>React.createElement(Reveal,{key:s.slug,delay:i*60},React.createElement("a",{className:"proj-card",href:`#/projects/${s.slug}`,onClick:r=>{r.preventDefault(),a(s.slug)}},React.createElement("img",{src:s.thumbnail,alt:`${s.client} \u2014 ${s.category}`}),React.createElement("div",{className:"proj-card-overlay"}),React.createElement("div",{className:"proj-arrow"},React.createElement(ArrowUpRight,null)),React.createElement("div",{className:"proj-card-body"},React.createElement("div",{className:"proj-card-meta"},React.createElement("span",{className:"cat"},s.category),React.createElement("span",{className:"sep"},"/"),React.createElement("span",{className:"yr"},s.year)),React.createElement("h3",null,s.client),React.createElement("p",{className:"summary"},s.summary),React.createElement("div",{className:"scope-chips"},pickScopeChips(s.scope).map(r=>React.createElement("span",{key:r},r))))))))))}const TECH_CATS=[{name:"Routing & Switching",items:["Ross Ultrix","Blackmagic ATEM","Evertz EQX","Panasonic Kairos"]},{name:"All-In-One Production",items:["vMix","Vizrt","AMPP"]},{name:"Signal Transport",items:["SMPTE 2110","NDI","SRT","SDI","Dante","MADI","JPEG XS"]},{name:"Infrastructure",items:["IP Networking","Fiber Infrastructure","KVM Systems","UPS & Power","Cooling & Ventilation"]},{name:"Display & XR",items:["LED Processing","Unreal Engine","Camera Tracking","Projection","Color Management"]}];function TechStack(){return React.createElement("section",{className:"tech grain dark-section"},React.createElement("div",{className:"container"},React.createElement(Reveal,null,React.createElement("div",{style:{maxWidth:"48rem",marginBottom:"3rem"}},React.createElement("div",{className:"section-counter"},React.createElement("span",{className:"num"},"04"),React.createElement("span",{className:"bar"}),React.createElement("span",null,"Technology")),React.createElement("h2",{className:"section-title",style:{marginBottom:"1.25rem"}},"Tools of the trade."),React.createElement("p",{className:"section-lede"},"Deep experience across the full broadcast technology stack \u2014 from traditional SDI infrastructure to modern IP and cloud-native production platforms."))),React.createElement("div",{className:"tech-table"},TECH_CATS.map((a,e)=>React.createElement(Reveal,{key:a.name,delay:e*60},React.createElement("div",{className:"tech-row"},React.createElement("h3",null,a.name),React.createElement("div",{className:"items"},a.items.map(t=>React.createElement("span",{key:t},t)))))))))}const REEL_URL="https://player.vimeo.com/video/225920311?h=0&badge=0&autopause=0&player_id=0&app_id=58479",CREDITS=[{t:"Bethesda Fallout Day",r:"1st AC",f:"Corporate / Event",y:"2025"},{t:"ZeniMax Elder Scrolls Online Update",r:"1st AC",f:"Corporate",y:"2025"},{t:"Palo Alto Ad",r:"Arri Trinity Operator",f:"Commercial",y:"2025"},{t:"Street Fighter DLC Ad",r:"Arri Trinity Operator",f:"Commercial",y:"2025"},{t:"Chase Small Business Promo",r:"Arri Trinity Operator",f:"Commercial",y:"2025"},{t:"ZeniMax Elder Scrolls Online Update",r:"1st AC",f:"Corporate",y:"2024"},{t:"Joe Vogel For Congress",r:"Camera Op / Trinity Op",f:"Political",y:"2024"},{t:"I Am a Champion",r:"Camera Op / Trinity Op",f:"Sports",y:"2023"},{t:"Washington Commanders Schedule Release",r:"Director of Photography",f:"Sports",y:"2023"},{t:"Stephen Sharer \u2013 MIDNIGHT",r:"DP / Trinity Operator",f:"Narrative",y:"2023"},{t:"Stephen Sharer \u2013 YOU and I",r:"DP / Trinity Operator",f:"Narrative",y:"2023"},{t:"A Chocolate Lens",r:"Camera Operator",f:"Narrative",y:"2023"},{t:"Capital One: Pride Month",r:"Director of Photography",f:"Corporate",y:"2021"},{t:"Tafon Nchukwi: My Goal Is to Be UFC Champion",r:"Camera Operator",f:"Sports Doc",y:"2020"},{t:"Tinder",r:"Director of Photography",f:"Commercial",y:"2020"},{t:"Conewago",r:"DP / Editor",f:"Documentary",y:"2020"},{t:"In Memoriam",r:"Director of Photography",f:"Documentary",y:"2019"}],GEAR=[{cat:"Cinema Cameras",icon:Camera,items:["RED Komodo-X","RED DSMC3 V-Raptor-X 8K VV + 6K S35 Dual-Format (Canon RF)"]},{cat:"Lenses",icon:Film,items:["Mamiya 645 Sekor C PL 7 Lens Set","Mamiya 645 Sekor C 35mm","Mamiya 645 Sekor C 110mm","Mamiya 645 Sekor C 150mm","16-30mm / 28-75mm / 75-180mm T2.9 Zoom Set"]},{cat:"Monitoring & Transmission",icon:Monitor,items:['SmallHD DSMC3 7"',"SmallHD Cine7 with Bolt 6 1500RX","Teradek Bolt 6 Max XT Kit (TX + RX)","DJI SDR Transmission"]},{cat:"Camera Support",icon:Package,items:["Arri Trinity \u2014 Certified Owner & Operator","Dana Dolly Kit (8 / 4ft Speedrail, 2\xD7 Matthews Stands)","DJI Focus Pro All In One"]}];function OnSet(){return React.createElement("section",{id:"on-set",className:"onset"},React.createElement("div",{className:"container onset-stack"},React.createElement(Reveal,null,React.createElement("div",{className:"onset-intro"},React.createElement("div",{className:"section-counter"},React.createElement("span",{className:"num"},"05"),React.createElement("span",{className:"bar"}),React.createElement("span",null,"On Set")),React.createElement("h2",{className:"section-title"},"Trinity Operator & DIT, ",React.createElement("span",{className:"light"},"Washington DC.")),React.createElement("p",{className:"section-lede",style:{marginTop:"1.25rem"}},"Certified Arri Trinity owner and operator with RED camera packages and specialized live production gear \u2014 from run-and-gun documentary to multi-camera sports and political campaigns. Available for commercial, corporate, sports, and narrative work throughout the DMV."))),React.createElement(Reveal,null,React.createElement("div",null,React.createElement("p",{className:"eyebrow"},"Reel"),React.createElement("div",{className:"reel-frame"},React.createElement("iframe",{src:REEL_URL,allow:"autoplay; fullscreen; picture-in-picture",allowFullScreen:!0,title:"Zachary Gaetano \u2014 Showreel"})))),React.createElement(Reveal,null,React.createElement("div",null,React.createElement("p",{className:"eyebrow"},"Selected Credits"),React.createElement("div",{className:"credits-list"},CREDITS.map((a,e)=>React.createElement("div",{key:e,className:"credit-row"},React.createElement("span",{className:"t"},a.t),React.createElement("span",{className:"r"},a.r),React.createElement("span",{className:"f"},a.f),React.createElement("span",{className:"y"},a.y)))))),React.createElement("div",null,React.createElement(Reveal,null,React.createElement("p",{className:"eyebrow"},"Kit")),React.createElement("div",{className:"gear-grid"},GEAR.map((a,e)=>React.createElement(Reveal,{key:a.cat,delay:e*100},React.createElement("div",{className:"gear-card"},React.createElement("div",{className:"cap-icon",style:{marginBottom:"1rem"}},React.createElement(a.icon,{size:20,sw:1.5})),React.createElement("h3",null,a.cat),React.createElement("ul",null,a.items.map(t=>React.createElement("li",{key:t},t))))))))))}function Contact(){return React.createElement("section",{id:"contact",className:"contact"},React.createElement("div",{className:"container"},React.createElement(Reveal,null,React.createElement("div",{className:"contact-head"},React.createElement("div",{className:"section-rule center"}),React.createElement("p",{className:"eyebrow center"},"// Contact"),React.createElement("h2",{className:"section-title"},"Let's create something."),React.createElement("p",{className:"lede",style:{marginTop:"1.25rem"}},"Whether you're planning a new broadcast facility, upgrading existing infrastructure, or exploring cloud and IP-based production workflows, I'd love to discuss your project."))),React.createElement("div",{className:"contact-grid"},React.createElement(Reveal,{delay:0},React.createElement("a",{className:"contact-card",href:"mailto:zgaetano@wilddragon.net"},React.createElement("div",{className:"icon"},React.createElement(Mail,{size:16,sw:1.5})),React.createElement("span",{className:"label"},"Email"),React.createElement("span",{className:"val"},"zgaetano@wilddragon.net"))),React.createElement(Reveal,{delay:80},React.createElement("a",{className:"contact-card",href:"https://www.linkedin.com/in/zachary-gaetano-05962386/",target:"_blank",rel:"noopener noreferrer"},React.createElement("div",{className:"icon"},React.createElement(Linkedin,{size:16,sw:1.5})),React.createElement("span",{className:"label"},"LinkedIn"),React.createElement("span",{className:"val"},"Zachary Gaetano"))),React.createElement(Reveal,{delay:160},React.createElement("div",{className:"contact-card"},React.createElement("div",{className:"icon"},React.createElement(MapPin,{size:16,sw:1.5})),React.createElement("span",{className:"label"},"Location"),React.createElement("span",{className:"val"},"Washington, DC Area")))),React.createElement(Reveal,{delay:200},React.createElement("div",{className:"cta-banner grain"},React.createElement("div",{className:"cta-banner-grid"}),React.createElement("div",{className:"inner"},React.createElement("h3",null,"Ready to start your next project?"),React.createElement("p",null,"From initial concept through commissioning and training, I bring a complete lifecycle approach to every facility I design."),React.createElement("a",{href:"mailto:zgaetano@wilddragon.net",className:"btn btn-primary"},"Start a Conversation ",React.createElement(ArrowRight,null)))))))}function Footer(){const a=[{title:"Navigation",links:[{l:"About",h:"#about"},{l:"Process",h:"#services"},{l:"Projects",h:"#projects"},{l:"On Set",h:"#on-set"},{l:"Contact",h:"#contact"}]},{title:"Services",links:[{l:"Commercial AV Installation",h:"/services/commercial-av-installation-washington-dc/"},{l:"Broadcast Systems Integration",h:"/services/broadcast-systems-integration/"},{l:"LED Video Walls & XR",h:"/services/led-video-wall-installation/"},{l:"Conference Room AV",h:"/services/conference-room-av/"},{l:"Case Studies",h:"/projects/"}]},{title:"Service Areas",links:[{l:"Broadcast Integration DMV",h:"/broadcast-integration-dmv/"},{l:"AV Installation DMV",h:"/av-installation-dmv/"},{l:"Washington, DC",h:"/washington-dc/"},{l:"Northern Virginia",h:"/northern-virginia/"},{l:"Maryland",h:"/maryland/"}]}];return React.createElement("footer",{className:"footer"},React.createElement("div",{className:"container"},React.createElement("div",{className:"footer-top"},React.createElement("div",null,React.createElement("div",{className:"footer-brand"},React.createElement("img",{src:__R("images/dragon-mark.png"),alt:"Wild Dragon"}),React.createElement("span",null,"Wild Dragon")),React.createElement("p",{className:"about-line"},"Broadcast systems integration and production facility design for sports, corporate, financial services, and defense organizations."),React.createElement("div",{className:"footer-socials"},React.createElement("a",{href:"https://www.linkedin.com/in/zachary-gaetano-05962386/",target:"_blank",rel:"noopener noreferrer","aria-label":"LinkedIn"},React.createElement(Linkedin,{size:14})),React.createElement("a",{href:"mailto:zgaetano@wilddragon.net","aria-label":"Email"},React.createElement(Mail,{size:14})))),a.map(e=>React.createElement("div",{className:"footer-col",key:e.title},React.createElement("h4",null,e.title),React.createElement("ul",null,e.links.map(t=>React.createElement("li",{key:t.l},React.createElement("a",{href:t.h},t.l))))))),React.createElement("div",{className:"footer-bottom"},React.createElement("p",null,"\xA9 ",new Date().getFullYear()," Zachary Gaetano. All rights reserved."),React.createElement("p",null,"Washington, DC Area"))))}function ProjectOverlay({slug:a,onClose:e,onOpen:t}){const o=window.PROJECTS,s=o.find(n=>n.slug===a);useEffect(()=>{const n=v=>{v.key==="Escape"&&e()};return window.addEventListener("keydown",n),document.body.style.overflow="hidden",()=>{window.removeEventListener("keydown",n),document.body.style.overflow=""}},[e]);const i=useRef(null);if(useEffect(()=>{i.current&&(i.current.scrollTop=0)},[a]),!s)return null;const r=o.findIndex(n=>n.slug===a),l=o.length,p=r>0?o[r-1]:o[l-1],m=r<l-1?o[r+1]:o[0],c=String(r+1).padStart(2,"0"),d=String(l).padStart(2,"0"),[g,...h]=s.description;return React.createElement("div",{className:"po-mask",ref:i,onClick:n=>{n.target===i.current&&e()}},React.createElement("button",{className:"po-close",onClick:e,"aria-label":"Close"},React.createElement(X,{size:20})),React.createElement("div",{className:"po"},React.createElement("nav",{className:"po-nav"},React.createElement("div",{className:"po-nav-inner"},React.createElement("a",{className:"po-back",href:"#projects",onClick:n=>{n.preventDefault(),e()}},React.createElement(ArrowLeft,{size:15})," All projects"),React.createElement("span",{className:"po-counter"},React.createElement("span",{className:"n"},c),React.createElement("span",{className:"d"},"/"),React.createElement("span",{className:"t"},d)),React.createElement("span",{className:"po-brand"},"Wild Dragon"))),React.createElement("section",{className:"po-hero"},React.createElement("div",{className:"po-hero-bg"},React.createElement("img",{src:s.thumbnail,alt:""}),React.createElement("div",{className:"po-hero-grid"}),React.createElement("div",{className:"po-hero-fade"})),React.createElement("div",{className:"container po-hero-inner"},React.createElement("div",{className:"po-hero-meta"},React.createElement("span",{className:"po-cat"},s.category),React.createElement("span",{className:"po-dot"}),React.createElement("span",{className:"po-yr"},s.year)),React.createElement("h1",{className:"po-title"},s.client),React.createElement("p",{className:"po-lede"},s.summary),React.createElement("div",{className:"po-hero-rule"}),React.createElement("div",{className:"po-hero-foot"},React.createElement("span",{className:"po-corner-l"},"// ",s.title||s.client),React.createElement("span",{className:"po-corner-r"},"Case Study \xB7 ",c,"/",d)))),React.createElement("section",{className:"po-facts"},React.createElement("div",{className:"container"},React.createElement("div",{className:"po-facts-grid"},React.createElement("div",null,React.createElement("span",{className:"lbl"},"Client"),React.createElement("span",{className:"val"},s.client)),React.createElement("div",null,React.createElement("span",{className:"lbl"},"Category"),React.createElement("span",{className:"val"},s.category)),React.createElement("div",null,React.createElement("span",{className:"lbl"},"Year"),React.createElement("span",{className:"val"},s.year)),React.createElement("div",null,React.createElement("span",{className:"lbl"},"Role"),React.createElement("span",{className:"val"},s.scope&&s.scope[0]||"Systems Design"))))),g&&React.createElement("section",{className:"po-section po-opening"},React.createElement("div",{className:"container po-opening-grid"},React.createElement("div",{className:"po-opening-label"},React.createElement("span",{className:"num"},"01"),React.createElement("span",{className:"bar"}),React.createElement("span",null,"Overview")),React.createElement("p",{className:"po-opening-text"},g))),React.createElement("div",{className:"po-feature"},React.createElement("div",{className:"po-feature-inner"},React.createElement("img",{src:s.thumbnail,alt:`${s.client} \u2014 ${s.category}`}),React.createElement("div",{className:"po-feature-cap"},React.createElement("span",null,s.client," \xB7 ",s.category),React.createElement("span",null,s.year)))),React.createElement("section",{className:"po-section po-body"},React.createElement("div",{className:"container po-body-grid"},React.createElement("div",{className:"po-body-main"},React.createElement("div",{className:"po-body-label"},React.createElement("span",{className:"num"},"02"),React.createElement("span",{className:"bar"}),React.createElement("span",null,"The build")),React.createElement("div",{className:"po-body-prose"},h.map((n,v)=>React.createElement("p",{key:v},n))),s.highlights&&s.highlights.length>0&&React.createElement(React.Fragment,null,React.createElement("div",{className:"po-body-label",style:{marginTop:"4.5rem"}},React.createElement("span",{className:"num"},"03"),React.createElement("span",{className:"bar"}),React.createElement("span",null,"Highlights")),React.createElement("ul",{className:"po-hl"},s.highlights.map((n,v)=>React.createElement("li",{key:v},React.createElement("span",{className:"hl-n"},String(v+1).padStart(2,"0")),React.createElement("span",{className:"hl-t"},n)))))),React.createElement("aside",{className:"po-sidecar"},React.createElement("div",{className:"po-spec"},React.createElement("div",{className:"po-spec-row"},React.createElement("span",{className:"k"},"Scope"),React.createElement("div",{className:"v"},s.scope.map(n=>React.createElement("span",{key:n,className:"chip"},n)))),React.createElement("div",{className:"po-spec-row"},React.createElement("span",{className:"k"},"Technology"),React.createElement("div",{className:"v"},s.technologies.map(n=>React.createElement("span",{key:n,className:"chip chip-accent"},n)))))))),React.createElement("section",{className:"po-cta"},React.createElement("div",{className:"container"},React.createElement("div",{className:"po-cta-inner grain"},React.createElement("div",null,React.createElement("p",{className:"po-cta-eyebrow"},"// Next step"),React.createElement("h3",null,"Planning a similar build?"),React.createElement("p",{className:"po-cta-desc"},"Same engineering discipline, end to end \u2014 design, integration, commissioning, training, support.")),React.createElement("a",{href:"mailto:zgaetano@wilddragon.net",className:"btn btn-primary"},"Start a conversation ",React.createElement(ArrowRight,null))))),React.createElement("section",{className:"po-related"},React.createElement("div",{className:"container"},React.createElement("div",{className:"po-related-head"},React.createElement("span",{className:"po-related-label"},"// Other case studies")),React.createElement("div",{className:"po-related-grid"},o.filter(n=>n.slug!==s.slug).slice(0,3).map(n=>React.createElement("a",{key:n.slug,className:"po-related-card",href:`#/projects/${n.slug}`,onClick:v=>{v.preventDefault(),t(n.slug)}},React.createElement("div",{className:"img"},React.createElement("img",{src:n.thumbnail,alt:n.client})),React.createElement("div",{className:"meta"},React.createElement("span",{className:"cat"},n.category),React.createElement("span",{className:"yr"},n.year)),React.createElement("h4",null,n.client),React.createElement("span",{className:"go"},"View case study ",React.createElement(ArrowRight,{size:13}))))))),React.createElement("section",{className:"po-prevnext"},React.createElement("div",{className:"po-prevnext-grid"},React.createElement("a",{className:"prev",href:`#/projects/${p.slug}`,onClick:n=>{n.preventDefault(),t(p.slug)}},React.createElement(ArrowLeft,{size:20}),React.createElement("div",{className:"text"},React.createElement("div",{className:"label"},"Previous"),React.createElement("div",{className:"name"},p.client))),React.createElement("a",{className:"next",href:`#/projects/${m.slug}`,onClick:n=>{n.preventDefault(),t(m.slug)}},React.createElement("div",{className:"text"},React.createElement("div",{className:"label"},"Next"),React.createElement("div",{className:"name"},m.client)),React.createElement(ArrowRight,{size:20})))),React.createElement("footer",{className:"po-foot"},React.createElement("div",{className:"po-foot-inner"},React.createElement("a",{className:"brand",href:"#",onClick:n=>{n.preventDefault(),e()}},"Wild Dragon"),React.createElement("p",null,"\xA9 ",new Date().getFullYear()," Zachary Gaetano")))))}Object.assign(window,{Navigation,Hero,Clients,Partners,About,Stats,Services,Projects,TechStack,OnSet,Contact,Footer,ProjectOverlay,CursorDot,Curtain});
|