1document.addEventListener('click',(e)=>{const a=e.target.closest('a[href^="#"]');if(!a)return;const href=a.getAttribute('href');if(!href||href==='#')return;const target=document.querySelector(href);if(!target)return;e.preventDefault();const header=document.querySelector('header');const after=()=>{header?.classList.remove('anchor-scrolling');header?.classList.add('slide-up')};header?.classList.add('anchor-scrolling');target.scrollIntoView({behavior:'smooth',block:'start'});setTimeout(after,600)});window.addEventListener('load',()=>{const footerWrap=document.querySelector('.footer');const footer=document.querySelector('footer');if(footerWrap&&footer){const setH=()=>{footer.style.height=footerWrap.clientHeight+'px'};setH();let raf=null;window.addEventListener('resize',()=>{if(raf)return;raf=requestAnimationFrame(()=>{setH();raf=null})})} 2const target=document.querySelector('#footer-bottom');if(target&&window.gsap&&window.ScrollTrigger){gsap.registerPlugin(ScrollTrigger);ScrollTrigger.getAll().forEach(st=>{if(st.vars?.trigger===target)st.kill();});gsap.from(target,{y:50,opacity:0,ease:'linear',scrollTrigger:{trigger:target,start:'top bottom',end:'bottom bottom',scrub:!0}})}});window.addEventListener('load',()=>{const pl=document.querySelector('#page-loader');if(sessionStorage.getItem('pageLoaded')||!pl){if(pl)pl.remove();return} 3if(!window.gsap){pl.remove();sessionStorage.setItem('pageLoaded','true');return} 4document.body.classList.add('no-scroll');const tl=gsap.timeline({onComplete:()=>{document.body.classList.remove('no-scroll');pl.remove();sessionStorage.setItem('pageLoaded','true')}});tl.fromTo('#page-loader-logo',{y:'120%',skewY:3},{y:'0%',skewY:0,duration:0.9,ease:'power2.inOut'}).to('#page-loader-logo',{y:'-120%',skewY:-3,duration:0.9,ease:'power2.inOut',delay:0.3}).to(pl,{yPercent:-100,duration:0.6,ease:'power3.inOut'},'-=0.5')});document.addEventListener('DOMContentLoaded',()=>{const header=document.querySelector('header');setupPopup({id:2107,openSel:'.open-contact-popup',closeSel:'.close-contact-popup'});setupPopup({id:4739,openSel:'.open-contact-popup-specific-result, .open-contact-popup__specific-result',closeSel:'.close-contact-popup-4739, .close-contact-popup'});setupPopup({id:4760,openSel:'.open-contact-popup-4760',closeSel:'.close-contact-popup-4760'});setupPopup({id:4764,openSel:'.open-contact-popup-4764',closeSel:'.close-contact-popup-4764'});setupPopup({id:9103,openSel:'.open-contact-popup-9103',closeSel:'.close-contact-popup-9103'});const openPopups=new Set();let escBound=!1;function bindEscOnce(){if(escBound)return;document.addEventListener('keydown',(e)=>{if(e.key!=='Escape')return;const last=Array.from(openPopups).pop();last?.close()});escBound=!0} 5function setupPopup({id,openSel,closeSel}){const triggers=document.querySelectorAll(openSel);if(!triggers.length)return;const popup=document.querySelector(`.brxe-popup-${id}
5`)||document.querySelector(`[data-popup-id="${id}"]`);if(!popup){console.warn(`Popup .brxe-popup-${id} nenalezen`);return} 6const content=popup.querySelector('.brx-popup-content')||popup.querySelector("[data-brx-el='popup-content']");const backdrop=popup.querySelector('.brx-popup-backdrop');if(backdrop){backdrop.style.zIndex='1';backdrop.style.cursor='default'} 7if(content){content.style.position='relative';content.style.zIndex='2';content.addEventListener('click',(e)=>{if(e.target.closest(closeSel))return;e.stopPropagation()})} 8let currentScrollOffset=0;const api={close};const open=()=>{popup.classList.remove('hide');popup.style.visibility='visible';popup.style.display='block';header?.classList.add('hide');if(window.gsap){if(content)gsap.set(content,{x:'100%'});if(backdrop)gsap.set(backdrop,{opacity:0,display:'block',visibility:'visible'});if(content)gsap.to(content,{x:0,duration:1,ease:'power2.inOut'});if(backdrop)gsap.to(backdrop,{opacity:1,duration:1,ease:'power2.inOut'});gsap.to('main, .footer',{x:'-25%',duration:1,ease:'power2.inOut',onComplete:()=>{if(window.innerWidth>768){currentScrollOffset=window.scrollY;document.body.style.position='fixed';document.body.style.top=`-${currentScrollOffset}px`;document.body.style.width='100%'}else{document.body.style.overflow='hidden'}}})} 9openPopups.add(api);bindEscOnce()};function close(){if(window.innerWidth>768){document.body.style.position='';const y=Math.abs(parseInt(document.body.style.top||'0',10))||currentScrollOffset;document.body.style.top='';document.body.style.width='';window.scrollTo(0,y)}else{document.body.style.overflow=''} 10if(window.gsap){if(content)gsap.to(content,{x:'100%',opacity:1,duration:1,ease:'power2.inOut'});if(backdrop)gsap.to(backdrop,{opacity:0,duration:1,ease:'power2.inOut'});gsap.to('main, .footer',{x:0,duration:1,ease:'power2.inOut',onComplete:()=>{popup.style.visibility='hidden';popup.style.display='none';header?.classList.remove('hide')}})}else{popup.style.visibility='hidden';popup.style.display='none';header?.classList.remove('hide')} 11openPopups.delete(api)} 12triggers.forEach((btn)=>{btn.addEventListener('click',(e)=>{e.preventDefault();e.stopImmediatePropagation();e.stopPropagation();open()},!0)});popup.querySelectorAll(closeSel).forEach(btn=>{btn.addEventListener('click',(e)=>{e.preventDefault();e.stopPropagation();close()})});backdrop?.addEventListener('click',(e)=>{if(!e.target.closest('.brx-popup-content'))close();})}});document.documentElement.classList.remove('pl-curtain');(function(){const html=document.documentElement;document.addEventListener('DOMContentLoaded',()=>{html.classList.add('ready');html.classList.remove('preload');document.body.style.opacity='1'});window.addEventListener('load',()=>{const fontsReady=document.fonts?.ready||Promise.resolve();fontsReady.then(()=>{document.querySelectorAll('h1, h2').forEach(el=>{el.style.visibility='visible'});if(window.matchMedia&&window.matchMedia('(prefers-reduced-motion: reduce)').matches){return} 13const hasGSAP=!!(window.gsap&&(window.ScrollTrigger||(gsap&&gsap.ScrollTrigger)));if(!hasGSAP||typeof SplitType!=='function')return;gsap.registerPlugin(ScrollTrigger);const headings=Array.from(document.querySelectorAll('h1, h2')).filter(el=>!el.classList.contains('no-anim')&&!el.closest('.no-anim'));if(!headings.length)return;
13headings.forEach(el=>{el.style.visibility='visible';el.style.position='relative';el.style.willChange='transform, opacity';const split=new SplitType(el,{types:'lines',lineClass:'gsap-line'});gsap.from(split.lines,{y:30,opacity:0,duration:0.7,ease:'power3.out',stagger:0.15,scrollTrigger:{trigger:el,start:'top 80%',once:!0}})})})})})();document.addEventListener('bricks/form/success',function(event){const elementId=event.detail.elementId;window.dataLayer=window.dataLayer||[];if(elementId==='snoqid')window.dataLayer.push({event:'prihlaseni_k_newsletteru'});if(elementId==='sxhfos')window.dataLayer.push({event:'odeslani_formulare_poptat_audit'})});document.addEventListener('DOMContentLoaded',()=>{if(window.gsap&&window.ScrollTrigger){gsap.registerPlugin(ScrollTrigger);initProjectCardEffects()}});document.addEventListener('bricks/ajax/end',()=>{if(window.gsap&&window.ScrollTrigger){initProjectCardEffects();ScrollTrigger.refresh()}});const mm=(window.gsap&&gsap.matchMedia)?gsap.matchMedia():null;function initProjectCardEffects(){if(!window.gsap||!window.ScrollTrigger)return;ScrollTrigger.getAll().forEach(st=>{const trg=st.vars?.trigger;if(trg&&(trg.matches?.('.project-card:not(.no-animate) .project-card__img')))st.kill();});gsap.set('.project-card:not(.no-animate) .project-card__img',{scale:1.2});document.querySelectorAll('.project-card:not(.no-animate) .project-card__img').forEach((el)=>{gsap.to(el,{y:-25,ease:'none',scrollTrigger:{trigger:el,start:'top 25%',end:'bottom -25%',scrub:!0}})});document.querySelectorAll('.project-card:not(.no-animate)').forEach((card)=>{if(card.dataset.hoverBound)return;card.dataset.hoverBound='1';const img=card.querySelector('.project-card__img');const hoverImg=card.querySelector('.project-card__img--hover');const hoverbtn=card.querySelector('.project-card__btn');const imgWrap=card.querySelector('.project-card__img-wrap');card.addEventListener('mouseenter',()=>{if(img)gsap.to(img,{scale:1.25,duration:0.3,ease:'power1.out'});if(hoverImg)gsap.to(hoverImg,{opacity:1,scale:1.05,duration:0.3,ease:'power1.out'});if(hoverbtn)gsap.to(hoverbtn,{opacity:1,y:0,duration:0.3,ease:'power1.out'});if(imgWrap)imgWrap.classList.add('gradient-visible');});card.addEventListener('mouseleave',()=>{if(img)gsap.to(img,{scale:1.2,duration:0.3,ease:'power1.out'});if(hoverImg)gsap.to(hoverImg,{opacity:0,scale:1,duration:0.3,ease:'power1.out'});if(hoverbtn)gsap.to(hoverbtn,{opacity:0,y:10,duration:0.3,ease:'power1.out'});if(imgWrap)imgWrap.classList.remove('gradient-visible');})})} 14document.addEventListener('click',function(e){const link=e.target.closest('a[href^="mailto:"]');if(!link)return;e.preventDefault();const email=(link.getAttribute('href')||'').replace(/^mailto:/i,'').trim();if(!email)return;const lang=(document.documentElement.lang||'cs').toLowerCase();if(!link.dataset.originalText){link.dataset.originalText=link.textContent;const span=document.createElement('span');span.style.visibility='hidden';span.style.position='absolute';span.style.whiteSpace='nowrap';span.textContent=link.textContent;document.body.appendChild(span);const fixedWidth=Math.ceil(span.getBoundingClientRect().width);document.body.removeChild(span);link.style.display='inline-block';link.style.minWidth=fixedWidth+'px'} 15const copy=async(text)=>{if(navigator.clipboard&&window.isSecureContext){await navigator.clipboard.writeText(text)}else{const ta=document.createElement('textarea');ta.value=text;ta.style.position='fixed';ta.style.left='-9999px';document.body.appendChild(ta);ta.focus();ta.select();document.execCommand('copy');document.body.removeChild(ta)}};copy(email).then(()=>{link.textContent=lang.startsWith('en')?'Copied to clipboard':'ZkopÃrováno';setTimeout(()=>{link.textContent=link.dataset.originalText},2000)}).catch(err=>console.error('KopÃrovánà se nezdaÅilo',err))});(function(){function getHrefFromTrigger(trigger){if(!trigger)return'';if(trigger.tagName==='A'){return(trigger.getAttribute('href')||'').trim()} 16var a=trigger.querySelector('a');return a?((a.getAttribute('href')||'').trim()):''} 17document.addEventListener('click',function(e){var trigger=e.target.closest('.blog-cta .open-contact-popup');if(!trigger)return;var href=getHrefFromTrigger(trigger);var isPlaceholder=!href||href==='#'||href==='javascript:void(0)';if(isPlaceholder){e.preventDefault();return} 18e.stopPropagation();if(typeof e.stopImmediatePropagation==='function')e.stopImmediatePropagation();},!0)})() 19;
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.